H264 * को बिना * री-एन्कोडिंग के साथ जोड़ना


39

मेरे पास दो .MP4 फ़ाइलों में एकल शो के दो हिस्से हैं, जो H264 में एन्कोडेड हैं। मैं उन्हें फिर से एन्कोडिंग के बिना शामिल करना चाहूंगा ।

क्या यह संभव है?

मैं क्विकटाइम प्रो का उपयोग करके एक क्विकटाइम फ़ाइल (.mov) के रूप में एक सम्मिलित वीडियो बनाने में कामयाब रहा, लेकिन तब क्विकटाइम प्रो इसे फिर से एन्कोडिंग के बिना .MP4 में परिवर्तित नहीं करेगा। यह हो सकता है क्योंकि .Mov फ़ाइल के अंदर देख रहे हैं, दो H264 वीडियो वहाँ अभी भी व्यक्तिगत "वस्तुओं" के रूप में अलग कर रहे हैं।

मैं एक वास्तविक समाधान तक पहुंचने के बिना एमपीईजी स्ट्रीमक्लिप के साथ भी संघर्ष कर रहा हूं। लेकिन मुझे कुछ याद आ गया होगा।

ध्यान दें कि मैं MPEG2 फ़ाइलों के साथ एक ही समस्या नहीं है। मैं उन्हें एक .MPEG कंटेनर या उदाहरण के लिए एक .TS फ़ाइल में निर्यात कर सकता हूं, और फिर मैं उन्हें MPEG स्ट्रीमलॉग का उपयोग करके पुन: एन्कोडिंग के बिना शामिल हो सकता हूं।

किसी भी सुझाव का स्वागत करते हैं, अधिमानतः मैक सॉफ्टवेयर का उपयोग कर।


1
बेशक वीडियो को फिर से एन्कोडिंग (समान आकार, बिटरेट, आदि) के बिना शामिल होने के लिए समान पहलुओं की आवश्यकता होती है। आप VirtualDubMOD में इसे करने में सक्षम होना चाहिए: MP4 खोलें, फिर सेगमेंट को जोड़ें
सिंटेक

जवाबों:


41
ffmpeg -i q.mp4 -c copy -bsf h264_mp4toannexb q.ts

ffmpeg -i r.mp4 -c copy -bsf h264_mp4toannexb r.ts

ffmpeg -i "concat:q.ts|r.ts" -c copy -bsf aac_adtstoasc qr.mp4

कैसे flv फ़ाइल को एक में सम्‍मिलित करें


यदि यह m4v (गैर- h264 mp4) है, तो bsf का क्या उपयोग किया जाना चाहिए?
एडिसन

2
मैं -bsf aac_adtstoascकॉनकैट कमांड के लिए रवाना हुआ
सेसाबा तोथ

मुझे सभी -bsfतर्कों को छोड़ देने की आवश्यकता थी , फिर इसने मेरे लिए काम किया।
किट्टमीडिया

MacOS 10.13.3 पर यह करते हुए, मैंने -bsf xxxअच्छे परिणामों के साथ सभी सामानों को छोड़ दिया । हालाँकि दूसरी बार जब मैंने इसकी कोशिश की, तो संयुक्त फिल्म का दूसरा भाग दूषित हो गया था। यह पता चला है कि, अज्ञात कारणों से, हैंडब्रेक ने दो हिस्सों को अलग-अलग चौड़ाई (640 बनाम 636) के साथ एन्कोड किया था। मैंने दोनों मामलों में एक ही पूर्व निर्धारित का उपयोग किया था। वैसे भी, मैं वापस चला गया और पहली छमाही पर हैंडब्रेक को फिर से इस्तेमाल किया, जो अब 2 वें आधे से मेल खाता था। पुनः संयुक्त फिल्म ठीक थी। सुझाव: exiftool एक mp4 / m4v फ़ाइल के बारे में सब कुछ प्रदर्शित करेगी।
जॅमी कॉक्स

15

MP4Box आप के लिए यह करेंगे:

MP4Box -cat File01.m4v -cat File02.m4v File-joined.m4v

MP4Box क्रॉस-प्लेटफ़ॉर्म है और OSX पर काम करता है, हालांकि मैंने iPhone 4S के लिए हैंडब्रेक द्वारा बनाए गए H264 वीडियो के साथ उबंटू लिनक्स पर यह कोशिश की।

यह काफी तेजी से काम करता है क्योंकि फाइलें फिर से एनकोडेड नहीं होती हैं।


1
बहुत अच्छा काम करता है। sudo apt-get install gpacइसे स्थापित करने के लिए उपयोग करें । यदि आपके पास जुड़ने के लिए कई फाइलें हैं, तो आप इस कमांड लाइन का उपयोग कर सकते हैं:MP4Box $(for file in single*m4v; do echo -cat $file; done) joined.m4v
guettli

2

क्विकटाइम MP4 कोडेक विकल्प में "पास से गुजर" मोड है।

क्विकटाइम का उपयोग करके दो MP4 H264 वीडियो में शामिल होने के लिए एक पूर्ण विस्तृत नुस्खा है। ध्यान दें कि क्विकटाइम एक्स अभी तक उन्नत नहीं है, इसलिए क्विकटाइम 7 (स्नो लेपर्ड के साथ एक वैकल्पिक इंस्टॉल) का उपयोग करें:

  1. क्विकटाइम में दो H264 वीडियो खोलें। मान लीजिए कि उनका नाम video1.mp4 और video2.mp4 है।
  2. Video1.mp4 पर कार्य करना, सभी का चयन करें, फिर कॉपी करें।
  3. Video2.mp4 पर स्विच करें, सुनिश्चित करें कि वीडियो की शुरुआत में "कर्सर" है, फिर पेस्ट करें। यह video1.mp4 की सामग्री को video2.mp4 के सामने सम्मिलित करता है।
  4. यह कदम संभवतः वैकल्पिक है । संशोधित वीडियो2.mp4 "इस रूप में सहेजें"। आप केवल .Mov प्रारूप में सहेजने में सक्षम होंगे। मैं एक स्व-निहित फिल्म के रूप में बच गया, लेकिन मुझे लगता है कि एक संदर्भ फिल्म भी काम करेगी। मैंने "video.mov" फ़ाइल नाम का उपयोग किया है।
  5. चयनित H264 फ़ाइल में video.mov निर्यात करने के लिए फ़ाइल मेनू में "निर्यात करें" चुनें। "निर्यात" का चयन करने के लिए "मूवी से MPEG-4" है। पूर्व निर्धारित महत्वपूर्ण नहीं है, मैंने "लैन / इंट्रानेट" चुना। प्रीसेट महत्वपूर्ण नहीं है क्योंकि हम इसे अगले चरण में ओवरराइड करते हैं।
  6. सेटिंग्स डायलॉग तक पहुंचने के लिए "विकल्प" पर क्लिक करें। वीडियो फलक में, "वीडियो प्रारूप" को "H.264" चुना जाता है। मेनू पर क्लिक करें, "पास से गुजरें" चुनें। उम्मीद के मुताबिक, अन्य सभी विकल्प अक्षम हो जाएंगे।
  7. ठीक पर क्लिक करें, फिर सहेजें, और अपनी सम्मिलित फ़ाइल को अपनी हार्ड डिस्क की गति से सहेजकर रखें।

आप वैकल्पिक रूप से SimpleMovieX , एक शेयरवेयर वीडियो एडिटर का उपयोग कर सकते हैं जो वास्तव में इसे एक सुविधा के रूप में विज्ञापित करता है।


1
Mov में बचत मुझे लगता है कि दुर्भाग्य से फिर से एन्कोडिंग के कुछ रूप की आवश्यकता होगी।
सेसाबा टोथ

0

मुझे लगता है कि यह संभव होना चाहिए, हालांकि काम में शामिल होने के लिए दो हिस्सों को "एक ही" कुछ निश्चित तरीके (संकल्प आदि) होने की आवश्यकता हो सकती है। ऐसा लगता है कि यह शायद आपकी स्थिति के साथ मामला होगा।

आप इस टूल को आज़मा सकते हैं: http://www.smlabs.net/tsmuxer_en.html ... मैंने इसका उपयोग नहीं किया है, लेकिन यह विशेष रूप से फ़ाइलों को अपने फीचर सेट के भाग के रूप में सूचीबद्ध करता है और H.264 समर्थित एन्कोडिंग में से एक है।


लिंक के लिए धन्यवाद। मैं इसे आज़मा नहीं सका क्योंकि साइट का कहना है कि यह कार्यक्रम स्नो लेपर्ड का समर्थन नहीं करता है। इसके अलावा, मुझे सिर्फ क्विकटाइम (केवल मेरा उत्तर देखें) का उपयोग करके एक काम करने वाला समाधान मिला। हालाँकि, मुझे इस मामले में पता नहीं है, कुछ उपकरण वीडियो फ़ाइल से जुड़ने का विज्ञापन करते हैं, लेकिन पूरी री-एन्कोडिंग के साथ ऐसा करते हैं, जो कि सबसे भ्रामक है।
jdmuys

मैं क्षमाप्रार्थी हूं; मैंने उस बिट को साइट पर फैला दिया। खुशी है कि आपको एक सरल दृष्टिकोण मिला - यह अजीब लगा कि इसके लिए एक विशेष उपकरण प्राप्त करना आवश्यक होगा।
Zac थॉम्पसन

0

Mkvtoolnix का प्रयोग करें । फिर "mkvtoolnix-gui.exe" खोलें (विंडोज़ 8.1 64 बिट में यह स्थित है: C: \ Program Files \ MKVToolNix \ mkvtoolnix-gui.exe)। पहली फ़ाइल जोड़ें। फिर इस पहली फ़ाइल का चयन करें और "फाइलों को जोड़ें" पर राइट क्लिक करें और उस फ़ाइल का चयन करें जिसे आप मर्ज करना चाहते हैं। शायद गंतव्य फ़ोल्डर और फ़ाइल नाम बदलें। फिर अंत में "स्टार्ट मल्टीप्लेक्सिंग" पर क्लिक करें।

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