I’m taking the Machine Learning class on Coursera with a friend and we wanted to watch the lectures together on the TV. Recently he got a Chromecast, which is compatible with many Google apps, Netflix, and Hulu. But the Coursera lectures aren’t on YouTube so it’s not easy to use the Chromecast. Someday the Chromecast will support more third-party apps and Coursera will have an app, but in the meantime…
Solution 1: Batch download videos, upload to YouTube, use Chromecast
This is the first solution we tried. It takes a couple of steps:
- Install coursera-dl (requires Python 2.7 and pip)
- Download all lecture materials for your course to your local disk
Note: The first time I tried I mixed up the order of the destination folder and the course code, and it gave funny error messages like it couldn’t find the course “.”, which was entirely my fault but confusing. Also, the course number is in the URL of the course webpage.
- (Windows) Search for *.mp4 in the folder you specified for download. Non-Windows operating systems should have a similar equivalent.
- Upload to YouTube:
- Sign in to YouTube
- Click Upload at the top (or you can navigate to your video manager and go from there)
- Set the default privacy (Private)
- Drag and drop the files from your folder search
- If you haven’t verified your YouTube account, it’ll lock any videos over 15 minutes long. If that’s the case, navigate to the video and there should be a link to verify your account via SMS. Then it’ll unlock the longer videos.
- Create playlists from the video manager and make sure that they’re in-order so you can play them smoothly.
The problem is that the Chromecast can’t play Private videos. To get around this, go into YouTube’s video manager, select all, and change privacy to Unlisted. Now you’ll be able to watch on Chromecast! We just stream from our phones with this method. (YouTube/Chromecast isn’t actually streaming from the phone so it doesn’t drain your battery.)
The main drawback is that it takes a bit of work. You also lose the features of playing back via Coursera webpage, such as speeding up the video, automatic pause during quizzes, and good subtitles. Otherwise, this approach is great. Playback is perfectly smooth.
- Don’t forget to change the videos back to Private after you’re all done!
- This should also work for watching lectures on Playstation 3, Wii, Xbox, smart Blu-ray players, smart TVs, etc. The hardest part of streaming on those devices will probably be navigating to your playlists.
Solution 2: Use Chrome on a laptop, stream to Chromecast
You can also stream a tab from Chrome on your computer to the Chromecast. This is more straightforward and requires much less setup than the other approach. But these are the drawbacks we’ve experienced:
- You have to keep the laptop on and nearby so you can do the quizzes, which drains your battery.
- Chrome streaming doesn’t work nearly as well. In about an hour of videos, the connection failed twice and we had to reconnect. In contrast, the connection didn’t drop at all for about 2 hours with the YouTube method.
The YouTube method is hacky, but it works. I’m looking forward to being able to stream directly, perhaps from Coursera Companion or an official app when it’s available. I wonder what the speed and quiz experience will be like? Video playback on the TV and quiz on the phone? Quiz as just a pause like the mp4 files?
Also, taking a course with a friend is much better than taking it alone!