Seeing Omar post how he converts his digital video camera files reminded me of a tool I developed which ships with the Windows Media 9 Series Encoder Software Development Kit and used with the Windows Media 9 Series Encoder. Folks less accustomed to command line approaches and more familiar with GUI tools should like this resource. As I recall, the Windows Media Encoder Script will cover more of the options available in the Encoder compared to this graphical tool -- but for most consumers (and even some professional shops) the GUI approach will be more than enough. Here is a quick feature list...
- Input formats. Accepted formats for input files are .avi, .wav, .mp3, .mpg, .wma, and .wmv. Input files can include extended content (such as script), but this content is not included in the output.
- Output formats. Accepted formats for output files are .wma and .wmv.
- Profiles. This sample supports saved .prx files. Windows Media Encoder includes several of these, but you can also create your own using Windows Media Profile Editor.
- Video preprocessing. Video preprocessing modes such as deinterlacing, inverse telecine, and process interlacing are supported.
- DRM profiles. Content can be protected using a DRM profile that you have created or imported using Windows Media Encoder.
- Cropping. You can specify the number of pixels to crop from video.
- Two-pass encoding. If the selected profile allows it, two-pass encoding can be used to improve the quality of the encoded content.
- Display properties. Title, description, author, rating, and copyright information can be specified per file or per group.
- Postview. The encoding progress is displayed in a postview window. This postview can be disabled to allow the encoding process to use more resources. The postview does not appear in certain situations, such as when encoding only audio or during the first pass of two-pass encoding.
- Progress and status. This sample provides feedback for the current source file, such as the percentage completed and the encoding status.
- Saved encoding sessions. Encoding sessions can be saved and reused, including all settings, the input source list, and the output file list with their settings.
- Default settings. Current settings can be saved for use each time this sample application is started. A Default.xml file is created in the folder where the sample executable file is located.
- Error logging. Error logging can be helpful for identifying issues with files that did not get encoded during the batch encoding process, or to troubleshoot problems in the source code if you want to modify this sample or use it as the basis for your own solution. An ErrorLog.xml file is created in the folder where the sample executable file is located.
- XML. All saved sessions, default settings, and error logs are in XML format and can be viewed with the XML editor or parser of your choice.
I just installed on Windows Vista and tested it out -- everything seems to be working just fine (another post on that coming soon). With a default installation path for the SDK, look for the compiled tool and readme in C:\WMSDK\WMEncSDK9\samples\vb\batcher\. Full source code for Visual Basic .NET (2002) is included in the same folder if you want to add features. Note I haven't investigated what the upgrade path for this source code looks like for Visual Basic 2005 -- your mileage may vary. And for those of you who read this blog for the Windows Media Center goodness -- yes, this could be adapted to transcode DVR-MS files ***IF*** the Windows Media Encoder supported DVR-MS -- which it doesn't. Not to despair, though. Stephen Toub has a tool I use regularly to make those conversions -- grab it from Fun with DVR-MS.