目前我正在使用youtube-dl(https://github.com/rg3/youtube-dl)录制来自YouTube的直播流视频。
我使用的命令是:
youtube-dl --id -f 92 https://www.youtube.com/watch?v=VYlQJbsVs48
执行获取格式命令后,我得到了一个格式代码为92的格式列表:
format code extension resolution note
140 m4a audio only DASH audio 144k , m4a_dash container, aac @128k (48000Hz)
141 m4a audio only DASH audio 272k , m4a_dash container, aac @256k (48000Hz)
160 mp4 256x144 DASH video 124k , 15fps, video only
133 mp4 426x240 DASH video 258k , 30fps, video only
134 mp4 640x360 DASH video 616k , 30fps, video only
135 mp4 854x480 DASH video 1116k , 30fps, video only
136 mp4 1280x720 DASH video 2216k , 30fps, video only
137 mp4 1920x1080 DASH video 4141k , 30fps, video only
151 mp4 72p HLS
132 mp4 240p HLS
92 mp4 240p HLS
93 mp4 360p HLS
94 mp4 480p HLS
95 mp4 720p HLS
96 mp4 1080p HLS (best)
这正在创建一个名为VYlQJbsVs48.mp4.part的文件,当然会不断变大。
有没有一种方法可以从直播流中提取视频片段或形成部分文件?或者也许有更好的方法来做这件事吗?
我注意到的是,如果我强制退出运行youtube-dl的iTerm2,则它创建的.part文件将不包含任何索引信息(与mp4文件中不存在moov原子有关-这是有关帧数和其他内容的信息-元数据),所以这让我想起我无法从文件中提取内容。
也许如果youtube-dl能够始终编写索引信息,或者我可以以某种方式记录直播流并在录制时获取视频片段。
我忘了提到我正在使用OSX Yosemite。我已经通过Homebrew安装了FFMPEG和youtoube-dl。
如果有解决方案,我非常乐意在Ubuntu上尝试。
任何帮助将不胜感激。
谢谢。
Alex