Michael Sheldon's Development Stuff

Michael Sheldon (mike at mikeasoft dot com)

November 24, 2006

Playing YouTube videos without Flash
Mike @ 10:32 pm

After a brief chat with mattl in #jokosher I decided to hack together a little Grease Monkey script to find the FLV URL for a YouTube video (like extensions such as Fast Video Download do) then strip out the flash player and replace it with an <embed> tag, so a player like mozilla-mplayer can display the video instead.

No more audio syncing problems, no more jerky playback and most importantly no more non-free flash plugin :). The only downside is that it has to buffer the entire file before it’ll play correctly.

Here’s a pretty screenshot of it playing a video about the One Laptop Per Child project.

FLV Player

And here’s the actual script if you want to give it a go:

FLV Player

When I get around to it I’ll see about adding support for more sites (google video, daily motion, etc.).


November 20, 2006

Jokosher 0.2 Released
Mike @ 6:26 pm

Version 0.2 of Jokosher has now been released, with lots of new exciting features including: Internationalisation, LADSPA effects, extensions, presets, a metronome and (hopefully) more robust recording support along with a slew of bug fixes. And in related news we’re currently the top rated application over at gnomefiles.org :).


October 22, 2006

Flickr Plugin For Elisa
Mike @ 10:28 am

Elisa is a neat new Python and Gstreamer based media centre system with a nifty plugin architecture. Over the weekend I’ve put together a little Flickr backend plugin (thanks to philn for spotting a few of my silly mistakes), allowing the use of flickr:// URIs for viewing pictures. It allows for the following locations:

  • flickr://user/bees
  • flickr://tags/hamster
  • flickr://tags/gstreamer,fluendo
  • flickr://search/jokosher
  • flickr://group/56878019@N00

Requests are split up in to pages (defaulting to 10 pictures per page), with a “Next Page” folder for displaying the next set of pictures. When displaying in a Slideshow this follows the “Next Page” links down, to display all the pictures in a location.

Here’s a screenshot of it displaying flickr://tags/jokosher:

Elisa Flickr Plugin

Now I can sit around all day watching slideshows filled with hamsters :).


August 16, 2006

InYourFootsteps.com Enters Beta
Mike @ 6:58 pm

For a few months now I’ve been working with a nice chap called Michael Harpur to create a site filled with sailing tips and advice which, more importantly, allows other people to share their tips as well. My role has mostly been to code up the technical side of things while Michael provided much of the design and the hard work of seeding the site with around 100 very detailed tips. It’s still only in a beta stage, so there may be a few rough edges and we’d appreciate any comments people have. We have a fair amount of extra functionality planned for the future, but more ideas certainly wouldn’t hurt :).

http://www.inyourfootsteps.com


July 27, 2006

Internationalisation support for Jokosher
Mike @ 12:27 pm

One of the goals to come out of the Jokosher BOF at LUGRadio Live last weekend was that Jokosher should be translated in to as many languages as possible. To this end I’ve now added GNU gettext support and have made a start on a German localisation (hopefully someone with better German knowledge than me can finish this off).

Jokosher International


July 21, 2006

Jokosher 0.1 Released!
Mike @ 10:17 am

The first release of the Jokosher multi-track audio studio is now available, to find out more about Jokosher simply visit the ‘About‘ page.

Jokosher has a really nice community of developers built up around it (though we’d always welcome more ;)), so now we’d love to see a similar community of users develop. The new site has a forum for just this purpose, so feel free to make extensive use of it for getting help on Jokosher, offering help, discussing techniques, suggesting new features and anything else you can think of vaguely related to Jokosher :).


July 15, 2006

SabreGL 0.2 Underway
Mike @ 6:29 pm

After many months of abandonment I’ve finally started working on SabreGL again. I’ve rewritten it to make use of the Irrlicht engine; this makes things a lot simpler from my point of view and a lot flashier from the user’s. Irrlicht supports a lot more model formats than I did with my own engine as well as having support for vertex and pixel shaders and is much more reliable under Windows.

SabreGL rendering a BSP:
SabreGL Screenshot

SabreGL Screenshot

SabreGL rendering an X model, a height-mapped terrain, a particle source, displaying a 2D GUI and reporting what object the camera is currently looking at:
SabreGL Screenshot

SabreGL under Windows (lower quality due to software rendering*):
SabreGL Screenshot

The main thing to do at the moment is sort out how Irrlicht’s event system will communicate with Python, then I’ll see about updating Myrmidia to take advantage of all these flashy new enhancements.

* I’m only testing the Windows build in QEMU so no 3D acceleration is possible.


July 3, 2006

Jokosher On The Nokia 770
Mike @ 6:11 pm

With all the excitement streaming from Jono and Aq on the subject of things to do with the Nokia 770 that was kindly donated to the Jokosher project at GUADEC, I thought I’d have a play around with the Maemo SDK (Maemo is the platform upon which the Nokia 770 operates).

After a little bit of fiddling I managed to get Jokosher up and running:

Jokosher 770

Jokosher 770 - 2

It’s not really in a usable state, I had to strip out all the Cairo stuff due to me not having the python cairo bindings installed, but at least it roughly runs :).


July 1, 2006

Delta 44, GStreamer and Jokosher
Mike @ 12:14 pm

I’ve recently been writing code to handle multiple simultanious inputs in Jokosher. Part of this has involved editing Marlin’s channel splitting element slightly so that it works as a standalone GStreamer element separate from libmarlin. Unfortunately it looks like I’m going to have to try and slip my changes in a few days late (i.e. during the feature freeze), if no one has any objections. The work has taken substantially longer than I expected due to me finding that the Delta 44 doesn’t work with GStreamer, I’ve since filed a bug and created a rough patch for the problem. I’m still having one problem though, which is that I’m only receiving data on the mixed input channels from the Delta 44 and not on the individual ones. I’m not sure if this is a problem in alsasrc, in the channel splitter or in my use of either, but at least the Delta 44 is now usable as an input device in GStreamer (albeit not without the channel splitter, since hardly any elements support 12 channels).

In related news Jokosher has been used to record a LUGRadio mini episode, which has also helped to find some new bugs.

I’ve also recently purchased a Roland GR-20 guitar synthesizer, which has given me new drive to get Delta 44 input fully sorted in Jokosher. I have various odd musical ideas I’d like to record with it and Jokosher would be the perfect application to do so with.


May 21, 2006

GStreamer Channel Splitting Element
Mike @ 12:45 pm

As part of the Jokosher hackfest, which is happening as I write, I’ve finally sat down and mostly sorted out the channel splitting element. We need this element for handling multiple simultanious inputs from a single sound card due to them coming in as a single multi-channel stream and us needing lots of single channel streams. An example of its usage would be roughly along these lines:

                  |-- chansplit channel=0 -- etc -- filesink location=0.flac
                  |-- chansplit channel=1 -- etc -- filesink location=1.flac
alsasrc -- tee -- |
                  |-- chansplit channel=2 -- etc -- filesink location=2.flac
                  |-- chansplit channel=3 -- etc -- filesink location=3.flac

It’s not quite perfect yet, it should really output a stream with a single channel instead of just moving the selected channel to position 0 and silencing the others, but it’s usable. I’ve created a package for Ubuntu Dapper (should work on Debian unstable as well): gstreamer0.10-chansplit_0.10.1-0_i386.deb and the source is available from the Jokosher subversion repositories.

In related news, ensonic has just fixed a bug in GStreamer which was preventing playing a project multiple times in Jokosher, which is great :).


« Previous PageNext Page »

Powered by WordPress