Playing Blu-Ray discs with VLC

So while I was out yesterday, I came across some outdoor fire sale on Blu-Ray discs. Normally they are expensive, at an outstanding ¥2,381 which is just crazy. But for some reason they were only ¥1,000 each. Since I have no entertainment out in Japan, I fell into the nostalgia trap, and picked up a bunch of old favorites.

All I needed was a Blu-Ray drive, which I picked up for ¥2,700 and finally needed some software to play it. While VLC does a great job with DVD’s that doesn’t mean anything, does it?

Well starting with version 3, the framework for Blu-Ray playback is in place! But you’ll need some additional files in place, which after a lot of hunting I found on There you can find both the keys database and AACS dynamic library.

The keys database is copied to the C:\ProgramData\aacs\ directory, and the DLL just is placed into the program directory.

And surprisingly it works well! Granted I’m using an i7-4790k, which I picked up as junk for around ¥20,000. Although I was initially excited as it had 16GB of RAM, a m.2 slot (I got a 512GB new drive for ¥5,900), it’s a nice box compared to the old i5 thing. And rocking a GTX 970, it was nearly top of the line for 7 years ago, but we pretty much hit peak computing, so this thing is fine. I thought it was a bargain as it also includes a liquid cooler, but it appears the main circulator is seizing or something as it is kind of noisy.

What was kind of interesting was that there was so many Blade Runner Blu-Ray discs to be had. I picked up a few, and one I’d never seen before the Archival version. Although maybe it’s a Japanese only release? I’m not sure, but to be honest I never really look at physical releases as it’s yet another thing to eventually lose. Despite having lost everything, I still have my iTunes library.

Recording QEMU’s VNC output to a flash file

First off it doesn’t do sound… I’ll have to search further for something that will let me do something more.. involved, but for now, this works well enough.

First I’m going to use Qemu 0.14.0 for this, earlier ones will work, but if it’s too old, there isn’t any support for VNC output. I figured I’d start with something simple, Lemmings, from the Win32s demo a while back. Now VNC doesn’t like it when you change resolutions, so I find it’s best to start out in the video mode you plan on recording. So once the VM is fired up I go ahead and load Windows. Qemu can support multiple outputs so I’m going to specify that it listens on the default VNC port (TCP 5900), and bind it to my IPv4 loopback. I’m also going to open up the SDL Window, because I like to see what I’m doing. If you want to get more sophisticated, you can even use a multiplexer program like VNC Reflector which will allow multiple people (or programs) to connect to the VNC port.

qemu -L pc-bios -m 32 -hda win31.qcow2 -vnc -sdl -soundhw sb16,adlib

Now a minor word about audio.. I am currently having issues aligning this up.. no doubt I’m doing something wrong, or I should just break down and use some proper editing tools but it kind of works for now. Also to get a ‘clean’ capture of the audio from the VM, I use Virtual Audio Cable. By simply changing my default sound device to a VAC, and my default Mic to the same VAC I don’t have to worry about background noises, or anything else. Not to mention in Vista or Windows 7, you can mute other programs so you won’t have instant pestering bleeding into it.

I’m using the awesome program vnc2flv to record this. Now it is a python program, but thankfully us windows users don’t have to go through too much hell to run this, I just downloaded it from ‘RT’s Free Software‘.

I just kick it off like this:

flvrec -C 640×480+0+0 -o video.flv

And it’ll start recording. I then kicked off sox to record the audio like this:

sox -4 -b 16 -d audio.wav

Then once I’m done doing what I’m going to record, kill both programs.

While sox can record mp3’s if you find libmad, or build it yourself, I found it was just easier to use lame.

lame -r -x -s 44.1 –bitwidth 16 audio.wav

And yes, you *DO* need to output at 44100Hz or 44.1Khz for the audio. Any other level and you can’t combine the flv & audio. Yes I tried and tried, but don’t fight it, and thank me for finding the flags to pass to lame.

Then use flvaddmp3 to combine the audio and the flv video into a final.flv.

flvaddmp3.exe video.flv audio.wav.mp3 final.flv

Now you can upload it to youtube, and from there embed or share it as you wish.

I had originally used pyvnc2swf, which will create a flash file directly, however it doesn’t deal that well with screen refreshes. But if anyone wants to use it, remember the default VNC port is 5900, and you must pick a file to ‘save as’ first then you can start the recording. Also in things like windows, I found having notepad open to full screen then minimizing it was a good way to force a screen redraw.

ML648s & video files…

So I got one of these ML648s video players for christmas. And it says it’ll play WMV/WMA files so it seems to be pretty straight forward to convert stuff right?


Right now I’m taking the output from handbrake and passing it through AMV convert then copy it to the device from windows explorer and you are good to go!

It’s a shame they didn’t write on the box, that it needs this AMV format thing….

But after a LOT of googling around here is the solution.