使用ffmpeg并行递归转换文件

使用ffmpeg并行递归转换文件,ffmpeg,parallel-processing,gnu-parallel,Ffmpeg,Parallel Processing,Gnu Parallel,我有以下两个命令: parallel --eta ffmpeg -loglevel 0 -i {} -c:a aac -b:a 64k {.}.aac ::: * 将当前文件夹中的所有文件(音频)并行转换为aac格式(file.mp3>file.aac),以及 将所有子目录中的所有文件转换为aac格式(file.mp3>file.mp3.aac),但不并行 所以我想完成两件事: 并行执行命令2 结果保存为命令1,即,file.mp3>files.aac而不是file.mp3>file.mp3.

我有以下两个命令:

parallel --eta ffmpeg -loglevel 0 -i {} -c:a aac -b:a 64k {.}.aac ::: *
将当前文件夹中的所有文件(音频)并行转换为aac格式(
file.mp3>file.aac
),以及

将所有子目录中的所有文件转换为aac格式(
file.mp3>file.mp3.aac
),但不并行

所以我想完成两件事:

  • 并行执行命令2
  • 结果保存为命令1,即,
    file.mp3>files.aac
    而不是
    file.mp3>file.mp3.aac
  • 我试过一些组合,但都不起作用。

    好的

    我想我终于得到了这样的结果:

    find . -type f -not -name "*.jpg" -not -name "*.png" -not -name "*.aac" -print0 | parallel -0 --eta ffmpeg -loglevel 0 -i {} -c:a aac -b:a 64k {.}.aac
    

    也省略
    ::*
    find . -type f -not -name "*.jpg" -not -name "*.png" -not -name "*.aac" -print0 | parallel -0 --eta ffmpeg -loglevel 0 -i {} -c:a aac -b:a 64k {.}.aac