如何解决如何将 webm 文件转换为 wav 文件
我正在使用 pafy 库从 Youtube 下载视频作为 webm 文件。现在我正在尝试将该 webm 文件转换为 .wav 文件。我知道这里Coverting webm to wav with ffmpeg上发布了与此问题类似的内容 然而,它没有给我我需要的答案。我不断收到的错误是这个。
File "C:/Users/16156/PycharmProjects/youtubeaudiodownloader/audiodownload.py",line 29,in <module>
ad.fromMpToWav()
File "C:/Users/16156/PycharmProjects/youtubeaudiodownloader/audiodownload.py",line 20,in fromMpToWav
command = 'ffmpeg -i' + self.vid.getbestaudio(),+ '' + r'C:\Users\16156\PycharmProjects\youtubeaudiodownloader\test.wav'
TypeError: can only concatenate str (not "YtdlStream") to str
这是导致错误的代码
def fromMpToWav(self):
time.sleep(5)
command = ['ffmpeg -i',self.vid.getbestaudio(),r'C:\Users\16156\PycharmProjects\youtubeaudiodownloader\test.wav']
subprocess.run(command)
我最初是将命令变量放入一个数组中,但是,我改变了它。
我已经被这个问题困扰了一个小时,不知道如何解决。任何人都曾尝试过做类似的事情来帮助我。
解决方法
就像评论已经提到的那样,问题比你想象的要简单得多:
您正在调用的.getbestaudio()
方法返回一个 pafy.Stream
对象!结果是调用它的行 ->
command = 'ffmpeg -i' + self.vid.getbestaudio(),+ '' + r'C:\Users\16156\PycharmProjects\youtubeaudiodownloader\test.wav'
...将崩溃,因为您尝试连接字符串和 pafy.Stream
对象。
此外,您可能还想对那个肯定不应该出现的逗号做一些事情。
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。