First a request. I can only seem to find the "low res" 1080p stuff aka some resolutionx800 or similar. Does anyone have a place to grab "true 1080p" stuff legally as I would like this to be able to be replicated. Not that it ultimately matters much as TV broadcast and a good chunk of the stuff you may watch in "HD" is only 720. Introduction A bit of fun from me today. There will be large images later but they are offsite so 56kers do not need to worry, I request you do not link the images using tags later in the thread as it will most certainly break the page for most people (use thumbnails if you must). Feel free to use them or this post wherever you like though. Imageshack was being a pain when I came round to uploading so instead I 7zipped them and added them to my 4shared site, if someone wants to upload feel free. I have seen many people now who should not better and some who do not run around attempting to extol the virtues of "high definition (henceforth HD)" on the "uninformed" masses. 2 things strike me here: the "HD" seen on new TVs has been had by users of PCs for several years now (several means longer than some of you reading this have been alive) and I am also led to wonder who could actually tell the difference in a meaningful way. Of course this is just one mans opinion so I figured lets do a test to see. For some my "qualifications" are nice to know, I have nothing formal but I have been playing with making/encoding/transcoding video for several years now (about 5 as something more than a passing interest) and trained myself to see errors as part of that. My sight is perfect although this is an attempt for everyone to judge for themselves. [b]Now HD/ video basics for the uninitiated.[/b] Before we get to HD it is probably best to have some history/technical info. Many years ago the world desired some way of playing back video other than the traditional film reel approach (see early TV) as making/distributing thousands of reels was not really viable. This led to the standards of PAL (and other standards such as SECAM but lets not bog it down here) and courtesy of the tendency for 60Hz AC power in various parts of the world NTSC (it was many years ago so generating new signals/pulses at given rates was not as trivial (read cheap) as it is today) being broadcast over the air. PAL region AC power is 50Hz so they got 50 fields per second (later scaled back for colour TV due to latency) in PAL regions. A field can be rather crudely defined as half a frame formed from alternating lines (if you have ever seen seen black horizontal lines in a video or screen grab from one a bad conversion or rather weak settings of the filters to do it from this is most likely the reason). Why fields? the human eye is perfectly happy to accept 25 frames per second (and sometimes a bit less) as fluid motion (i.e. 50 is overkill) so for bandwidth (especially for analog TV) it was scaled back. These both conflicted with FILM (people still shot video to reels for the most part and still do for the vast majority of things) which is 24 frames per second (there was a series of earlier standards using 17/19 and other assorted FPS: why some badly made programs have war footage and old films running way too fast) so it needed to be converted. PAL regions being 1 frame faster just sped it up incurring a slightly higher pitch sound and slightly faster action (later in life various people made algorithms to change the pitch back to normal). Not normally noticeable unless you compare side by side, regular NTSC viewers tend to be more likely to pick it up. NTSC being 6 frames faster than FILM decided to play fields more than once to bring it "up to speed" (for the most part, some things are recorded at this rate such as news and sports but that brings a new set of problems). Unfortunately the numbers are not simple so the 3:2 pulldown was developed whereby fields were played more than once). For regular viewers of PAL this can mean quite a juddery picture. As time went on rather than encode a whole stream like this flags were made to allow the decoding/receiving equipment to do the job but problems can still occur with mixed footage (CGI and regular footage). This area is somewhat extraneous to the current debate though (search for telecine and inverse telecine (IVTC) if you want to know more, the following link is a bit old and does not feature the latest and greatest for helping fix the problem but: [url=http://www.doom9.org/ivtc-tut.htm]http://www.doom9.org/ivtc-tut.htm[/url] ). It was not all bad though as a great deal of games were made for the NTSC market and then suffered very much during PAL conversion (often a slowdown and borders approach was taken). Again this was also later scaled back ever so slightly (to about 29.97) with the introduction of colour to allow for latency and depending on who you speak to sound too. This is all explained in far more depth here: [url=http://www.doom9.org/video-basics.htm]http://www.doom9.org/video-basics.htm[/url] Fine but what is HD? Well PAL is 625 vertical lines (which courtesy of the tendency for the TV to "overscan" means about 540 can be seen). NTSC is 525 or with overscan about 487. HD is higher resolution than this and for TVs commonly appears in the following flavours where the number refers to the horizontal 720 I or P (see just how close normal PAL TV is to this: 33% larger if overscan is taken into account) 1080 I or P (I will give the HD enthusiasts this one double* is quite a bit bit larger) *see next paragraph I stands for interlaced and uses the same "half frame" concept as above P stands for progressive and draws a whole frame at once. (just for the intellectuals R is raster and while it does not exist really any more in general purpose items (save perhaps oscilloscopes and low end toys) it draws a dot where it is needed) 1080P tends to be considered the "king" of the HD scene right now but a good chunk of the "HD" screens sold are likely to be/have been 720P or even 720I (certainly a lot of the early adopters which coincidently form the backbone of those likely to attempt to extol virtues would have got one of those and Europe is still twiddling thumbs a bit in this regard: see the PAL xbox HD stuff). Not that it matters much as a large amount of broadcasts (and games which form the other “HD” demographic) are made in a 720? format if they do appear in HD at all (HD broadcasts in the majority of places come at a premium or selection is limited). However as the upscaling tests will show this may not be all that problematic. The resolutions can get a bit confusing especially when widescreen (16:9 aspect ratio) is taken into account and the fact that some of the 1080 screens use a 1366 x 768 (yes a whole 48 lines more than the “inferior 720” or around 42% more than PAL ) resolution on chip and upscale that to appear at “true” 1080 aka 1920 x 1080 (widescreen). So to clarify 720 tends to be: 1280x720 1080 tends to be: 1920 x1080 unless you have a (rather common) version that uses 1366 x 768 and upscales. For the record PC monitors have been at the lower HD resolutions for nearly 2 decades (IBM introduced XGA with 1024 x 768 (P naturally) in 1990, granted at lower colours for a little while: [url=http://www.videotechnology.com/0904/formats.html]http://www.videotechnology.com/0904/formats.html[/url] ) and as you are likely viewing this on one then you should in theory have the best platform for this sort of test (ignoring issues with odd aspect ratios making for circles appearing as ellipses). Now people will tell you i on the end means it is lower quality and they are probably correct, if only in somewhat indistinguishable terms or it can even look better as an unintentional side effect from deinterlacing (even the most basic of the filters can sharpen, soften or get rid of artifacts). Deinterlacing involves making a whole picture from fields. There are several methods by which this can be accomplished including: reduce by 2 vertical followed by enlargement. Crude but effective. Essentially disregards the interlaced sections and makes them anew (similar to bobbing (below) but not quite as effective when it comes to things like ghosting. field blend: fields are half frames are they not, surely you can just stack them. You can but scene changes (see the doom9 video basics for a great example) and high motion (be it from an unsteady camera, vibration and normal action) can make a mess of things. Pulldowns can also pose a problem but that is not explicitly related. By and large the most common method as it can be accomplished in real time quite easily. bob: one of the great things about a picture is that a pixel is more often than not the same or very close or at least guessable based on the surrounding pixels. Simple bobs take fields and shift the video up and down a pixel and guess the result. More advanced techniques tend to stem from this and can guess at the picture using all manner of clever maths and others can attempt to be smart and only find the “combs” (and normally run into a wall when a horizontal line that is part of the picture appears: this is especially problematic with anime) Before going on the “HD” disc formats are notably absent thus far. This is intentional as several other somewhat unimportant concepts would have to be introduced such as codec/standards comparison, suffice it to say they come in all the resolutions listed above. [b]Anyway tech stuff not over but we are at the tests.[/b] I wanted it to be repeatable by anyone so I had to choose a trailer. The Bourne Ultimatum - 1080p Trailer clocking 80 megabytes available here at [url=http://www.h264info.com/clips.html]http://www.h264info.com/clips.html[/url] (if someone really has a problem with a high quality lossy codec being used (despite the fact the same or worse is used in real life: how many of you with cable or freeview (UK) have seen errors in the video) then the test can be switched to lossless (I just thought I would be nice on peoples bandwidth)). If it is wanted I can upload the lot to usenet. Video chosen mainly for high action. Again if someone can point me towards a true 1080p trailer site that would be great. My setup CCCP video decoder (FFDShow) 2007 - 07 -22 (current stable) [url=http://www.cccp-project.net/]http://www.cccp-project.net/[/url] No pre of post processing other than what is mandated by the H264 standard (even then it is the same frame being decoded and it has nothing to do with the clip after feeding it to avisynth). Avisynth 2.57 (if you use batchDPG installed you already have this, the filters used should not have changed in this version if you still have 2.56) [url=http://sourceforge.net/project/showfiles.php?group_id=57023]http://sourceforge.net/project/showfiles.php?group_id=57023[/url] No special filters should be needed for this first round of tests although I am considering changing the source filter to the new ffmpegsource filter (not much testing has been done with it on my part): [url=http://forum.doom9.org/showthread.php?t=127037]http://forum.doom9.org/showthread.php?t=127037[/url] and maybe messing with the upscaling options of the deinterlacing filter here (this may get scrapped due to the quality comparison): [url=http://forum.doom9.org/showthread.php?t=129953]http://forum.doom9.org/showthread.php?t=129953[/url] The test. There are several options available but I went with the following The first choice was to scale one video down to standard definition and back up before stacking them for comparison. The second test was the above and upscaling the lot to 2x resolution of the largest resolution for even finer picking apart. Both of these are upscaling tests which contrary to the spy film/cheesy forensics show is not able to turn a mess of pixels and come up with a discernable face (it is a bit different for old style chemical based photographs but that is getting off track). The scripts (ignore the odd coding, it works): 1st test downscaling and back [code]video=directshowsource("The Bourne Ultimatum - Trailer.mp4", fps=23.98, convertfps=true).converttorgb32() tweak=video.Lanczos4Resize(1268,540)#PAL vertical resolution stackvertical(video.Subtitle("original", align=5).addborders(0,0,0,20),tweak.Lanczos4Resize(1920,816).Subtitle("scaled to PAL and back", align=5)) killaudio() #trim(100,1000) #ConvertToYV12()[/code] 2nd test downscaling and back before doubling the resolution [code]video=directshowsource("The Bourne Ultimatum - Trailer.mp4", fps=23.98, convertfps=true).converttorgb32() tweak=video.Lanczos4Resize(1268,540)#PAL vertical resolution stackvertical(video.Subtitle("original", align=5).addborders(0,0,0,20),tweak.Lanczos4Resize(1920,816).Subtitle("scaled", align=5)) killaudio() Lanczos4Resize(height*2,width*2) #trim(100,1000) #ConvertToYV12()[/code] Script discussion. Directshowsource runs the haali splitter and FFDshow with the previously mentioned setup (no extra post processing). My scaling filter is lanczos3, it is a reasonably high quality filter. This may however pose an unfair advantage as TVs (the ultimate reason for doing all this) often use basic bicubic/bilinear filters as do media players (my script was not real time even on my fairly high powered rig: [url=http://gbatemp.net/index.php?showtopic=42858]http://gbatemp.net/index.php?showtopic=42858[/url] ). If someone wants to suggest a different method feel free. The converttorgb32() parts are there to dodge an issue with my current setup and make scaling a bit easier (yv12 scaling needs to be a multiple of 4 which bothers the true mathematical division of the horizontal resolution: somewhere between 1270 and 1271) stackvertical was used although it can easily be altered to stack horizontal (you might want to change the borders or comment it out, syntax is AddBorders (clip, int left, int top, int right, int bottom, int "color") everything with a # at the start has been commented out and is just left from me messing around. The results: Images are lossless (100%) JPG although I could be persuaded to change to PNG or slightly lossy JPG (90% or so) if it is requested. I used FFDShow grab filter to grab every 60th frame to ouput to 100% quality JPEG (I was the idea of finding framenumbers to tell the Imagewriter function) for the 1st test and virtualdub do the same for the second (I had some decoder issues when enabling raw video to grab the avisynth output, the script worked fine otherwise additions for the vdub script were SelectEvery(60,0) and changefps(0.4) on a new line). In all truth I probably should have got the I-frames ( [url=http://wiki.multimedia.cx/index.php?title=Frame_Types]http://wiki.multimedia.cx/index.php?title=Frame_Types[/url] ) numbers from the original source and grabbed those but that should not matter. A 7zip containing the all of test 1 and the choice picks below from test2 (the 36 frames I grabbed are 88.7 megabytes) are available here and you are all free to replicate the results for yourselves (nothing I have used is not freely available): Test 1 [url=http://www.4shared.com/file/36675244/8f87aae0/test1.html]http://www.4shared.com/file/36675244/8f87aae0/test1.html[/url] Test 2 [url=http://www.4shared.com/file/36675666/54b60192/test2.html]http://www.4shared.com/file/36675666/54b60192/test2.html[/url] [b]Conclusion and further discussion.[/b] Experimental problems: While some results were obtained courtesy of some of the choices here the results are barely more than subjective if held against commonly accepted scientific practice (1 lossy source, dissimilar conditions to “real life”, no set metric for errors (not that there really can be)). There is also the problem of still images: almost everyone should be able to discern errors in still images easier than video. Future tests: interlaced content (not sure about pulldown stuff as it can be corrected with effort) and altered filters to match real world devices (going to need some more info though and trying to get that out of manufacturers is just shy of getting blood from a stone), NTSC as well as PAL downscaling (the lower NTSC resolution may make a more profound difference) and I really should use a true 1080p source and scale accordingly. I might also attempt to cut the video in 4 and alter the quarters somewhat randomly to see if that makes a difference. Conclusion To my eye some of the upscaled looked nicer (brighter in places and a few less errors) although that technically is an error and some of the text appeared antialiased/sharpened (downscaling and upscaling is a type of image enhancement, see the filter mipsmooth: [url=http://forum.doom9.org/showthread.php?t=64940]http://forum.doom9.org/showthread.php?t=64940[/url] (forum down right now but type mipsmooth into a search engine and you can view a cached copy) Subjectively I would call HD marketing hype at best with a good chunk of people suffering from the marketing equivalent of the placebo effect and scientifically about all I have shown is that if done properly it is damn hard to tell the difference in a meaningful way although it can be done. Comments (if constructive all the better) welcome and flames regarding my being a luddite and how the HD fairy brought back your childhood dog also accepted.