Log in

View Full Version : Convert .yuv file into another format


Dust Signs
8th September 2006, 12:51
Hi,

I downloaded some test sequences of the "Video Quality Experts Group" (ftp://ftp.crc.ca/crc/vqeg/TestSequences/Reference) for my term paper. Due to the fact that VDub and VDubMod both do not support that filetype, I decided to convert the .yuv file into another format which is supported.
On the URL mentioned above, I found a utility which is able to extract all the frames from the .yuv file as .qtl image files. I also found a utility which allows me to convert the .qtl into .bmp files which I can now open with VDubMod and encode. But there is one serious problem: there are a lot of combing artefacts in the encoded video which I fear is due to the fact that the source is interlaced. But I don't really know what the .bmp files (frames) really are: are they full images, are they half images (because of the interlacing) which look as if they were full images... I really don't know. Deinterlacing (bleding) works, but the video is too soft afterwards and not appropriate for my purposes. I put 10 of the .bmp files on my webspace: http://cmpxlib.dustsigns.de/Temp/. Does anyone know how I can create a video out of that which is neither interlaced nor too soft because of the deinterlacing?

Thanks in advance
Dust Signs

GodofaGap
8th September 2006, 12:57
A much easier way of loading .yuv files is via Avisynth

loadplugin("c:\my\pathto\rawsource.dll")

rawsource("c:\mypath\to\raw.yuv",720,576,"UYVY")

You can then use one of the excellent deinterlacers for avisynth.

Or, you could try the smartdeinterlace plugin for VirtualDub from neuron2.net, it should do a much better job than just blending.

Or, download 720p or 1080p from here (ftp://ftp.ldv.e-technik.tu-muenchen.de/dist/test_sequences/) so you don't have to deinterlace. :)

Dust Signs
8th September 2006, 13:09
Thank you for your quick answer. Where can I find this DLL? The AVISynth page does not seem to work at the moment... :scared:

Dust Signs

GodofaGap
8th September 2006, 13:28
PM me your email, and I'll send it.

Dust Signs
8th September 2006, 14:03
OK, I now created this little AVISynth script:

LoadPlugin("C:\Programme\AviSynth 2.5\plugins\rawsource.dll")
RawSource("P:\VQEG_Seq\TestSequences\Reference\src3_ref__625.yuv", 720, 576, "UYVY")
AutoCrop(0)
AssumeFPS(29.970)
#FieldDeinterlace(blend=false)
LoadPlugin("C:\Programme\AviSynth 2.5\plugins\LeakKernelDeint.dll")
LeakKernelDeint(0)

It works quite fine, but the LeakKernelDeint produces little artefacts. I also found out that some of the files must be progressive because they look very good even without deinterlacing. If I can find a possibility to deinterlace the interlaced ones properly, it would be perfect because I wouldn't have to look for more video material (btw. thanks for the link of the TU München, I'm currently downloading all the 720p, 1080p and 1080i files :D

Dust Signs

check
8th September 2006, 14:40
Have a look at TDeint ( http://forum.doom9.org/showthread.php?t=82264 ) or mvbob (no address handy sorry)

Dust Signs
8th September 2006, 14:50
Have a look at TDeint ( http://forum.doom9.org/showthread.php?t=82264 )
:eek: Wow... very nice. The results are really good. If anyone should be interested: here is the final (?) AviSynth script. If anyone has got any suggestions, please feel free to tell me :)

#Load plugin to be able to read raw sources
LoadPlugin("C:\Programme\AviSynth 2.5\plugins\rawsource.dll")
#Load file (raw source)
RawSource("P:\VQEG_Seq\TestSequences\Reference\src9_ref__625.yuv", 720, 576, "UYVY")
#Autocrop borders
AutoCrop(0)
#Set framerate (PAL = 25fps)
AssumeFPS(25)
#Deinterlace
LoadPlugin("C:\Programme\AviSynth 2.5\plugins\TDeint.dll")
TDeint()

Dust Signs

GodofaGap
8th September 2006, 15:02
Your source is PAL, so make it 25 fps ;)

Dust Signs
8th September 2006, 15:11
Woops ^^. I was a little bit confused because of the 29,97 fps in this article (it's german, but the code is not :p ): http://www.heise.de/ct/05/10/146/default.shtml

Dust Signs