OK so finally I can talk about my team's work! Expression Media is a new member of the Expression Studio announced today.
Expression Media is the product formerly known as iView Multimedia which I've talked about in previous posts. Originally developed by Yan Calotychos in his spare time whilst working at the BBC, the product has grown into a solid tool with a solid reputation and the company he subsequently formed to take on development was acquired by Microsoft earlier this year.
Expression Media supports more than 100 media formats with offline access to visual catalogs, making it easier for creative professionals to manage and access their digital assets. As a photographer, I'm a big fan of this product (indeed I still use iView to publish all the photos on this site) and I have no doubt that it will become a solid underpinning for asset management within Expression Studio.
I’m working specifically on a feature area of Expression Media called the Expression Media Encoder (EME); a standalone application integrated and included with Expression Media. With EME, Expression Media will include a professional solution for enhancement, compression, and publishing of rich media for desktop, web, and devices. It is specifically designed to target "WPF/E" video so you can take pre-existing video assets and transcode them into a format suitable for cross-platform deployment via "WPF/E" experiences.
Again, our interface uses the core UI framework for the Expression suite so we pick up all of the vector-based WPF goodness such as being able to zoom the UI elements / pallets.
[the screenshot here does not represent the final user interface which we are still finishing]
Files of different formats can be imported for encoding. Out of the box we support WMV, AVI and Quicktime but, by being DirectShow based we are able to support a wide range of input formats via user-installed DS source filters.
With files imported, the user can specify encoding parameters for video and audio (eg bitrate, multi-pass etc), perform cropping with realtime preview and specify in and out points in the timeline to enable trimming of the content. Metadata can be embedded. Markers can be set up and used both for chapter points as well as extraction points for thumbnails (JPG/PNG etc).
MEME can overlay a logo on the output and also stich on a pre-roll and post-roll file for identity / branding purposes.
We have the ability to apply "WPF/E" templates to the output to enable one-shot publishing to a web playback experience; here are a couple of examples:
Notice that the "player chrome" is all part of the template (built in XAML) enabling a wide variety of branding / customization as well as more complex interactive experiences. Also notice how the playback controls can be overlayed on top of the video in the last example (and can contain animation). Because of the cross-platform nature of "WPF/E", the playback experiences we create will work in IE and Firefox in Windows as well as Firefox on the Mac.
Users can create their own templates which can be a combination of HTML, XAML and ECMAScript. We support embedding C# code inside the templates which Expression Media Encoder will evaluate at publish time to enable any number of custom actions to be taken.
In addition to the GUI, the app can also be automated through the command line. We have rich job output logging through XML as well as XML job files to specify the encoding parameters to apply to multiple inputs in a batch. In a later post I'll show an illustration of automation as the basis for a Windows Live Writer plugin for generating "WPF/E" experiences directly in Writer.
Although we are announcing now, we are not making a public build available just yet.. expect something by Mix 07.
I'll be following this post with some examples of live published output.. stay tuned.