《PHP應(yīng)用:php利用ffmpeg提取視頻中音頻與視頻畫面的方法詳解》要點(diǎn):
本文介紹了PHP應(yīng)用:php利用ffmpeg提取視頻中音頻與視頻畫面的方法詳解,希望對(duì)您有用。如果有疑問(wèn),可以聯(lián)系我們。
PHP實(shí)戰(zhàn)前言
PHP實(shí)戰(zhàn)FFmpeg的名稱來(lái)自MPEG視頻編碼標(biāo)準(zhǔn),前面的“FF”代表“Fast Forward”,FFmpeg是一套可以用來(lái)記錄、轉(zhuǎn)換數(shù)字音頻、視頻,并能將其轉(zhuǎn)化為流的開(kāi)源計(jì)算機(jī)程序.可以輕易地實(shí)現(xiàn)多種視頻格式之間的相互轉(zhuǎn)換.
PHP實(shí)戰(zhàn)FFmpeg的用戶有Google,Facebook,Youtube,優(yōu)酷,愛(ài)奇藝,土豆等.
PHP實(shí)戰(zhàn)組成
PHP實(shí)戰(zhàn)?????? 1、libavformat:用于各種音視頻封裝格式的生成和解析,包括獲取解碼所需信息以生成解碼上下文結(jié)構(gòu)和讀取音視頻幀等功能,包含demuxers和muxer庫(kù);
PHP實(shí)戰(zhàn)?????? 2、libavcodec:用于各種類型聲音/圖像編解碼;
PHP實(shí)戰(zhàn)?????? 3、libavutil:包含一些公共的工具函數(shù);
PHP實(shí)戰(zhàn)?????? 4、libswscale:用于視頻場(chǎng)景比例縮放、色彩映射轉(zhuǎn)換;
PHP實(shí)戰(zhàn)?????? 5、libpostproc:用于后期效果處理;
PHP實(shí)戰(zhàn)?????? 6、ffmpeg:是一個(gè)命令行工具,用來(lái)對(duì)視頻文件轉(zhuǎn)換格式,也支持對(duì)電視卡實(shí)時(shí)編碼;
PHP實(shí)戰(zhàn)?????? 7、ffsever:是一個(gè)HTTP多媒體實(shí)時(shí)廣播流服務(wù)器,支持時(shí)光平移;
PHP實(shí)戰(zhàn)?????? 8、ffplay:是一個(gè)簡(jiǎn)單的播放器,使用ffmpeg 庫(kù)解析和解碼,通過(guò)SDL顯示;
PHP實(shí)戰(zhàn)提取視頻中音頻與視頻畫面
PHP實(shí)戰(zhàn)想要提取視頻中的音頻信息,首選的技術(shù)是ffmpeg,網(wǎng)上的絕大多數(shù)ffmpeg使用教程都是:
PHP實(shí)戰(zhàn)比如你的文件是 test.mp4
PHP實(shí)戰(zhàn)分離視頻出來(lái):ffmpeg -i test.mp4 -vcodec copy -an 視頻流.avi
PHP實(shí)戰(zhàn)分離音頻出來(lái):ffmpeg -i test.mp4 -acodec copy -vn 音頻流.mp3
PHP實(shí)戰(zhàn)用這樣的方法,提取視頻是沒(méi)有問(wèn)題的.但在提取音頻時(shí),我遇到了以下錯(cuò)誤:
PHP實(shí)戰(zhàn)
Invalid audio stream. Exactly one MP3 audio stream is required. could not write header for output file #0 (incorrect codec parameters ) invalid argument
PHP實(shí)戰(zhàn)其實(shí),簡(jiǎn)單地提取音視頻并不需要這么復(fù)雜,只要執(zhí)行以下兩行就行了:
PHP實(shí)戰(zhàn)分離視頻出來(lái):ffmpeg -i test.mp4 視頻流.avi
PHP實(shí)戰(zhàn)分離音頻出來(lái):ffmpeg -i test.mp4 音頻流.mp3
PHP實(shí)戰(zhàn)總結(jié)
PHP實(shí)戰(zhàn)以上就是這篇文章的全部?jī)?nèi)容了,希望本文的內(nèi)容對(duì)大家的學(xué)習(xí)或者工作能帶來(lái)一定的幫助,如果有疑問(wèn)大家可以留言交流,謝謝大家對(duì)維易PHP的支持.
轉(zhuǎn)載請(qǐng)注明本頁(yè)網(wǎng)址:
http://www.snjht.com/jiaocheng/676.html