📜  使用 ffmpeg、avconv 和 youtube-dl 对音频/视频文件进行操作

📅  最后修改于: 2021-10-19 08:16:17             🧑  作者: Mango

本文旨在说明如何使用linux终端对音频文件进行以下操作:

  1. 下载 YouTube 视频
  2. 在各种格式之间转换音频/视频文件
  3. 合并两个 mp3 文件
  4. 在终端上播放音视频文件

安装

sudo apt-get update
sudo apt-get install python3-pip
sudo pip3 install youtube-dl
sudo add-apt-repository ppa:mc3man/trusty-media
sudo apt install libav-tools
sudo apt-get install ffmpeg
sudo apt-get install libid3-3.8.3-dev
sudo apt-get install mp3wrap
  1. 下载 YouTube 视频:
    Youtube 视频可以通过使用 youtube-dl 库直接从终端下载。它的用法很简单。
    youtube-dl [options] [url]
    

    有几个参数可以在选项下传递,例如:

    • -o [输出文件名]
    • -i(忽略错误)
    • –abort-on-error(如果有任何视频不可用则停止下载

    例子:

    youtube-dl https://www.youtube.com/watch?v=ka0tlCl7hwI -o geeksforgeeks 

    下面是它的用法示例。该文件将存储在当前工作目录中。

    您可能会收到一条警告,指出 avconv 版本不是最新的。这可以通过升级(sudo apt-get upgrade)或强制 youtube-dl 使用 ffmpeg 来解决,如下所示

    youtube-dl --prefer-ffmpeg [url] 

    下载的文件可以通过任何音频/视频播放器正常播放。

  2. 在各种格式之间转换 A/V 文件:
    此处将使用 avconv。例如,考虑一个文件“g4g.mkv”。假设我们要将其转换为 mp3 文件。必须使用以下命令:
    avconv -i "g4g.mkv" -c:a libmp3lame "g4g.mp3"
    

    请注意所有必须完成的工作是更改扩展名。所有视频文件都可以转换为音频文件,视频文件可以在视频格式之间相互转换,例如avi转mp4。但是,质量可能会下降。

  3. 合并两个 mp3 文件:
    应使用以下一组命令来组合 mp3 文件。
    mp3wrap tmp_MP3WRAP.mp3 [file 1] [file 2]
    ffmpeg -i tmp_MP3WRAP.mp3 -acodec copy [output name] && rm tmp_MP3WRAP.mp3
    

  4. 播放音频和视频:
    这个操作利用了ffplay,使用起来非常简单
    ffplay [file name]
    

可以在此处找到 ffmpeg 的更多有趣和有用的应用程序