This is an update to PlayerExample. Three things changed here.
I changed the usage of av_close_input_file to match the change featured in my patch to libavformat.
setRGB was a major bottleneck. Instead of using setRGB, it now fetches the BufferedImage's data buffer and uses System.arraycopy.
This measured about 7 to 10 times faster than setRGB and it now runs perfectly smooth even on my older systems.
I changed the usage of img_convert to target the RGB32 format instead of RGB24. That way we don't need a ton of Java code to perform this conversion.
The data can be pulled as ints instead of bytes, and can be shoved directly into a BufferedImage via arraycopy or setRGB.