如何在gstreamer C编程中动态获取和设置字幕文本
我想知道在视频队列中添加字幕行时是否可以处理事件。这是我的管道,我在C编程中也有同样的管道:如何在gstreamer C编程中动态获取和设置字幕文本,c,events,gstreamer,C,Events,Gstreamer,我想知道在视频队列中添加字幕行时是否可以处理事件。这是我的管道,我在C编程中也有同样的管道: gst-launch filesrc location=./video.ogv ! oggdemux name=demux \ demux. ! queue ! decodebin ! subtitleoverlay name=overlay ! ffmpegcolorspace ! autovideosink \ demux. ! queue ! vorbisdec ! autoaudiosink \
gst-launch filesrc location=./video.ogv ! oggdemux name=demux \
demux. ! queue ! decodebin ! subtitleoverlay name=overlay ! ffmpegcolorspace ! autovideosink \
demux. ! queue ! vorbisdec ! autoaudiosink \
filesrc location=./video.srt ! queue ! subparse ! overlay.
谢谢大家。您可以这样在队列的源板上放置一个缓冲区:
gst_pad_add_probe (source, GST_PAD_PROBE_TYPE_BUFFER, your_callback, NULL, NULL);
每次队列从中提取内容时,都会触发您的回调。不过,我相信你最好将探测器放在subparse的源键盘上,因为当按下字幕行以显示时,你肯定会调用你的回调,这就是我认为你真正想要的:)是的,就是这样谢谢你。但这已不再是当前的趋势,所以也许有一天我会尝试一下。我想自动翻译字幕!在这种情况下,最好的办法是编写一个“texttranslate”元素,我认为它可以链接到subparse插件之后。