Completed

M3u8 automatic download with ffmpeg

Published on the June 03, 2020 in IT & Programming

About this project

Open

Hi, i need to download the streams from +30 different websites, currently i do as follows:

1)Open cmd
2)Run ffmpeg.exe -i "https://cdn.jmvstream.com/w/LVW-8403/ngrp:LVW8403_bIBvekk9QA_all/chunklist_b2097152.m3u8" -c copy TVCultura.mkv

and when it crashes it have to manually search for a new m3u8 link

The problem is, the m3u8 links expires every X amount of time, so i've to be at the computer 24-7 monitoring when a download crash, search again in the website (in this case https://tvcultura.com.br/aovivo/) for a new m3u8 link (I get the link with the stream video downloader addon from chrome), and restart the download.

I would like to make this automatic, this is, the process to be as following:
1)"ffmpeg.exe -i "http://v3fbs247hls-i.akamaihd.net/hls/live/219079/v3fbs247hls/v3fbs247hls_1_1.m3u8" -c copy TV5France.mkv
IF m3u8 does not longer yield results---->Go to link of streaming video and retrieve a new m3u8-->restart the download (in the same folder as before, with a new name so it doesn't overwrite)

I also need:
1)To be able to configure the date and time in wich the recording starts and stops.
2)To be able to configure the folder in which each stream is being recorded.
The only input I should put into the software would be the streaming links, for example: https://tvcultura.com.br/aovivo
I want you to make a script, or an skeleton, over or around the ffmpeg, i don't want an app or a server solution. I currently have 10 PCs working on this, so i can have one, two or tree recording 24/7 and the other for backup or other subprocess. Also, ffmpeg is very cheap in hardware use, i don't think any web solution will be able to manage the +30 stream downloads i need.




Also i need the streaming to be saved in .mkv into my computer, so if the operation crashes no data will be lose, and  because i need to be watching the videos as they're being recorded, to advance, pause, go back and to copy the files (while still recording) in order to make cuts and distribute them (i work at monitoring)

also some streams require geolocalization, that's why i'm currently using 10 different pcs, i've one with a vpn in spain, other with vpn in usa, other with vpn in uk, etcetera. That's why i need the automatization to be make around the ffmpeg command and not with some strange web service or app.

Lastly, I’ve separate the streaming in two different types: the ones from particular websites (https://www.cbsnews.com/live/, https://live.adn40.mx/, https://live.daserste.de/, etcetera) and the ones from youtube. The m3u8 links from the websites can be obtained pretty straightforward, the ones of youtube are a bit more catchy, so you’ve the option of presenting me solutions for both kinds of streams, or only for the particular websites.

In case the link, for example https://www.cbsnews.com/live/, don’t retrieve any m3u8 links (maybe the stream is offline, or in the case of youtube, the stream have ended and restarted with a new https direction) the software should send me alarm, mail or something.

I attached an excel sheet so you can see the links i work with.

Im currently downloading  between 300-600gb data every day  (1hs 640x360=0,5gb 1hs 1280x720=1gb) im recording 30 streams x24hs at various qualities.

Category IT & Programming
Subcategory Desktop apps
Is this a project or a position? Project
I currently have I have an idea
Required availability Full time
Experience in this type of projects No (I haven’t managed this kind of project before)
Required platforms Windows

Delivery term: Not specified

Skills needed