Försök med despotify med python bindings

Jag spenderade mestadelen av kvällen med att programmera lite pyQT/pyKDE med despotify python-bindings.

Till en början tänkte jag “Gud vad lätt detta måste vara. Bara att skriva lite pythonkod och så spelar den min musik.”

Och i 90% av fallet var det så också. Det gick enkelt att söka och klistra in i en ListWidget, skapa action på signaler som dubbelklick för att spela.

Men…. När uppspelningen börjar fryser fönstret tills låten är klar vilket är lite konstigt, ifall man kör test.py (i despotify/src/bindings/python/) går verkar den skapa sin egna tråd och gå vidare.

Vilket den även gör här, men inte på samma vis. När musiken börjar spela kommer det fram felmeddelande i terminalen som säger:

  • QMetaMethod::invoke: Unable to invoke methods with return values in queued connections
  • QObject ::startTimer: QTimer can only be used with threads started with QThread

Visst, hade jag använt något av de objekten hade jag förstått att det kunde gå fel. Men det gör jag inte (ivf inte medvetet).

Mitt första försök till lösning var såklart att skapa en egen tråd till spytify där den kan få hänga sig hur mycket den vill. Sagt och gjort, men det hjälper inte, MainWindow hänger sig lik förbaskat!

Nästa försök var att göra spytify global och därmed utesluta den direkt ut MainWindow-funktionerna, men det fungerade ej heller.

Och nu som sista grej var att koppla bort KDE helt och bara köra pyQt, men lika mycket stopp där.

Jag har inga idéer kvar.

Hade varit jättetacksam för hjälp med det här.
Sources: http://github.com/marcusfollrud/KSpot/

Screenshot

One thought on “Försök med despotify med python bindings”

  1. Ska bli skoj att undersöka, får bli imorrn det. Jag sitter med ostabilt 3g uppkoppling som är vidarekopplad via ad-hoc. slöt! Har ingen möjlighet att tanka ner python :=)

Leave a Reply

Your email address will not be published. Required fields are marked *