我想使用未注册用户数据SEI消息将数据嵌入到H.264流中。在GStreamer中实现此目的最简单或正确的方法是什么?
我找到了this commit。它通过修改GstBuffer,使用GstByteReader查找NAL起始代码等将SEI消息(另一种)插入H.264 NAL流中。我发现此级别很低,希望使用{{ 3}}。
理想情况下,在编码之前,我的数据将使用GstH264Parser添加到RAW视频帧中。然后,我将在编码器之后放置另一个元素,以获取我的GstMeta数据并将其嵌入为SEI消息。
答案 0 :(得分:-1)
使用 appsrc 和漏斗元素。生成 SEI 并将其注入 appsrc。整个流水线如下。
gst-launch-1.0 funnel name=f \
appsrc ! video/x-h264, stream-format=byte-stream, alignment=au ! queue ! f. \
videotestsrc is-live=true ! x264enc ! video/x-h264, stream-format=byte-stream, alignment=au, profile=baseline ! queue ! f. \
f. ! queue ! h264parse ! video/x-h264, stream-format=byte-stream, alignment=nal ! filesink location=dump.h264