At the moment i am recording a LIVE stream video from youtube with youtube-dl (https://github.com/rg3/youtube-dl)
The command i use for this:
youtube-dl --id -f 92 https://www.youtube.com/watch?v=VYlQJbsVs48
92 is a format code that i got after executing a command to get the formats, that gave me this list:
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)
This is creating a file called VYlQJbsVs48.mp4.part that gets bigger and bigger of course.
Is there a way to extract a video snippet from that live stream or form the part file? Or maybe there is a better way of doing this?
What i have noticed is that if i force quit iTerm2 while youtube-dl is running the .part file it creates wont contain any index information (something to do with an moov atom not being present in the mp4 file - which is the information about the number of frames and other things - metadata i think), so it makes me think i cannot extract from the file.
Maybe if there would be a way that youtube-dl can write the index information at all times or maybe another way that i can record the live stream and get video snippets while its recording.
I forgot to mention i am doing this on OSX Yosemite. I have FFMPEG installed with homebrew and youtoube-dl
I am more than happy to try stuff on UBUNTU if there is a solution.
Any help would be greatly appreciated.
Thank you.
Alex
This command will extract a 5 second snippet:
ffmpeg -i $(youtube-dl -f 92 -g https://www.youtube.com/watch?v=36YnV9STBqc) -c:v copy -c:a copy -t 00:00:05 snippet.mp4
With the -g
option, youtube-dl only outputs the video stream URL.
Tested with ffmpeg 4.3, youtube-dl 2020.07.28 and a Youtube radio live stream.
Reference: superuser
If you love us? You can donate to us via Paypal or buy me a coffee so we can maintain and grow! Thank you!
Donate Us With