Ahoj,
protože jsem nespokojený v podstatě se všemi přehrávači hudby, které existují, rozhodl jsem se vytvořit vlastní. Je to hodně velký úkol, vzhledem k tomu, jaký jsem programátor, ale člověk si musí dávat vysoké cíle.
Můj přehrávač má být pouze přehrávač, žádný nakupování hudby, ripování CD atd. Má mít knihovnu, dynamický playlisty, frontu na přehrávání a být pokud možno rozumně rychlý.
Kdy jsem se o to už pokusil pomocí PyGTK, ale ztroskotal jsem na tom, že jsem nedokázal v rozumné době vypsat do GUI obsah větší knihovny. Jinak jsem naprogramoval celkem rozumně prohledání adresáře s hudbou, nasypání do databáze, filtrování písniček z databáze a přehrávání (pomocí MPlayeru).
Nyní bych to zkusil rád pomocí PyQt4 a Phononu. V instalaci je nějaký jednoduchý ukázkový přehrávač, takže bych neměl mít problém se zprovozněním přehrávání. Chci se ale zeptat na pár věcí, u kterých si nejsem jistý, jak je udělat a jestli je vůbec moje představa reálná.
1) Jak na databázi? PyQt4 už přešel na Python 3, ale zdá se, že Pysqlite je zatím maximálně pro verzi 2.6. Našel jsem ale modul SqlAlchemy a ten funguje dobře. Navíc by mělo jít u větší kolekce nahradit SQLite PostgreSQL. Je tohle dobrá volba?
2) GUI přehrávače by mělo být zcela modulární poskládané z komponent. Komponenty by měly jít doinstalovat. Zkrátka něco na způsob toho, jak to umí foobar2000. Je mi jasný, že bude třeba vytvořit nějaký API, kterým si budou mezi sebou předávat informace (co vyfiltrovat, co je v playlistu, co hraje, co zobrazit atd.) Rád bych, aby mohli i další vývojáři doprogramovat své moduly do GUI. Ale hlavně vůbec nevím, jestli jde například prohledat nějaký adresář a načíst všechny *.py moduly. Tohle je věc, ve které nejvíc tápu. Navíc bych rád, aby program fungoval i ve Windows pomocí py2exe a tam už jsem úplně mimo.
3) Viděl bych to tak, že layout GUI bude definovaný pomocí XML souboru, něco podobnýho, jako to má Songbird.
4) Co na to říkáte? Je to blbost a mám se na to vykašlat nebo to má naději?