国产 无码 综合区,色欲AV无码国产永久播放,无码天堂亚洲国产AV,国产日韩欧美女同一区二区

ffmpeg報錯:avcodec_send_frame() 返回 -22

這篇具有很好參考價值的文章主要介紹了ffmpeg報錯:avcodec_send_frame() 返回 -22。希望對大家有所幫助。如果存在錯誤或未考慮完全的地方,請大家不吝賜教,您也可以點擊"舉報違法"按鈕提交疑問。

avcodec_send_frame()作為編碼函數,作用是將AVFrame送入編碼器。

返回值-22表示找不到編碼器,并拋出錯誤AVERROR(EINVAL)。
可以先驗證一下-22是不是AVERROR(EINVAL)

int ret = 0;
    ret = avcodec_send_frame(encodctx, frame_dst);
    if ( ret == AVERROR(EINVAL) ) {
        printf("ERROR: no encoder, ret = %d.\n", ret);
    }

ffmpeg -22,FFmpeg,計算機視覺
驗證成功,返回值-22就是AVERROR(EINVAL)。

那我們接下來可看一下什么情況下會報AVERROR(EINVAL)這個錯誤,avcodec_send_frame()函數源碼為

int avcodec_send_frame(AVCodecContext *avctx, const AVFrame *frame)
{
    AVCodecInternal *avci = avctx->internal;
    int ret;
    // 判斷編碼器有沒打開,是否為編碼器
    if (!avcodec_is_open(avctx) || !av_codec_is_encoder(avctx->codec))
        return AVERROR(EINVAL);
    if (avci->draining)
        return AVERROR_EOF;
    if (avci->buffer_frame->data[0])
        return AVERROR(EAGAIN);
    if (!frame) {
        avci->draining = 1;
    } else {
        ret = encode_send_frame_internal(avctx, frame);
        if (ret < 0)
            return ret;
    }
 
    if (!avci->buffer_pkt->data && !avci->buffer_pkt->side_data) {
        ret = encode_receive_packet_internal(avctx, avci->buffer_pkt);
        if (ret < 0 && ret != AVERROR(EAGAIN) && ret != AVERROR_EOF)
            return ret;
    }
 
    return 0;
}

可以看到,函數一上來(第六行)就會檢查編碼器是否打開,以及傳入的AVCodecContext是不是一個編碼器,兩個條件有一個不成立,就返回AVERROR(EINVAL)。

因此,需要檢查兩個地方:文章來源地址http://www.zghlxwxcb.cn/news/detail-521300.html

  1. 是不是將avcodec_find_encoder寫成了avcodec_find_decoder;
  2. 是否調用avcodec_open2打開編碼器。

到了這里,關于ffmpeg報錯:avcodec_send_frame() 返回 -22的文章就介紹完了。如果您還想了解更多內容,請在右上角搜索TOY模板網以前的文章或繼續(xù)瀏覽下面的相關文章,希望大家以后多多支持TOY模板網!

本文來自互聯(lián)網用戶投稿,該文觀點僅代表作者本人,不代表本站立場。本站僅提供信息存儲空間服務,不擁有所有權,不承擔相關法律責任。如若轉載,請注明出處: 如若內容造成侵權/違法違規(guī)/事實不符,請點擊違法舉報進行投訴反饋,一經查實,立即刪除!

領支付寶紅包贊助服務器費用

相關文章

  • FFmpeg5.0源碼閱讀——av_interleaved_write_frame

    FFmpeg5.0源碼閱讀——av_interleaved_write_frame

    ?? 摘要 :本文主要詳細描述FFmpeg中封裝時寫packet到媒體文件的函數 av_interleaved_write_frame 的實現(xiàn)。 ?? : av_interleaved_write_frame ?? 讀者須知 :讀者需要熟悉ffmpeg的基本使用。 ?? av_interleaved_write_frame 的基本調用流程圖如下。 ??首先就是根據輸入數據是否為空

    2024年02月14日
    瀏覽(15)
  • flv 報錯 Unsupported codec in video frame: 12

    flv 報錯 Unsupported codec in video frame: 12

    [TransmuxingController] DemuxException: type = CodecUnsupported, info = Flv: Unsupported codec in video frame: 12 主要是因為我們的播放器不支持 H.265 視頻編碼; 方法一:將設備端的視頻編碼改為 H.264 方法二:更換播放器(eg :EasyPlayer.js) EasyPlayer.js 集播放 http-flv, hls, websocket 于一身的 H5 視頻直播

    2024年02月09日
    瀏覽(44)
  • kafka send data 超時問題 報錯:xx ms has passed since last append

    轉行到大數據將近一年了,在工作中經常遇到 kafka send data 超時的報錯,今天給各位道友淺談一下這類問題的經驗: 此異常錯誤即RecordBatch#maybeExpire方法拋出,意思是:在設置的timeout時間內send線程沒有將client緩存內的請求發(fā)送出去。 原因通常來說為以下幾種: kafka服務端壓

    2024年02月11日
    瀏覽(18)
  • videoPlayer視頻報錯:First video frame not zero... WindowsVideoMedia error unhandled Color Standard...

    videoPlayer視頻報錯:First video frame not zero... WindowsVideoMedia error unhandled Color Standard...

    1、報錯信息:First video frame not zero: 2 (0.066667s). Result may be out of sync. Please make sure tracks all start at 0 in 2、報錯原因( from ChatGPT4 ): 3、修復過程 重新設置視頻的導入格式 Unity 2021.3.18:【Project】-【選中視頻文件】-【Inspctor】-【Codec】 設置為 H264 WindowsVideoMedia error unhandled Colo

    2024年02月03日
    瀏覽(51)
  • torch.distributed.elastic.multiprocessing.api: [WARNING] Sending process 141——YOLOv8雙卡訓練報錯的解決方法

    Ultralytics開源的YOLOv8訓練模型的時候——使用如下命令,雙GPU部署訓練 拋出異常 而使用SingleGPU則不會拋出異常 這是由于上一次雙卡訓練直接在pycharm的terminal里面直接Ctrl+C按下去,然后終止了訓練,這樣可能導致了進程沒有完全殺死,沒有釋放該進程。需要重啟電腦。 還有一

    2024年02月04日
    瀏覽(15)
  • ubuntu22.04下編譯ffmpeg和ffplay

    ubuntu22.04下編譯ffmpeg和ffplay

    Ubuntu22.04 下編譯安裝 ffmpeg 和 ffplay 一、下載源碼包 1.1 官方下載鏈接 :Download FFmpeg 可以手動下載,也可以命令行下載: wget http://www.ffmpeg.org/releases/ffmpeg-7.0.tar.xz? 1.2 下載完解壓 ? tar -xvf??ffmpeg-7.0.tar.xz? 二、安裝依賴庫 官方有個指導文檔,Ubuntu怎么使用FFmpeg: https://trac.ff

    2024年04月26日
    瀏覽(13)
  • Git報錯: error: RPC failed; curl 56 HTTP/2 stream 5 was reset; send-pack: unexpected disconnect

    Git報錯: error: RPC failed; curl 56 HTTP/2 stream 5 was reset; send-pack: unexpected disconnect

    背景: 在本地修改了大量的代碼并commit后,最后一次性push時,出現(xiàn)錯誤。 分析: 從報錯的信息來看,貌似是和遠程Git連接出現(xiàn)了問題,因此,可以從以下三個角度來分析: 本地和遠程Git倉庫連接有問題,由于剛提交成功過,可以排除掉; 本地和遠程Git倉庫的數據傳輸速度慢

    2024年03月18日
    瀏覽(23)
  • selenium4.15.2 報錯Exception managing chrome: error sending request for url 和 打開Chrome瀏覽器自動退出問題

    最近更新了一不小心更新了selenium4.15.2,導致每次運行它都會主動去國外官網請求一遍,因為訪問不了國外網址,就加載特別慢 最后報錯 Exception managing chrome: error sending request for url (https://chromedriver.storage.googleapis.com/index.html),然后再運行,一開始以為是webdriver版本和chrome版本

    2024年02月05日
    瀏覽(172)
  • ubuntu22.10 ffmpeg-webrtc推拉流srs環(huán)境搭建

    ubuntu22.10 ffmpeg-webrtc推拉流srs環(huán)境搭建

    一、編譯ffmpeg-webrtc 二、openssl,opus,x264配置 三、編譯srs 四、測試 4.1推流端 4.2拉流端 五、交互與sdp 最近看到楊大佬發(fā)的動態(tài),嘗鮮體驗一下。 一、編譯ffmpeg-webrtc ffmpeg-webrtc官網:https://github.com/ossrs/ffmpeg-webrtc 拉取ffmpeg-webrtc代碼: 這里配置需要openssl,opus,x264見下 二、

    2024年02月05日
    瀏覽(39)
  • git push報錯error: RPC failed; curl 92 HTTP/2 stream 0 was not closed cleanly: CANCEL (err 8)send-pac

    完整報錯:error: RPC failed; curl 92 HTTP/2 stream 0 was not closed cleanly: CANCEL (err 8)send-pack: unexpected disconnect while reading sideband packet 嘗試解決:(是我失敗了的方法,但可能因人而異,或許可以一搏)? ?? 修改網絡協(xié)議: (不可行,還是報一樣的錯) 修改緩沖區(qū)的大?。?(報錯 cur

    2024年01月25日
    瀏覽(24)

覺得文章有用就打賞一下文章作者

支付寶掃一掃打賞

博客贊助

微信掃一掃打賞

請作者喝杯咖啡吧~博客贊助

支付寶掃一掃領取紅包,優(yōu)惠每天領

二維碼1

領取紅包

二維碼2

領紅包