0%

you-get+ffmpeg实现从下载到提取音视频

安装you-get

  • sudo apt-get install python3-pip && sudo pip3 install you-get
  • 其他安装方法:https://github.com/soimort/you-get#option-1-install-via-pip

简单使用you-get

更完善的使用方法请看:https://github.com/soimort/you-get#getting-started

指定下载的画质或者媒体类型

  1. 使用 -i 选项进行查看可用下载:you-get -i 'https://www.youtube.com/watch?v=jNQXAC9IVRw'
  2. 使用 --itag= 选项指定下载文件:you-get --itag=18 'https://www.youtube.com/watch?v=jNQXAC9IVRw'

直接下载: you-get 'https://www.youtube.com/watch?v=jNQXAC9IVRw'

直接下载一般会下载 -i 选项的第一个文件,一般 是最高的画质。

下载其他文件,不仅仅是媒体文件:you-get https://stallman.org/rms.jpg

通过 HTTP 代理下载

没有代理?参见:自建简易代理

  • 我们只需要在第一个选项前面插入-x ip:port就行,如:you-get -x localhost:1080 -i 'https://www.youtube.com/watch?v=jNQXAC9IVRw'

    安装FFmpeg

  • 参见我的这篇博文:FFmpeg的简单使用

使用you-get+ffmpeg实现从下载到提取音视频

you-get下载视频

ffmpeg提取指定音视频文件

手动实现
  • 参见我的这篇博文:FFmpeg的简单使用

    脚本实现
  • 获取脚本:

    1
    wget -N --no-check-certificate https://raw.githubusercontent.com/IITII/Useless/master/ffmpeg.sh
  • 使用脚本:

    1. 直接./ffmpeg.sh 按着脚本一步一步来
      1
      2
      3
      4
      5
      6
      7
      8
      9
      10
      11
      12
      13
      14
      $ ./ffmpeg.sh
      请选择你要选择的操作的序号:

      * 所有文件名请完整输入文件名称,包括后缀名!

      1.获取aac音频文件
      2.获取mp3文件
      3.获取H.264视频流文件(.mp4文件)
      4.整合mp4文件和mp4文件
      5.整合mp4和mp3文件
      6.整合mp4和aac文件
      7.添加srt字幕
      8.srt字幕转ass
      9.添加ass字幕
  1. 命令行传参
    1. 使用 -h 查看帮助
      1
      2
      3
      4
      5
      6
      7
      8
      9
      10
      11
      12
      13
      $ ./ffmpeg.sh -h
      -h: To show this menu
      -e: Show Some Useful Templates
      -m [1-9]: To switch mode
      -m 1: 获取aac音频文件
      -m 2: 获取mp3文件
      -m 3: 获取H.264视频流文件(.mp4文件)
      -m 4: 整合mp4文件和mp4文件
      -m 5: .整合mp4和mp3文件
      -m 6: 整合mp4和aac文件
      -m 7: 添加srt字幕
      -m 8: srt字幕转ass
      -m 9: 添加ass字幕
    2. 使用 -e 查看示例
      1
      2
      3
      4
      5
      6
      7
      8
      9
      10
      $ ./ffmpeg.sh -e
      ./ffmpeg.sh -m 1 input.mp4 output.aac
      ./ffmpeg.sh -m 2 input.mp4 output.mp3
      ./ffmpeg.sh -m 3 input.mp4 output.mp4
      ./ffmpeg.sh -m 4 input_audio.mp4 input_video.mp4 output.mp4
      ./ffmpeg.sh -m 5 input.mp3 input.mp4 output.mp4
      ./ffmpeg.sh -m 6 input.aac input.mp4 output.mp4
      ./ffmpeg.sh -m 7 input.mp4 input.srt output.mp4
      ./ffmpeg.sh -m 8 input.srt output.ass
      ./ffmpeg.sh -m 9 input.mp4 input.ass output.mp4
    3. 使用 -m 指定处理模式

      具体使用参见示例:./ffmpeg.sh -e

      1
      2
      3
      4
      5
      6
      7
      8
      9
      -m 1: 获取aac音频文件
      -m 2: 获取mp3文件
      -m 3: 获取H.264视频流文件(.mp4文件)
      -m 4: 整合mp4文件和mp4文件
      -m 5: 整合mp4和mp3文件
      -m 6: 整合mp4和aac文件
      -m 7: 添加srt字幕
      -m 8: srt字幕转ass
      -m 9: 添加ass字幕

      样例

  • Carole & Tuesday片头曲
  1. 下载文件:you-get https://youtu.be/k45EpgweT9o
  2. 合并文件:./ffmpeg.sh -m 4 *01*.mp4 *00*.mp4 output.mp4
  3. 压入字幕:./ffmpeg.sh -m 7 output.mp4 *.ja.srt output_srt.mp4

So, Enjoy it!!!

当然如果有 bug 的话,还请及时反馈(推荐 GitHub 直接提 issues, 直接在文章底部留言也行)

-------------本文结束再接再厉-------------

本文标题:you-get+ffmpeg实现从下载到提取音视频

文章作者:IITII

发布时间:2019年05月01日 - 09:05

最后更新:2019年05月12日 - 10:05

原始链接:https://iitii.github.io/2019/05/01/1/

许可协议: 署名-非商业性使用-禁止演绎 4.0 国际 转载请保留原文链接及作者。