On Thu, Apr 6, 2023 at 5:14 PM Fredrick R. Brennan <[email protected]> wrote:
>
> Consider the following, if you dare:
>
> > ffmpeg -f concat -safe 0 -i <(find . -iname '*.flac' -and -type f -print0 |
> > parallel --null printf '"file %q"' '{=1 my $pwd=qx(pwd); $pwd =~
> > s/^\s+|\s+$//g; $_=($pwd . "/" . q()) =}{1}' \&\& echo) -b:a 128k -c:a aac
> > -y o.aac
:
> Or, ffmpeg *should* do that. It can't:
>
> > [concat @ 0x559da1fd1cc0] Impossible to open
> > '/home/fred/Workspace/gcloud-synthesize-voice/./[af-ZA] Ek hoop dit is nie
> > die geval nie.$\nHoop in die een hand en kak in die ander..flac'
> > /proc/self/fd/11: No such file or directory
... and this is even true if you do not use command substitution, but
a regular file:
file /dir/works
file /dir/$'\n'fails
file '/dir/fails
too'
I have found no way to make ffmpeg accept \n in a '-i' file.
If you cannot make it work in a regular file, it is unlikely to work
in a command substitution.
/Ole