【发布时间】:2020-12-16 18:58:08
【问题描述】:
我想通过 libav (ffmpeg) 将帧推送到 GStreamer appsrc 元素。问题是如何将AVFrame 或AVPicture 转换为GstBuffer。有人知道吗?
【问题讨论】:
标签: c ffmpeg gstreamer libav gstreamer-1.0
我想通过 libav (ffmpeg) 将帧推送到 GStreamer appsrc 元素。问题是如何将AVFrame 或AVPicture 转换为GstBuffer。有人知道吗?
【问题讨论】:
标签: c ffmpeg gstreamer libav gstreamer-1.0
看看:
GstBuffer
AVFrame Struct Reference和
AVPicture Struct Reference
要遵循的步骤:
如果您不确定如何解释 AVFrame 的不同字段以及如何使用它们,请浏览参考页面并研究提供的示例。
注意时间单位是 AVStream->time_base 单位。您可能必须将它们重新缩放/转换为所需的 gstreamer api 格式。
顺便说一句,为什么不坚持使用 gstreamer?同时使用两个不同的媒体框架的目的是什么? Gstreamer 支持 ffmpeg(尽管被认为是“丑陋的”)。
【讨论】: