Since nicovideo shows me more black screens than actual videos and the flash player stutters from time to time, I've resorted to downloading the videos before watching, using the usual tools that linux provides. Until Flash 9, video files could be found in /tmp, where the flash plugin stored them. Flash 10 deletes its temporary files after opening, so they can't be found in the filesystem. Here's how to get them anyway:
- Open your flash-enabled browser and navigate to the video page as explained in the first post. Refresh a few thousand times until the video plays.
- Hit pause, wait for the video to finish loading.
- Find the PID of the flash plugin (if ran in a separate task) or your browser, e.g.
~> ps a | grep flashplayer.so
It might look like this:
4209 pts/1 SLl+ 2:33 /opt/firefox/plugin-container /opt/Adobe/flash-player32/plugin/libflashplayer.so 4128 plugin true
- Get all open file handles from flash:
~> ls -l /proc/<PID>/fd/
You should see an entry like:
lr-x------ 1 tub users 64 Jul 21 00:28 16 -> /tmp/FlashXXq0Uros (deleted)
The symlink you're looking for points to a deleted file in /tmp/ that starts with "Flash". Note the name of the symbolic link, in this example it's 16.
- ~> cp /proc/<PID>/fd/<FD> ~/my_downloaded_video.mp4
and enjoy the video! If you're feeling particularly evil, re-upload to youtube and post the links here so others don't need to waste their time :p