[問題] ffmpeg: number of reference frames exceeds max
有寫過FFMPEG的先進們
我有一個疑問想要請教
以下是網路上decoder寫法
根據這程式 我可以順利讀取網路串流播出影片沒問題
今天我需要將讀進來的影像檔做一些視訊處理
所以我會寫在if(frameFinished)條件裡面
處理視訊檔案一定會花時間
我發現跑一陣子之後視訊就會停掉
然後DOS視窗就會出現這個訊息 不斷跳
[h264 @ 0x22c480]number of reference frames exceeds max <probably corrup input>, discarding one
如果用VLC模擬串流再讀進去
好一點 但是影片會非常破碎 一樣久了會出現
[h264 @ 0x22c480]number of reference frames exceeds max <probably corrup input>, discarding one
[h264 @ 0x22c480]error while decoding MB 8 23, bytestream <-7>
[h264 @ 0x22c480]concealing 321 DC, 231 AC, 321 MV errors
請問各位對FFMPEG的先進有過這樣經驗嗎
是不是因為花時間處理演算法讓ffmpeg延遲出現錯誤 有辦法避免嗎
PS.我是用avcodec-52.lib
我的程式片段::
//av_read_frame會將讀到的 Frame 放入 AVPacket結構 中
while(av_read_frame(VideoFormatInfo, &VideoPacket) >= 0)
{
//從已經讀到的 AVPacket結構 中,判斷這個 Packet 是哪個 stream
if(VideoPacket.stream_index == VideoStreamIndex)
{
buf = VideoPacket.data;
buf_size = VideoPacket.size ;
avcodec_decode_video(VideoCodecInfo, VideoFrame, &frameFinished, buf,buf_size);
//不管是AVI還是串流 都需要好幾個串流資訊解碼才會組成一張影像 // Did we get a video frame?(我們有取得一張 video frame?)
if(frameFinished)
{
//-----
//演算法呼叫地方
//-----
}
}
}
--
※ 發信站: 批踢踢實業坊(ptt.cc)
◆ From: 1.34.221.115
C_and_CPP 近期熱門文章
PTT數位生活區 即時熱門文章