गुणवत्ता खोए बिना मैं दो mp4 फाइलें कैसे मर्ज कर सकता हूं?


51

मेरे पास दो उच्च-गुणवत्ता वाली mp4 फाइलें हैं, जो एक ही शो के दो भाग हैं।

मैं उन्हें 1 फ़ाइल में एक साथ मर्ज करना चाहता हूं, और मैं अपनी फ़ाइलों को मर्ज करने के लिए आमतौर पर VirtualDub का उपयोग करता हूं ... लेकिन यह mp4 का समर्थन नहीं करता है।

क्या विकल्प उपलब्ध हैं (विशेषकर जिन्हें पुन: एन्कोडिंग की आवश्यकता नहीं है)?


यह भी देखें stackoverflow.com/questions/7333232/…
rogerdpack

जवाबों:


41

मैं आमतौर पर अपनी फ़ाइलों को मर्ज करने के लिए VirtualDub का उपयोग करता हूं, लेकिन यह mp4 का समर्थन नहीं करता है। तो क्या विकल्प हैं?

एविडेमक्स । यह सिर्फ VirtualDub की तरह है, केवल समर्थित और बिल्ट-इन कोडेक्स और फिल्टर्स के साथ और अधिक फॉर्मेट में। मैं हमेशा इसे वरीयता में उपयोग करता हूं; यह AVC + AAC.MP4 फ़ाइलों (बिना कोडिंग) के मेरे लिए ठीक जुड़ता है।

उन्हें AviDemux में शामिल करने के लिए:

  1. फाइल -> ओपन -> फाइल का चयन करें
  2. फ़ाइल -> परिशिष्ट -> फ़ाइल का चयन करें
  3. सभी को कॉपी पर सेट करें
  4. फ़ाइल -> सहेजें -> फ़ाइल नाम
  5. रुको..

एवीडेमक्स मंचों के अनुसार, यह शामिल होने की प्रक्रिया दोषरहित है ( http://www.avidemux.org/smf/index.php?topic=9467.0 )


हाँ, यह वीडियो के साथ ऑडियो को तालमेल रखने के साथ उत्कृष्ट करने के लिए लगता है जबकि अन्य व्यक्ति इस सवाल का जवाब उस IMHO पर संदिग्ध हैं।
djangofan

1
मैं एक साथ दो फ़ाइलों में शामिल होने के लिए AVIDemux का उपयोग करने की कोशिश की, लेकिन ऑडियो सिंक से बाहर हो गया।
गिड्डीउपॉर्सी

जब ऑडियो सामग्री की मात्रा वीडियो फ्रेम की लंबाई से मेल नहीं खाती है, या कोई स्ट्रीम भ्रष्टाचार है, तो आपको सिंक समस्याएं मिल सकती हैं। आप VideoRedo या ProjectX की 'स्ट्रीम फिक्स' सुविधाओं के साथ इसे ठीक करने में सक्षम हो सकते हैं।
बॉबी

1
लेकिन इस विधि ने काम किया: superuser.com/a/255566/1780 हुर्रे!
क्रिस्टोफर गैल्पिन

4
यदि आप दो Mp4 फ़ाइलों में शामिल होने के लिए AviDemux का उपयोग करते हैं, तो नीचे बाएँ हाथ के कोने पर Mp4 Demux विकल्प का चयन करना न भूलें। अन्यथा यह एक एवी में बदलने की कोशिश कर सकता है!

28

आप इसे ffmpeg के साथ कर सकते हैं:

mkfifo temp0 temp1
ffmpeg -i input0.mp4 -c copy -bsf:v h264_mp4toannexb -f mpegts -y temp0 2> /dev/null & \
ffmpeg -i input1.mp4 -c copy -bsf:v h264_mp4toannexb -f mpegts -y temp1 2> /dev/null & \
ffmpeg -f mpegts -i "concat:temp0|temp1" -c copy -absf aac_adtstoasc output.mp4

यह किसी भी चीज़ को फिर से एनकोड नहीं करता है, यह उन्हें एक नए ट्रांसपोर्ट स्ट्रीम कंटेनर में रखता है, जिससे उन्हें कंसट्रेट करना अधिक आसान हो जाता है, और फिर उन्हें एक MP4 में वापस भेज दिया जाता है। यदि output.mp4 पहले से मौजूद है, तो कमांड विफल हो जाएगी। उपरोक्त संस्करण पाइप्स नाम का उपयोग करता है, यदि आप एक ऐसी प्रणाली पर हैं जो उन लोगों का समर्थन नहीं करती है जिन्हें आपको मध्यवर्ती फ़ाइलों (जैसे विंडोज़) का उपयोग करना होगा:

ffmpeg -i input0.mp4 -c copy -bsf:v h264_mp4toannexb temp0.ts
ffmpeg -i input1.mp4 -c copy -bsf:v h264_mp4toannexb temp1.ts
ffmpeg -i "concat:temp0.ts|temp1.ts" -c copy -bsf:a aac_adtstoasc output.mp4

क्या कोई समझा सकता है कि avconvइसके बजाय यह कैसे किया जाता है ffmpeg? मैं पहले दो चरणों को पूरा करने में सक्षम था, लेकिन अंतिम विकल्प को नहीं पहचानता है-absf
becko

@becko मेरा संपादन देखें। अब आपको एक स्ट्रीम स्पेसिफायर (यहाँ देखें libav.org/avconv.html#Advanced-options ) का उपयोग करना चाहिए ।
स्लट

2
बस भविष्य में संदर्भ के लिए, आप स्थानापन्न कर सकते हैं +1 avconvके लिए ffmpegऊपर बताए गए आदेशों में है और यह काम करेंगे।
becko

15

कॉनटैट डिमॉक्सर

कॉन्फैट डेमूक्सर को ffmpeg 1.1 में जोड़ा गया था। यदि आपके ffmpeg का संस्करण पुराना है, तो यहां से नवीनतम स्थिर बाइनरी प्राप्त करें: http://www.ffmpeg.org/download.html

अनुदेश

mylist.txtनिम्नलिखित प्रपत्रों में उन सभी फ़ाइलों के साथ एक फ़ाइल बनाएँ, जिन्हें आप संक्षिप्त करना चाहते हैं (डैश के साथ शुरू होने वाली रेखाओं को अनदेखा किया जाता है):

# this is a comment
file '/path/to/file1'
file '/path/to/file2'
file '/path/to/file3'

ध्यान दें कि ये या तो सापेक्ष या पूर्ण पथ हो सकते हैं। तब आप अपनी फ़ाइलों को इनकोड कर सकते हैं:

ffmpeg -f concat -i mylist.txt -c copy output

यह सूची फ़ाइल को लूप के लिए बैश, या प्रिंटफ का उपयोग करके उत्पन्न करना संभव है। या तो निम्न में से एक सूची फ़ाइल उत्पन्न करेगा जिसमें प्रत्येक * .wav कार्यशील निर्देशिका में है:

for f in ./*.wav; do echo "file '$f'" >> mylist.txt; done
printf "file '%s'\n" ./*.wav > mylist.txt

स्रोत: ffmpeg विकी


8

MP4BX के साथ YAMB एक अच्छा विकल्प है।
दोनों को डाउनलोड करें और उन्हें अनज़िप करें (कोई स्थापना की आवश्यकता नहीं है और साथ में वे लगभग 5MB हैं), YAMB में सेटिंग्स चुनें और MP4box का फ़ोल्डर पथ सेट करें।
Mp4 फ़ाइलों में शामिल होने के लिए संपादन का चयन करें> समर्थित में शामिल होने के लिए क्लिक करें ...


1
सबसे अच्छा समाधान की तरह लगता है, .mp4 कंटेनर प्रारूप जो लेखक को और अधिक आकर्षक विकल्प प्रतीत होगा ^ ^
Oskar Duveborn

1
कठिनाई के बाद, मैंने इस कॉन्फिगर का उपयोग किया: MP4Box_path = E: \ Software \ Video Editing \ Yamb-2.1.0.0_beta2 \ MP4Box \ MP4Box.exe को एवीडेमक्स से उत्पन्न 4 500MB MP4 फ़ाइलों को मर्ज करने के प्रयास में। यह काम नहीं किया। कार्यक्रम सिर्फ 45 मिनट के लिए वहाँ बैठकर कुछ भी नहीं कर रहा था जब तक कि मैंने अंत में हार नहीं मानी।
djangofan

1
मुझे ऑडियो सिंक समस्याओं के कारण इस विधि का उपयोग करने में परेशानी हुई। यह एक बुरा सपना था ... इसे फिर से कोशिश नहीं कर रहा।
djangofan

6

सुपर © (सरलीकृत यूनिवर्सल प्लेयर एनकोडर और रेंडरर) निम्नलिखित अतिरिक्त आउटपुट प्रक्रिया प्रदान करता है:

किसी भी समर्थित इनपुट मल्टीमीडिया फ़ाइल को संसाधित किया जा सकता है:

      o Join Format-Identical Files.
      o Mux Video & Audio Streams.
      o DeMux Extract Streams. 

बेशक, MP4 एक समर्थित प्रारूप है।

सुपर © फ्रीवेयर है।


5
इसका यूजर इंटरफेस मेरे जीवन में सबसे भयानक है। मैं मजाक नहीं कर रहा, यह सिर्फ भयानक है। मैं इसे एक बार फिर जोर देता हूं: मैं एक बदतर इंटरफ़ेस का नाम नहीं दे सकता, मैं इसके बारे में गंभीर हूं, मैंने कभी "सुपर थ्रेशोल्ड" के नीचे कुछ भी नहीं देखा।
कैमिलो मार्टिन

5

Matroska वीडियो कंटेनर का उपयोग करने का प्रयास करें।

सबसे पहले, आपको mkvtoolnix की आवश्यकता है । डाउनलोड करें और इसे स्थापित है, तो आप mkvmerge जीयूआई अप पर सक्रिय होने चाहिए (जब तक आप कमांड लाइन उपकरण है, जो मेरे द्वारा ठीक है की तरह - हालांकि आप को देखने के लिए चाहते हो सकता है फ़ाइल खंड जोड़ने के mkvmerge प्रलेखन )।

"जोड़ें" पर क्लिक करके अपनी पहली फ़ाइल जोड़ें। फिर, "एपेंड" पर क्लिक करें, और अपनी दूसरी फ़ाइल खोलें। आउटपुट फ़ाइल सेट करें, नीचे "स्टार्ट मक्सिंग" हिट करें, और दूर आप जाएं!

यदि कंटेनर आपकी आवश्यकताओं के लिए अनुपयुक्त है, तो आप इसे फिर से लोड कर सकते हैं, या इसे किसी अन्य प्रारूप में बदलने की कोशिश कर सकते हैं ... हालांकि एमकेवी एक बहुत ही प्यारा कंटेनर है!


यह muxed किया जाना है? मैं muxing के बिना शामिल नहीं हो सकते?
djangofan

ठीक है, अगर आप एमकेवी कंटेनर का उपयोग कर रहे हैं, तो तकनीकी रूप से आप इसे रिमूक्स कर रहे हैं । इसे आज़माएं, कोई वास्तविक समय जुर्माना नहीं है ...
ब्रेकथ्रू

1

यदि आप उन्हें अपने सिस्टम पर चला सकते हैं / एक कोडेक स्थापित है, तो विंडोज मूवी मेकर दो फाइलों में शामिल होने का सबसे तेज (और मुक्त) तरीका हो सकता है। फिर आप एक अलग प्रारूप में बदलने के लिए Virtualdub का उपयोग कर सकते हैं।


ऑडियो फ़ाइलों के लिए ऑडेसिटी प्रतीत होती है। यह एक वीडियो फ़ाइल है।
पाओलो बेरगीनो

क्षमा करें, मैंने गलत पढ़ा, बस एमपी भाग और मेरे मस्तिष्क को देखा, हालांकि दुस्साहस।
विलियम हिल्सम

एडिटिंग उत्तर ...
विलियम हिल्सम

AFAIK, मूवी मेकर mp4 का समर्थन नहीं करता है और एक अलग प्रारूप में परिवर्तित होने का मतलब है गुणवत्ता का खोना जिसे प्रश्न अवांछित के रूप में निर्दिष्ट करता है।
एरन

मैंने विंडोज 7 पर मूवीमेकर की कोशिश की और एमपी 3 को WMV में शामिल करते समय ऑडियो सिंक से बाहर हो जाता है। यह विकल्प काम नहीं करेगा।
djangofan

1

एक और उपाय है ओपन वीडियो जॉइनर । यह संक्रमण प्रभाव भी करता है।

यहाँ छवि विवरण दर्ज करें


हालांकि यह एक शेयरवेयर है। और $ 30 के लिए यह सिर्फ वीडियो फ़ाइलों को मर्ज करने के लिए सस्ता नहीं है
एरन

इसे फ्रीवेयर कहा गया था। क्षमा करें यदि मुझे गुमराह किया गया था।
harrymc
हमारी साइट का प्रयोग करके, आप स्वीकार करते हैं कि आपने हमारी Cookie Policy और निजता नीति को पढ़ और समझा लिया है।
Licensed under cc by-sa 3.0 with attribution required.