參考鏈接
- ffmpeg 源代碼簡單分析 : avcodec_decode_video2()_雷霄驊的博客-CSDN博客_avcodec_decode_video2
avcodec_decode_video2
- ffmpeg中的avcodec_decode_video2()的作用是解碼一幀視頻數據。
- 輸入一個壓縮編碼的結構體AVPacket,輸出一個解碼后的結構體AVFrame。
avcodec_send_packet 和?avcodec_receive_frame 替代??avcodec_decode_video2
- avcodec_decode_video2': 被聲明為已否決:
- ret = avcodec_decode_video2(pCodecCtx, pFrame, &got_picture, packet); //got_picture_ptr Zero if no frame could be decompressed
- =>
- ret = avcodec_send_packet(pCodecCtx, packet);
- got_picture = avcodec_receive_frame(pCodecCtx, pFrame); //got_picture = 0 success, a frame was returned
- //注意:got_picture含義相反
- 或者:
- int ret = avcodec_send_packet(aCodecCtx, &pkt);
- if (ret != 0)
- {
- prinitf("%s/n","error");
- return;
- }
- while( avcodec_receive_frame(aCodecCtx, &frame) == 0){
- //讀取到一幀音頻或者視頻
- //處理解碼后音視頻 frame
- }
- 參考鏈接:ffmpeg 新版本avcodec_send_packet 和avcodec_receive_frame實現解碼_Lammyzp的博客-CSDN博客_avcodec_send_packet