使用youtube-dl下載視訊及Sport-1M Datesets
最近使用到了Sports-1M資料集,但是從github上
git clone https://github.com/gtoderici/sports-1m-dataset.git
檢視裡面只給了相關視訊的URL,不像UCF-101給了包含相關視訊的資料集。因為Sports-1M資料集包含487個運動類別,100萬個YouTube視訊,而youtube-dl是下載YouTube目前最好的下載工具,遂決定使用youtube-dl來下載相關視訊。
1 安裝1
在Ubuntu上使用如下命令
sudo apt install youtube-dl
在指令碼上設定可執行許可權
sudo chmod a+rx /usr/bin/youtube-dl
2 下載
執行如下命令
youtube-dl<video_url>
例如執行
youtube-dl https://www.youtube.com/watch?v=ABPsSSS2uY0
結果如下圖所示
使用-F命令檢視視訊包含的檔案,注意此處-F要大寫
youtube-dl -F https://www.youtube.com/watch?v=ABPsSSS2uY0
結果如下所示:
從上圖可知此視訊包含許多格式,每行的第一串資料代表了格式程式碼,可以根據此指定下載格式
youtube-dl -f 37<video_url>
3 批量下載
找到Sports-1M資料集裡頭的all_urls.txt檔案,其包含了all_urls.txt檔案
youtube-dl -i -f 17 -a all_urls.txt
-i 是遇到錯誤檔案時跳過,-a是跳到外部檔案(該檔案包含需下載檔案的URL),
當然也可以加上一些諸如此類的命令: --max-filesize SIZE 不下載大於SIZE的視訊(e.g. 50k or 44.6m) ,其它一些命令見Reference 22。
4 其它
因為是利用Sports-1M資料集做視訊分類等,所以並不需要音訊等。在儘量壓縮體積時也想把音訊也去掉,暫時還沒發現怎麼只下載視訊而不要音訊等。
Reference: