محوّل الفيديو
غيّر الصيغة دون أن تسلّم ملفك لأحد. MP4 وWebM وMOV — أو استخرج الصوت وحده.
متصفحك هو الذي يقرأ الملف ويعيد ترميزه. لا يُرسَل في أي طلب إلى أي مكان — فهذه الصفحة لا تملك خادمًا يُرفع إليه.
أسئلة
ما التحويلات المدعومة؟
بين MP4 وWebM وMOV، ومن أيٍّ منها إلى صوت WAV. وما ينجح فعلًا يتوقف على متصفحك، لأنه هو من يرمّز: كروم وإيدج يغطيان مساحة أوسع، وسفاري يتعامل جيدًا مع MP4 وMOV. تتحقق الأداة قبل البدء وتخبرك إن كان تركيب ما غير متاح، بدل أن تتعثر في منتصف الطريق.
لماذا لا يفتح متصفحي ملف MOV من كاميرتي؟
ملف .mov وعاء، والمهم هو الترميز داخله. المتصفحات تتعامل مع H.264 ومع HEVC على نحو متزايد، لكن ليس مع ProRes أو DNxHD أو صيغ الكاميرا الخام — وهي ما تكتبه الكاميرات الاحترافية عادةً داخل .mov. هذه تحتاج أولًا إلى تحويل حقيقي ببرنامج على سطح المكتب.
هل يفقد التحويل جودة؟
تبديل الوعاء بين MP4 وMOV يمكن غالبًا دون المساس بالفيديو. أما تبديل الترميز — إلى WebM مثلًا — فيوجب إعادة الترميز، وإعادة الترميز لها ثمن دائمًا. لا يُلحظ عادةً في جيل واحد، لكنه يتراكم إن حوّلت الملف نفسه مرارًا.
هل يُرفع أي شيء؟
لا. يجري التحويل عبر WebCodecs في متصفحك. وهذا هو المغزى: تحويل ملف كبير برفعه وانتظار الطابور ثم تنزيله أبطأ من إنجازه محليًا، ويجعله في الطريق على قرص شخص غريب.
الأدوات الأخرى
أضف هذا إلى مشروعك
Converting video between formats in the browser — the same way this page does it, on the user's machine, with no server. Take the code, or hand the prompt to a coding agent.
import { getFirstEncodableVideoCodec, WebMOutputFormat } from 'mediabunny';
const format = new WebMOutputFormat();
const codec = await getFirstEncodableVideoCodec(format.getSupportedVideoCodecs());
if (!codec) throw new Error('This browser cannot encode WebM video'); Add "convert a video between formats" to my project, running entirely in the browser.
Requirements:
- Use "mediabunny" (WebCodecs). Support MP4, WebM and MOV, plus WAV for audio-only output.
- Check what the browser can actually encode BEFORE starting, with getFirstEncodableVideoCodec on the
chosen output format. Finding out by failing at 70% of a long encode is the worst possible way to
learn it. Say which codec will be used when it succeeds.
- A container is not a codec. Read what is inside the file and show it: browsers handle H.264 and
often HEVC, but never ProRes or camera raw, and a .mov from a professional camera will not open.
Say that in the error rather than "unsupported file".
- Hide the resolution control for audio-only output — it is meaningless without a picture.
- MP4 to MOV can often be done without touching the video; changing codec cannot.
Reference implementation: https://life2film.com/tools/video-converter/
The engine is documented for agents, and every tool page is available as
markdown by adding .md to its address.