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