Years ago, I approached these sites like the author in the blog post. I spent hours reading about Flash and figuring out the schemes websites used. I decompiled swf. I also tried rtmpdump, livestreamer and other all-in-one solutions. I used early youtube downloaders (clive, etc) and later quvi. I also used /dev/bpf to capture HTTP requests. I tried it all.
I can relate to what the author is trying to do. I never settle for "streaming". Download only.
However I found over the years either the websites have made things easier or I was simply trying too hard. Or maybe I just am not interested in the type of video that is served in this way. For some reason it takes much less effort now.
To make sure I am not imagining this, I decided to try one of the author's examples.
I chose projectfreetv.so
1. I followed a link on the main page for some TV show I have never seen.
2. I read the HTML.
3. I noticed /watch/?aff_id= URL's.
4. I chose the first one, 493165, and followed it.
5. I read the HTML.
6. I noticed a URL pointing to a website that serves TV shows and followed it.
7. I read the HTML.
8. I noticed a URL pointing to an MP4 file.
9. I downloaded the file.
I assume I got the TV episode on offer. The screen size is a little small but the file was about 89MB and appeared to be the full episode.
Total time: less than 10min
What did I use? sed, netcat, less and ftp for the download. The entire process is a one-liner.
If anyone has some more examples to try, please list them. I would welcome the challenge.
I've always had trouble trying to rip JWPlayer videos that sit behind a login. I did manage it but I had to stream (second-by-second) the entire video.
 - https://rtmpdump.mplayerhq.hu/
 - http://docs.livestreamer.io/
 = https://rg3.github.io/youtube-dl/
 - https://github.com/rg3/youtube-dl/tree/master/youtube_dl/ext...
This tech already exists, and it's called 'Server Side Ad Insertion', with Brightcove, The Platform, Adobe and Google all offering solutions.
It's actually pretty cool - it works by instead of streaming a baked file, the client gets a 'live stream' URL and ads are inserted into that stream, dynamically, just like regular video. It's like having `badge.svg` image that's actually a PHP script that dynamically creates an SVG.
I'm not overly familiar with video tech, so I've definitely butchered the exclamation.
Not surprisingly there was some legal action, but I think it's rather unenforceable in practice, and saying it's illegal to do so is nearly equivalent to saying that you do not have the freedom to change the channel, look away, or even close your eyes - a rather scary situation.