Sonntag, 13. Juni 2010

Fine-grained playback status in gPodder and Panucci

I've just uploaded Panucci 0.9-alpha0 to Maemo 5 Extras-Devel. This package is the first one based on the new codebase, which includes support for sending fine-grained playback status messages to gPodder and also receive metadata about episodes from gPodder. This makes listening to podcasts and managing your listening queue even more comfortable. The following screenshots are from development versions of gPodder, but you'll soon be able to enjoy these new features with the upcoming release. Until then: Please test Panucci 0.9-alpha0 in Extras-Devel (I won't be promoting this package to -Testing yet, but report bugs against it if you try it from -Devel), so we can fix any outstanding bugs until the first final release.

So, what's working so far? gPodder gained the display of the current position and total time in the episode actions dialog:

This position information is automatically sent from the newer Panucci version (so it depends on you using Panucci for playing podcasts). Another cool side-effect is that this information will be synchronized with gpodder.net if you are logged in and have enabled synchronization, so you can finally start playing back episodes on your computer, and then pick up where you left on your mobile phone on the go. You can also view a detailed overview of what parts of an episode are played on gpodder.net:

This is really an important feature milestone for gPodder (and Panucci), and it's nice to finally have playback status and episode duration information inside gPodder. Expect a new gPodder release soon, released together with the new version of Panucci (due to the branching history of Panucci, there are some feature regressions, like missing display orientation controls, but these will be re-added in the next few weeks as we move along).

Dienstag, 1. Juni 2010

Streaming video to the big screen

This is a pretty obvious hack and nothing new at all, using plain command line tools that existed for ages. Still, it might come in handy, and maybe you did not even think about it yet:

Prerequisites are a computer with an installed SSH server and mplayer or a similar media player. On your N900 (this obviously works just as well for the N800 and N810), you just need the SSH client for the first variant, and Python for the second variant. No other tools or apps are necessary.

In my case, I downloaded a video onto my N900 using gPodder, but I didn't want to watch it on the small screen, and I don't have a TV to hook it up to. So I decided to just stream the video over the network to my computer (ideally initiating the stream from the N900).

What you need to do is find out the $DISPLAY variable in your X session on the computer (:0 usually works, but strangely I'm on :4.0 with Ubuntu 10.04 here). You can do this with echo $DISPLAY in a X Terminal on the computer. Remember that value. Now, let's go to the X Terminal on the N900, cd into the folder with the videos and note the file name. To stream the video fullscreen to the computer, use a command like this: ssh username@computerip 'DISPLAY=:4.0 mplayer -fs -' < filename.mp4.

If you don't have SSH access, an alternative is to use HTTP for streaming (e.g. with VLC, which is also available on Windows and Mac OS X). The easiest way to do is (if you have Python installed, which you most likely have) to cd into the directory that you want to share (the directory and all its subdirectories will be shared - be sure to have no sensitive data there!) and use the command python -m SimpleHTTPServer for some instant HTTP server goodness on port 8000. Use VLC or a web browser on your computer to access the share. You can use Ctrl+C to stop the server.

So, if you want to browse the downloaded podcasts of gPodder on your computer, use the following command sequence in X Terminal:

cd
cd MyDocs/Podcasts
python -m SimpleHTTPServer

Now, use the web browser on your computer (connected to the same network) and access http://n900ipaddress:8000/ to get a directory listing of all downloaded content. Copy the URLs into VLC and start streaming over the air.

Usually the limiting factor here is the wireless bandwidth and the reading speed of the eMMC. Apart from that, no restrictions apply - you can easily stream HD content, as the decoding is done on your computer, and the N900 just reads the data and sends it unmodified over the network without much processing (that's why everything said here also applies to the N800 and N810 and should work just as well).