Groups | Search | Server Info | Keyboard shortcuts | Login | Register [http] [https] [nntp] [nntps]


Groups > alt.comp.os.windows-10 > #179270 > unrolled thread

Burn caption into video

Started byOliver <ollie@invalid.net>
First post2024-10-15 07:12 -0600
Last post2025-03-23 16:00 +0000
Articles 20 on this page of 24 — 7 participants

Back to article view | Back to alt.comp.os.windows-10


Contents

  Burn caption into video Oliver <ollie@invalid.net> - 2024-10-15 07:12 -0600
    Re: Burn caption into video Alan Browne <bitbucket@blackhole.com> - 2024-10-15 09:56 -0400
      Re: Burn caption into video Big Al <alan@invalid.com> - 2024-10-15 10:14 -0400
        Re: Burn caption into video Big Al <alan@invalid.com> - 2024-10-15 10:15 -0400
          Re: Burn caption into video Alan Browne <bitbucket@blackhole.com> - 2024-10-15 10:20 -0400
            Re: Burn caption into video Big Al <alan@invalid.com> - 2024-10-15 10:51 -0400
              Re: Burn caption into video Alan Browne <bitbucket@blackhole.com> - 2024-10-15 15:48 -0400
            Re: Burn caption into video Paul <nospam@needed.invalid> - 2024-10-15 13:12 -0400
              Re: Burn caption into video Alan Browne <bitbucket@blackhole.com> - 2024-10-15 15:49 -0400
        Re: Burn caption into video Alan Browne <bitbucket@blackhole.com> - 2024-10-15 10:18 -0400
          Re: Burn caption into video Paul <nospam@needed.invalid> - 2024-10-15 13:24 -0400
            Re: Burn caption into video Oliver <ollie@invalid.net> - 2024-10-15 17:53 -0600
              Re: Burn caption into video Paul <nospam@needed.invalid> - 2024-10-16 06:21 -0400
    Re: Burn caption into video "Carlos E.R." <robin_listas@es.invalid> - 2024-10-15 22:22 +0200
    Re: Burn caption into video Oliver <ollie@invalid.net> - 2025-02-26 00:52 -0700
      Re: Burn caption into video Geoff <geoff@nospamgeoffwood.org> - 2025-02-27 09:18 +1300
        Re: Burn caption into video Oliver <ollie@invalid.net> - 2025-02-26 17:28 -0700
          Re: Burn caption into video Geoff <geoff@nospamgeoffwood.org> - 2025-02-27 15:00 +1300
            Re: Burn caption into video Oliver <ollie@invalid.net> - 2025-02-27 11:47 -0700
              Re: Burn caption into video Geoff <geoff@nospamgeoffwood.org> - 2025-02-28 11:36 +1300
                Re: Burn caption into video Oliver <ollie@invalid.net> - 2025-02-27 17:33 -0700
                  Re: Burn caption into video Geoff <geoff@nospamgeoffwood.org> - 2025-02-28 15:15 +1300
                    Re: Burn caption into video Geoff <geoff@nospamgeoffwood.org> - 2025-02-28 15:20 +1300
                      Re: Burn caption into video candycanearter07 <candycanearter07@candycanearter07.nomail.afraid> - 2025-03-23 16:00 +0000

Page 1 of 2  [1] 2  Next page →


#179270 — Burn caption into video

FromOliver <ollie@invalid.net>
Date2024-10-15 07:12 -0600
SubjectBurn caption into video
Message-ID<velpnm$1ne4q$1@dont-email.me>
What's the best way on Windows to offline embed the text in an SRT
companion file to an MP4 video before uploading a short video clip to a web
site?

I made a short (ten second) video with my phone to upload to a web site.
I tried a few methods to remove the exif metadata which probably worked.

Then I created a simple SRT text file with the desired captions.
 1
 00:00:05,000 --> 00:00:10,000

 This is the first line of text.
 This is the second line of text

Then I tried to burn in (embed, hardcode, merge) that SRT into the MP4 so
that I only upload a single MP4 with a caption on the 2nd half of the MP4.

I tried Handbrake, VLC, MkvToMp4, VidCoder, Shotcut & a few others (all of
which failed but probably they failed mostly due to my own user error or
from my following of bad AI-generated instructions found in my searches).

Given that it's not as simple as it may seem, what method on Windows do you
use to burn an SRT file into a short video prior to upload to a web site?

[toc] | [next] | [standalone]


#179273

FromAlan Browne <bitbucket@blackhole.com>
Date2024-10-15 09:56 -0400
Message-ID<iwuPO.62493$Enpe.28329@fx38.iad>
In reply to#179270
On 2024-10-15 09:12, Oliver wrote:
> What's the best way on Windows to offline embed the text in an SRT
> companion file to an MP4 video before uploading a short video clip to a web
> site?
> 
> I made a short (ten second) video with my phone to upload to a web site.
> I tried a few methods to remove the exif metadata which probably worked.
> 
> Then I created a simple SRT text file with the desired captions.
> 1
> 00:00:05,000 --> 00:00:10,000
> 
> This is the first line of text.
> This is the second line of text
> 
> Then I tried to burn in (embed, hardcode, merge) that SRT into the MP4 so
> that I only upload a single MP4 with a caption on the 2nd half of the MP4.
> 
> I tried Handbrake, VLC, MkvToMp4, VidCoder, Shotcut & a few others (all of
> which failed but probably they failed mostly due to my own user error or
> from my following of bad AI-generated instructions found in my searches).
> 
> Given that it's not as simple as it may seem, what method on Windows do you
> use to burn an SRT file into a short video prior to upload to a web site?

There may be a way in exiftool.

Da Vinci Resolve will do this, but it's a steep learning curve - though 
there is probably a YouTube out there for it.

Da Vinci Resolve is free for non-commercial output.

-- 
"It would be a measureless disaster if Russian barbarism overlaid
  the culture and independence of the ancient States of Europe."
Winston Churchill

[toc] | [prev] | [next] | [standalone]


#179275

FromBig Al <alan@invalid.com>
Date2024-10-15 10:14 -0400
Message-ID<veltcq$1nj3g$2@dont-email.me>
In reply to#179273
On 10/15/24 09:56 AM, Alan Browne wrote:
> On 2024-10-15 09:12, Oliver wrote:
>> What's the best way on Windows to offline embed the text in an SRT
>> companion file to an MP4 video before uploading a short video clip to a web
>> site?
>>
>> I made a short (ten second) video with my phone to upload to a web site.
>> I tried a few methods to remove the exif metadata which probably worked.
>>
>> Then I created a simple SRT text file with the desired captions.
>> 1
>> 00:00:05,000 --> 00:00:10,000
>>
>> This is the first line of text.
>> This is the second line of text
>>
>> Then I tried to burn in (embed, hardcode, merge) that SRT into the MP4 so
>> that I only upload a single MP4 with a caption on the 2nd half of the MP4.
>>
>> I tried Handbrake, VLC, MkvToMp4, VidCoder, Shotcut & a few others (all of
>> which failed but probably they failed mostly due to my own user error or
>> from my following of bad AI-generated instructions found in my searches).
>>
>> Given that it's not as simple as it may seem, what method on Windows do you
>> use to burn an SRT file into a short video prior to upload to a web site?
> 
> There may be a way in exiftool.
> 
> Da Vinci Resolve will do this, but it's a steep learning curve - though there is probably a YouTube 
> out there for it.
> 
> Da Vinci Resolve is free for non-commercial output.
> 
Why not just use some video editor and overlay the text?  Then save the video and upload.
-- 
Linux Mint 21.3, Cinnamon 6.0.4,  Kernel 5.15.0-122-generic
Al

[toc] | [prev] | [next] | [standalone]


#179276

FromBig Al <alan@invalid.com>
Date2024-10-15 10:15 -0400
Message-ID<veltep$1nj3g$3@dont-email.me>
In reply to#179275
On 10/15/24 10:14 AM, Big Al wrote:
> On 10/15/24 09:56 AM, Alan Browne wrote:
>> On 2024-10-15 09:12, Oliver wrote:
>>> What's the best way on Windows to offline embed the text in an SRT
>>> companion file to an MP4 video before uploading a short video clip to a web
>>> site?
>>>
>>> I made a short (ten second) video with my phone to upload to a web site.
>>> I tried a few methods to remove the exif metadata which probably worked.
>>>
>>> Then I created a simple SRT text file with the desired captions.
>>> 1
>>> 00:00:05,000 --> 00:00:10,000
>>>
>>> This is the first line of text.
>>> This is the second line of text
>>>
>>> Then I tried to burn in (embed, hardcode, merge) that SRT into the MP4 so
>>> that I only upload a single MP4 with a caption on the 2nd half of the MP4.
>>>
>>> I tried Handbrake, VLC, MkvToMp4, VidCoder, Shotcut & a few others (all of
>>> which failed but probably they failed mostly due to my own user error or
>>> from my following of bad AI-generated instructions found in my searches).
>>>
>>> Given that it's not as simple as it may seem, what method on Windows do you
>>> use to burn an SRT file into a short video prior to upload to a web site?
>>
>> There may be a way in exiftool.
>>
>> Da Vinci Resolve will do this, but it's a steep learning curve - though there is probably a 
>> YouTube out there for it.
>>
>> Da Vinci Resolve is free for non-commercial output.
>>
> Why not just use some video editor and overlay the text?  Then save the video and upload.
Of course that might be what DaVinci is. ...
-- 
Linux Mint 21.3, Cinnamon 6.0.4,  Kernel 5.15.0-122-generic
Al

[toc] | [prev] | [next] | [standalone]


#179278

FromAlan Browne <bitbucket@blackhole.com>
Date2024-10-15 10:20 -0400
Message-ID<NSuPO.62497$Enpe.5611@fx38.iad>
In reply to#179276
On 2024-10-15 10:15, Big Al wrote:

>> Why not just use some video editor and overlay the text?  Then save 
>> the video and upload.
> Of course that might be what DaVinci is. ...

Oh, you replied to a post without checking.  How newbie-ish.
Feels bad huh! 😇

-- 
"It would be a measureless disaster if Russian barbarism overlaid
  the culture and independence of the ancient States of Europe."
Winston Churchill

[toc] | [prev] | [next] | [standalone]


#179280

FromBig Al <alan@invalid.com>
Date2024-10-15 10:51 -0400
Message-ID<velvho$1nj3g$4@dont-email.me>
In reply to#179278
On 10/15/24 10:20 AM, Alan Browne wrote:
> On 2024-10-15 10:15, Big Al wrote:
> 
>>> Why not just use some video editor and overlay the text?  Then save the video and upload.
>> Of course that might be what DaVinci is. ...
> 
> Oh, you replied to a post without checking.  How newbie-ish.
> Feels bad huh! 😇
> 
Olde, not newbie, just sleep walking.
-- 
Linux Mint 21.3, Cinnamon 6.0.4,  Kernel 5.15.0-122-generic
Al

[toc] | [prev] | [next] | [standalone]


#179288

FromAlan Browne <bitbucket@blackhole.com>
Date2024-10-15 15:48 -0400
Message-ID<CGzPO.6646$Aty4.1152@fx03.iad>
In reply to#179280
On 2024-10-15 10:51, Big Al wrote:
> On 10/15/24 10:20 AM, Alan Browne wrote:
>> On 2024-10-15 10:15, Big Al wrote:
>>
>>>> Why not just use some video editor and overlay the text?  Then save 
>>>> the video and upload.
>>> Of course that might be what DaVinci is. ...
>>
>> Oh, you replied to a post without checking.  How newbie-ish.
>> Feels bad huh! 😇
>>
> Olde, not newbie, just sleep walking.

Never happens to me.  Never.  Not once.  No! Really. 🙄

-- 
"It would be a measureless disaster if Russian barbarism overlaid
  the culture and independence of the ancient States of Europe."
Winston Churchill

[toc] | [prev] | [next] | [standalone]


#179285

FromPaul <nospam@needed.invalid>
Date2024-10-15 13:12 -0400
Message-ID<vem7p1$1pk6p$1@dont-email.me>
In reply to#179278
On Tue, 10/15/2024 10:20 AM, Alan Browne wrote:
> On 2024-10-15 10:15, Big Al wrote:
> 
>>> Why not just use some video editor and overlay the text?  Then save the video and upload.
>> Of course that might be what DaVinci is. ...
> 
> Oh, you replied to a post without checking.  How newbie-ish.
> Feels bad huh! 😇
> 
You should try the prescription he's on.

   Paul

[toc] | [prev] | [next] | [standalone]


#179289

FromAlan Browne <bitbucket@blackhole.com>
Date2024-10-15 15:49 -0400
Message-ID<yHzPO.6647$Aty4.1302@fx03.iad>
In reply to#179285
On 2024-10-15 13:12, Paul wrote:
> On Tue, 10/15/2024 10:20 AM, Alan Browne wrote:
>> On 2024-10-15 10:15, Big Al wrote:
>>
>>>> Why not just use some video editor and overlay the text?  Then save the video and upload.
>>> Of course that might be what DaVinci is. ...
>>
>> Oh, you replied to a post without checking.  How newbie-ish.
>> Feels bad huh! 😇
>>
> You should try the prescription he's on.

I don't do drugs.  Especially if they are prescribed. 🤣

-- 
"It would be a measureless disaster if Russian barbarism overlaid
  the culture and independence of the ancient States of Europe."
Winston Churchill

[toc] | [prev] | [next] | [standalone]


#179277

FromAlan Browne <bitbucket@blackhole.com>
Date2024-10-15 10:18 -0400
Message-ID<SQuPO.62496$Enpe.56300@fx38.iad>
In reply to#179275
On 2024-10-15 10:14, Big Al wrote:
> On 10/15/24 09:56 AM, Alan Browne wrote:

>> Da Vinci Resolve will do this, but it's a steep learning curve - 
>> though there is probably a YouTube out there for it.
>>
>> Da Vinci Resolve is free for non-commercial output.
>>
> Why not just use some video editor and overlay the text?  Then save the 
> video and upload.

Da Vinci Resolve mean anything to you?

-- 
"It would be a measureless disaster if Russian barbarism overlaid
  the culture and independence of the ancient States of Europe."
Winston Churchill

[toc] | [prev] | [next] | [standalone]


#179286

FromPaul <nospam@needed.invalid>
Date2024-10-15 13:24 -0400
Message-ID<vem8fu$1po1s$1@dont-email.me>
In reply to#179277
On Tue, 10/15/2024 10:18 AM, Alan Browne wrote:
> On 2024-10-15 10:14, Big Al wrote:
>> On 10/15/24 09:56 AM, Alan Browne wrote:
> 
>>> Da Vinci Resolve will do this, but it's a steep learning curve - though there is probably a YouTube out there for it.
>>>
>>> Da Vinci Resolve is free for non-commercial output.
>>>
>> Why not just use some video editor and overlay the text?  Then save the video and upload.
> 
> Da Vinci Resolve mean anything to you?
> 

These people have horrible presentation for web pages,
but it is what it is.

https://www.baeldung.com/linux/subtitles-ffmpeg

sample_video_subtitle_ffmpeg.srt subtitle file

1
00:00:04,700 --> 00:00:05,090
You know what

2
00:00:05,100 --> 00:00:05,990
we should all do.

3
00:00:07,200 --> 00:00:08,690
Go see a musical.

4
00:00:11,900 --> 00:00:12,490
sure,

5
00:00:14,770 --> 00:00:16,530
and you know which one we should see

6
00:00:17,580 --> 00:00:19,880
The 1996, Tony Award winner.

ffmpeg -i sample_video_ffmpeg.mp4 -vf subtitles=sample_video_subtitle_ffmpeg.srt output_srt.mp4

That seems to be missing a -c copy, but maybe all the tracks will be there.

Using something like ffprobe.exe afterwards on output_srt.mp4 , should
indicate whether an additional new track is present.

You don't absolutely need an editor for this. I like FFMPEG
because it's the Swiss Army Knife. It has enough constructs
inside to make a full-blown editor and be the engine for it.
It's that good. You can do fade-in and fade-out for example,
from the command line, splice bits of tracks together, and so on.

Of course GUI people don't like that, but you don't get to see
just how good it is, until you find a posting from someone who
edits videos all day long for Internet use. And they'll show
you some amazing multi-line commands.

   Paul

[toc] | [prev] | [next] | [standalone]


#179293

FromOliver <ollie@invalid.net>
Date2024-10-15 17:53 -0600
Message-ID<vemv97$1t9gr$1@dont-email.me>
In reply to#179286
On Tue, 15 Oct 2024 13:24:16 -0400, Paul <nospam@needed.invalid> wrote 

> ffmpeg -i sample_video_ffmpeg.mp4 -vf subtitles=sample_video_subtitle_ffmpeg.srt output_srt.mp4
> 
> That seems to be missing a -c copy, but maybe all the tracks will be there.
> 
> Using something like ffprobe.exe afterwards on output_srt.mp4 , should
> indicate whether an additional new track is present.

Using the simple ten second video clip shot from my phone and this simple 
hand-crafted SRT file, the suggested command worked (almost) perfectly. 
  ====================
1
00:00:05,000 --> 00:00:07,000

This is line 1.
This is line 2.
  ====================
ffmpeg -i test.mp4 -vf subtitles=test.srt merged.mp4
ffprobe merged.mp4
move test.srt test.bak
  ====================
Thanks to your suggested ffmpeg melding of files command,
(most of) the SRT was hard coded merged into the video.

The only thing that didn't work is line 2 never showed up.
But I don't care about that as a line is enough to prove it works.

BTW, I have no idea what you mean by "all the tracks" but I did 
run the suggested ffprobe command which output what you see below.

Did the ffprobe output indicate to you any possible missing tracks?

  ====================
ffmpeg -i test.mp4 -vf subtitles=test.srt merged.mp4
  ====================
ffmpeg version N-114515-gfa110c32b5-20240329 Copyright (c) 2000-2024 the FFmpeg developers
  built with gcc 13.2.0 (crosstool-NG 1.26.0.65_ecc5e41)
  configuration: --prefix=/ffbuild/prefix --pkg-config-flags=--static --pkg-config=pkg-config --cross-prefix=x86_64-w64-mingw32- 
   --arch=x86_64 --target-os=mingw32 --enable-gpl --enable-version3 --disable-debug --enable-shared --disable-static --disable-w32threads
   --enable-pthreads --enable-iconv --enable-libxml2 --enable-zlib --enable-libfreetype --enable-libfribidi --enable-gmp --enable-lzma 
   --enable-fontconfig --enable-libharfbuzz --enable-libvorbis --enable-opencl --disable-libpulse --enable-libvmaf --disable-libxcb 
   --disable-xlib --enable-amf --enable-libaom --enable-libaribb24 --enable-avisynth --enable-chromaprint --enable-libdav1d 
   --enable-libdavs2 --enable-libdvdread --enable-libdvdnav --disable-libfdk-aac --enable-ffnvcodec --enable-cuda-llvm --enable-frei0r 
   --enable-libgme --enable-libkvazaar --enable-libaribcaption --enable-libass --enable-libbluray --enable-libjxl --enable-libmp3lame 
   --enable-libopus --enable-librist --enable-libssh --enable-libtheora --enable-libvpx --enable-libwebp --enable-lv2 --enable-libvpl 
   --enable-openal --enable-libopencore-amrnb --enable-libopencore-amrwb --enable-libopenh264 --enable-libopenjpeg --enable-libopenmpt 
   --enable-librav1e --enable-librubberband --enable-schannel --enable-sdl2 --enable-libsoxr --enable-libsrt --enable-libsvtav1 
   --enable-libtwolame --enable-libuavs3d --disable-libdrm --enable-vaapi --enable-libvidstab --enable-vulkan --enable-libshaderc 
   --enable-libplacebo --enable-libx264 --enable-libx265 --enable-libxavs2 --enable-libxvid --enable-libzimg --enable-libzvbi 
   --extra-cflags=-DLIBTWOLAME_STATIC --extra-cxxflags= --extra-libs=-lgomp --extra-ldflags=-pthread --extra-ldexeflags= 
   --cc=x86_64-w64-mingw32-gcc --cxx=x86_64-w64-mingw32-g++ --ar=x86_64-w64-mingw32-gcc-ar --ranlib=x86_64-w64-mingw32-gcc-ranlib 
   --nm=x86_64-w64-mingw32-gcc-nm --extra-version=20240329 
  libavutil      59. 10.100 / 59. 10.100
  libavcodec     61.  4.100 / 61.  4.100
  libavformat    61.  2.100 / 61.  2.100
  libavdevice    61.  2.100 / 61.  2.100
  libavfilter    10.  2.100 / 10.  2.100
  libswscale      8.  2.100 /  8.  2.100
  libswresample   5.  2.100 /  5.  2.100
  libpostproc    58.  2.100 / 58.  2.100
Input #0, mov,mp4,m4a,3gp,3g2,mj2, from 'test.mp4':
  Metadata:
    major_brand     : isom
    minor_version   : 0
    compatible_brands: mp41avc1
    creation_time   : 2024-10-15T06:44:53.000000Z
    encoder         : vlc 3.0.20 stream output
    encoder-eng     : vlc 3.0.20 stream output
  Duration: 00:00:06.23, start: 0.000000, bitrate: 14964 kb/s
  Stream #0:0[0x1](eng): Audio: mp3 (mp3float) (mp4a / 0x6134706D), 44100 Hz, stereo, fltp, 127 kb/s (default)
      Metadata:
        creation_time   : 2024-10-15T06:44:53.000000Z
        handler_name    : SoundHandler
        vendor_id       : [0][0][0][0]
  Stream #0:1[0x2](eng): Video: h264 (High) (avc1 / 0x31637661), yuv420p(tv, bt709, progressive), 1920x1080 [SAR 1:1 DAR 16:9], 14827 kb/s, 30.17 fps, 30 tbr, 1000k tbn (default)
      Metadata:
        creation_time   : 2024-10-15T06:44:53.000000Z
        handler_name    : VideoHandler
        vendor_id       : [0][0][0][0]
      Side data:
        displaymatrix: rotation of -90.00 degrees
[Parsed_subtitles_0 @ 0000025597957c00] libass API version: 0x1701000
[Parsed_subtitles_0 @ 0000025597957c00] libass source: commit: 649a7c2e1fc6f4188ea1a89968560715800b883d-dirty
[Parsed_subtitles_0 @ 0000025597957c00] Shaper: FriBidi 1.0.13 (SIMPLE) HarfBuzz-ng 8.3.1 (COMPLEX)
[Parsed_subtitles_0 @ 0000025597957c00] Using font provider directwrite (with GDI)
[Parsed_subtitles_0 @ 0000025597957c00] libass wasn't built with ASS_FEATURE_WRAP_UNICODE support
Stream mapping:
  Stream #0:1 -> #0:0 (h264 (native) -> h264 (libx264))
  Stream #0:0 -> #0:1 (mp3 (mp3float) -> aac (native))
Press [q] to stop, [?] for help
[Parsed_subtitles_0 @ 0000025597955800] libass API version: 0x1701000
[Parsed_subtitles_0 @ 0000025597955800] libass source: commit: 649a7c2e1fc6f4188ea1a89968560715800b883d-dirty
[Parsed_subtitles_0 @ 0000025597955800] Shaper: FriBidi 1.0.13 (SIMPLE) HarfBuzz-ng 8.3.1 (COMPLEX)
[Parsed_subtitles_0 @ 0000025597955800] Using font provider directwrite (with GDI)
[Parsed_subtitles_0 @ 0000025597955800] libass wasn't built with ASS_FEATURE_WRAP_UNICODE support
[libx264 @ 0000025597949c00] using SAR=1/1
[libx264 @ 0000025597949c00] using cpu capabilities: MMX2 SSE2Fast LZCNT
[libx264 @ 0000025597949c00] profile High, level 4.0, 4:2:0, 8-bit
[libx264 @ 0000025597949c00] 264 - core 164 - H.264/MPEG-4 AVC codec - Copyleft 2003-2024 - http://www.videolan.org/x264.html - options: cabac=1 ref=3 deblock=1:0:0 analyse=0x3:0x113 me=hex subme=7 psy=1 psy_rd=1.00:0.00 mixed_ref=1 me_range=16 chroma_me=1 trellis=1 8x8dct=1 cqm=0 deadzone=21,11 fast_pskip=1 chroma_qp_offset=-2 threads=6 lookahead_threads=1 sliced_threads=0 nr=0 decimate=1 interlaced=0 bluray_compat=0 constrained_intra=0 bframes=3 b_pyramid=2 b_adapt=1 b_bias=0 direct=1 weightb=1 open_gop=0 weightp=2 keyint=250 keyint_min=25 scenecut=40 intra_refresh=0 rc_lookahead=40 rc=crf mbtree=1 crf=23.0 qcomp=0.60 qpmin=0 qpmax=69 qpstep=4 ip_ratio=1.40 aq=1:1.00
Output #0, mp4, to 'merged.mp4':
  Metadata:
    major_brand     : isom
    minor_version   : 0
    compatible_brands: mp41avc1
    encoder         : Lavf61.2.100
  Stream #0:0(eng): Video: h264 (avc1 / 0x31637661), yuv420p(tv, bt709, progressive), 1080x1920 [SAR 1:1 DAR 9:16], q=2-31, 30 fps, 15360 tbn (default)
      Metadata:
        creation_time   : 2024-10-15T06:44:53.000000Z
        handler_name    : VideoHandler
        vendor_id       : [0][0][0][0]
        encoder         : Lavc61.4.100 libx264
      Side data:
        cpb: bitrate max/min/avg: 0/0/0 buffer size: 0 vbv_delay: N/A
  Stream #0:1(eng): Audio: aac (LC) (mp4a / 0x6134706D), 44100 Hz, stereo, fltp, 128 kb/s (default)
      Metadata:
        creation_time   : 2024-10-15T06:44:53.000000Z
        handler_name    : SoundHandler
        vendor_id       : [0][0][0][0]
        encoder         : Lavc61.4.100 aac
[Parsed_subtitles_0 @ 0000025597955800] fontselect: (Arial, 400, 0) -> ArialMT, 0, ArialMTdrop=0 speed=0.171x
[out#0/mp4 @ 00000255978eed00] video:11219KiB audio:102KiB subtitle:0KiB other streams:0KiB global headers:0KiB muxing overhead: 0.081056%
frame=  189 fps=6.0 q=-1.0 Lsize=   11329KiB time=00:00:06.20 bitrate=14960.4kbits/s dup=1 drop=0 speed=0.196x
[libx264 @ 0000025597949c00] frame I:5     Avg QP:22.96  size: 94847
[libx264 @ 0000025597949c00] frame P:52    Avg QP:25.76  size: 67137
[libx264 @ 0000025597949c00] frame B:132   Avg QP:26.43  size: 56983
[libx264 @ 0000025597949c00] consecutive B-frames:  6.3%  1.1%  1.6% 91.0%
[libx264 @ 0000025597949c00] mb I  I16..4: 17.9% 66.7% 15.4%
[libx264 @ 0000025597949c00] mb P  I16..4: 10.8% 57.5%  8.8%  P16..4: 13.8%  3.5%  1.1%  0.0%  0.0%    skip: 4.5%
[libx264 @ 0000025597949c00] mb B  I16..4:  5.7% 31.9%  6.5%  B16..8: 26.3%  9.0%  1.6%  direct: 3.6%  skip:15.5%  L0:53.8% L1:40.2% BI: 6.1%
[libx264 @ 0000025597949c00] 8x8 transform intra:72.9% inter:83.4%
[libx264 @ 0000025597949c00] coded y,uvDC,uvAC intra: 60.5% 46.3% 8.0% inter: 26.1% 30.2% 0.9%
[libx264 @ 0000025597949c00] i16 v,h,dc,p: 30% 28% 13% 29%
[libx264 @ 0000025597949c00] i8 v,h,dc,ddl,ddr,vr,hd,vl,hu: 18% 18% 19%  6%  8%  8%  8%  8%  9%
[libx264 @ 0000025597949c00] i4 v,h,dc,ddl,ddr,vr,hd,vl,hu: 18% 19% 13%  6% 11%  9% 10%  6%  7%
[libx264 @ 0000025597949c00] i8c dc,h,v,p: 55% 20% 22%  4%
[libx264 @ 0000025597949c00] Weighted P-Frames: Y:0.0% UV:0.0%
[libx264 @ 0000025597949c00] ref P L0: 56.6%  7.6% 20.0% 15.8%
[libx264 @ 0000025597949c00] ref B L0: 86.1% 10.1%  3.9%
[libx264 @ 0000025597949c00] ref B L1: 94.3%  5.7%
[libx264 @ 0000025597949c00] kb/s:14586.81
[aac @ 0000025599caa040] Qavg: 1098.128
  ====================
ffprobe.exe merged.mp4
  ====================
ffprobe version N-114515-gfa110c32b5-20240329 Copyright (c) 2007-2024 the FFmpeg developers
  built with gcc 13.2.0 (crosstool-NG 1.26.0.65_ecc5e41)
  configuration: --prefix=/ffbuild/prefix --pkg-config-flags=--static --pkg-config=pkg-config --cross-prefix=x86_64-w64-mingw32- 
   --arch=x86_64 --target-os=mingw32 --enable-gpl --enable-version3 --disable-debug --enable-shared --disable-static --disable-w32threads 
    --enable-pthreads --enable-iconv --enable-libxml2 --enable-zlib --enable-libfreetype --enable-libfribidi --enable-gmp --enable-lzma 
   --enable-fontconfig --enable-libharfbuzz --enable-libvorbis --enable-opencl --disable-libpulse --enable-libvmaf --disable-libxcb 
   --disable-xlib --enable-amf --enable-libaom --enable-libaribb24 --enable-avisynth --enable-chromaprint --enable-libdav1d 
   --enable-libdavs2 --enable-libdvdread --enable-libdvdnav --disable-libfdk-aac --enable-ffnvcodec --enable-cuda-llvm --enable-frei0r 
   --enable-libgme --enable-libkvazaar --enable-libaribcaption --enable-libass --enable-libbluray --enable-libjxl --enable-libmp3lame 
   --enable-libopus --enable-librist --enable-libssh --enable-libtheora --enable-libvpx --enable-libwebp --enable-lv2 --enable-libvpl 
   --enable-openal --enable-libopencore-amrnb --enable-libopencore-amrwb --enable-libopenh264 --enable-libopenjpeg --enable-libopenmpt 
   --enable-librav1e --enable-librubberband --enable-schannel --enable-sdl2 --enable-libsoxr --enable-libsrt --enable-libsvtav1 
   --enable-libtwolame --enable-libuavs3d --disable-libdrm --enable-vaapi --enable-libvidstab --enable-vulkan --enable-libshaderc 
   --enable-libplacebo --enable-libx264 --enable-libx265 --enable-libxavs2 --enable-libxvid --enable-libzimg --enable-libzvbi 
   --extra-cflags=-DLIBTWOLAME_STATIC --extra-cxxflags= --extra-libs=-lgomp --extra-ldflags=-pthread --extra-ldexeflags= 
   --cc=x86_64-w64-mingw32-gcc --cxx=x86_64-w64-mingw32-g++ --ar=x86_64-w64-mingw32-gcc-ar --ranlib=x86_64-w64-mingw32-gcc-ranlib 
   --nm=x86_64-w64-mingw32-gcc-nm --extra-version=20240329
  libavutil      59. 10.100 / 59. 10.100
  libavcodec     61.  4.100 / 61.  4.100
  libavformat    61.  2.100 / 61.  2.100
  libavdevice    61.  2.100 / 61.  2.100
  libavfilter    10.  2.100 / 10.  2.100
  libswscale      8.  2.100 /  8.  2.100
  libswresample   5.  2.100 /  5.  2.100
  libpostproc    58.  2.100 / 58.  2.100
Input #0, mov,mp4,m4a,3gp,3g2,mj2, from 'merged.mp4':
  Metadata:
    major_brand     : isom
    minor_version   : 512
    compatible_brands: isomiso2avc1mp41
    encoder         : Lavf61.2.100
  Duration: 00:00:06.30, start: 0.000000, bitrate: 14731 kb/s
  Stream #0:0[0x1](eng): Video: h264 (High) (avc1 / 0x31637661), yuv420p(tv, bt709, progressive), 1080x1920 [SAR 1:1 DAR 9:16], 14587 kb/s, 30 fps, 30 tbr, 15360 tbn (default)
      Metadata:
        handler_name    : VideoHandler
        vendor_id       : [0][0][0][0]
        encoder         : Lavc61.4.100 libx264
  Stream #0:1[0x2](eng): Audio: aac (LC) (mp4a / 0x6134706D), 44100 Hz, stereo, fltp, 134 kb/s (default)
      Metadata:
        handler_name    : SoundHandler
        vendor_id       : [0][0][0][0]
  ====================

[toc] | [prev] | [next] | [standalone]


#179297

FromPaul <nospam@needed.invalid>
Date2024-10-16 06:21 -0400
Message-ID<veo42c$27emb$1@dont-email.me>
In reply to#179293
On Tue, 10/15/2024 7:53 PM, Oliver wrote:
> On Tue, 15 Oct 2024 13:24:16 -0400, Paul <nospam@needed.invalid> wrote
>> ffmpeg -i sample_video_ffmpeg.mp4 -vf subtitles=sample_video_subtitle_ffmpeg.srt output_srt.mp4
>>
>> That seems to be missing a -c copy, but maybe all the tracks will be there.
>>
>> Using something like ffprobe.exe afterwards on output_srt.mp4 , should
>> indicate whether an additional new track is present.
> 
> Using the simple ten second video clip shot from my phone and this simple hand-crafted SRT file, the suggested command worked (almost) perfectly.  ====================
> 1
> 00:00:05,000 --> 00:00:07,000
> 
> This is line 1.
> This is line 2.
>  ====================
> ffmpeg -i test.mp4 -vf subtitles=test.srt merged.mp4
> ffprobe merged.mp4
> move test.srt test.bak
>  ====================
> Thanks to your suggested ffmpeg melding of files command,
> (most of) the SRT was hard coded merged into the video.
> 
> The only thing that didn't work is line 2 never showed up.
> But I don't care about that as a line is enough to prove it works.
> 
> BTW, I have no idea what you mean by "all the tracks" but I did run the suggested ffprobe command which output what you see below.
> 
> Did the ffprobe output indicate to you any possible missing tracks?
> 
>  ====================
> ffmpeg -i test.mp4 -vf subtitles=test.srt merged.mp4
>  ====================
> ffmpeg version N-114515-gfa110c32b5-20240329 Copyright (c) 2000-2024 the FFmpeg developers
>  built with gcc 13.2.0 (crosstool-NG 1.26.0.65_ecc5e41)
>  configuration: --prefix=/ffbuild/prefix --pkg-config-flags=--static --pkg-config=pkg-config --cross-prefix=x86_64-w64-mingw32-   --arch=x86_64 --target-os=mingw32 --enable-gpl --enable-version3 --disable-debug --enable-shared --disable-static --disable-w32threads
>   --enable-pthreads --enable-iconv --enable-libxml2 --enable-zlib --enable-libfreetype --enable-libfribidi --enable-gmp --enable-lzma   --enable-fontconfig --enable-libharfbuzz --enable-libvorbis --enable-opencl --disable-libpulse --enable-libvmaf --disable-libxcb   --disable-xlib --enable-amf --enable-libaom --enable-libaribb24 --enable-avisynth --enable-chromaprint --enable-libdav1d   --enable-libdavs2 --enable-libdvdread --enable-libdvdnav --disable-libfdk-aac --enable-ffnvcodec --enable-cuda-llvm --enable-frei0r   --enable-libgme --enable-libkvazaar --enable-libaribcaption --enable-libass --enable-libbluray --enable-libjxl --enable-libmp3lame   --enable-libopus --enable-librist --enable-libssh --enable-libtheora --enable-libvpx --enable-libwebp --enable-lv2 --enable-libvpl   --enable-openal --enable-libopencore-amrnb --enable-libopencore-amrwb --enable-libopenh264 --enable-libopenjpeg --enable-libopenmpt   --enable-librav1e --enable-librubberband --enable-schannel
> --enable-sdl2 --enable-libsoxr --enable-libsrt --enable-libsvtav1   --enable-libtwolame --enable-libuavs3d --disable-libdrm --enable-vaapi --enable-libvidstab --enable-vulkan --enable-libshaderc   --enable-libplacebo --enable-libx264 --enable-libx265 --enable-libxavs2 --enable-libxvid --enable-libzimg --enable-libzvbi   --extra-cflags=-DLIBTWOLAME_STATIC --extra-cxxflags= --extra-libs=-lgomp --extra-ldflags=-pthread --extra-ldexeflags=   --cc=x86_64-w64-mingw32-gcc --cxx=x86_64-w64-mingw32-g++ --ar=x86_64-w64-mingw32-gcc-ar --ranlib=x86_64-w64-mingw32-gcc-ranlib   --nm=x86_64-w64-mingw32-gcc-nm --extra-version=20240329  libavutil      59. 10.100 / 59. 10.100
>  libavcodec     61.  4.100 / 61.  4.100
>  libavformat    61.  2.100 / 61.  2.100
>  libavdevice    61.  2.100 / 61.  2.100
>  libavfilter    10.  2.100 / 10.  2.100
>  libswscale      8.  2.100 /  8.  2.100
>  libswresample   5.  2.100 /  5.  2.100
>  libpostproc    58.  2.100 / 58.  2.100
> Input #0, mov,mp4,m4a,3gp,3g2,mj2, from 'test.mp4':
>  Metadata:
>    major_brand     : isom
>    minor_version   : 0
>    compatible_brands: mp41avc1
>    creation_time   : 2024-10-15T06:44:53.000000Z
>    encoder         : vlc 3.0.20 stream output
>    encoder-eng     : vlc 3.0.20 stream output
>  Duration: 00:00:06.23, start: 0.000000, bitrate: 14964 kb/s
>  Stream #0:0[0x1](eng): Audio: mp3 (mp3float) (mp4a / 0x6134706D), 44100 Hz, stereo, fltp, 127 kb/s (default)
>      Metadata:
>        creation_time   : 2024-10-15T06:44:53.000000Z
>        handler_name    : SoundHandler
>        vendor_id       : [0][0][0][0]
>  Stream #0:1[0x2](eng): Video: h264 (High) (avc1 / 0x31637661), yuv420p(tv, bt709, progressive), 1920x1080 [SAR 1:1 DAR 16:9], 14827 kb/s, 30.17 fps, 30 tbr, 1000k tbn (default)
>      Metadata:
>        creation_time   : 2024-10-15T06:44:53.000000Z
>        handler_name    : VideoHandler
>        vendor_id       : [0][0][0][0]
>      Side data:
>        displaymatrix: rotation of -90.00 degrees
> [Parsed_subtitles_0 @ 0000025597957c00] libass API version: 0x1701000
> [Parsed_subtitles_0 @ 0000025597957c00] libass source: commit: 649a7c2e1fc6f4188ea1a89968560715800b883d-dirty
> [Parsed_subtitles_0 @ 0000025597957c00] Shaper: FriBidi 1.0.13 (SIMPLE) HarfBuzz-ng 8.3.1 (COMPLEX)
> [Parsed_subtitles_0 @ 0000025597957c00] Using font provider directwrite (with GDI)
> [Parsed_subtitles_0 @ 0000025597957c00] libass wasn't built with ASS_FEATURE_WRAP_UNICODE support
> Stream mapping:
>  Stream #0:1 -> #0:0 (h264 (native) -> h264 (libx264))
>  Stream #0:0 -> #0:1 (mp3 (mp3float) -> aac (native))
> Press [q] to stop, [?] for help
> [Parsed_subtitles_0 @ 0000025597955800] libass API version: 0x1701000
> [Parsed_subtitles_0 @ 0000025597955800] libass source: commit: 649a7c2e1fc6f4188ea1a89968560715800b883d-dirty
> [Parsed_subtitles_0 @ 0000025597955800] Shaper: FriBidi 1.0.13 (SIMPLE) HarfBuzz-ng 8.3.1 (COMPLEX)
> [Parsed_subtitles_0 @ 0000025597955800] Using font provider directwrite (with GDI)
> [Parsed_subtitles_0 @ 0000025597955800] libass wasn't built with ASS_FEATURE_WRAP_UNICODE support
> [libx264 @ 0000025597949c00] using SAR=1/1
> [libx264 @ 0000025597949c00] using cpu capabilities: MMX2 SSE2Fast LZCNT
> [libx264 @ 0000025597949c00] profile High, level 4.0, 4:2:0, 8-bit
> [libx264 @ 0000025597949c00] 264 - core 164 - H.264/MPEG-4 AVC codec - Copyleft 2003-2024 - http://www.videolan.org/x264.html - options: cabac=1 ref=3 deblock=1:0:0 analyse=0x3:0x113 me=hex subme=7 psy=1 psy_rd=1.00:0.00 mixed_ref=1 me_range=16 chroma_me=1 trellis=1 8x8dct=1 cqm=0 deadzone=21,11 fast_pskip=1 chroma_qp_offset=-2 threads=6 lookahead_threads=1 sliced_threads=0 nr=0 decimate=1 interlaced=0 bluray_compat=0 constrained_intra=0 bframes=3 b_pyramid=2 b_adapt=1 b_bias=0 direct=1 weightb=1 open_gop=0 weightp=2 keyint=250 keyint_min=25 scenecut=40 intra_refresh=0 rc_lookahead=40 rc=crf mbtree=1 crf=23.0 qcomp=0.60 qpmin=0 qpmax=69 qpstep=4 ip_ratio=1.40 aq=1:1.00
> Output #0, mp4, to 'merged.mp4':
>  Metadata:
>    major_brand     : isom
>    minor_version   : 0
>    compatible_brands: mp41avc1
>    encoder         : Lavf61.2.100
>  Stream #0:0(eng): Video: h264 (avc1 / 0x31637661), yuv420p(tv, bt709, progressive), 1080x1920 [SAR 1:1 DAR 9:16], q=2-31, 30 fps, 15360 tbn (default)
>      Metadata:
>        creation_time   : 2024-10-15T06:44:53.000000Z
>        handler_name    : VideoHandler
>        vendor_id       : [0][0][0][0]
>        encoder         : Lavc61.4.100 libx264
>      Side data:
>        cpb: bitrate max/min/avg: 0/0/0 buffer size: 0 vbv_delay: N/A
>  Stream #0:1(eng): Audio: aac (LC) (mp4a / 0x6134706D), 44100 Hz, stereo, fltp, 128 kb/s (default)
>      Metadata:
>        creation_time   : 2024-10-15T06:44:53.000000Z
>        handler_name    : SoundHandler
>        vendor_id       : [0][0][0][0]
>        encoder         : Lavc61.4.100 aac
> [Parsed_subtitles_0 @ 0000025597955800] fontselect: (Arial, 400, 0) -> ArialMT, 0, ArialMTdrop=0 speed=0.171x
> [out#0/mp4 @ 00000255978eed00] video:11219KiB audio:102KiB subtitle:0KiB other streams:0KiB global headers:0KiB muxing overhead: 0.081056%
> frame=  189 fps=6.0 q=-1.0 Lsize=   11329KiB time=00:00:06.20 bitrate=14960.4kbits/s dup=1 drop=0 speed=0.196x
> [libx264 @ 0000025597949c00] frame I:5     Avg QP:22.96  size: 94847
> [libx264 @ 0000025597949c00] frame P:52    Avg QP:25.76  size: 67137
> [libx264 @ 0000025597949c00] frame B:132   Avg QP:26.43  size: 56983
> [libx264 @ 0000025597949c00] consecutive B-frames:  6.3%  1.1%  1.6% 91.0%
> [libx264 @ 0000025597949c00] mb I  I16..4: 17.9% 66.7% 15.4%
> [libx264 @ 0000025597949c00] mb P  I16..4: 10.8% 57.5%  8.8%  P16..4: 13.8%  3.5%  1.1%  0.0%  0.0%    skip: 4.5%
> [libx264 @ 0000025597949c00] mb B  I16..4:  5.7% 31.9%  6.5%  B16..8: 26.3%  9.0%  1.6%  direct: 3.6%  skip:15.5%  L0:53.8% L1:40.2% BI: 6.1%
> [libx264 @ 0000025597949c00] 8x8 transform intra:72.9% inter:83.4%
> [libx264 @ 0000025597949c00] coded y,uvDC,uvAC intra: 60.5% 46.3% 8.0% inter: 26.1% 30.2% 0.9%
> [libx264 @ 0000025597949c00] i16 v,h,dc,p: 30% 28% 13% 29%
> [libx264 @ 0000025597949c00] i8 v,h,dc,ddl,ddr,vr,hd,vl,hu: 18% 18% 19%  6%  8%  8%  8%  8%  9%
> [libx264 @ 0000025597949c00] i4 v,h,dc,ddl,ddr,vr,hd,vl,hu: 18% 19% 13%  6% 11%  9% 10%  6%  7%
> [libx264 @ 0000025597949c00] i8c dc,h,v,p: 55% 20% 22%  4%
> [libx264 @ 0000025597949c00] Weighted P-Frames: Y:0.0% UV:0.0%
> [libx264 @ 0000025597949c00] ref P L0: 56.6%  7.6% 20.0% 15.8%
> [libx264 @ 0000025597949c00] ref B L0: 86.1% 10.1%  3.9%
> [libx264 @ 0000025597949c00] ref B L1: 94.3%  5.7%
> [libx264 @ 0000025597949c00] kb/s:14586.81
> [aac @ 0000025599caa040] Qavg: 1098.128
>  ====================
> ffprobe.exe merged.mp4
>  ====================
> ffprobe version N-114515-gfa110c32b5-20240329 Copyright (c) 2007-2024 the FFmpeg developers
>  built with gcc 13.2.0 (crosstool-NG 1.26.0.65_ecc5e41)
>  configuration: --prefix=/ffbuild/prefix --pkg-config-flags=--static --pkg-config=pkg-config --cross-prefix=x86_64-w64-mingw32-   --arch=x86_64 --target-os=mingw32 --enable-gpl --enable-version3 --disable-debug --enable-shared --disable-static --disable-w32threads    --enable-pthreads --enable-iconv --enable-libxml2 --enable-zlib --enable-libfreetype --enable-libfribidi --enable-gmp --enable-lzma   --enable-fontconfig --enable-libharfbuzz --enable-libvorbis --enable-opencl --disable-libpulse --enable-libvmaf --disable-libxcb   --disable-xlib --enable-amf --enable-libaom --enable-libaribb24 --enable-avisynth --enable-chromaprint --enable-libdav1d   --enable-libdavs2 --enable-libdvdread --enable-libdvdnav --disable-libfdk-aac --enable-ffnvcodec --enable-cuda-llvm --enable-frei0r   --enable-libgme --enable-libkvazaar --enable-libaribcaption --enable-libass --enable-libbluray --enable-libjxl --enable-libmp3lame   --enable-libopus --enable-librist --enable-libssh
> --enable-libtheora --enable-libvpx --enable-libwebp --enable-lv2 --enable-libvpl   --enable-openal --enable-libopencore-amrnb --enable-libopencore-amrwb --enable-libopenh264 --enable-libopenjpeg --enable-libopenmpt   --enable-librav1e --enable-librubberband --enable-schannel --enable-sdl2 --enable-libsoxr --enable-libsrt --enable-libsvtav1   --enable-libtwolame --enable-libuavs3d --disable-libdrm --enable-vaapi --enable-libvidstab --enable-vulkan --enable-libshaderc   --enable-libplacebo --enable-libx264 --enable-libx265 --enable-libxavs2 --enable-libxvid --enable-libzimg --enable-libzvbi   --extra-cflags=-DLIBTWOLAME_STATIC --extra-cxxflags= --extra-libs=-lgomp --extra-ldflags=-pthread --extra-ldexeflags=   --cc=x86_64-w64-mingw32-gcc --cxx=x86_64-w64-mingw32-g++ --ar=x86_64-w64-mingw32-gcc-ar --ranlib=x86_64-w64-mingw32-gcc-ranlib   --nm=x86_64-w64-mingw32-gcc-nm --extra-version=20240329
>  libavutil      59. 10.100 / 59. 10.100
>  libavcodec     61.  4.100 / 61.  4.100
>  libavformat    61.  2.100 / 61.  2.100
>  libavdevice    61.  2.100 / 61.  2.100
>  libavfilter    10.  2.100 / 10.  2.100
>  libswscale      8.  2.100 /  8.  2.100
>  libswresample   5.  2.100 /  5.  2.100
>  libpostproc    58.  2.100 / 58.  2.100
> Input #0, mov,mp4,m4a,3gp,3g2,mj2, from 'merged.mp4':
>  Metadata:
>    major_brand     : isom
>    minor_version   : 512
>    compatible_brands: isomiso2avc1mp41
>    encoder         : Lavf61.2.100
>  Duration: 00:00:06.30, start: 0.000000, bitrate: 14731 kb/s
>  Stream #0:0[0x1](eng): Video: h264 (High) (avc1 / 0x31637661), yuv420p(tv, bt709, progressive), 1080x1920 [SAR 1:1 DAR 9:16], 14587 kb/s, 30 fps, 30 tbr, 15360 tbn (default)
>      Metadata:
>        handler_name    : VideoHandler
>        vendor_id       : [0][0][0][0]
>        encoder         : Lavc61.4.100 libx264
>  Stream #0:1[0x2](eng): Audio: aac (LC) (mp4a / 0x6134706D), 44100 Hz, stereo, fltp, 134 kb/s (default)
>      Metadata:
>        handler_name    : SoundHandler
>        vendor_id       : [0][0][0][0]
>  ====================

My guess is, that's burned in now, and not a separate track.

I recollect on other videos, you have

    Stream n:m  Video
    Stream p:q  Audio
    Stream x:y  Subtitles

and then a recipient can strip Subtitles with either
their player settings or with an editor.

When you burn subtitles in, the subtitle is in front
of the video content, so some of the video content
would be obscured if you tried to remove the text the
hard way.

I don't think I've ever added subtitles to video content,
but I've seen references to it in passing, on editing
discussions. They can either be permanently burned in,
or made available as a stream that can be removed.
The subtitles can even have languages, there can be
more than one, and the player selects the English
subtitle for you (using localization declaration the
OS has already got). Maybe a Spanish subtitle, if the
Windows was a Spanish version.

Just as a video can have more than one sound track.
One of the sound tracks should be a "lowest common denominator"
and be playable on any equipment. The others could be
Dolby or whatever.

Maybe you should get some recordings off a TV tuner
card and see how those are constructed. There may be
an option on your TV remote, to turn on subtitles.

In this example, nothing has been able to access the "Thumbnail".

  Stream #0:0[0x2f](eng): Audio: ac3, 48000 Hz, 5.1(side), fltp, 384 kb/s
  Stream #0:1[0x30](enm): Audio: ac3, 48000 Hz, stereo, fltp, 192 kb/s (visual impaired)
  Stream #0:2[0x31](eng): Audio: ac3, 48000 Hz, stereo, fltp, 192 kb/s
  Stream #0:3[0x32]: Video: mpeg2video (Main), yuv420p(tv, bt709, top first),
                     1920x1080 [SAR 1:1 DAR 16:9], Closed Captions, 16999 kb/s, 29.97 fps, 29.97 tbr, 10000k tbn, 59.94 tbc
                     Side data:
                     cpb: bitrate max/min/avg: 16999200/0/0 buffer size: 5652480 vbv_delay: N/A
  Stream #0:4[0x33]: Subtitle: eia_608
  Stream #0:5[0xffffffff]: Video: mjpeg (Baseline), yuvj420p(pc, bt470bg/unknown/unknown), 200x113 [SAR 96:96 DAR 200:113], 90k tbr, 90k tbn, 90k tbc (attached pic)
    Metadata:
      title           : TV Thumbnail

A second sample. The second line here must be some kind of joke.
It has one fewer audio tracks. Every program at the TV station,
can be encoded slightly differently if they want.

  Stream #0:0[0xc](eng): Audio: ac3, 48000 Hz, 5.1(side), fltp, 384 kb/s
  Stream #0:1[0xd](enm): Audio: ac3, 48000 Hz, stereo, fltp, 192 kb/s (hearing impaired)
  Stream #0:2[0xe]: Video: mpeg2video (Main), yuv420p(tv, top first),
                    1920x1080 [SAR 1:1 DAR 16:9], Closed Captions, 29.97 fps, 29.97 tbr, 10000k tbn, 59.94 tbc
                    Side data:
                    cpb: bitrate max/min/avg: 24000000/0/0 buffer size: 7995392 vbv_delay: N/A
  Stream #0:3[0xffffffff]: Video: mjpeg (Baseline), yuvj420p(pc, bt470bg/unknown/unknown), 200x113 [SAR 96:96 DAR 200:113], 90k tbr, 90k tbn, 90k tbc (attached pic)
    Metadata:
      title           : TV Thumbnail
  Stream #0:4[0xf]: Subtitle: eia_608

Whatever that EIA_608 Subtitle is, it is selectable in VLC as Track 1 in
the Subtitle menu. I can switch the subtitle on and off.

   Paul

[toc] | [prev] | [next] | [standalone]


#179290

From"Carlos E.R." <robin_listas@es.invalid>
Date2024-10-15 22:22 +0200
Message-ID<cgv2ukxohq.ln2@Telcontar.valinor>
In reply to#179270
On 2024-10-15 15:12, Oliver wrote:
> What's the best way on Windows to offline embed the text in an SRT
> companion file to an MP4 video before uploading a short video clip to a web
> site?

Please don't do that.

If the subtitles go as a separate text stream, the site can 
automatically or manually add translations to other languages of your 
video. This is what Youtube does.

You can instead join the video and the text into a single file (but 
separate streams) using formats that allow this, and add the metadata 
for the language.

-- 
Cheers, Carlos.

[toc] | [prev] | [next] | [standalone]


#182562

FromOliver <ollie@invalid.net>
Date2025-02-26 00:52 -0700
Message-ID<vpmh8p$2fkd6$1@dont-email.me>
In reply to#179270
On Tue, 15 Oct 2024 07:12:23 -0600, Oliver <ollie@invalid.net> wrote 

> What's the best way on Windows to offline embed the text in an SRT
> companion file to an MP4 video before uploading a short video clip to a web
> site?

I want to update this thread given that I've burned in probably a score of 
video captions since I originally opened this thread, so I want to help get 
the message out what worked best to do that task with Windows 10 freeware.

Editing the srt file works only up to a point because you have to look at 
the video and edit the file at the same time, where the biggest problem, 
really, is the annoying propensity of Windows to focus on the wrong window.

So you're always switching your mouse focus between your text editor and 
your video player as you navigate the video with MPC-BE or VLC freeware.

It's a bit worse than that with an editor because when you add a caption in 
between two existing captions, you have to renumber all subsequent indices.

Obviously that means you need a freeware subtitle editor, the best almost 
universally being said to be Aegisub, which is functional, but complicated.
https://www.videohelp.com/software/Aegisub

The learning curve for Aegisub is so steep that I went back to text editing
until, in frustration, I tried the "second best" solution, which worked!

This second-best freeware subtitle editor is the Subtitle Edit tool.
https://www.videohelp.com/software/Subtitle-Edit

Subtitle Edit is much simpler and easier to make srt's than is Aegisub!

One pitfall though with Subtitle Edit is it doesn't play well with MPC-BE.
Nor did it seem to work well with VLC, even though it's supposed to.
Nor did it work at all when I manually installed mpv which it recommended.
https://www.videohelp.com/software?d=mpv-x86_64-20181002.7z

But when I let Subtitle Edit download mpv on its own, it worked fine.
https://sourceforge.net/projects/mpv-player-windows/

Those are lessons learned I wanted to impart into this thread for you.
Once you have the subtitles, you still need to burn them into the MP4 file.

For that, Paul's suggestion of ffmpeg has been working out fantastically.
Lessons learned on burning in the subtitles are just in the frill options.

Burn subtitles, 30 point font:
ffmpeg -i input.mp4 -vf "subtitles=input.srt:force_style='FontSize=30'" output_with_subtitles.mp4

Burn subtitles, 34 point font:
ffmpeg -i input.mp4 -vf "subtitles=input.srt:force_style='FontSize=34'" output_with_subtitles.mp4

Burn subtitles, 34 point font, color BLACK:
 ffmpeg -i input.mp4 -vf "subtitles=input.srt:force_style='FontSize=34,PrimaryColour=&H000000'" output_with_black_subs.mp4

Burn subtitles, 34 point font, color WHITE:
ffmpeg -i input.mp4 -vf "subtitles=input.srt:force_style='FontSize=34,PrimaryColour=&HFFFFFF'" output_with_white_subs.mp4

Burn subtitles, 34 point font, color RED:
ffmpeg -i input.mp4 -vf "subtitles=input.srt:force_style='FontSize=34,PrimaryColour=&H0000FF'" output_with_red_subs.mp4

Burn subtitles, 34 point font, color GREEN:
ffmpeg -i input.mp4 -vf "subtitles=input.srt:force_style='FontSize=34,PrimaryColour=&H00FF00'" output_with_green_subs.mp4

Burn subtitles, 34 point font, color BLUE:
ffmpeg -i input.mp4 -vf "subtitles=input.srt:force_style='FontSize=34,PrimaryColour=&HFF0000'" output_with_blue_subs.mp4

The only other thing that's often needed is to set the thumbnail.
What you can do is pick an exact frame you want to be that thumbnail.

This will extract a single frame exactly 70 seconds into the video:
ffmpeg -i input.mp4 -ss 00:01:10 -frames:v 1 thumbnail.jpg

If desired, this will extract a thumbnail every five seconds:
ffmpeg -i input.mp4 -vf "fps=1/5" thumb%04d.jpg 

Once you choose the thumbnail, this will embed it into the metadata:
ffmpeg -i input.mp4 -i thumbnail.jpg -map 0 -map 1 -c copy -disposition:v:1 attached_pic output.mp4 

I hope these lessons learned can help someone else, as I very 
much appreciate the help Paul and others provided to me.

[toc] | [prev] | [next] | [standalone]


#182577

FromGeoff <geoff@nospamgeoffwood.org>
Date2025-02-27 09:18 +1300
Message-ID<vpnsuo$2nbfq$1@dont-email.me>
In reply to#182562
On 26/02/2025 8:52 pm, Oliver wrote:
> On Tue, 15 Oct 2024 07:12:23 -0600, Oliver <ollie@invalid.net> wrote
>> What's the best way on Windows to offline embed the text in an SRT
>> companion file to an MP4 video before uploading a short video clip to 
>> a web
>> site?
> 
> I want to update this thread given that I've burned in probably a score 
> of video captions since I originally opened this thread, so I want to 
> help get the message out what worked best to do that task with Windows 
> 10 freeware.
> 
> Editing the srt file works only up to a point because you have to look 
> at the video and edit the file at the same time, where the biggest 
> problem, really, is the annoying propensity of Windows to focus on the 
> wrong window.
> 
> So you're always switching your mouse focus between your text editor and 
> your video player as you navigate the video with MPC-BE or VLC freeware.
> 
> It's a bit worse than that with an editor because when you add a caption 
> in between two existing captions, you have to renumber all subsequent 
> indices.
> 
> Obviously that means you need a freeware subtitle editor, the best 
> almost universally being said to be Aegisub, which is functional, but 
> complicated.
> https://www.videohelp.com/software/Aegisub
> 
> The learning curve for Aegisub is so steep that I went back to text editing
> until, in frustration, I tried the "second best" solution, which worked!
> 
> This second-best freeware subtitle editor is the Subtitle Edit tool.
> https://www.videohelp.com/software/Subtitle-Edit
> 
> Subtitle Edit is much simpler and easier to make srt's than is Aegisub!
> 
> One pitfall though with Subtitle Edit is it doesn't play well with MPC-BE.
> Nor did it seem to work well with VLC, even though it's supposed to.
> Nor did it work at all when I manually installed mpv which it recommended.
> https://www.videohelp.com/software?d=mpv-x86_64-20181002.7z
> 
> But when I let Subtitle Edit download mpv on its own, it worked fine.
> https://sourceforge.net/projects/mpv-player-windows/
> 
> Those are lessons learned I wanted to impart into this thread for you.
> Once you have the subtitles, you still need to burn them into the MP4 file.
> 
> For that, Paul's suggestion of ffmpeg has been working out fantastically.
> Lessons learned on burning in the subtitles are just in the frill options.
> 
> Burn subtitles, 30 point font:
> ffmpeg -i input.mp4 -vf "subtitles=input.srt:force_style='FontSize=30'" 
> output_with_subtitles.mp4
> 
> Burn subtitles, 34 point font:
> ffmpeg -i input.mp4 -vf "subtitles=input.srt:force_style='FontSize=34'" 
> output_with_subtitles.mp4
> 
> Burn subtitles, 34 point font, color BLACK:
> ffmpeg -i input.mp4 -vf 
> "subtitles=input.srt:force_style='FontSize=34,PrimaryColour=&H000000'" 
> output_with_black_subs.mp4
> 
> Burn subtitles, 34 point font, color WHITE:
> ffmpeg -i input.mp4 -vf 
> "subtitles=input.srt:force_style='FontSize=34,PrimaryColour=&HFFFFFF'" 
> output_with_white_subs.mp4
> 
> Burn subtitles, 34 point font, color RED:
> ffmpeg -i input.mp4 -vf 
> "subtitles=input.srt:force_style='FontSize=34,PrimaryColour=&H0000FF'" 
> output_with_red_subs.mp4
> 
> Burn subtitles, 34 point font, color GREEN:
> ffmpeg -i input.mp4 -vf 
> "subtitles=input.srt:force_style='FontSize=34,PrimaryColour=&H00FF00'" 
> output_with_green_subs.mp4
> 
> Burn subtitles, 34 point font, color BLUE:
> ffmpeg -i input.mp4 -vf 
> "subtitles=input.srt:force_style='FontSize=34,PrimaryColour=&HFF0000'" 
> output_with_blue_subs.mp4
> 
> The only other thing that's often needed is to set the thumbnail.
> What you can do is pick an exact frame you want to be that thumbnail.
> 
> This will extract a single frame exactly 70 seconds into the video:
> ffmpeg -i input.mp4 -ss 00:01:10 -frames:v 1 thumbnail.jpg
> 
> If desired, this will extract a thumbnail every five seconds:
> ffmpeg -i input.mp4 -vf "fps=1/5" thumb%04d.jpg
> Once you choose the thumbnail, this will embed it into the metadata:
> ffmpeg -i input.mp4 -i thumbnail.jpg -map 0 -map 1 -c copy - 
> disposition:v:1 attached_pic output.mp4
> I hope these lessons learned can help someone else, as I very much 
> appreciate the help Paul and others provided to me.

Alternatively you could spend US$49 and buy something like Magix Movie 
Studio 2025 and it would take possibly less time to achieve your aim 
than it did to type your post.


geoff

-- 
geoff

[toc] | [prev] | [next] | [standalone]


#182584

FromOliver <ollie@invalid.net>
Date2025-02-26 17:28 -0700
Message-ID<vpobja$2puii$1@dont-email.me>
In reply to#182577
On Thu, 27 Feb 2025 09:18:32 +1300, Geoff wrote :


> Alternatively you could spend US$49 and buy something like Magix Movie 
> Studio 2025 and it would take possibly less time to achieve your aim 
> than it did to type your post.

Thanks for that suggestion of generating subtitles and burning them into
the video using the Windows payware Magix Movie Studio 2025 tools.
 <https://www.magix.com/us/video-editor/movie-studio/new-features/>

It looks like it comes in Platinum, Suite & Ultimate versions whose license
fee appears to be $50, $60 & $110 respectively.

The 2025 version incorporates AI tools to streamline the editing process,
including AI-generated subtitles & voiceovers & AI-powered effects.

Based on the web page, some of the AI effects are blemish smoothing, focus
sharpening, fog removal, colorizing, and speech to text and vice versa.

While all that stuff is undeniably great to have if I were a content
creator, my use model is simply to caption short videos on my phone.

For that, Subtitle Edit & ffmpeg freeware appear to work fine, but it's
wonderful that there are professional level tools to help the creators.

[toc] | [prev] | [next] | [standalone]


#182586

FromGeoff <geoff@nospamgeoffwood.org>
Date2025-02-27 15:00 +1300
Message-ID<vpoh0h$2qkml$1@dont-email.me>
In reply to#182584
On 27/02/2025 1:28 pm, Oliver wrote:
> On Thu, 27 Feb 2025 09:18:32 +1300, Geoff wrote :
> 
> 
>> Alternatively you could spend US$49 and buy something like Magix Movie 
>> Studio 2025 and it would take possibly less time to achieve your aim 
>> than it did to type your post.
> 
> Thanks for that suggestion of generating subtitles and burning them into
> the video using the Windows payware Magix Movie Studio 2025 tools.
> <https://www.magix.com/us/video-editor/movie-studio/new-features/>
> 
> It looks like it comes in Platinum, Suite & Ultimate versions whose license
> fee appears to be $50, $60 & $110 respectively.
> 
> The 2025 version incorporates AI tools to streamline the editing process,
> including AI-generated subtitles & voiceovers & AI-powered effects.
> 
> Based on the web page, some of the AI effects are blemish smoothing, focus
> sharpening, fog removal, colorizing, and speech to text and vice versa.
> 
> While all that stuff is undeniably great to have if I were a content
> creator, my use model is simply to caption short videos on my phone.
> 
> For that, Subtitle Edit & ffmpeg freeware appear to work fine, but it's
> wonderful that there are professional level tools to help the creators.

That's really the 'amateur' version, though capable of 'pro' results. 
Their (Magix, was Sony, was Sonic Foundry) professional equiv is Vegas 
Pro. Any functions are optional, and subtitles is just a very basis one.

I guess it comes down to factor such as $$$ spent, ease of implementing 
subtitles (and tweaking of them), how you value your time, etc.

-- 
geoff

[toc] | [prev] | [next] | [standalone]


#182608

FromOliver <ollie@invalid.net>
Date2025-02-27 11:47 -0700
Message-ID<vpqbvt$37sfv$1@dont-email.me>
In reply to#182586
On Thu, 27 Feb 2025 15:00:49 +1300, Geoff <geoff@nospamgeoffwood.org> wrote 

>> For that, Subtitle Edit & ffmpeg freeware appear to work fine, but it's
>> wonderful that there are professional level tools to help the creators.
> 
> That's really the 'amateur' version, though capable of 'pro' results. 
> Their (Magix, was Sony, was Sonic Foundry) professional equiv is Vegas 
> Pro. Any functions are optional, and subtitles is just a very basis one.
> 
> I guess it comes down to factor such as $$$ spent, ease of implementing 
> subtitles (and tweaking of them), how you value your time, etc.

I appreciate that you brought up the professional tools as compared to teh
freeware tools, where there is often a 1:1 freeware copy to the pro tools.

An example is PhotoShop versus Paint.NET/Pinta on the Windows platform.
The freeware tools do almost everything the pro tools do, as that's what
their main raison d'etre is after all. To copy what the pro tools do.

In that case, you get most of the pro editing functionality, for free.
And, as a bonus, the freeware tools are easier to use than the pro tools.

So I agree with you that it depends a lot on how you value your time.
Speaking of how much time it takes to do something... 

I agree with you that the professional GUIs often can sometimes do far more
than the freeware GUIs do, but even so, I think we perhaps might be hard
pressed to find a professional GUI that does much of anything faster than
some of the free command-line programs suggested in this thread can do.

For example, a 'deshake' operation with ffmpeg freeware is pretty fast.
 ffmpeg -i input.mp4 -vf deshake output_deshake.mp4

So is a 'rotate by 180 degrees' pretty fast on the freeware command line.
 ffmpeg -i input.mp4 -vf "transpose=1,transpose=1" output.mp4

So is embedding yellow 32-point fonts pretty fast as a freeware command.
 ffmpeg -i input.mp4 -vf "subtitles=input.srt:force_style='FontSize=32,PrimaryColour=&H00FFFF'" output.mp4

Extracting thumbnails is also very easy on the freeware command line.
 ffmpeg -i input.mp4 -vf "fps=1/5" thumb%04d.jpg 

So is embedding any chosen thumbnail easily to do as a freeware command:
 ffmpeg -i input.mp4 -i thumbnail.jpg -map 0 -map 1 -c copy -disposition:v:1 attached_pic output.mp4

Removing metadata (including thumbnails) is also easy on the command line.
 ffmpeg -i input.mp4 -map 0 -map_metadata -1 -c copy output.mp4

Cropping/blurring areas using the cmd line is much more work though.

Crop out a section 20 pixels from the top and 20 pixels from the bottom.
 ffmpeg -i input.mp4 -filter:v "crop=in_w:in_h-40" -c:a copy output.mp4
Blur out a section 20 pixels from the top and 20 pixels from the bottom.
 ffmpeg -i input.mp4 -vf "split[original][blurred];[blurred]crop=iw:20:0:0,boxblur=luma_r=10

Crop to an 80-by-60 pixel area, starting from position (200,100).
 ffmpeg -i input.mp4 -filter:v "crop=80:60:200:100" -c:a copy output.mp4
Blur an 80-by-60 pixel area, starting from position (200,100).
 ffmpeg -i input.mp4 -filter:v "crop=iw:ih:0:0,split[original][blurred];[blurred]crop=80:60:200:100,boxblur=luma_r=10:chroma_r=5[blurred_cropped];[original][blurred_cropped]overlay=200:100[out]" -map "[out]" -map 0:a? -c:a copy output.mp4

As is speeding up (or slowing down) a section a little more work though.
AFAIK, you have to first chop the input video up into separate sections.
 ffmpeg -ss 00:01:00 -i video1.mp4 -to 00:02:00 video1-cut1.mp4

And then you can speed up that section (handling audio how you want).
 ffmpeg -i input.mp4 -vf "setpts=0.5*PTS" -af "atempo=2.0" output.mp4

And then you can reassemble the separate sections back together.
 dir /b *.mp4 > list.txt 
 ffmpeg -f concat -i list.txt -c copy output.mp4

So far, I've had to do all those things repeatedly with my short videos
taken from my phone. I find ffmpeg does it fast once you know the command.

But I think the two or three things your suggested professional GUI would
probably do faster & easier might be these three tasks I have had to do.

1. subtitles of what I want to point out in the video
2. cropping (or blurring) hand drawn areas of the video
3. speeding up/slowing down entire sections of the video


While I found that I had to use the SubtitleEdit freeware GUI to make
adding subtitles into a push-button simplicity, the other two are harder.

Is it very easy to do those other things using your suggested pro program?

[toc] | [prev] | [next] | [standalone]


#182617

FromGeoff <geoff@nospamgeoffwood.org>
Date2025-02-28 11:36 +1300
Message-ID<vpqpdb$3a4nb$1@dont-email.me>
In reply to#182608
On 28/02/2025 7:47 am, Oliver wrote:
> On Thu, 27 Feb 2025 15:00:49 +1300, Geoff <geoff@nospamgeoffwood.org> wrote
>>> For that, Subtitle Edit & ffmpeg freeware appear to work fine, but it's
>>> wonderful that there are professional level tools to help the creators.
>>
>> That's really the 'amateur' version, though capable of 'pro' results. 
>> Their (Magix, was Sony, was Sonic Foundry) professional equiv is Vegas 
>> Pro. Any functions are optional, and subtitles is just a very basis one.
>>
>> I guess it comes down to factor such as $$$ spent, ease of 
>> implementing subtitles (and tweaking of them), how you value your 
>> time, etc.
> 
> I appreciate that you brought up the professional tools as compared to teh
> freeware tools, where there is often a 1:1 freeware copy to the pro tools.
> 
> An example is PhotoShop versus Paint.NET/Pinta on the Windows platform.
> The freeware tools do almost everything the pro tools do, as that's what
> their main raison d'etre is after all. To copy what the pro tools do.
> 
> In that case, you get most of the pro editing functionality, for free.
> And, as a bonus, the freeware tools are easier to use than the pro tools.
> 
> So I agree with you that it depends a lot on how you value your time.
> Speaking of how much time it takes to do something...
> I agree with you that the professional GUIs often can sometimes do far more
> than the freeware GUIs do, but even so, I think we perhaps might be hard
> pressed to find a professional GUI that does much of anything faster than
> some of the free command-line programs suggested in this thread can do.
> 
> For example, a 'deshake' operation with ffmpeg freeware is pretty fast.
> ffmpeg -i input.mp4 -vf deshake output_deshake.mp4
> 
> So is a 'rotate by 180 degrees' pretty fast on the freeware command line.
> ffmpeg -i input.mp4 -vf "transpose=1,transpose=1" output.mp4
> 
> So is embedding yellow 32-point fonts pretty fast as a freeware command.
> ffmpeg -i input.mp4 -vf 
> "subtitles=input.srt:force_style='FontSize=32,PrimaryColour=&H00FFFF'" 
> output.mp4
> 
> Extracting thumbnails is also very easy on the freeware command line.
> ffmpeg -i input.mp4 -vf "fps=1/5" thumb%04d.jpg
> So is embedding any chosen thumbnail easily to do as a freeware command:
> ffmpeg -i input.mp4 -i thumbnail.jpg -map 0 -map 1 -c copy - 
> disposition:v:1 attached_pic output.mp4
> 
> Removing metadata (including thumbnails) is also easy on the command line.
> ffmpeg -i input.mp4 -map 0 -map_metadata -1 -c copy output.mp4
> 
> Cropping/blurring areas using the cmd line is much more work though.
> 
> Crop out a section 20 pixels from the top and 20 pixels from the bottom.
> ffmpeg -i input.mp4 -filter:v "crop=in_w:in_h-40" -c:a copy output.mp4
> Blur out a section 20 pixels from the top and 20 pixels from the bottom.
> ffmpeg -i input.mp4 -vf "split[original][blurred]; 
> [blurred]crop=iw:20:0:0,boxblur=luma_r=10
> 
> Crop to an 80-by-60 pixel area, starting from position (200,100).
> ffmpeg -i input.mp4 -filter:v "crop=80:60:200:100" -c:a copy output.mp4
> Blur an 80-by-60 pixel area, starting from position (200,100).
> ffmpeg -i input.mp4 -filter:v "crop=iw:ih:0:0,split[original][blurred]; 
> [blurred]crop=80:60:200:100,boxblur=luma_r=10:chroma_r=5[blurred_cropped];[original][blurred_cropped]overlay=200:100[out]" -map "[out]" -map 0:a? -c:a copy output.mp4
> 
> As is speeding up (or slowing down) a section a little more work though.
> AFAIK, you have to first chop the input video up into separate sections.
> ffmpeg -ss 00:01:00 -i video1.mp4 -to 00:02:00 video1-cut1.mp4
> 
> And then you can speed up that section (handling audio how you want).
> ffmpeg -i input.mp4 -vf "setpts=0.5*PTS" -af "atempo=2.0" output.mp4
> 
> And then you can reassemble the separate sections back together.
> dir /b *.mp4 > list.txt ffmpeg -f concat -i list.txt -c copy output.mp4
> 
> So far, I've had to do all those things repeatedly with my short videos
> taken from my phone. I find ffmpeg does it fast once you know the command.
> 
> But I think the two or three things your suggested professional GUI would
> probably do faster & easier might be these three tasks I have had to do.
> 
> 1. subtitles of what I want to point out in the video
> 2. cropping (or blurring) hand drawn areas of the video
> 3. speeding up/slowing down entire sections of the video
> 
> 
> While I found that I had to use the SubtitleEdit freeware GUI to make
> adding subtitles into a push-button simplicity, the other two are harder.
> 
> Is it very easy to do those other things using your suggested pro program?

Yes. And not even the 'pro' level app.

But you seem to equate 'paid for' as 'professional' - which is not the case.

Your 'free' does seem to involve a hell of a lot of unintuitive frigging 
around to achieve basic results.

But whatever gets you through the night....

-- 
geoff

[toc] | [prev] | [next] | [standalone]


Page 1 of 2  [1] 2  Next page →

Back to top | Article view | alt.comp.os.windows-10


csiph-web