Den 13.02.2024 03:26, skrev Andrew Randrianasulu:


вт, 13 февр. 2024 г., 05:20 Andrew Randrianasulu <randrianasulu@gmail.com>:


вт, 13 февр. 2024 г., 03:42 Terje J. Hanssen <terjejhanssen@gmail.com>:


Den 12.02.2024 00:07, skrev Andrew Randrianasulu:


пн, 12 февр. 2024 г., 02:02 Terje J. Hanssen <terjejhanssen@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@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.

may be this tip from 2015 will help with devede-ng too?



also be aware about non-utf8 subtitles with this method (possibly rare nowadays but still). devede-ng should have dropdown menu for selecting it.

https://groups.google.com/g/devede-forum/c/2Thoie_DSXQ


Now I have tried both ASII, UTF-8 and ISO-8859-1 encodings, but still DevedeNG exists with error, also already when trying the Preview button.
DevedeNG 4.17 has a newer gui and I cannot see there is any Advanced button for Mencoder.
I also tried to add a pure dv clip and a srt subtitle file in Devede, and got the error again.