[Cin] Adding soft subtitles to a DVD video

Terje J. Hanssen terjejhanssen at gmail.com
Tue Feb 13 01:42:52 CET 2024



Den 12.02.2024 00:07, skrev Andrew Randrianasulu:
>
>
> пн, 12 февр. 2024 г., 02:02 Terje J. Hanssen <terjejhanssen at gmail.com>:
>
>
>
>     Den 11.02.2024 04:36, skrev Terje J. Hanssen:
>>
>>
>>     Den 11.02.2024 00:57, skrev Andrew Randrianasulu:
>>>
>>>
>>>     сб, 10 февр. 2024 г., 21:10 Terje J. Hanssen via Cin
>>>     <cin at lists.cinelerra-gg.org>:
>>>
>>>         There are two things I want to add to my current
>>>         intermediate DVD mpg video files created with ffmpeg, and/or
>>>         to the DVD tree structure created with DeVeDeNG:
>>>
>>>             1. Create and add a Navigation menu in the beginning
>>>             This will be an upcoming, separate topic
>>>
>>>             2. Create and add Soft Subtitles as simple text info
>>>             commentaries to the video content
>>>             This is the topic for this post.
>>>
>>>
>>>         The reason that I want *Soft* Subtitles as a separate text
>>>         file stream related to timing, is because this should be
>>>         possible to *add* or import to an existing video file 
>>>         without the need to re-encode. It should also be flexible to
>>>         display on or off during playback, if I have understood this
>>>         correct so far.
>>>
>>>
>>>
>>>     IIRC you can't add text-based subtitles to DVD video. Blu-ray
>>>     yes, dvd no (both can use palletized reduced-color graphical
>>>     subtitles) ... so at least rendering text as palletized picture
>>>     and then muxing it into mpeg stream is unavoidable step,as far
>>>     as I understand.
>>
>>     I have prepared a new video file and will try to add sub-titles
>>     to-morrow
>>     http://www.g-raffa.eu/Cinelerra/HOWTO/subtitles.html#_how_to_create_soft_subtitles
>>
>>
>
>     There are written several articles and answers to forum topics
>     about adding soft subtitles to video.
>     My best but only partly working attempt so far, is by applying
>     this solution on StackOverflow:
>
>     /Use ffmpeg to add text subtitles: NOTE: This solution adds the
>     subtitles to the video as a separate optional (and
>     user-controlled) subtitle track.
>     https://stackoverflow.com/questions/8672809/use-ffmpeg-to-add-text-subtitles
>
>     /1) First I created a DVD-video compliant MPG file with pcm audio
>     from DV source (as previously)
>
>     ffmpeg -hide_banner -i DV09-1993.dv -f dvd -target pal-dvd -aspect
>     4:3 -b:v 8M -maxrate 8M -minrate 8M -bufsize 20M -muxrate 20M -mbd
>     rd -trellis 1 -cmp 0 -subcmp 2 -c:a pcm_dvd DV09-1993.mpg
>
>
>     2) Created the attached srt subtitle file:
>
>         DVD-09-1993_subtitle.srt
>
>
>
>     3) Added (muxed) the soft, external subtitle file (2) as a
>     separate track to the mpg video file (1)
>
>     ffmpeg -hide_banner -i DV09-1993.mpg -i DVD-09-1993_subtitle.srt
>     -c:v copy -c:a copy -c:s copy DV09-1993+srt.mpg
>
>         [mpeg @ 0x55aac13139c0] start time for stream 0 is not set in
>         estimate_timings_from_pts
>         Input #0, mpeg, from 'DV09-1993.mpg':
>         Duration: 00:28:04.44, start: 0.540000, bitrate: 9701 kb/s
>           Stream #0:0[0x1bf]: Data: dvd_nav_packet
>           Stream #0:1[0x1e0]: Video: mpeg2video (Main), yuv420p(tv,
>         progressive), 720x576 [SAR 16:15 DAR 4:3], 25 fps, 25 tbr, 90k tbn
>             Side data:
>         cpb: bitrate max/min/avg: 9000000/0/0 buffer size: 1835008
>         vbv_delay: N/A
>           Stream #0:2[0xa0]: Audio: pcm_dvd, 48000 Hz, stereo, s16,
>         1536 kb/s
>         Input #1, srt, from 'DVD-09-1993_subtitle.srt':
>         Duration: N/A, bitrate: N/A
>           Stream #1:0: Subtitle: subrip
>
>         [mpeg @ 0x55aac134b140] pcm_dvd in MPEG-1 system streams is
>         not widely supported, consider using the vob or the dvd muxer
>         to force a MPEG-2 program stream.
>         Output #0, mpeg, to 'DV09-1993+srt.mpg':
>         Metadata:
>         encoder         : Lavf60.16.100
>           Stream #0:0: Video: mpeg2video (Main), yuv420p(tv,
>         progressive), 720x576 [SAR 16:15 DAR 4:3], q=2-31, 25 fps, 25
>         tbr, 90k tbn
>             Side data:
>         cpb: bitrate max/min/avg: 9000000/0/0 buffer size: 1835008
>         vbv_delay: N/A
>           Stream #0:1: Audio: pcm_dvd, 48000 Hz, stereo, s16, 1536 kb/s
>           Stream #0:2: Subtitle: subrip
>         Stream mapping:
>           Stream #0:1 -> #0:0 (copy)
>           Stream #0:2 -> #0:1 (copy)
>           Stream #1:0 -> #0:2 (copy)
>         Press [q] to stop, [?] for help
>         [out#0/mpeg @ 0x55aac134af80] video:1644910kB audio:316303kB
>         subtitle:0kB other streams:0kB global headers:0kB muxing
>         overhead: 0.561824%
>         size= 1972232kB time=00:28:04.44 bitrate=9591.6kbits/s speed=
>         378x
>
>
>     4) Successful Playback of the final video and Audio with subtitles
>     using a "reinforced" FFplay command - also found on StackOverflow
>     https://stackoverflow.com/questions/50175075/can-ffplay-view-subtitles
>
>     ffplay -hide_banner -vf subtitles=DVD-09-1993_subtitle.srt
>     DV09-1993+srt.mpg
>
>
> isn't this command just uses external srt and not muxed one?

Yes, I think you'r right, and I wondered a bit about it, but had no 
keyboard shortcut for ffplay to test switching subtitles on and off.

So, afterwards I was more convinced - and fooled, when both Gnome Media 
player (Totem) and SMplayer automatically displayed the subtitles.
But that was when the srt subtitle file had the same name as the mpg 
video file and was located in the same directory. But this worked as 
well with the first mpg file (1).

The command line "vlc dvd.mpg dvd.srt" also worked with audio. Why both 
VLC and MPlayer lost the audio with the srt muxed mpg file I have no 
idea about.
-----------------------------

 From your first reply:

    rendering text as palletized picture and then muxing it into mpeg
    stream is unavoidable step,as far as I understand.
    But may be those DVD creation guis can do srt => dvd_sub conversion
    for you ?


Andrey mentioned the "srt2vobsub" program,  which seems to the same as 
the "srt2vob" script for DVD and "2dsub" for BD vobsub
https://web.archive.org/web/20130728210155/https://code.google.com/p/srt2vob


And from my reference to g-raffa:

    PRE-RENDERED SUBTITLES
         they are added (muxed) to the video stream as images with
    minimal information but can be separated (demuxed) when needed. They
    are used in DVDs         and they can be turned on and off.
         Most DVD authoring applications are capable of transcoding
    external subtitles to pre-rendered subtitles and of muxing them to
    the video stream.


Regarding the last sentece, this article describes the wanted solution - 
but on Linux ...?
https://robots.net/tech/how-to-burn-dvd-with-subtitles-srt/

while another article points on Handbrake as the best solution for most 
users (?)
https://helpdeskgeek.com/how-to/how-to-burn-a-dvd-disc-with-subtitles/


Re 8) above
I also send a request to Raster soft why DeVeDeNG exits with an error 
before finishing the mpg video file and creating the iso.

>
>
>
>         Input #0, mpeg, from 'DV09-1993+srt.mpg':=    0KB sq= 0B f=0/0
>         Duration: 00:28:04.45, start: 0.540000, bitrate: 9591 kb/s
>           Stream #0:0[0x1e0]: Video: mpeg2video (Main), yuv420p(tv,
>         progressive), 720x576 [SAR 16:15 DAR 4:3], 25 fps, 25 tbr, 90k tbn
>             Side data:
>         cpb: bitrate max/min/avg: 9000000/0/0 buffer size: 1835008
>         vbv_delay: N/A
>           Stream #0:1[0xa0]: Audio: pcm_dvd, 48000 Hz, stereo, s16,
>         1536 kb/s
>         [Parsed_subtitles_0 @ 0x7f7368464340] Shaper: FriBidi 0.19.6
>         (SIMPLE) HarfBuzz-ng 3.4.0 (COMPLEX)
>         [Parsed_subtitles_0 @ 0x7f7368464340] Using font provider
>         fontconfig
>         [Parsed_subtitles_0 @ 0x7f7368464340] fontselect: (Arial, 400,
>         0) -> /usr/share/fonts/truetype/LiberationSans-Regular.ttf, 0,
>         LiberationSans
>           39.75 A-V:  0.002 fd=   0 aq=  190KB vq= 1222KB sq=    0B f=0/0
>
>
>     5) Playback using VLC
>
>       * OK playback of video and subtitles when adding the subtitle file
>       * BUT: The AUDIO is lost in VLC !?
>       * Have looked into several menu items (unmute and force volume on)
>
>
>     Additional I wonder:
>
>     du -sh DV*.mpg
>
>         2,0G    DV09-1993.mpg (1)
>         1,9G    DV09-1993+srt.mpg (3)
>
>     6) Why is the merged (subtitled) file (3) smaller than the initial
>     file (1)?
>     Even that the srt file is very small, it should rather be opposite
>     .........
>
>     7) And why the ffmpeg output (3), when the initial input mpg file
>     (1) was created using "-f dvd -target pal-dvd", which I thought
>     was just MPEG-2 and vob?
>
>         [mpeg @ 0x55aac134b140] pcm_dvd in MPEG-1 system streams is
>         not widely supported, consider using the vob or the dvd muxer
>         to force a MPEG-2 program stream.
>
>
>     8) DevedeNG got so far an error while creating the DVD iso from (3)
>     Tested the movie file in the tree structure with VLC, and also
>     that without audio.....
>
>
>
>>>
>>>     But may be those DVD creation guis can do srt => dvd_sub
>>>     conversion for you ?
>>>
>>>
>>>         2.1 Preferably I want to add/import subtitles as fast and
>>>         easy using GUI interactive tools like DeVeDeNG or VLC if
>>>         possible?
>>>         Next thereafter could be using the more time consuming ffmpeg
>>>         https://www.baeldung.com/linux/subtitles-ffmpeg#how-to-add-soft-subtitles
>>>
>>>         2.2 So is the question if learning a special subtitle editor
>>>         is necessary to create the text file easier, like one of these 5
>>>         https://www.debugpoint.com/3-great-subtitle-editors-in-linux-systems/
>>>
>>>         Tip, suggestions or experience how to do this?
>>>
>>>
>>>
>>>
>>>
>>>
>>>
>>>         -- 
>>>         Cin mailing list
>>>         Cin at lists.cinelerra-gg.org
>>>         https://lists.cinelerra-gg.org/mailman/listinfo/cin
>>>
>>
>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <https://lists.cinelerra-gg.org/pipermail/cin/attachments/20240213/abb472db/attachment-0001.htm>


More information about the Cin mailing list