Powershell批量从视频文件中提取音频命令

Powershell批量从视频文件中提取音频命令

我有一个有效的 bash 命令,可以提取当前文件夹中视频的所有音轨而无需重新编码并将它们放在子文件夹中:

for f in *.mp4; do ffmpeg -i "$f" -vn -c:a copy ./audio/"${f%.*}".m4a; done

我一直在尝试寻找 PS 的等效命令。我该怎么做?当我尝试以下操作时:

ls *.mp4|foreach{
    ffmpeg -i $_ -vn -c:a copy $_.name.replace("mp4", "m4a")
}

我在一些包含 opus 音频的文件上收到此错误:

[ipod @ 00000000005719c0] Could not find tag for codec opus in stream #0, codec not currently supported in container
Could not write header for output file #0 (incorrect codec parameters ?): Invalid argument
Error initializing output stream 0:0 --

有没有办法提取视频文件中的音频(无论它们是什么格式)?模仿 PS 的 bash 命令的工作方式。

谢谢!

相关内容