Subtitles typically include text information for dialogue, captions, or descriptions, synchronized with the video content. In this article we are talking about DVB (Digital Video Broadcasting) subtitles which are embedded within a MPEG-2 TS or HLS stream, and also WebVTT subtitles which are delivered within HLS. Nimble Streamer allows transferring them from incoming streams into its output.
Enable the DVB subtitles processing for MPEG2TS and HLS streams
If your incoming MPEG2TS or HLS stream has DVB subtitles and you need to have those subtitles to be passed through to output MPEG-TS and HLS, you need to add the following parameter into your Nimble config:
dvb_subtitles_processing_enabled = trueOnce you add it and re-start Nimble Streamer, your output HLS and MPEG-TS will have DVB subtitles if your source streams have them.
Notice that Nimble Streamer can process only one subtitle track from your source stream.
Converting DVB subtitles into WebVTT
Nimble Streamer Transcoder can convert DVB subtitles into WebVTT for HLS live streams using image recognition AI.
DVB teletext can also be converted into WebVTT.
Read this article for more details.
Passing DVB subtitles through Live Transcoder
If you need to transcode your streams (e.g. make multiple resolutions or put graphics on top) and keep DVB subtitles from the source stream, you'll need to make some additional changes to your transcoding scenarios. Also notice that you must have dvb_subtitles_processing_enabled parameter enabled as described above.
Let's take a look at a simple scenario which allows keeping original stream as well as make lower resolutions.
Here you see /live/source stream being processed to get /live/output_480p output stream down-scaled to 480p (via Scale filter box) and keep the original rendition as /live/output_original stream.
There are 2 ways of passing the DVB - via video and via audio pipeline. We'll demonstrate both ways.
The /live/output_original stream has video being passed through - you can see long line with blue-to-orange gradient. This way, if you have full HD stream as input, you won't waste resources decoding and encoding the content to the same rendition. But the audio is split to decoder and encoder. Let's see their settings.
Decoder settings for DVB forwarding |
Encoder settings for DVB forwarding |
The /live/output_480p stream has audio being passed through while video is transformed to lower rendition. So here we use video pipeline to pass DVB subtitles. It's set up the same way - both in decoder and encoder elements. You need to check Forward DVB subtitles checkbox in video decoder and in video encoder settings under Expert setup section. As in case of audio, once you save the scenario and re-start input stream, the output will have the initial DVB subtitles.
Enable the WebVTT subtitles processing for Playout generated streams
Following our customers’ feedback, we continue our work on adding WebVTT support for Live Streams. Currently, you can produce a live stream with WebVTT subtitles from VOD files via Playout. To preserve these subtitles for Transcoder processed streams, use the “Forward WebVTT subtitles” checkbox in both decoder and encoder settings.
Set forwarding WebVTT subtitles in encoder settings |
Please also check Subtitles digest page to see what else Nimble can do for you.
Related documentation
Live Transcoder, MPEG2TS streaming, HLS streaming
No comments:
Post a Comment
If you face any specific issue or want to ask some question to our team,
PLEASE USE OUR HELPDESK
This will give much faster and precise response.
Thank you.
Note: Only a member of this blog may post a comment.