video - 对编码流进行 ffmpeg 解码(作为缓冲区出现)

标签 video ffmpeg decoding encoder hevc

我在具有缓冲区大小的 uin8_t* 缓冲区中获取编码数据,我可以使用 ffmpeg 解码器来解码这些数据吗?
如果是这样,我怎样才能将 uint8_t* encoded_data 转换为 ffmpeg 所需的 AvPacket?
我需要初始化任何元数据参数吗?

最佳答案

AVPacket *pkt = av_packet_alloc();
av_new_packet(pkt, size);
memcpy(pkt->data, data, size);
..
av_packet_free(&pkt);
然后在“..”中将是您的数据包处理程序,通常调用 avcodec_send_packet()avcodec_receive_frame() .

关于video - 对编码流进行 ffmpeg 解码(作为缓冲区出现),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/72726739/

相关文章:

iphone - 使用 ffmpeg 覆盖视频 - 我想添加视频旋转代码并重写现有文件..我该怎么做?

opencv - 如何处理 cv::VideoCapture 解码错误?

bash 从 fcntl 锁定文件中排除循环

ffmpeg - 如何将视频分割成单独的编码帧?

ffmpeg - 为 v4l2 实现循环缓冲区

java - 大写重音字符显示为 “?”

javascript - .NET 中的 http 链接解码

audio - 使用Gstreamer在录制音频+视频的同时显示无音频视频

javascript - 检查 Vimeo 视频是否在 iframe 内加载 - jquery

java - 使用 Pinterest API 上传视频