After lots more research and quite a bit of trial and error, I have arrived at a solution that is 95% what I was looking for. It is not the easiest of solutions but I’ll detail it here for other video quality nuts like me and in the hope that what I have figured out will inspire a DVDFab developer. I am now able to create a vob file without frame judder and minimal quality loss. In fact, on many movies the end result looks better than the original DVD because of noise reduction.
The principal cause of frame judder on the PS3 with a 60Hz (or 120Hz) display is the conversion from 24fps (NTSC Film) to 60fps (1080p). The PS3 does know how to do this properly, but it gets confused when an MPEG2 file with 480p 23.976fps Film content has been soft Telecined with 3:2 Pulldown to make it 480i 29.970fps. Telecine was necessary on old DVD players feeding Interlaced NTSC TV sets. With today’s HDTV sets telecine is no longer required and, besides that, the PS3 as well as most modern players can easily create the interlace information on-the-fly if necessary. The solution (until Sony fixes the PS3) for those of us with large 1080p displays is to remove the extra soft telecine information to reveal the original 24fps Film.
The following is ONLY for DVD movies that have soft telicine and would not work for something like a TV show on DVD that was originally produced as interleve content. If you are unsure, open one of the main movie VOB files in Gspot once you have ripped it to the hard drive. It should have Pics/s of 23.976, Frames/s of 29.970, and Fields/s of 59.94 in the middle right section. If it doesn’t then this process is unlikely to help and a straight vob stream copy in DVD Fab Mobile would be a better choice.
The solution I am using is Mencoder which is part of the open source MPlayer project. For those of you that are already familiar with mencoder here is the full command that I usually put in a batch file:
c:\Movies_tools\MPlayer-1.0rc2\mencoder.exe dvd://1 -dvd-device “C:\Movies\FullDisc\MY MOVIE\VIDEO_TS” -oac copy -vf filmdint,hqdn3d,scale=1280:-2 -ovc lavc -lavcopts vcodec=mpeg2video:vqscale=2:vbitrate=8000:autoaspect:threads=2 -of mpeg -ofps 24000/1001 -mpegopts format=dvd:tsaf:vframerate=24000/1001 -o V:\My_Movie.vob
Now lets delve into whats important here and how you can modify the line to fit your needs:
Update to where you saved MPlayer.
dvd://1 -dvd-device “C:\Movies\FullDisc\MY MOVIE\VIDEO_TS”
This part tells Mencoder the content you want to convert.
[li]If you already have a stream copied vob file then replace this entire section with the path to that file.[/li][li]The “1” after “dvd://” is the title you want to convert (almost always 1). In DVD Fab Mobile you can easily see which is the correct title because it will usually default it for you.[/li][li]The “-dvd-device” is the rip folder of the DVD after DVD Fab or a direct DVD drive if the content does not have CSS protection.[/li][li]You can add “-chapter x-y” if you only want to do one or some of the chapters (x = start chapter, y = end chapter, use “2-2” if you only want chapter 2).[/li][/ul]
This part tells Mencoder to include the original audio track from the DVD (usually AC3 5.1). If the Dolby audio track that you want is something other than the first, you’ll have to add a command to identify which one. The documentation says it’s something like “âˆ’aid 128” but I haven’t tried it yet.
This is where the fun starts. The “filmdint” filter is what does the work of removing the soft telecine. The problem is that in order to run this filter Mencoder decompresses the MPEG2 video frames. In order to return the content to a VOB file we are later going to need to recompress the frames back to MPEG2 and this is where the wheels fall off. Detail was lost in the original compression from movie film capture to compressed MPEG2 video. Decompressing and then recompressing the video, even at the same bitrate results in more degredation and an amplification of compression artifacts (kind of like the digital version of a VHS to VHS copy). To help compensate, we add the “hqdn3d” filter which does high quality noise reduction
Next we use a little trick similar to what graphic artists use when recompressing JPEG images, "scale=1280:-2 ". This scales the image from 480p to 720p before it is recompressed resulting in marketedly reduced compression artifacts. On first glance you might think this would make the resulting MPEG2 stream overly large but in practice the result is slightly smaller than the original. One reason is that we gain a 20% reduction in file size by dumping the unneeded Telecine frames. The second is that although we are increasing the image size, we are not really making new information so the new image has higher compressability. Keep in mind that the destination device for the content is a 1080p HDTV so the content is going to be upscaled even further. I tried upscaling all the way to 1080p which works but my UPNP server wasn’t able to keep up with a 1080p MPEG2 stream.
-ovc lavc -lavcopts vcodec=mpeg2video:vqscale=2:vbitrate=8000:autoaspect:threads=2
This part of the string tell Mencoder to recompress the resulting video into MPEG2. The “vqscale=2” keeps the quality to a maximum, “vbitrate=8000” is the maximum for a compliant DVD MPEG2 stream, “autoaspect” tries to maintain the aspect ratio of the original, and “threads=2” allows you to take advantage of more processor power if you have it available (modify this last setting based on your computer’s ability).
-of mpeg -ofps 24000/1001 -mpegopts format=dvd:tsaf:vframerate=24000/1001
This part of the command specifies the output container format information including 23.976fps output (“24000/1001”) in a dvd compatible way. I’m not sure that “tsaf” is required, but it seems to be included in most of the examples I see.
The last part is the destination file. In this case I am writting directly to my NAS server which slows things down a little but saves me the trouble of copying the file later. Make sure the file extension is “vob” and that the save destination does not have a file size limitation (i.e. FAT32).
The result is a very crisp 720p 23.976fps VOB file. The only place I can find on-screen degredation that isn’t in the original source is a slite jagged edge on diagonal lines (like a capital “A” in the opening credits). My suggestion to those looking for a good test for image degredation is the first chapter of the movie “Stargate - Ark of Truth”. It opens with sideways and forward pans among mountains with the openning credits overlayed which gives lots of edges and dark spots to see judder and pixalation.
I hope someone finds this useful. It took a great deal of time to figure out. Of course, with my luck tomorrow Sony will fix the playback judder themselves.