Showing posts with label video. Show all posts
Showing posts with label video. Show all posts

Saturday, January 21, 2012

gPodder/QML on the N900 - Yesteryear and today

I just found this pre-feb11 gPodder/QML on a N900 on 2011-02-04 video and someone on TMO recently asked me about the status of gPodder for the N900, so I thought I'd try the current version of gPodder on the N900.

The result is a new video of gPodder/QML on a N900 today, which shows what works and what does not.

If you want to try it yourself, get the latest CSSU for your N900 and enable Extras-Devel (the usual disclaimers apparently still apply). Now, make sure to install all of PySide and Qt Mobility 1.2, and the packages qt-components and qt-components-blanco-theme. The theme package is broken right now, so you need to copy /usr/share/themes/blanco/meegotouch from a Harmattan device or the Harmattan SDK onto your N900 manually. When you have done that, simply checkout gPodder (master branch) from its Git repository.

What doesn't work yet:

  • Text input fields are missing their backgrounds
  • Screen rotation doesn't work (Qt Components bug?)
  • Task switching is only possible with Ctrl+Backspace

Apart from these annoyances (and the problem with the missing blanco theme files), everything else works as one would expect. If these problems get fixed (so that all dependencies are readily available from Extras-Devel), I might be able to make some time to package gPodder 3 for the N900.

Harmattan (N9/N950) users: Have a look at the video to see how the play queue and episode list filters work, which will land in a new gPodder release "soon".

Thursday, September 29, 2011

gPodder Maemo 5 Remota Usability Test Videos

Back in August, Jarkko Mikael Palonkangas has been looking for Maemo 5 users without any experience in using gPodder. His Master's thesis is about the Thinking Aloud usability testing method on mobile devices, and he chose gPodder as the example application. The application used for managing the test cases has been written by Jarkko for Maemo 5 and is called Remota - it takes care of displaying the tasks to the users, recording screenshots and audio and retrieving the logging output from gPodder.

Remota log viewer with UI action log at the bottom

If you are interested in seeing how this looks, or if you would like to help to comment on the usability issues and find improvement ideas, please feel free to click through the videos below, which have now been uploaded:


Unfortunately, user 4's logging output had problems, so you only have audio and video for these tasks - for users 1 through 3 we also have logging output about UI interactions, which was possible by patching the gPodder source to add additional handlers to buttons and other UI elements while the UI was created on application startup.

Please feel free to add comments to the videos - Jarkko is going to process them and include the finding in his final work, so that would be an easy way to contribute.

Monday, September 19, 2011

SwipEout - Python + OpenGL ES 2.0 on the N950 (and N900!)

Last weekend I've been toying around with Open GL ES 2.0 on the N950 after finding a nice Xlib-based Python example on the web for the N900. I modified the code a bit, replaced the Xlib code with a QGLWidget from QtOpenGL (via PySide), which makes the setup a lot easier and (apart from API differences of GL ES 2.0 and Desktop GL) allows me to test the prototype on my normal computer as well.

After I got the hang of it, I decided to come up with some fancy 90s-style hover racing game (only texturing, no lighting), or at least parts of it - right now, the small hovercraft just runs around the track and you can shift it left and right via the touchscreen and switching between normal and bird's view by pressing any hardware key.

As for the GL ES bindings (this is the interesting/useful part to developers who want to access the GL ES 2.0 API from Python), I put together a naive header-to-ctypes binding generator for the GL ES 2.0 API which you can run on "gl2.h" from the Qt SDK's Madde sysroot (too lazy to search for a working binding generator that surely exists somewhere out there already) - or just grab the generated "gles2.py" from the SwipEout source tarball. The result? Video it yourself.


You can grab the source code and miscellaneous files from the SwipEout website. The code was tested on the N900 and N950, you only need Python, PIL (python-imaging), PySide and the Open GL ES 2.0 libraries (libGLESv2.so) installed. Removing the PIL dependency and replacing it with Qt-based texture loading is left as an exercise for the reader. Enjoy :)

Wednesday, June 1, 2011

MeeGo Conference 2011: Exploratorium and Hacker Lounge video

If you missed the MeeGo Conference last week or for whatever reason can't remember what went on at the party, here's a short video of San Francisco, the party at the Exploratorium and of course some Hacker Lounge activities:


Huge soap bubbles, a red bridge, mini-tornados, glass bottle ping pong, real-life Mong, losing at Lunar Lander (it was really, really very hard ;)) and Maemo community members dancing to Jessie's Girl performed live (and wondering who ordered that song..) - Enjoy :)

Saturday, April 2, 2011

gPodder/QML progress update

While the 2.x branch of gPodder is still updated - a new release should be out soon - the awesome stuff happens in the "tres" branch, where the refactoring takes place and also where the QML UI is built. I've reserved some time this weekend to work a bit on the QML UI so that it is at least day-to-day usable for me, because it turns out if I don't force myself to use the QML UI, I'll just use the Maemo 5 UI and not work on the QML UI ;)

I've uploaded two new videos today: gPodder/QML on the N900 and gPodder/QML on a Desktop. This is exactly the same Python codebase (utilizing PySide), which is great for testing on the "big" computer. It's also truly cross-platform, as you can see it running on OS X in the Desktop video. Unfortunately, Qt Mobility 1.2's QML Video component is broken, so there's no video playback on the N900. Video playback great on the Desktop, though, and audio playback works fine on both the N900 and Desktop.

The UI is still in a rough state, but it's a great place for experimenting around with some ideas to see what works and what does not. I really like the integration of the playback feature into gPodder, as it provides a better integrated experience on handsets. It obviously also loads faster compared to loading a separate media player. The UI is scalable and should work well on tablets (which is especially useful for YouTube channels and video podcasts).

The new codebase still hast the Desktop GTK+ UI and the Maemo 5 GTK+/Hildon UI in there, they share the same backend code as the QML UI. The code is not ready for public consumption, but if you really want to try it out, you'll find the code in the "tres" branch in our Git repository. If that's too little information for you to get started, then you shouldn't yet use it :)

Friday, February 4, 2011

gPodder/QML status (with screenshot and video)

Ohai February. The winter term is over; time for some gPodder QML hacking. This means that gPodder gets a new UI, and the structure of the application and the usual workflows also change a bit, based on the experiences with gPodder on Maemo 5. One of the most important changes will be that content will be played inside gPodder, as this provides even more control over playback and resuming than what the MAFW integration with the Maemo Media Player can provide.

Most of this has been done in the last two days. Thanks to Python, PySide and QML, I'm able to reuse the gPodder codebase (feed parsing, downloading, etc..) and just slap a lightweight QML UI on top of it.

Andrew Zhilin (aka wazd) has helped a lot with the design and the artwork, but see for yourself (this is a screenshot, not a mock-up):

And here is a video of the current performance on a N900:

Feedback, as always, welcome :)

Wednesday, October 6, 2010

Modifying the Maemo 5 task switcher and launcher

This will be the last post for this week, I promise ;) After playing around with the MeeGo Handset launcher and task switcher, I decided to have a look at how this could be implemented in Fremantle, because the big previews and the paginated launcher are easier to use in some cases (you can also checkout the contents of a window while scrolling by without having to activate it). hildon-desktop manages the task switcher and launcher, among other things. The results of two days of hacking are two patches:

What I'm missing right now and did not succeed in implementing straight away is the "snapping" of TidyFingerScroll to page boundaries, so that whenever a scroll operation is finished, it automatically scrolls to center the icon page (for the launcher) or a preview window (for the task switcher). Obligatory demo video (.debs and patches are linked from the threads above if you want to try it out yourself) here:

If you happen to have experience in Clutter, why not give it a try? I suppose you would just need to implement another scroll mode in TidyFingerScroll and then request this mode in hd-task-navigator.c and hd-launcher-page.c. Who's up for the challenge? :)

Random observation: Hidden in hd-task-navigator.c one can find a geeky gem:

  xthumb = ythumb = 0xB002E;

A new gPodder release should be ready next week. And now back to some Uni stuff :)

Monday, May 3, 2010

N810 + pyDance + USB Host Mode + Dance Mat

Most of the cool hacks these days are done using the N900 for obvious reasons. For this little experiment, I needed the good old N810 with its USB Host Mode (as the N900 doesn't support USB Host Mode right now) to get things going. An alternative approach would be to use BlueMaemo running on a N8x0 (with a USB device attached) acting as Bluetooth HID device for the N900 and running pyDance from the N900 on the big screen with its TV-out.

Here's a walkthrough video on how it's done:

I hope to post the packages needed to get this going shortly. Attila was kind enough to package the joydev.ko kernel module for Diablo, so we're just missing pygame/SDL_mixer with OGG support in the repositories. It's not Stepmania, but it works just as well with only minimal code changes.

Monday, March 1, 2010

Video of my talk from January; coming up: Nokia App Forum Alps

Back in January, I've given a talk about Maemo Development at the Metalab Vienna. It's been up for some weeks now (the talk is in German, but at least I was using the N900 during the whole presentation. BTW: Is it possible to disable auto-rotate in the image viewer?): (direct link)


Maemo 5 "Getting Started" from metalab on Vimeo.

This upcoming weekend, the Nokia Mobile Developers Conference is taking place in Hagenberg, Austria, and if you happen to have time on March 5th and 6th, register for free (free shuttle busses are available from Vienna to Hagenberg and back). I'll be giving a talk about Open Source Applications on Maemo 5. Say hi if you happen to be there! :)

Monday, February 22, 2010

Utilize the hardware keyboard with MaePad 1.3 and Vim keybindings

Yesterday, MaePad 1.3 was released. Apart from updates to the Finnish translation and a new Hungarian translation, this release adds Vim-like keybindings to the UI, which allows you to be very productive when managing lots of checklists.

The enabler here is the hardware keyboard that allows for indirect multi-touch interaction with good, tactile, haptic feedback (something that no touchscreen to date can provide - you can't type "blindly" on any touchscreen).

Watch the demo video here:

The package is available as binary .deb from the MaePad homepage and the source is available in the Git repository (no package in Extras until Bug 9070 is fixed). Leave feedback in the forum thread, including ideas for additional shortcuts.

Friday, November 27, 2009

Experimental Maemo 5 UI: Alternative Portrait Mode

The usual way to do rotation to portrait mode in Maemo 5 is to set special flags on a window and let the window manager rotate our window and relayout after the switch. It's not as fast as it could be, and task switching (even between two portrait mode apps) is only possible by switching to landscape mode. Apart from that, things like the system menu don't work in portrait mode.

For some applications, an alternative could be to stay in landscape mode and simply rotate widgets without the window manager even knowing...

It's probably best described in a short demo video of how a simple media player could look like (sorry for the sloppy video, forgot my digital camera, so the webcam had to act as a replacement) - have a look, and tell me what you think. (For comparison, have a look at the older Panucci rotation video that uses the "normal" way of going into and leaving portrait mode.)

Tuesday, November 24, 2009

Experimental Maemo 5 UI: gPodder Episode Actions

With the Long Weekend just a little more than one week away, I though about doing some experiments with gPodder's UI. Some users want a quicker way to play/download/delete episodes instead of opening the shownotes window and using its application menu. Here's one approach I tried out today (I know the icons are pixellated and ugly - please consider them as placeholders):

The idea is that you click on an episode, and instead of opening the shownotes view, you get this selection screen where you can choose to play/download/delete the episode or view the shownotes. Of course there have to be some fancy animations, because that's what all the cool kids do today. Just watch the video on YouTube and tell me what you think in the comments here (especially in terms of non-standard UI and annying animations - seriously ;).

In unrelated news, headphoned 1.4 for N800/N810 has been released and pushed to Maemo Extras with support for Panucci and MPlayer for all your "public transport situation" avoidance needs.

Wednesday, October 21, 2009

Panucci - Portrait mode Media Player for the N900

You probably know Panucci from your N8x0 where it allows you to playback, resume and bookmark audiobooks and podcasts. Some users seem to use it as a normal audio media player, too, although the primary design goal is to support resuming for long audio tracks.

Just today I asked on maemo-developers how to get GStreamer's playbin to work on Maemo 5 when several people (thanks, guys!) pointed out that playbin2 should be used.

After that, a new package was only some UI fixing and merging of the rotation code from gPodder away. While you are eagerly waiting for the autobuilder to put Panucci into Extras-Devel, here's a short video of it in action:

Please test Panucci when it finally appears in Extras-Testing and give some feedback! And thank you to all of you who were kind enough to take the time to review the new gPodder version - it has made its way into Extras today! :) Guess the next version should allow Panucci to be selected as audio player in the preferences dialog, then.. ;)

Important: Due to the way optification works, upgrading from older versions of might break the package (application does not load). To fix this, simply uninstall and re-install the package. Both Panucci and gPodder are affected by this if you have installed an older version.

Monday, June 15, 2009

gPodder Maemo 5 UI Preview

While we keep the Diablo packages of gPodder updated, and even improve the UI somewhat, it's also time to think about how to create a good podcatcher UI for the next iteration of Maemo. During the weekend, I've come up with some ideas on how it could look like. Some of the problems have already been fixed in the latest release, watch the video of the new UI here:

You can find a list of things that are already working and things where you could help on the gPodder Fremantle Roadmap, and don't forget to report any bugs you find (both in Diablo and Fremantle) to gPodder @ Maemo Bugs.