參考官方說明文檔:點擊這裡。Ubuntu10.04上搭建ffmpeg開發環境並編譯運行,參考:
一.參照(1)依次安裝Yasm,x.264,Lame,libvpx;
二.參照(2)安裝ffmpeg,libavcodec-dev,libswscale-dev,libx264-dev;
三.參照(2)修改/usr/include/libavutil/common.h, 添加如下內容。
#ifndef UINT64_C
#define UINT64_C(value)__CONCAT(value,ULL)
#endif
四.修改sunkwei源碼文件shower.cpp中大概67-70行,屏蔽掉原來的四行代碼,再添加一行代碼如下所示:
int got; //從此處往下修改
//屏蔽本行 AVPacket pkt;
//屏蔽本行 pkt.data = buf;
//屏蔽本行 pkt.size = rc;
//屏蔽本行 int ret = avcodec_decode_video2(dec, frame, &got, &pkt);
int ret = avcodec_decode_video(dec,frame,&got,buf,rc);
//修改到此行,下邊代碼不動
if (ret > 0 && got) {
修改的原因是因為ffmpeg版本不一樣,我用apt-get install libavcodec-dev安裝的庫版本比源代碼作者所用的低,我的庫裡沒有這個函數avccodec_decode_video2,只有avccodec_decode_video。
修改完成後進入源碼目錄,make一下,可以看到順利編譯出了結果。運行一下,看看效果。
更多Ubuntu相關信息見Ubuntu 專題頁面 http://www.linuxidc.com/topicnews.aspx?tid=2