ffmpeg 下载网上m3u8的视频文件
一、關于 FFmpeg
FFmpeg 是一個音視頻領域使用最廣泛的跨平臺開源庫。由C語言編寫,但廣泛的為 C/C++、C#、Java、Python 等主流編程語言所調用。它集合了幾乎所有的編碼解碼庫與流協議,幾乎能完美處理音視頻開發領域的所有需求。
二、Mac 平臺安裝 FFmpeg
方式一:源碼安裝 FFmpeg
通過編譯源碼安裝 FFmpeg 的優點是可以把我們想要的東西都塞到FFmpeg中,不想要的就刪掉,也就是根據自己的需要對FFmpeg進行裁剪。首先我們編希望達到的目標:
(1)編譯出 ffmpeg、ffplay、ffprobe 三個命令行程序;
(2)只產生動態庫,不產生靜態庫;
(3)將 fdk-aac、x264、x265集成到 FFmpeg 中(fdk-aac 會在后續 AAC 編解碼時用到,x264、x265會在視頻模塊中用到);
1.1、安裝依賴項:
a、安裝 yasm
#下載 yasm 1.2.0 $ curl http://www.tortall.net/projects/yasm/releases/yasm-1.2.0.tar.gz >yasm.tar.gz # 解壓 $ tar xzvf yasm.tar.gz # 進入目錄 yasm-1.2.0 $ cd yasm-1.2.0 # 執行配置 $ ./configure # 編譯 $ make # 安裝 $ sudo make installb、安裝 sdl2(如果不需要安裝 ffplay 可以忽略這一步):
$ brew install sdl2c、安裝 fdk-aac
brew install fdk-aacd、安裝 x264
brew install x264e、安裝 x265
brew install x265 可通過 brew list命令查看是否安裝過 fdk-aac、x264、x265;1.2、編譯 FFmpeg 源碼
a、下載 FFmpeg 源碼(xz、bzip 和 gzip 三種選項僅僅是壓縮格式不同,內容是相同的):
官網下載地址:https://ffmpeg.org/download.html
b、下載完成解壓 FFmpeg ,打開終端進入 FFmpeg 源碼文件夾:
$ cd /Users/mac/Downloads/ffmpeg-4.3.2c、執行源碼目錄下的 configure 腳本:
$ ./configure --prefix=/usr/local/ffmpeg --enable-shared --disable-static --enable-gpl --enable-nonfree --enable-libfdk-aac --enable-libx264 --enable-libx265 --prefix 指定編譯好的 FFmpeg 安裝路徑--enable-shared 生成動態庫--disable-static 不生成靜態庫--enable-libfdk-aac 將 fdk-aac 內置到 FFmpeg--enable-libx264 將 x264 內置到 FFmpeg 中--enable-libx265 將 x265 內置到 FFmpeg 中--enable-gpl x264、x265要求開啟 GPL License--enable-nonfree fdk-aac 與 GPL 不兼容,需要通過開啟 nonfree 進行配置 參考:https://github.com/FFmpeg/FFmpeg/blob/master/LICENSE.md./configure —help | grep XXX 通過命令查看每個配置項的作用d、編譯:
$ make -j 8 && sudo make installe、為了讓bin目錄中的 ffmpeg、ffprobe、ffplay 在任意位置都能夠使用,需要先將 bin 目錄配置到環境變量 PATH 中
# 打開環境變量 $ vim ~/.bash_profile # 輸入 i 進入編輯模式,配置 ffmpeg 環境變量,然后按 ESC,輸入 :wq 退出編輯模式 export PATH=/usr/local/ffmpeg/bin:$PATH # 執行 source 命令,是配置的環境變量生效 $ source ~/.bash_profile如果你用的是zsh,而不是bash,只需要將上面的 .bash_profile 換成 .zprofile 。
f、檢查是否安裝成功:
如果控制臺打印以下內容說明安裝成功:
ffmpeg version 4.3.2 Copyright (c) 2000-2021 the FFmpeg developers built with Apple clang version 11.0.3 (clang-1103.0.32.62)g、安裝成功后目錄結構:
$ tree . |____bin # 應用程序,可在終端中使用 | |____ffmpeg # 用于轉碼的應用程序 [文檔](http://ffmpeg.org/ffmpeg.html) | |____ffplay # 用于播放的應用程序 [文檔](http://ffmpeg.org/ffplay.html) | |____ffprobe # 用于查看文件格式的應用程序 [文檔](http://ffmpeg.org/ffprobe.html) |____include # 頭文件 | |____libavcodec # 編解碼庫,用于音頻/視頻編解碼 | |____libavformat # 封裝格式處理,包含多媒體容器格式復用器和解復用器的庫 | |____libavfilter # 濾鏡特效處理 | |____libavdevice # 包含輸入輸出設備的庫 | |____libavutil # 包含簡化編程功能的工具庫(大部分庫都需要這個庫的支持) | |____libswresample # 音頻采樣數據格式轉換,用于高度優化的音頻重采樣、重新矩陣化和樣本格式轉換操作 | |____libswscale # 視頻像素數據格式轉換,用于高度優化的圖像縮放和色彩空間/像素格式轉換操作 | |____libpostproc |____lib # 動態庫 | |____libpostproc.55.dylib | |____libswscale.dylib | |____libavutil.56.51.100.dylib | |____libavcodec.58.91.100.dylib | |____libswscale.5.dylib | |____libswresample.3.dylib | |____libavfilter.7.dylib | |____libavformat.58.dylib | |____libavformat.dylib | |____libavutil.dylib | |____libavformat.58.45.100.dylib | |____libavutil.56.dylib | |____libswresample.3.7.100.dylib | |____libavcodec.dylib | |____libavdevice.58.dylib | |____libswresample.dylib | |____libavdevice.dylib | |____libavfilter.7.85.100.dylib | |____libpostproc.dylib | |____libavfilter.dylib | |____libpostproc.55.7.100.dylib | |____libswscale.5.7.100.dylib | |____libavdevice.58.10.100.dylib | |____libavcodec.58.dylibh、如果安裝的 ffmpeg 有問題,卸載命令:
$ cd /Users/mac/Downloads/ffmpeg-4.3.2 $ sudo make uninstall方式二:Mac 平臺也可以選擇使用 Homebrew的方式進行安裝(源碼安裝和Homebrew安裝二選一):
$ brew install ffmpeg查看 FFmpeg 是否安裝成功:
$ ffmpeg -version如果可以成功查看版本號,說明安裝成功!
如果brew install ffmpeg報錯,考慮到可能是鏡像原因,請更改鏡像:
如果誤操作也可以恢復默認配置:
首先執行下述命令:
然后刪掉 HOMEBREW_BOTTLE_DOMAIN 環境變量,將你終端文件
~/.bash_profile 或者 ~/.zshrc中HOMEBREW_BOTTLE_DOMAIN
行刪掉, 并執行 source ~/.bash_profile或者source ~/.zshrc
三、使用ffmpeg
下載視頻,并將m3u8格式轉為mp4格式,指令如下:
ffmpeg -i https://youku.com-youku.net/20180620/13336_33db73a9/index.m3u8 fileName.mp4 或者 ffmpeg -i https://youku.com-youku.net/20180620/13336_33db73a9/index.m3u8 -c copy fileName.mp4下載中。。。由于視頻很大,下載需要很長長長時間(1個G的視頻可能需下載幾小時…)。
可以通過如下指令進行下載提速(下載速度大約能提升到幾到十幾分鐘,很棒了哦,起碼比百度云快):
如果你想用終端工具拉起視頻播放,直接通過如下指令就能 播放某鏈接的視頻
ffplay -i https://xxxx參考鏈接1、https://www.jianshu.com/p/06d928f509bd
參考鏈接2、https://developer.aliyun.com/mirror/homebrew
參考鏈接3、https://zhuanlan.zhihu.com/p/142349349?app=zhihulite
總結
以上是生活随笔為你收集整理的ffmpeg 下载网上m3u8的视频文件的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: Codis的源码编译生成tar包
- 下一篇: 第二百四十八节,Bootstrap轮播插