141 Error s-6ren">
gpt4 book ai didi

api - h.264解码器的 "invalid NAL unit size"是什么意思?

转载 作者:行者123 更新时间:2023-12-04 13:40:49 30 4
gpt4 key购买 nike

我想使用 Libav 将 .mkv 文件转换为 .mp4,但是当我尝试解码视频 h.264 流时,我的代码出现故障

Invalid NAL unit size 21274662>141

Error splitting the input into NAL units

The stream seems to contain AVCC extradata with Annex B formatted data which is invalid. no frame!

Could not send paket for decoding ("error invalid data when processing input")



下面提供了相关的代码部分。
while(!(ret = av_read_frame(ifmt_ctx, &input_packet))&&(ret>=0)){

if ((ret = avcodec_send_packet(avctx, &input_packet)) < 0) {
fprintf(stderr, "Could not send packet for decoding (error '%s')\n",get_error_text(ret));
return ret;
}

ret = avcodec_receive_frame(avctx, iframe);
if (ret == AVERROR(EAGAIN)) {
goto read_another_frame;
/* If the end of the input file is reached, stop decoding. */
} else if (ret == AVERROR_EOF) {
break;
} else if (ret < 0) {
fprintf(stderr, "Could not decode frame (error '%s')\n",get_error_text(ret));
break;
}
// Default case: encode data
else {

}

我主要使用新的 API(发送/接收数据包/帧)并且存在混淆,因为似乎 h.264 需要特殊实现。我期待着从哪里开始调试的任何想法。

最佳答案

这意味着 ES 格式与容器不兼容。请阅读:Possible Locations for Sequence/Picture Parameter Set(s) for H.264 Stream

关于api - h.264解码器的 "invalid NAL unit size"是什么意思?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/57527547/

30 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com