×

First time here?

You are looking at the most recent posts. You may also want to check out older archives. Please leave a comment, ask a question and consider subscribing to the latest posts via RSS or email. Thank you for visiting!

remember that feature i was mentioning that is a plugin for expression encoder?  you know the one that enables you to publish the output immediately and directly to the silverlight streaming service?

well, how would you like to write your own encoder publishing plugin.  perhaps you have a process with a content delivery network?  or have some custom process you want to implement in your own workflow (save as an encoder job file, etc.) for ongoing media encodings?  james clarke just announced a quickstart guide on developing publisher plug-ins for encoder.

the code looks relatively simple to implement:

[EncoderPlugin("Zip Plugin from scratch","Enables output to be zipped")] 
    public class ZipPublishPlugin : PublishPlugin 
    { 
 
        public override object CreateAdvancedSettingsEditor() 
        { 
            throw new NotImplementedException(); 
        } 
 
        public override object CreateStandardSettingsEditor() 
        { 
            throw new NotImplementedException(); 
        } 
 
        public override void PerformPublish(string rootPath, string[] filesToPublish) 
        { 
            throw new NotImplementedException(); 
        } 
    }

need to implement settings as a part of your plugin?  no problem.  the settings user interface is implemented using some XAML that you mark up so something like this:

<TextBox Height="23" Margin="0,14,2,0" Name="textBox1"  
         VerticalAlignment="Top" 
         HorizontalAlignment="Right" 
         Width="200"> 
  </TextBox> 
     
  <Label Height="23" HorizontalAlignment="Right"  
      Margin="0,14,200,0" 
         VerticalAlignment="Top" 
         Width="61">Folder:</Label> 
     
  <Button Height="21" Margin="0,0,100,11"  
      Name="reset" VerticalAlignment="Bottom"  
      Click="reset_Click" 
      HorizontalAlignment="Right" 
      Width="66">Reset</Button> 
     
  <Button Height="21" HorizontalAlignment="Right"  
      Margin="0,0,13,11" Name="browse"  
      VerticalAlignment="Bottom" 
      Width="66" 
      Click="browse_Click">Browse</Button>

turns into something like this in the user interface:

very cool.  what would you use this for?  perhaps FTP, some blog API, or like i previously mentioned, some process with a CDN already.  i use amazon s3 for a lot of my storage and i'm thinking of hacking up something from encoder to amazon s3 to play around.  of course i've got a few things on my mind at the moment and this is all i needed was another toy to play around with!

at any rate, there's a 10-page doc walking you through the process of writing a plugin.  you can get that doc here.  it's an easy read and i think you'd be able to whip something simple up quickly just to get the feel for it.

have fun!


12/11/2007 8:47 PM | # re: write a plugin for expression encoder
Nice One, I was waiting for Microsoft to add some features but I think I'll do it myself. Thanks for sharing
12/11/2007 9:59 PM | # re: write a plugin for expression encoder
Tim.. Thx for the Link :-)
8/23/2011 10:30 PM | # re: write a plugin for expression encoder
I realize any good developer keeps pretty busy, but hopefully this won't take too much time. I started looking at the process and Google seems to make the Auth 2.0 setup pretty straight forward. However, I lack the familiarity needed to modify the plugins. Hope to hear from you soon.
Gravatar
5/8/2012 8:14 AM | # re: write a plugin for expression encoder
The link is dead, any chance of digging up a copy of the doc, it seems very useful.
Thanks!

 
Please add 8 and 6 and type the answer here:

DISCLAIMER:

The opinions/content expressed on this blog are provided "ASIS" with no warranties and are my own personal opinions/content (unless otherwise noted) and do not represent my employer's view in any way.