我尝试使用 ffmpeg 下载 mp3 格式的 youtube 媒体。
ffmpeg -i <url> -f mp3 output.mp3
它适用于其他网址,但不适用于 youtube-dl 检索的 YouTube 视频网址。 ffmpeg 返回错误 403,禁止。我也无法使用 wget 下载,但从浏览器和 vnc 播放器中,该 url 可以正常工作。我想和ffmpeg分开下载,因为我不想以原始格式下载。有什么问题?我该如何修复它?
命令:
./youtube-dl -f bestaudio -g https://m.youtube.com/watch?v=D-dONCnY_Yg
ffmpeg -i https://r1---sn-qxo7rn7e.googlevideo.com/videoplayback?signature=021CAFB9066554DD33675D89CC80D6E5FC616A7E.8A6222115FF91416C7F1B639B8F4A86671B40DD2&ipbits=0&sparams=clen%2Cdur%2Cei%2Cgir%2Cid%2Cip%2Cipbits%2Citag%2Ckeepalive%2Clmt%2Cmime%2Cmm%2Cmn%2Cms%2Cmv%2Cpl%2Crequiressl%2Csource%2Cexpire&fvip=1&source=youtube&id=o-AALFu428zi6lOqHvA5xGfADpvNCR_BXItpMzqWb73CSH&mm=31%2C26&expire=1520111723&dur=293.721&lmt=1508989837160273&key=yt6&ip=35.227.125.114&ms=au%2Conr&ei=C7yaWuSpMYj5qQWY_qH4DQ&mv=m&mt=1520090001&requiressl=yes&gir=yes&mn=sn-qxo7rn7e%2Csn-cvb7ln7l&clen=4618202&keepalive=yes&c=WEB&mime=audio%2Fwebm&pl=24&itag=251&ratebypass=yes -f mp3 output.mp3
ffmpeg 返回错误 403 禁止。
答案1
您忘记引用给定的 URL,ffmpeg
因此 shell 将某些字符用作表达式或其他内容。
ffmpeg -i "https://r1---sn-qxo7rn7e.googlevideo.com/videoplayback?signature=021CAFB9066554DD33675D89CC80D6E5FC616A7E.8A6222115FF91416C7F1B639B8F4A86671B40DD2&ipbits=0&sparams=clen%2Cdur%2Cei%2Cgir%2Cid%2Cip%2Cipbits%2Citag%2Ckeepalive%2Clmt%2Cmime%2Cmm%2Cmn%2Cms%2Cmv%2Cpl%2Crequiressl%2Csource%2Cexpire&fvip=1&source=youtube&id=o-AALFu428zi6lOqHvA5xGfADpvNCR_BXItpMzqWb73CSH&mm=31%2C26&expire=1520111723&dur=293.721&lmt=1508989837160273&key=yt6&ip=35.227.125.114&ms=au%2Conr&ei=C7yaWuSpMYj5qQWY_qH4DQ&mv=m&mt=1520090001&requiressl=yes&gir=yes&mn=sn-qxo7rn7e%2Csn-cvb7ln7l&clen=4618202&keepalive=yes&c=WEB&mime=audio%2Fwebm&pl=24&itag=251&ratebypass=yes" output.mp3
当然,此链接可能已过期,您需要从 获取新的链接youtube-dl
。