- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
我完全困惑为什么这不起作用......
因此,我已经验证了我的 mjpg 编码正在工作,因为我在将 jpg 图像写入文件后验证了它。作为测试,我想在编码后对数据进行解码,只是为了进行完整性检查,但我不断遇到访问冲突,我完全不知道为什么。
这就是我定义解码缓冲区的方式
AVFrame *pFrameDecoded = avcodec_alloc_frame();
int num_bytes2 = avpicture_get_size(PIX_FMT_YUVJ422P, 320, 248);
uint8_t* frame2_buffer2 = (uint8_t *)av_malloc(num_bytes2*sizeof(uint8_t));
avpicture_fill((AVPicture*)pFrameDecoded, frame2_buffer2, PIX_FMT_YUVJ422P, 320, 240);
AVPacket packet
av_init_packet(&packet);
packet.data = NULL;
packet.size = 0;
out_size = avcodec_encode_video2(codecContext, &packet, frame2, &got_output);
if (got_output && got_output > 0) {
int finaldone;
// ERROR OCCURS HERE!!!
avcodec_decode_video2( codecContext, pFrameDecoded, &finaldone, &packet );
}
最佳答案
因此,您的崩溃发生是因为您为编码初始化了 codecContext,并且它的当前状态(例如保留的最后一帧)与编码有关。但是现在您尝试使用相同的上下文进行解码。编解码器上下文附加到特定的视频文件和操作。例如,您不能拥有一个上下文,将来自不同视频的随机数据包传递给它并期望它工作。您需要在您的情况下初始化不同的上下文以进行解码。
您还需要检查 out_size
在您的情况下,值可能是非负的 got_output
是 1 但 avcodec_encode_video2
仍然返回错误。
关于c++ - ffmpeg avcodec_encode_video2 到 avcodec_decode_video2,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/22431334/
我最近开始了一个依赖于将 FLV 直接流式传输到 iOS 设备的项目。最著名的是我使用了 ffmpeg(和一个 iOS 包装器 - kxmovie)。令我惊讶的是,iPhone 4 甚至无法播放 SD
我使用 vc++ express,我将使用 ffmpeg .. 但是在第一个程序中我遇到了麻烦。 vc++ 说 '标识符'avcodec_decode_video':找不到标识符'关于编译过程。 我不
我尝试使用以下示例来处理视频: 'An ffmpeg and SDL Tutorial' 。但编译器告诉我:对“avcodec_decode_video”的 undefined reference 。
我是一名优秀的程序员,十分优秀!