mkvtomp4
लगता mkvtomp4
है कि आप क्या चाहते हैं?
Mpeg4ip या GPAC की MP4Box, mkvtoolnix और ffmpeg का उपयोग करके mp4 में परेशान करने वाली mkv फ़ाइलों को परिवर्तित करें । रूपांतरण वीडियो को फिर से एनकोड नहीं करता है और केवल ऑडियो को फिर से एनकोड करता है यदि वह AAC कोडेक का उपयोग नहीं करता है (कोई भी इस व्यवहार को ओवरराइड कर सकता है --audio-codec)।
आप Google कोड पेज पर विंडोज और लिनक्स संस्करण डाउनलोड कर सकते हैं। आपको अतिरिक्त सॉफ्टवेयर की आवश्यकता होगी।
विंडोज या लिनक्स के लिए डाउनलोड के लिए साइटों की जाँच करें। OS X पर, आपको केवल तभी आवश्यकता होती है brew install mkvtoolnix mp4box
जब आपके पास Homebrew हो ।
हालांकि यह आपके उपशीर्षक की नकल नहीं करेगा। आपको एक अतिरिक्त चरण की आवश्यकता होगी।
FFmpeg बैच
यदि mkvtomp4 आपके लिए काम नहीं करता है, तो एक साधारण FFmpeg बैच फ़ाइल भी कर सकती है। विंडोज के लिए, आप Zeranoe बिल्ड डाउनलोड कर सकते हैं । लिनक्स में, पैकेज स्रोतों से FFmpeg की जाँच करें। OS X में, उपयोग करें brew install ffmpeg
।
फिर, बस कॉल करें:
ffmpeg -i input.mkv -c:v copy -c:a copy output.mp4
यह फिर से एन्कोडिंग के बिना एक वैध MP4 कंटेनर बनाएगा। आपके ऑपरेटिंग सिस्टम द्वारा आवश्यकतानुसार फाइलों पर लूप और उपलब्ध। हालाँकि, यह बैच उपशीर्षक की नकल नहीं करेगा।
* निक्स में, आप निम्न कार्य कर सकते हैं। बस एक फ़ाइल बनाएँ convert.sh
:
#!/bin/bash
find /path/to/input/folder -iname '*.mkv' -print0 | while read -d '' -r file; do
ffmpeg -i "$file" -c:v copy -c:a copy ${file%%.mkv}.mp4
done
यहां अपने वीडियो फ़ोल्डर में पथ बदलें। इसके साथ निष्पादन योग्य बनाएं chmod +x convert.sh
, फिर इसे साथ चलाएं ./convert.sh
।
विंडोज में, आपको संभवतः दो बैच फ़ाइलें ( यहाँ से बेशर्म प्लग ) चाहिए, एक startconvert.bat
:
for %%i IN (*.mkv) DO (convert-to-mp4.bat "%%i")
pause
और जो रूपांतरण करता है:
IF EXIST "%1.mp4" GOTO exit
@echo Conversion for %1 started on %DATE% %TIME%
ffmpeg -i %1 -c:v copy -c:a copy %1.mp4
:exit
@echo %1.mp4 already exists
दोनों को वीडियो फोल्डर में सेव करें। बस startconvert.bat
उस फ़ोल्डर से चलाएं जिसे आप रूपांतरण शुरू करना चाहते हैं।
उपशीर्षक
यदि आप उपशीर्षक जोड़ना चाहते हैं, तो आपको एक मैनुअल प्रक्रिया की आवश्यकता हो सकती है यदि निम्नलिखित आपके लिए काम नहीं करता है:
ffmpeg -i input.mkv -c:a copy -c:v copy -map 0 output.mp4
उपशीर्षक निकालने के लिए, उपयोग करें:
mkvextract tracks input.mkv 3:subtitles.srt
यह मानकर चल रहा है कि आपकी फ़ाइल में वास्तव में ट्रैक ID नंबर 3 पर सबटाइटल हैं और उन्हें SRT प्रारूप में निर्यात किया जा सकता है। यह देखने के लिए कि क्या ट्रैक 3 में किसी फाइल में सबटाइटल है, का उपयोग करें mkvmerge -i input.mkv
।
फिर, MP4 फ़ाइल में उपशीर्षक को फिर से जोड़ने के लिए MP4Box का उपयोग करें।
mp4box -add input.mp4 -add subtitles.srt -new output.mp4