BASH FFMPEG SUB HARDCODING;)

2

I've been working with FFMPEG to hardcode subs.

$for i in *.mkv;do ffmpeg -i "$i" -map 1 -filter_complex subtitles=video.ssa -vcodec libx264 -acodec aac -copy_unknown -map_metadata:s:v 0:g "../../A/bra/ca/da/bra/SS/taging/C24/${i%.mkv*}.mp4";done

Below are the error messages I've been receiving since enabling the libass library; however I don't know enough about video editing to understand all of it. My question is in regards to the coding.

In the ffmpeg documentation the AVOption:subtitle_filter_complex section states that the coding should say: -vf subtitles=video.srt –– this is their example for the subtitles section –– and they specify that this will take the input subtitle stream and "burn" it onto the video stream of the output.

error code ffmpeg

$s[Parsed_subtitles_0 @ 0x7fe77ef00000] Unable to open video.ssa
[AVFilterGraph @ 0x7fe77ee0cf80] Error initializing filter 'subtitles' with args 'video.ssa'
Error initializing complex filters.
No such file or directory

complete error message:

$[Parsed_subtitles_0 @ 0x7fe77ef00000] Shaper: FriBidi 0.19.7 (SIMPLE) HarfBuzz-ng 1.7.5 (COMPLEX)
[Parsed_subtitles_0 @ 0x7fe77ef00000] Unable to open video.ssa
[AVFilterGraph @ 0x7fe77ee0cf80] Error initializing filter 'subtitles' with args 'video.ssa'
Error initializing complex filters.
No such file or directory`

My question is how do you utilize the filter_complex in relation to it's example?

The "video.ssa" part of the command revers to the filename of the video which contains the stream.

But does that mean I have to replace the "filename" or "video" with a batch variable?

croakouttatune

Posted 2018-02-16T11:45:26.597

Reputation: 21

No answers