Need help - Closed Caption injection from external app into h264 stream

classic Classic list List threaded Threaded
1 message Options
Reply | Threaded
Open this post in threaded view

Need help - Closed Caption injection from external app into h264 stream


I would like to know if and how it's possible to inject closed caption into
a h264 stream?
Is it possible to use appsrc for it together with eg
ccextractor/ccconverter/cccombiner or do I need to write own plugin/element
for it?

goal: we have an external voice recognition app which converts speech to
text. We would like to inject this text in to a stream.

At current point I tried multiple things but none of them gives any results
and now I wonder if it's even possible what I'm trying to archive with
current existing elements and/or API's!?
Any help, point to right direction will be very much appreciated.

things I've tried:

•using pipeline to generate video: videotestsrc is-live=1 ! videoconvert !
videorate ! videoscale !
"video/x-raw,format=(string)I420,width=320,height=240,framerate=30/1" !
x264enc ! qtmux ! filesink location="test_cc.mp4"
adding buffer pad probe to capsFilter 'sink', then adding VideoCaptionMeta
on buffer() with some sample text data in a callback
thereafter it is pushed to eg appsrc ! ccextractor ! ccconverter !
cccombiner ! fakesink (tried to use different caps on appsrc)
ccextractor does not create 'caption' pad an/or it is not connected to

• also trying to use decklinkvideosrc output-cc=1 ! ccextractor ! etc like
porposed by Tim  here
'caption' pad is also not created in ccextracto, I assume it's not working
because I currently dont have any hdmi/sdi signal with embedded CC's to try
it out (I was hoping that output-cc=1 will generate some dummy
VideoCaptionMeta, i think im wrong)

• trying to play mpeg and mov files with embedded cc. Later I red somewhere
that it is not supported in Gstreamer decodebin/ gst-play-1.0 jet

• only one thing that was differen is an output file.mp4 with
VideoCaptionMeta which was created by appsrc ! ccextractor ! cccombiner !
... ! x264enc ! qtmux ! filesink location=file.mp4
This one had additional CC track when playing or inspecting in VLC, but
without any visible CC data.


Sent from:
gstreamer-devel mailing list
[hidden email]