On 2024-07-04 15:50, Mark Filipak wrote:
...Here's the interesting terminal output (slightly beautified):
[Parsed_trim_1 @ 0000000000620040]
Media type mismatch between the 'Parsed_trim_1' filter output pad 0
(video) and the 'Parsed_atrim_2' filter input pad 0 (audio)
[AVFilterGraph @ 000000000061c7c0] Error linking filters
Failed to set value
'split=2[i5][i6],
[i5]trim=start_frame=481:end_frame=134047,
atrim=start_sample=962962:end_sample=268360092[o5],
[i6]trim=start_frame=138745:end_frame=246719[o6],
[o5][o6]concat=n=2'
for option 'filter_complex': Invalid argument
Error parsing global options: Invalid argument
I think there is a clue in the previous part of the output:
[Parsed_trim_1 @ 0000000000620040] Media type mismatch between the
'Parsed_trim_1' filter output pad 0 (video) and the 'Parsed_atrim_2'
filter input pad 0 (audio)
I see "media type mismatch", so what is not matched? I see a mention of
"filter output pad 0 (video)" and "filter input pad 0 (audio)". I can
imagine that media "video" does not match media "audio".
...Here's my trim commands for the first segment:
trim=start_frame=481:end_frame=134047,atrim=start_sample=962962:end_sample=268360093
Consulting the filtergraph syntax documentation
<https://ffmpeg.org/ffmpeg-filters.html#Filtergraph-syntax-1>,
A filterchain consists of a sequence of connected filters, each one
connected to the previous one in the sequence. A filterchain is
represented by a list of ","-separated filter descriptions.
It looks like your trim commands for the first segment consist of a
`trim` filter which reads video media from input pad [i5] and writes
video media to an implicit output pad, connected to an `atrim` filter
which wants reads audio media from an implicit input pad. But the
implicit output pad is giving video media to a filter which wants audio
media.
That looks like a type mismatch to me.
Maybe you should rewrite the filtergraph so that you break apart the
video and audio parts of your input media into separate flows? Then
apply `trim` to the video media, and separately apply `atrim` to the
audio media. Then recombine the video and audio into your output.
I think the documentation is not doing you any favours here. As I read
the `trim` filter doc <https://ffmpeg.org/ffmpeg-filters.html#trim> and
the `atrim` doc <https://ffmpeg.org/ffmpeg-filters.html#atrim>, neither
talk about being limited to video or audio types of media.
I don't know enough about `ffmpeg` to say off the top of my head how to
separate the audio media from the video media and feed them to each
their own filters. Maybe the documentation on "Stream Selection"
<https://ffmpeg.org/ffmpeg-all.html#Stream-selection> has the answer.
Maybe you can append stream specifiers like [i5:v] and [i5:a] to get the
video and audio streams separately. I will leave that to others to
figure out.
I hope this helps,
—Jim DeLaHunt
_______________________________________________
ffmpeg-user mailing list
ffmpeg-user@ffmpeg.org
https://ffmpeg.org/mailman/listinfo/ffmpeg-user
To unsubscribe, visit link above, or email
ffmpeg-user-requ...@ffmpeg.org with subject "unsubscribe".