FFMPEG 和 Powershell 脚本不起作用(过去可以起作用)

FFMPEG 和 Powershell 脚本不起作用(过去可以起作用)

我不得不重新安装 Windows,现在我试图让它再次工作,但没有成功。

该脚本是一个 .ts 到 .mp4 的批量转换器,当我第一次设置它时,我在顶部包含了链接以供参考,但除非我是盲人,否则在那里看不到我的解决方案。

<# Change .ts to video format to change from
https://www.junian.net/tech/powershell-ffmpeg-batch/ #>

$originalVids = Get-ChildItem *.ts -Recurse

foreach ($inputVid in $originalVids) {
    $outputVid = [io.path]::ChangeExtension($inputVid.FullName, '.mp4')
    ffmpeg.exe -i $inputVid.FullName -c:v libx264 -crf 18 -c:a aac -map_metadata 0 $outputVid
}

FFMPEG 路径如下,并在环境变量中设置,我检查过它并且它运行正常。

C:\ffmpeg\bin

我已设置 VS Code 来运行它,还有 Powershell,我对两者进行了测试,但都不起作用。我得到的错误如下:

Invalid data found when processing input

我知道我忘记了一些简单的事情,但我无论如何也想不起来。

编辑:

查看错误发生前的路径,我才意识到 OneDrive 在其他配置中已启用,但现在未启用,并且位于文件路径中。我 99% 确定这就是问题所在。


我在此编辑中的假设是错误的,我禁用了 OneDrive,以为它已从路径中删除,但它仍然在那里。因此路径有效,我一直遵循它。

我从其他帖子得知我的文件可能不完整,我不明白这一点。但我正在尝试自己解决。

结束编辑。

答案1

经过进一步调查,我发现 Powershell 和 VS Code 出现了不同的错误。

PS 的错误是拒绝访问,所以我首先在同一个文件夹中创建了一个新文件夹,并将所有的 ts 文件和脚本转移到其中,但没有成功。

然后我以管理员身份启动 PS,并在提升的 PS 中手动复制/粘贴脚本,并且它起作用了。

相关内容