2015-03-16 12 views
5

वर्तमान में मेरे पास 80 एमबी फिल्में हैं जिन्हें मैं 10 एमबी या 15 एमबी के बारे में कहने के लिए ffmpeg का उपयोग करना चाहता हूं। मुझे पता है कि गुणवत्ता में कमी आएगी लेकिन उन्हें ध्वनि की आवश्यकता होगी। वहाँ एक रास्ता या तो एक फ़ाइल आकार या मैं पहले क्या किया है की तुलना में अधिक संपीड़नffmpeg वीडियो संपीड़न/निर्दिष्ट फ़ाइल आकार

ffmpeg -i movie.mp4 -b 2255k -s 1280x720 movie.hd.ogv 

वे एक टुकड़ा 25 एमबी के बारे में वर्तमान में कर रहे हैं निर्दिष्ट करने के लिए है

उत्तर

12

यदि आप एक निश्चित उत्पादन फ़ाइल आकार सबसे अच्छा तरीका है लक्षित कर रहे हैं एच.264 और दो-पास एन्कोडिंग का उपयोग करने के लिए।

यहाँ एक महान उदाहरण है, लेकिन इसे कॉपी-पेस्ट करने के लिए बहुत बड़ी है: https://trac.ffmpeg.org/wiki/Encode/H.264

आप bitrate = file size/duration का उपयोग कर अपने लक्ष्य बिटरेट की गणना और आप लॉन्च ffmpeg दो बार: एक पास मीडिया का विश्लेषण करती है और दूसरी करता है वास्तविक एन्कोडिंग:

ffmpeg -y -i input -c:v libx264 -preset medium -b:v 555k -pass 1 -c:a libfdk_aac -b:a 128k -f mp4 /dev/null && \ 
ffmpeg -i input -c:v libx264 -preset medium -b:v 555k -pass 2 -c:a libfdk_aac -b:a 128k output.mp4 

संपादित करें: H.265 (HEVC) भी संपीड़न में बेहतर है, लेकिन समर्थन (कुछ मामलों में 264 आकार का 50%) नहीं अभी तक बड़े पैमाने पर तो अब के लिए 264 के साथ छड़ी है ।

+0

आपकी गणना में, फ़ाइल आकार और अवधि पर इकाइयां क्या हैं? –

+0

@DrewChapin किलो बिट्स/सेकंड – aergistal