Den 11.02.2024 04:36, skrev Terje J. Hanssen:
Den 11.02.2024 00:57, skrev Andrew Randrianasulu:
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