Perfecting video conversion for the Zune HD
For you diehard videophiles who want the perfect video conversion, I think I’ve finally perfected the process of taking TV show recordings and turning them into WMV files for the Zune HD. There were lots of challenges to getting this to work, especially finding the right combination of tools and settings.
Now, the objective is to convert a TV show recording (WTV file from Windows 7 Media Center) into a WMV formatted file for my Zune HD media player. My TV recordings are in standard NTSC format (4:3 ratio) which is a squarish picture. The Zune HD has a wide-screen display (16:9) so I need to configure the conversion to handle this situation. One option is to stretch the picture side ways to fill the screen, but then the displayed image is distorted. Another option is to crop off part of the top and bottom of the TV image to create the 16:9 size. For my process, I decided to do the cropping option.
So, my first step is to convert the WTV file to the older DVR-MS format because most of the available conversion tools are compatible with DVR-MS and not WTV format. This is done by using a conversion program (wtvconverter.exe) that is supplied with Windows 7. Note, that the TV video resolution is 720×480, so we need to do some cropping to get it down to the 16:9 ratio size.
For this operation, I chose to use a freeware program called FFMPEG which is designed for video conversions. My goal in this step is to crop off 38 pixels from the top and bottom of the image, and then shrink the image down to a final size of 480×272 (which is the Zune HD screen resolution). I also want to convert the DVR-MS file to MPEG2 format at the same time. To do all this, I use the following command line with FFMPEG: Read the rest of this entry »
My video conversion process
On a daily basis I record TV shows with my TV Tuner card and convert them for viewing on my Zune HD media player, so I automate the process using a wonderful utility called DVRMSToolbox (DTB). In conjunction with another great tool called ShowAnalyzer, I have a process of scanning through a recorded TV show file to find commercials, strip them out, and then convert the edited video file to WMV format for my Zune HD. All completely automatic.
Now, with a video conversion there’s lot of different converters, options, and settings you can use. For the Zune, I have the option of generating WMV or MP4 formatted files. I prefer using the WMV format, since it is designed to run on Microsoft OS devices. The MP4 is equally good, and is more universal as it can run on the Zune as well as the Apple iPod and other video media players. I opted for WMV because I can add more metadata (e.g., TV Show title, category, etc) than with the MP4 format.
With regards to playback quality, I’m not sure which of the formats (WMV or MP4) is better. That is one thing that I want to investigate in the future. Along with picking a format, there is a multitude of settings you can use. Video bit rate, Audio bit rate and frequency, frames per second, smoothness settings, keyframe rate, etc. are some of the different settings you can use. Each setting will affect the video playback quality as well as the final file size, so there’s a trade off. If you don’t care about file size, you can jack up the settings for the best quality. If generating a smaller file size is important, then you need to dial down these settings.
Being the stickler that I am with my videos, I’ll sacrifice having a larger file size if I can get better video quality. It really annoys me when the video I’m watching has a lot of video tearing, pixelation, bluriness, or jumpiness. I want a really smooth and high quality video for playback on my Zune. Read the rest of this entry »
Zune Software 3.0 will convert WTV files automatically
One thing that I learned with all the video conversion investigation I did today, is that the latest Zune Software (3.0) will automatically convert your recorded TV shows to Zune format for your Zune. What you need to do, is add your “Recorded TV” show folder as a monitored video folder in the Zune Software settings. Then, whenever a WTV file (new format for Windows 7) is found in that folder the Zune Software will automatically begin the conversion and syncing process. Easy!
It actually converts the video in a reasonable amount of time, especially if you have two or four processors in your machine. I know that some users in the past have complained that the background conversion program (ZuneEnc.exe) is running with a very low priority (and thus runs slow), I didn’t see much slowness on my system. Of course, I have an Intel Quad Core processor so that may be the reason. So if you aren’t in a big hurry and do most of your TV show conversions over night, that may be the easiest way to get your TV shows on your Zune.
Now, if you want to have the commercials stripped from your shows before converting and syncing to your Zune, you’ll need to use a different process (like I do, using DVRMSToolbox) and some procedure scripts.
Video Conversion Issues with Win 7 Install
As you’ve read in my previous postings, I use a utility called DVRMSToolBox (DTB) to convert my recorded TV shows from DVR-MS format to WMV format for my Zune HD. My previous Vista 32-bit system worked great using this conversion process, but since upgrading to the Windows 7 64-bit OS I’ve had a slight problem with my video files.
First, Windows 7 Media Center now creates WTV files instead of DVR-MS, so I need to add in an extra step in my conversion process to convert the WTV files back to the DVR-MS format for my utility to process them into WMV format. That seems to work ok, using the converter called “dtvconverter.exe” provided with Windows 7.
The issue, is that the created WMV file has a slight audio delay when I play it back on my Zune HD. The audio is out-of-sync with the played video by about 2 seconds, which is really annoying. Now, the same video file plays ok on my Windows 7 desktop PC, but it has the 2-second audio delay when I play it on my Zune HD.
So, I’m not sure what the problem is, as it could be a number of things. To rule out the converter program, I tried using several different methods at my immediate disposal (e.g., Windows Media Encoder 9 x64-bit, Microsoft Live Movie Maker (that came with Win 7), DVRMStoWMVHD (supplied by the makers of DTB), and also the ConvertToFile action included in the DTB utility). None of them created a WMV file that didn’t have the 2-second audio sync problem.
I’m now thinking the problem might be with the Audio or Video Codec that is installed on my Win 7 system. Since installing codec packs can be troublesome, I was trying to use whatever was installed on my Win 7 by default. But, that may be the issue. So, I’ve installed AntiPack, which is a set of codec filters by the maker of DTB which I hope will fix the problem. I’m currently running some conversion test cases now, so I’ll report back if I’m successful.
Windows 7 Upgrade…. DONE!
I posted a summary of my Windows 7 upgrade experience on my tech blog. I spent most of yesterday and today doing the upgrade, installing the OS, application files, etc. I’m now up in full product mode, writing blog entries, coding new apps, and checking email once again.
Now, I did decide to make the switch from a 32-bit OS to 64-bit, so along with that came some problems. Mainly, with device drivers for my TV Tuner card, scanner, and printer. Ultimately, I replace the tuner card and scanner with models that supported the 64-bit OS, and I bought a new printer-to-USB cable for my ancient HP Laser Printer. So I solved my driver incompatibility issues by going with new hardware.
For a TV Tuner card, I purchased a Hauppauge WinTV-1850 MCE which is designed to work with Windows 7 Media Center. This card was priced at $120 US from Fry’s Electronics, and comes with a special remote control. It does have a IR emitter to control a cable or satellite set-top box (for changing channels), however, it doesn’t work with the Windows Media Center application. As such, I continued to use the special Media Center USB receiver-remote control that I was using for the last several months with my old Vista system. As with my old WinTV-150 tuner card, the 1850 model also comes with a hardware MPEG encoder which handles the video compression (and not relying on the desktop PC’s processor).
The one surprise I encountered, is that Windows 7 Media Center no longer saves recorded TV shows in DVR-MS format. Instead, they use a new WTV format, which most utilities cannot edit. So it isn’t very easy to scan a WTV file for commercials and cut them out, or convert the WTV file to WMV format for my Zune HD. To get around this, I used a converter program called “wtvconverter.exe” (supplied with Windows 7) to convert the WTV file back to DVR-MS format. Now, I can use my standard method (DVRMSToolBox) to automatically convert my recorded TV shows to WMV format for my Zune HD. All I did was add in one more step in my DVTMSToolBox profile to do the WTV-to-DVR-MS conversion.
Speaking of Zune, I was able to download and install the 64-bit version of the Zune Software without a hitch. My Zune HD easily synced with my 64-bit Win 7 desktop PC, transferring my videos and music files with no problems. Whew!
So am I glad I did the upgrade? I’m sort of indifferent about it. I probably could have stayed with Vista 32-bit and continued using it for another year or so, but constantly reading about how great Windows 7 is would ultimately wear me down enough to do the upgrade.
Video Conversion for the Zune HD
Normally, I used my Zune 80 for watching TV Show recordings that are converted from DVR-MS format (from Vista Media Center on my PC) to WMV file format for my Zune. Because the screen resolution for the Zune 80 is 320 x 240, that is the resolution that I convert to for the WMV files. Because my new Zune HD has a screen resolution of 480 x 272, the Zune HD player needs to stretch or extrapolate the pixels from the 32ox240 image up to 480×272 size. Now, the viewed images still look reasonable on my Zune HD, but I know they can be sharper if I use a higher resolution. So what settings work best, while still keeping the WMV file size down to a reasonable size?
Yesterday I took one of my TV show recordings that had a resolution of 720 x 480 and converted it to these parameters:
Resolution: 720 x 480
Video bit rate: 700 kbps, 30 fps
Audio bit rate: 128 kbps
Length: 42 minutes
File size: 254 MB
The video playback on my Zune HD looked pretty good, and there was no video tearing (that’s when objects in the video are moving around rapidly and you see distortions due to the motion). In comparison, one of my older converted WMV files has the following attributes:
Resolution: 320 x 240
Video bit rate: 700 kbps, 30 fps
Audio bit rate: 128 kbps
Length: 44 minutes
File size: 227 MB
So in this case the higher resolution file was about 12% larger in size, which isn’t too bad considering you’re getting a higher quality picture. In fact, at 720 x 480 I should be able to playback this video on a normal TV screen and it should look pretty good. So for now, I’m adjusting my video profile for my conversion software to use the 720 x 480 resolution for playback on my Zune HD.
And BTW, I’m still using DVRMSToolbox with the DVRMStoWMVHD program to do my video conversions.
Changing the Cover Art for a WMV Video File
As you may have read from my previous postings, I use my Zune primarily for watching TV shows that have been recorded on my desktop PC in DVR-MS format, and then converted to WMV format for my Zune. I’ve got the entire process automated using the wonderful utility called, DVRMSToolbox, along with a commercial-cutting utility called ShowAnalyzer.
The only small issue I have, is that the cover art for the generated WMV file (or “Thumbnail” image) is obtained from a randomly selected frame image from the video file. Since this frame image is selected before all the commercials are cut out, sometimes it will use a image frame from a commercial and thus looks bad as a cover art for the video file. As such, there isn’t an easy way of defining a different frame or image to be used as the cover art. You can use the File Explorer add-on utility called AudioShell to define the cover art, but that’s a very manual process and I want something that can be done on a command line for use with my DVRMSToolbox setup.
Thus, I created a small utility called setWMVThumbmailImage which will modify the WM/Picture attribute of WMV video file container and set the cover art to a specified jpg file. To use it, you run the following from a DOS command window:
setWMVThumbnailImage (input wmv file) art (cover.jpg)
So as an example, if I have a video file called, “fringe.wmv” and I want to change the cover art for this video to use the jpg image file, “fringe_show.jpg” I would use the following command,
setWMVThumbnailImage fringe.wmv art fringe_show.jpg
Note, that “art” is a required keyword that tells the application to insert the jpg as the cover art.
With this utility, I can now use it to insert a jpg image as the cover art for my converted DVR-MS file to WMV format. So, I can change the cover art, but how do I extract an image from the video file to be used as the cover art? The makers of DVRMSToolbox also have a utility called DSSnap which is suppose to extract a specified frame from a DVR-MS video file into a jpg file, but it doesn’t seem to work on my Vista OS system. As such, I discovered that I can use the well known video converter tool called FFMpeg to extract a specific image from a WMV video file to a jpg file. Here’s how I would extract the video frame image at 1 minute, 10 secs into the video playback,
ffmpeg -i “fringe.wmv” -an -ss 00:01:10 -t 00:00:01 -f image2 -vcodec mjpeg “fringe_show.jpg”
So I can use the above operation to get the desired jpg cover art from the video being processed, and use my utility to insert this jpg image as the cover art for the WMV video file. I’m going to test this a bit with my automated conversion system and if it works ok, I’ll make my cover art utility available on this web site in the near future. Stay tuned!
Fix your Video Codec Problems with AntiPack
Andy Babgvant (famed DVRMSToolbox developer) has recently put together a freeware package called AntiPack, which is a set of video codecs and tools to help those having issues with video conversions. As you may have read in some of my previous postings, using bad or inefficient video/audio codecs can be root of most video conversion problems. AntiPack was designed to avoid this, give the user a concise set of codecs that work on a PC system (ranging from Windows XP to Windows 7). Now, I trust that Andy knows the process of video conversions, so I’m sure that AntiPack will work on your system. Personally, I haven’t tried out AntiPack as of yet since I’m trying to diagnose an issue with the USB controllers on my home PC. I’ll definitely give AntiPack a test run when I get Windows 7 installed on my system in October.
Can’t Convert AMC TV Recordings
The other day I recorded “The Searchers” (old John Wayne movie) using my TV Tuner card in my PC with Vista Media Center, and I noticed that DVRMSToolbox had difficulty converting the recorded DVR-MS file to WMV format for my Zune. Upon inspecting the generated log file, I noticed that the conversion software crashed. I then tried several different methods for converting the DVR-MS file (to WMV format, to MPEG format, etc) but everything I tried failed.
I then did a Google search on the topic, and discovered that the AMC (American Movie Channel) broadcast must have DRM protection enabled. As such, I can watch the recording on my PC but I can’t convert the video file to any other format. What a bummer! So, there’s not much I can do to get this video on my Zune, so “The Duke” will have to wait until I have time to watch it on my PC screen.
Conversion Issues with Windows Media Encoder
For the past few years I’ve been using DVRMSToolbox (Dtb) and its assortment of tools for converting DVR-MS files (recordings from my TV Tuner card) to WMV format for my Zune media player. I’ve set up a “profile” in Dtb to do the following:
- Use ShowAnalyzer to detect all commercial segments in the DVR-MS file
- Cut out all found commercials and create a new DVR-MS file
- Use the tool DVRMStoWMVHD to convert the commercial-free DVR-MS file to WMV format (using specs for my Zune)
- Migrate all the metadata (i.e., show title, description, etc) from the original DVR-MS file to the generated WMV file
- Copy the WMV file to my Zune sync folder
- Delete all temporary files
It all seemed to work great, until a recent update to the DVRMStoWMVHD software caused the audio and video for the converted WMV file to gradually go out of sync. So by the end of a 45-minute show, the audio was about 6 seconds off from the video (really annoying to watch). So, I decided to use this modified profile for my video conversion:
- Use ShowAnalyzer to detect all commercial segments in the DVR-MS file
- Cut out all found commercials and create a new DVR-MS file
- Use the tool FFMPEG to convert the commercial-free DVR-MS file to MPEG format
- Use Windows Media Encoder 9 to convert the MPEG file to WMV format (using specs for my Zune)
- Migrate all the metadata (i.e., show title, description, etc) from the original DVR-MS file to the generated WMV file
- Copy the WMV file to my Zune sync folder
- Delete all temporary files
This method worked for me in the past, however, I noticed that on several recent recordings the converted WMV file did not contain all of the TV show material. Normally, a 1-hour TV show will reduce down to 42 minutes when the commercials are removed, but in this case I was getting 19 or 24 minute shows. What’s going on? After doing some investigating, I concluded that ShowAnalyzer was working properly, and the MPEG file created by FFMPEG was the expected 42 minutes in length. It turned out that Windows Media Encoder 9 (WME9) was the bad link in the chain, converting the 42 minute MPEG file down to just 24 minutes. Why… I’m not sure.
So, I’ve gone back to using method 1 along with an older version of DVRMStoWMVHD (1.0.1.0) which doesn’t have the audio/video sync issue.
Automation is great… when it works!