Python and Maemo, where’s that N900

Work in progress! :)

Väntar tålmodigt på att Nokia Online Store skall skicka mig meddelande om att “nu är din beställning skickad” – i Italien verkar utrullningen vara i full gång, i Sverige har den inte börjat ännu. Senaste budet är att i vecka 50 kommer de första beställningarna skickas ut. Vet inte om jag ligger med bland dem.

Nåväl. Jag har jobbat på att få till en applikation som kan visa avgångar och resvägar inom Göteborg med hjälp av Västtrafiks web services. Det har tagit ungefär så lång tid som jag förävntat mig och följande var utmaningarna.

[flashvideo file=http://wendt.se/misc/maemo-vasttrafik-091203-a.flv width=400 height=286 /]

Python

Jag är inte överens om att block-level avgörs av indentering – vilket företag vill betala utvecklare för att sitta och flytta kod till vänster och höger? Jag programmerar mycket hellre med {} och låter ett verktyg formatera koden “vackert”.

IDE – här har jag dock varit lat. PyEclipse skall tydligen vara rätt bra och ge bra stöd (hoppas det finns code completion-stöd för gtk.* med signaler och annat?)

PyGtk (API)

Väldokumenterat. Ihop med GTK+-dokumentationen måste jag säga att det är komplett. Widget-galleriet är också kanon att kunna snegla på.

PyMaemo och Hildon

(API) Hildon C-API

Detta upplever jag vara den svagaste länken i kedjan. Att jobba med en touch-applikation är nytt för mig, och jag gissar att det gäller många andra också, och då behövs vägledning, widget gallerier och tonvis med exempel så att man kan få en känsla för hur man bör bygga bra GUI:n.

Lite vägledning finns (plus Nokias UI guide lines och usability-dokument), men widget galleri och tonvis med exempel saknas – det finns ett tiotal exempel som visar lika många widgets, men inte ett enda “riktigt” program.

Py* för Web Services

Efter att ha prövat ett par bibliotek, alla med olika tillkortakommanden (schematolkning, teckenkodning, …), så stötte jag på suds som fungerar utmärkt om man bara vill ha en väl fungerande klientdel.

PS

Screen captures with XVidCap, konverterat med

ffmpeg -y -i test-0000.mpeg -qscale 5 -an -s 400x240 -f flv test.flv

[flashvideo file=http://wendt.se/misc/maemo-vasttrafik-091203-b.flv width=400 height=286 /]

Gospel-DVD, ffmpeg och cinerella

Såhär gjorde jag för att skapa ett litet klipp från en DVD.

  • konvertera DVD-filen (VOB) till dv-video
    ffmpeg -y -threads 2 -isync -ss 00:24:00 -i VTS_01_2.VOB -an /virtual/video/video.dv
  • konvertera DVD-filen (VOB) till wav-ljud
    ffmpeg -y -threads 2 -isync -ss 00:24:00 -i VTS_01_2.VOB /virtual/video/sound.wav
  • redigera (för ljud/bild var inte i synk) med cinerella (varken Kino eller Open Movie Editor lät mig göra detta)
  • exportera till dv
  • konvertera till flash, mono (ac 1) och med kvalitet 10 (1=bäst, 31=sämst)
    ffmpeg -y -i cut.dv -qscale 10 -ab 56 -ar 22050 -b 200 -r 15 -s 320x240 -ac 1 -f flv cut.flv

[flashvideo file=http://wendt.se/misc/gbg-gospel-2009-05-02-snippet.flv /]

WordPress-adaptern heter Flash Video Player.

ffmpeg-flaggor:

-r X  fps
-ab   average bit rate (sound, default = 64k)
-ar   frequency (audio, default = 44100)
-an   disable audio
-ac   channels (1=mono)
-b    bitrate bit/s (video, default=200kb/s)

Packa om AVI-filer från kameran

Har hittat två “storlekar”:

sudo aptitude -y install mencoder lavc

(lavc visade sig vilja ha några omgrip eller liknande.)

Sedan körde jag följande:

mencoder -oac mp3lame -ovc lavc -lavcopts acodec=mp3,1bitrate=128,vcodec=mpeg4,vbitrate=800,vhq,vm4v -o leia-test1.avi mvi_1185.avi
mencoder -ovc xvid -oac mp3lame -vf scale=320:240 -xvidencopts fixed_quant=4 -o leia-test2.avi mvi_1185.avi