插入/插入/添加H.264 SEI

时间:2018-09-17 09:37:11

标签: gstreamer h.264

我想使用未注册用户数据SEI消息将数据嵌入到H.264流中。在GStreamer中实现此目的最简单或正确的方法是什么?

我找到了this commit。它通过修改GstBuffer,使用GstByteReader查找NAL起始代码等将SEI消息(另一种)插入H.264 NAL流中。我发现此级别很低,希望使用{{ 3}}。

理想情况下,在编码之前,我的数据将使用GstH264Parser添加到RAW视频帧中。然后,我将在编码器之后放置另一个元素,以获取我的GstMeta数据并将其嵌入为SEI消息。

1 个答案:

答案 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

参考:【GStreamer】基于NTP+SEI的视频流传输时延测量