{"id":484,"date":"2010-11-29T21:00:40","date_gmt":"2010-11-30T05:00:40","guid":{"rendered":"http:\/\/www.pagetable.com\/?p=484"},"modified":"2010-11-29T21:00:40","modified_gmt":"2010-11-30T05:00:40","slug":"progressive-futurama","status":"publish","type":"post","link":"https:\/\/www.pagetable.com\/?p=484","title":{"rendered":"Comparing Digital Video Downloads of Interlaced TV Shows"},"content":{"rendered":"<p>In the days of CRT monitors, TV shows used to be broadcast in interlaced mode, which is unsupported by modern flat-panel displays. All online streaming services and video stores provide progressive video, so they must deinterlace the data first. This article compares the deinterlacing strategies of Apple iTunes, Netflix, Microsoft Zune, Amazon VoD and Hulu by comparing their respective encodings of a Futurama episode.<\/p>\n<p>If you have dealt with video formats before, you probably know about <a href=\"http:\/\/en.wikipedia.org\/wiki\/Interlaced_video\">interlacing<\/a>, a 1930s trick to achieve both high spatial and temporal resolution at half the (analog) data rate: In NTSC countries, there are 60 fields per second (PAL: 50), and every field is half the vertical resolution of a full frame. When film footage at 24 frames per second has to be played at 30 fps (NTSC), every frame has to be shown 1.25 times &#8211; in other words, every fourth frame has to be shown twice. This introduces jerky motion (judder), but it can be improved by using the 60 Hz temporal resolution: Frame A gets shown for 2 fields, frame B for 3 fields, frame C for 2 fields, and so on. This way, every source frame gets shown for 2.5 fields, i.e. 1.25 frames &#8211; this method is called a <a href=\"http:\/\/en.wikipedia.org\/wiki\/Telecine\">telecine 2:3 pulldown<\/a>.<\/p>\n<p>A lot of TV material is produced at 24 fps and telecined, for several reasons: Standard movie cameras can be used instead of TV cameras, 24 fps can be converted to 25 fps PAL more easily than 30 fps NTSC, and  for cartoons, this means that only 24 (or 12) frames have to be drawn for every second.<\/p>\n<p>Unfortunately, interlacing only works with ancient CRT TVs &#8211; modern LCD screens can only show progressive video. And while DVDs are specified to encode interlaced video, more modern formats like MPEG-4\/H.264 and VC-1 usually carry progressive data. So when playing DVDs, the DVD player or the TV have to deal with the interlacing problem, and in case of modern file formats, it&#8217;s the job of the converter\/encoder.<\/p>\n<p>The naive way of converting an interlaced source to progressive is to combine every two fields into a frame. This works great if the original source material was 30 fps progressive (which is rare for NTSC but common for PAL), but for telecined video, since two out of every six frames are combined from two different fields, this leads to ugly <a href=\"http:\/\/www.100fps.com\/\">combing<\/a> effects.<\/p>\n<p>If the source material was 24 fps, an inverse telecine can be done, recovering the original 24 frames per second. Unfortunately, it is not always this easy, since interlaced video may switch between methods, and sometimes use different methods at the same time, e.g. overlaying 30 fps interlaced captions on top of a 24 fps telecined picture, or compositing two telecined streams with a different phase. &#8220;<a href=\"http:\/\/memory-alpha.org\/wiki\/Star_Trek:_The_Next_Generation\">Star Trek: The Next Generation<\/a>&#8221; is a famous offender in this category &#8211; just single-step through the title&#8230;<\/p>\n<p>In the following paragraphs, let us look at <a href=\"http:\/\/theinfosphere.org\/Hell_Is_Other_Robots\">an episode of Futurama<\/a> and how the deinterlacing was done by the different providers of the show. Futurama was produced in 24 fps and telecined. Some of the editing seems to have been done on the resulting interlaced video, so the telecine pattern is not 100% consistent.<\/p>\n<h2>NTSC DVD<\/h2>\n<p>The NTSC DVD is basically just an MPEG-2-compressed version of the US <a href=\"http:\/\/en.wikipedia.org\/wiki\/CCIR_601\">CCIR 601<\/a> broadcast master. It encodes 720&#215;480 anamorphic pixels (which can be displayed as 640&#215;480 or 720&#215;540) and has all the original interlacing intact. This is a frame at 640&#215;480 and properly inverse telecined:<\/p>\n<p><a href=\"docs\/futurama_interlacing\/dvd480.png\"><img decoding=\"async\" src=\"docs\/futurama_interlacing\/dvd480.png\" alt=\"DVD\"><\/a><\/p>\n<h2>Hulu<\/h2>\n<p><a href=\"docs\/futurama_interlacing\/hulu480.png\"><img decoding=\"async\" src=\"docs\/futurama_interlacing\/hulu480.png\" alt=\"Hulu\"><\/a><\/p>\n<p>Hulu (480p version) took the original image without doing any cropping on the sides. You can clearly see this picture is only half the vertical resolution, meaning one of the fields got discarded. It seems this was Hulu&#8217;s deinterlacing strategy, since throughout the complete video, everything is half the vertical resolution, whether there is motion or not. This also keeps the video at 30 fps, and effectively shows every fourth frame twice, introducing stronger judder.<\/p>\n<h2>iTunes<\/h2>\n<p><a href=\"docs\/futurama_interlacing\/itunes480.png\"><img decoding=\"async\" src=\"docs\/futurama_interlacing\/itunes480.png\" alt=\"iTunes\"><\/a><\/p>\n<p>iTunes crops the picture to get rid of the black pixels in the overscan area and scales it to 640&#215;480. They run a full-blown 60 Hz deinterlace filter on the video. Such a filter is meant to take a live television signal as an input, with a temporal resolution of 60 Hz. While this looks fine on frames with no or little motion, vertical resolution is halved as soon as there is motion. Basically, it is the wrong filter. Like Hulu, iTunes preserves the 30 fps, introducing a stronger judder. (The video encoding is H.264 at 1500 kbit\/sec.)<\/p>\n<h2>Netflix<\/h2>\n<p><a href=\"docs\/futurama_interlacing\/netflix480.png\"><img decoding=\"async\" src=\"docs\/futurama_interlacing\/netflix480.png\" alt=\"Netflix\"><\/a><\/p>\n<p>Netflix seems to do the same as iTunes &#8211; maybe they even got the data from iTunes? The image is cropped and scaled to 640&#215;480, they run a deinterlace-filter and retain the 30 fps, leading to halved resolution when there is motion, and stronger judder.<\/p>\n<h2>Amazon Video on Demand<\/h2>\n<p><a href=\"docs\/futurama_interlacing\/unbox480.png\"><img decoding=\"async\" src=\"docs\/futurama_interlacing\/unbox480.png\" alt=\"Amazon Video on Demand\"><\/a><\/p>\n<p>Amazon Video on Demand with its horribly inconvenient Unbox Player (Windows only, requires 1 GB of extra downloads and two reboots) did a better job. Like Netflix and iTunes, they cropped the picture and scaled it to 640&#215;480, but they actually did a real inverse telecine. In some segments (like the end credits), the algorithm failed because of inconsistencies of the original telecine, so it reverted to half the vertical resolution. And like the others, Amazon also encodes at 30 fps, i.e. judder. (The video encoding is VC-1 at 2600 kbit\/sec.)<\/p>\n<h2>Zune<\/h2>\n<p><a href=\"docs\/futurama_interlacing\/zune480.png\"><img decoding=\"async\" src=\"docs\/futurama_interlacing\/zune480.png\" alt=\"Zune\"><\/a><\/p>\n<p>Microsoft&#8217;s Zune Store provides a cropped video at 640&#215;480 at the original 24 fps and with a bitrate of 1500 kbit\/sec (VC-1). Looking through it frame by frame reveals that they used a brilliant detelecine\/deinterlace algorithm. On the DVD, the panning at the beginning of the &#8220;Robot Hell&#8221; song is very tricky: It breaks the standard telecine pattern (PPPIIPPPII becomes PPPIPPPI), it seems every fifth frame was removed.<\/p>\n<p>\n<img decoding=\"async\" src=\"docs\/futurama_interlacing\/robothell_16.png\"><img decoding=\"async\" src=\"docs\/futurama_interlacing\/robothell_15.png\"><img decoding=\"async\" src=\"docs\/futurama_interlacing\/robothell_14.png\"><img decoding=\"async\" src=\"docs\/futurama_interlacing\/robothell_13.png\"><br \/>\n<img decoding=\"async\" src=\"docs\/futurama_interlacing\/robothell_12.png\"><img decoding=\"async\" src=\"docs\/futurama_interlacing\/robothell_11.png\"><img decoding=\"async\" src=\"docs\/futurama_interlacing\/robothell_10.png\"><img decoding=\"async\" src=\"docs\/futurama_interlacing\/robothell_9.png\"><br \/>\n<img decoding=\"async\" src=\"docs\/futurama_interlacing\/robothell_8.png\"><img decoding=\"async\" src=\"docs\/futurama_interlacing\/robothell_7.png\"><img decoding=\"async\" src=\"docs\/futurama_interlacing\/robothell_6.png\"><img decoding=\"async\" src=\"docs\/futurama_interlacing\/robothell_5.png\"><br \/>\n<img decoding=\"async\" src=\"docs\/futurama_interlacing\/robothell_4.png\"><img decoding=\"async\" src=\"docs\/futurama_interlacing\/robothell_3.png\"><img decoding=\"async\" src=\"docs\/futurama_interlacing\/robothell_2.png\"><img decoding=\"async\" src=\"docs\/futurama_interlacing\/robothell_1.png\">\n<\/p>\n<p>The pan consists of a pattern of three progressive frames, and then one interlaced frame, which is composed of the previous frame and the current frame. Consequently, every fourth frame has half its resolution wasted by the repeated lines of the previous frame, i.e. every fourth frame only exists at half resolution in the DVD master material.<\/p>\n<p>Hulu discards half the vertical resolution for every frame anyway, and the deinterlacing algorithms of iTunes and Netflix discard half the resolution whenever there is motion. The Amazon algorithm does a good job when the telecine pattern is correct, but in this case, it gets confused and encodes all frames of the pan in half resolution. The Zune algorithm does a brilliant job here: The progressive frames stay at full resolution, and it extracts the half-resolution picture out of every fourth frame:<\/p>\n<p>\n<img decoding=\"async\" src=\"docs\/futurama_interlacing\/robothell_zune_16.png\"><img decoding=\"async\" src=\"docs\/futurama_interlacing\/robothell_zune_15.png\"><img decoding=\"async\" src=\"docs\/futurama_interlacing\/robothell_zune_14.png\"><img decoding=\"async\" src=\"docs\/futurama_interlacing\/robothell_zune_13.png\"><br \/>\n<img decoding=\"async\" src=\"docs\/futurama_interlacing\/robothell_zune_12.png\"><img decoding=\"async\" src=\"docs\/futurama_interlacing\/robothell_zune_11.png\"><img decoding=\"async\" src=\"docs\/futurama_interlacing\/robothell_zune_10.png\"><img decoding=\"async\" src=\"docs\/futurama_interlacing\/robothell_zune_9.png\"><br \/>\n<img decoding=\"async\" src=\"docs\/futurama_interlacing\/robothell_zune_8.png\"><img decoding=\"async\" src=\"docs\/futurama_interlacing\/robothell_zune_7.png\"><img decoding=\"async\" src=\"docs\/futurama_interlacing\/robothell_zune_6.png\"><img decoding=\"async\" src=\"docs\/futurama_interlacing\/robothell_zune_5.png\"><br \/>\n<img decoding=\"async\" src=\"docs\/futurama_interlacing\/robothell_zune_4.png\"><img decoding=\"async\" src=\"docs\/futurama_interlacing\/robothell_zune_3.png\"><img decoding=\"async\" src=\"docs\/futurama_interlacing\/robothell_zune_2.png\"><img decoding=\"async\" src=\"docs\/futurama_interlacing\/robothell_zune_1.png\">\n<\/p>\n<p>This is the fourth picture at full size &#8211; you can see half the vertical resolution is missing (it was never there in the first place!), but the algorithm did a very good interpolation job:<\/p>\n<p><a href=\"docs\/futurama_interlacing\/robothell_zune_big.png\"><img decoding=\"async\" src=\"docs\/futurama_interlacing\/robothell_zune_big.png\" alt=\"Robot Hell (Zune)\"><\/a><\/p>\n<p>The Zune video is almost perfect. It recombines all fields correctly and recovers all single fields, scaling them up so that it&#8217;s hardly visible there is information missing. If you ignore the 720 vs. 640 horizontal pixels, the resulting 24 fps video contains all information of the DVD version, but with all interlacing removed, and with zero judder. Too bad it&#8217;s not <a href=\"http:\/\/www.pagetable.com\/?p=327\">H.264<\/a>, but <a href=\"http:\/\/xkcd.com\/488\/\">DRMed<\/a> and only plays on Windows (XP+), Zune and <a href=\"http:\/\/www.pagetable.com\/?p=476\">Windows Phone 7<\/a>.<\/p>\n<h2>Summary<\/h2>\n<table border=\"1\">\n<tr>\n<td align=\"center\"><b>Provider<\/b><\/td>\n<td align=\"center\"><b>Cropping<\/b><\/td>\n<td align=\"center\"><b>Resolution<\/b><\/td>\n<td align=\"center\"><b>Deinterlacing<\/b><\/td>\n<td align=\"center\"><b>fps<\/b><\/td>\n<td align=\"center\"><b>Encoder<\/b><\/td>\n<td align=\"center\"><b>Bitrate (kbits\/sec)<\/b><\/td>\n<\/tr>\n<tr>\n<td>NTSC DVD<\/td>\n<td align=\"center\">no<\/td>\n<td align=\"center\">720&#215;480<\/td>\n<td align=\"center\">none<\/td>\n<td align=\"center\">30<\/td>\n<td align=\"center\">MPEG-2<\/td>\n<td align=\"center\">6500<\/td>\n<\/tr>\n<tr>\n<td>Hulu<\/td>\n<td align=\"center\">no<\/td>\n<td align=\"center\">640&#215;480<\/td>\n<td align=\"center\">discard<\/td>\n<td align=\"center\">30<\/td>\n<td align=\"center\">H.264?<\/td>\n<td align=\"center\">?<\/td>\n<\/tr>\n<tr>\n<td>iTunes<\/td>\n<td align=\"center\">yes<\/td>\n<td align=\"center\">640&#215;480<\/td>\n<td align=\"center\">30 Hz deinterlace<\/td>\n<td align=\"center\">30<\/td>\n<td align=\"center\">H.264<\/td>\n<td align=\"center\">1500<\/td>\n<\/tr>\n<tr>\n<td>Netflix<\/td>\n<td align=\"center\">yes<\/td>\n<td align=\"center\">640&#215;480<\/td>\n<td align=\"center\">30 Hz deinterlace<\/td>\n<td align=\"center\">30<\/td>\n<td align=\"center\">H.264\/VC-1<\/td>\n<td align=\"center\">?<\/td>\n<\/tr>\n<tr>\n<td>Amazon VoD<\/td>\n<td align=\"center\">yes<\/td>\n<td align=\"center\">640&#215;480<\/td>\n<td align=\"center\">detelecine+decomb<\/td>\n<td align=\"center\">30<\/td>\n<td align=\"center\">VC-1<\/td>\n<td align=\"center\">2600<\/td>\n<\/tr>\n<tr>\n<td>Zune<\/td>\n<td align=\"center\">yes<\/td>\n<td align=\"center\">640&#215;480<\/td>\n<td align=\"center\">fuzzy detelecine<\/td>\n<td align=\"center\">24<\/td>\n<td align=\"center\">VC-1<\/td>\n<td align=\"center\">1500<\/td>\n<\/tr>\n<\/table>\n<p>Note: H.264 and VC-1 compress significantly better than MPEG-2; a rule of thumb is to divide the MPEG-2 bitrate by 2.3 to get a comparable H.264\/VC-1 bitrate. So the Amazon bitrate is fine and the video is about the same quality (sharp picture, no compression artefacts) as the DVD, but the iTunes and Zune versions are not (artifacts can be seen on single frames).<\/p>\n<p>It is scary how little effort seems to be going into video conversion\/encoding at major players like iTunes, Netflix and Hulu. Amazon did a kind of okay job converting the source material properly, and only Microsoft did an excellent job. The NTSC DVDs still give you the maximum quality &#8211; but of course, if you watch them on an LCD, the burden of deinterlacing is on your side. <a href=\"http:\/\/handbrake.fr\/\">Handbrake<\/a> with &#8220;detelecine&#8221; (for the bulk of it) and &#8220;decomb&#8221; (for exceptions) turned on, and with a target framerate of &#8220;same as source&#8221; will generate a rather good MP4 video similar to Amazon&#8217;s, but without the judder.<\/p>\n<p><i>Are there any stores I missed? Can someone check the PAL DVD as well as digital PAL and NTSC broadcasts? What is the magical detelecine\/deinterlace program Microsoft uses?<\/i><\/p>\n<p><b>See also: <a href=\"http:\/\/www.pagetable.com\/?p=499\">Comparing Bittorrent Files of Interlaced TV Shows<\/a><\/b><\/p>\n","protected":false},"excerpt":{"rendered":"<p>In the days of CRT monitors, TV shows used to be broadcast in interlaced mode, which is unsupported by modern flat-panel displays. All online streaming services and video stores provide progressive video, so they must deinterlace the data first. This article compares the deinterlacing strategies of Apple iTunes, Netflix, Microsoft Zune, Amazon VoD and Hulu &#8230; <a title=\"Comparing Digital Video Downloads of Interlaced TV Shows\" class=\"read-more\" href=\"https:\/\/www.pagetable.com\/?p=484\" aria-label=\"Read more about Comparing Digital Video Downloads of Interlaced TV Shows\">Read more<\/a><\/p>\n","protected":false},"author":1,"featured_media":0,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[10,36],"tags":[],"class_list":["post-484","post","type-post","status-publish","format-standard","hentry","category-digital-video","category-whines"],"_links":{"self":[{"href":"https:\/\/www.pagetable.com\/index.php?rest_route=\/wp\/v2\/posts\/484","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/www.pagetable.com\/index.php?rest_route=\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/www.pagetable.com\/index.php?rest_route=\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/www.pagetable.com\/index.php?rest_route=\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/www.pagetable.com\/index.php?rest_route=%2Fwp%2Fv2%2Fcomments&post=484"}],"version-history":[{"count":0,"href":"https:\/\/www.pagetable.com\/index.php?rest_route=\/wp\/v2\/posts\/484\/revisions"}],"wp:attachment":[{"href":"https:\/\/www.pagetable.com\/index.php?rest_route=%2Fwp%2Fv2%2Fmedia&parent=484"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/www.pagetable.com\/index.php?rest_route=%2Fwp%2Fv2%2Fcategories&post=484"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/www.pagetable.com\/index.php?rest_route=%2Fwp%2Fv2%2Ftags&post=484"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}