No bash (ou seja, ubuntu) você faria
for file in $(cat filelist.txt)
do
ffmpeg -i $file $(echo $file|sed 's/\.[^.]*$//').flv
done
Ou se os subdiretórios estiverem na mesma árvore
find . -type f -name \*mov|
while read file
do
ffmpeg -i $file $(echo $file|sed 's/\.[^.]*$//').flv
done
Hmmm, só vi você no Ubuntu depois de escrever a parte do Windows :-)
No Windows, você pode usar o comando for
:
makeflv.bat:
setlocal
set file=%1
for %%f in (%file%) do (
set name=%%~nf
set directory=%%~pf
ffmpeg -i %file% %directory%%name%.flv
)
Em seguida, chame para cada arquivo que você deseja converter, ou seja, makeflv test.mov
Se você tem a lista em um arquivo, seria
for /f %f in ('type filelist.txt') do makeflv %f