Wednesday, February 2, 2011

ASFRecorder part 3: Making the plugin

This, I told myself, is the easy part - it's all smooth sailing from here!

No such luck unfortunately, although I found comfort in the knowledge that making a plugin for firefox meant I could actually believe that the specification was being somewhat followed. This part was much easier in comparison to the ASF parsing, so I can't really complain too much.

The way binaries are included in addons in firefox is fairly straightforward, and there are good tutorials (my plugin was based more or less on this one with a few adjustments to the makefile) so after the issues were sorted out I had my test plugin ready to go.

With the test plugin sorted, the next step was to add functionality to detect the loading of .asf files. There are a number of different plugins that download .flv files, and a quick look through the (copyrighted) source of these turned up extensive use of observer notifications, and a check against the (GPL licensed and therefore stealable) Tamper Data source confirmed this for me. A look over some of the firefox articles showed me how to extract the URLs, which leaves me set for the next steps:

  • Add observers to the test plugin
  • Cache .asf (and .wmv) file requests
  • Maaaaaaaaaaybe look at response headers to check for MIME types I like
  • Load the ASFRecorder and post processing code into the binary part of the module
  • Maybe add some callback options to give an idea of progress
  • Package up and start distributing
It looks fairly easy from here, maybe the callback stuff will be a pain, but I'm hoping I can get it all sorted by the weekend

No comments:

Post a Comment