PHP

2011-05-05 18 views
8

का उपयोग कर वीडियो फ़ाइल बनाएं मेरे पास diff का उपयोग करके वीडियो फ़ाइलों को बनाने के लिए परिदृश्य है। छवियों, ऑडियो फ़ाइल जैसी संपत्तियां।PHP

मैं क्या करना चाहता हूं, विशेष फ़ोल्डर से ऑडियो फाइलें ढूंढें और इसे पृष्ठभूमि संगीत के रूप में सेट करें, और विशेष फ़ोल्डर से छवियां प्राप्त करें और उन छवियों को एक-एक करके दिखाएं।

तो मूल रूप से मेरे पास छवियां और ऑडियो फ़ाइलें हैं और मैं PHP का उपयोग करके उन संपत्तियों का उपयोग करके एक वीडियो फ़ाइल बनाना चाहता हूं।

क्या कोई भी इसके लिए प्रारंभ बिंदु सुझा सकता है? वीडियो से छवि कैप्चर किया है और Ffmpeg का उपयोग कर वीडियो को परिवर्तित कर दिया है, इसलिए मैंने Ffmpeg के बारे में सोचा है, लेकिन मुझे लगता है कि यह एक वीडियो बनाने की अनुमति नहीं देगा।

+1

आप एक स्लाइड शो बनाने की जरूरत है, या वास्तव में वीडियो फ्रेम के रूप में इरादा इनपुट छवियों हैं? एक वीडियो फ्रेम के रूप में – mario

+0

.. मेरा अंतिम आउटपुट एक वीडियो फ़ाइल होना चाहिए FLV या mp4 कहें। पृष्ठभूमि संगीत और छवियों में एक के साथ एक दिखा रहा है .. – Avinash

+0

और "एक करके एक" का अर्थ है कि प्रत्येक छवि कुछ सेकंड के लिए दिखाई देनी चाहिए? (वीडियो फ्रेम के लिए 1/25 एस के अनुबंध में।) – mario

उत्तर

17

ffmpeg आपको अभी भी छवियों से वीडियो बनाने की अनुमति देगा।

उदाहरण के लिए, एक 10fps फ्रेम दर के साथ एक वीडियो बनाने के लिए से छवियों 001.jpg .... 999.jpg:

ffmpeg -r 10 -b 1800 -i %03d.jpg test1800.mp4 

आपको स्ट्रीम (ऑडियो और वीडियो) की तरह mux कर सकते हैं (प्रासंगिक जोड़ने बिटरेट के लिए कोडेक विकल्प, आदि)

ffmpeg -i video.mp4 -i audio.wav -map 1.1 -map 2.1 output.mp4 

मैं और अधिक विस्तार में जाने के, के रूप में ffmpeg एक दर्द (args संस्करणों के बीच असंगत तरीके से बदलने के लिए, और यह कैसे संकलित किया गया था के आधार पर) है नहीं जा रहा हूँ, और खोजने आपके लिए अच्छा दर/संपीड़न/रिज़ॉल्यूशन सेटिंग परीक्षण-और-त्रुटि है।

+0

इसके लिए कोई अन्य वैकल्पिक समाधान? – Avinash

+0

पहला आदेश वीडियो स्लाइड नहीं बना रहा है, इसने एक वीडियो फ़ाइल बनाई है, लेकिन केवल अंतिम छवियों के साथ इसे फ़ोल्डर से मिला है। इसलिए कोई वीडियो नहीं चल रहा है क्योंकि इसमें दिखाने के लिए केवल एक छवि है।:( – Avinash

+0

आपको उपर्युक्त निर्दिष्ट फाइलों की आवश्यकता होगी; 001.jpg से 999.jpg –

4

फिल का समाधान सही दृष्टिकोण है। Ffmpeg पर स्वयं को दस्तावेज करके क्या करना है, यह काम करें (यह गन्दा है, और मैं उसे अपना होमवर्क नहीं करना चाहता हूं), और फिर उसे php के भीतर से कॉल करें।

कर्सर गोगलिंग php wrappers (उदा। http://ffmpeg-php.sourceforge.net/) से पता चलता है। यदि कोई भी हालिया/पर्याप्त नहीं है, तो php से आवश्यक खोल आदेश जारी करने के लिए चिपके रहें।

apt-get install php5 ffmpeg 

मैं करने के लिए इस php समारोह का उपयोग कर रहा:

3
ImageMagick convert -delay 100 -quality 75 photo1.jpg photo2.jpg movie.mpg 

या

http://dvd-slideshow.sourceforge.net/wiki/Main_Page 
+0

दिखा रही है इमेजमैजिक एक वीडियो बना रहा है, लेकिन क्या कोई विकल्प है जिसे मैं छवियों में संक्रमण जोड़ सकता हूं, जैसे फीका इन, फीड आउट इत्यादि ..... – Avinash

5
उबंटू के तहत

आप PHP5, ffmpeg और ffmpeg बाइनरी के लिए उपयोग, यह आसान के साथ प्राप्त किया जा सकता की जरूरत है एक gif छवि और एक एमपी 3 फ़ाइल से एक एमपी 4 वीडियो उत्पन्न करें, दोनों स्रोत छवि और आउटपुट वीडियो फ़ाइलें 720x576 पिक्सल हैं:

function mix_video($audio_file, $img_file, $video_file) { 
    $mix = "ffmpeg -loop_input -i " . $img_file . " -i " . $audio_file . " -vcodec mpeg4 -s 720x576 -b 10k -r 1 -acodec copy -shortest " . $video_file; 
    exec($mix); 
} 

उदाहरण उपयोग:

$audio_file = "/path/to/mp3-file"; 
$img_file = "/path/to/img-file"; 
$video_file = "/path/to/video-file"; 

mix_video($audio_file, $img_file, $video_file); 
+0

एफएमपीईजी संस्करण 2.7.6-0ubuntu0.15.10.1 कॉपीराइट (सी) 2000- 2016 एफएफएमपीजी डेवलपर्स जीसीसी 5.2.1 के साथ बनाया गया (उबंटू 5.2.1-22ubuntu2) 20151010 आउटपुट देता है: अपरिचित विकल्प 'loop_input'। – Lisitso

संबंधित मुद्दे

 संबंधित मुद्दे