Hallo, gleich vorweg, ich habe etwas "komplizierte" Ansprüche, aber da ihr mir bisher immer gut helfen konntet, will ich es nun zuerst mal bei hier versuchen ;) Ich bastle momentan an einem MediaCenter auf QT-Basis. Layout, Medienbibliothek, ... ist soweit schon im "Grundstadium" schon fertig. Nun fehlt noch das wichtiges: Die Wiedergabe. Dafür bräuchte ich eine plattformunabhängige Bibliothek, die zumindest auf Linux und Windows läuft. Am besten wäre es, wenn diese Bibliothek unter der LGPL stehen würde (ich also nicht meinen Code veröffentlichen muss). Wiedergeben müsste sie Videos und Musik, und diese sollte sie auch streamen (http) können. Videos sind meist im mkv/mpg Format und h264/mpeg codiert, Ton-Spur ist dts, AC3 oder halt einfach Stereo. Musik liegt im mp3, ogg, wav, flac und als DTS/AC3 in einem mka-Container vor. Des weiteren wäre es nicht schlecht, wenn ich für "Sound'n'Light" eine FFT der Tonausgabe machen könnte. Also, wie ihr seht, bin ich ein nicht ganz einfacher Fall, mit all den Wünschen ;) Das mit dem Streamen denke ich könnte ich auch einfach umgehen, indem ich das selbst in Software übernehme (Cachen etc.) und einfach den gecachten Stream aus dem RAM übergebe. Die recht große Vielfalt an versch. Formaten und Containern macht das ganze natürlich recht kompliziert, von daher würde ich am liebsten die vorinstallierten Codecs nutzen und bei Bedarf zusätzliche Codecs nachinstallieren. Für FLAC gibt es ja eine freie Bibliothek, bei mpeg und h264 dürfte das aber wesentlich komplizierter werden... Nur was für eine Bibliothek benutze ich dafür nun am besten? Wäre SDL dafür geeignet? Oder soll ich mal die in QT integrierte Phonon-Bibliothek probieren? Oder gibt es da direkt schon ein KO-Kriterium? Oder wie sieht es mit ffmpeg oder libav aus? Evtl. hat einer ja schon sowas änhliches gemacht und könnte mir da weiterhelfen :) Viele Grüße Julian
Julian W. schrieb: > Nur was für eine Bibliothek benutze ich dafür nun am besten? Du könntest VLC-Lib benutzen oder ffmpeg das sollte zumindest schon mal unter Linux und Win (ggf. auch Mac da weiß ich es nicht) laufen, und bietet vermutlich mehr als du benötigen wirst ;)
Die VLC-Lib hab ich mir schon angeschaut, die steht jedoch "leider" unter der GPL, womit ich mein komplettes Projekt auch unter die GPL stellen müsste, dies wollte ich aber eigentlich vermeiden... Aber ich habe mir ffmpeg mal näher angeschaut und das sieht ganz brauchbar aus. Nur in wie weit sieht das mit der Architektur aus? Vor allem hat sich das Projekt ja momentan zersplittert, welche Konsequenzen hat das eigentlich für mich? ffmpeg ist ja eine Sammlung von Codecs. Übernimmt ffmpeg auch die Anzeige/Ausgabe der Medien? Oder übergebe ich ffmpeg einfach den Rohstream und erhalte Bild und Ton und muss mich noch selbst um die Ausgabe derer kümmern? Also quasi so: Stream -> Cache -> ffmpeg -> Ausgabe (z.b SDL?) Auf jeden Fall schon mal Danke für die Antwort!
Du könntest Dir auch mal Audacity ansehen, das nutzt allerdings nicht Qt, sondern wxWidgets als GUI-Toolkit. Audacity ist auf Windows, Linux und OS X portiert worden. http://audacity.sourceforge.net/ Steht allerdings auch unter der GPL, ebenso wie amarok.
Nunja, ich hab jetzt schon vieles in QT programmiert, von daher würde ich nur ungern umsteigen ;) Vorerst steht auch nur Windows und Linux zur Debatte (Linux nutze ich selbst, und Windows ist halt einfach am verbreitetsten). Mac steht eher im Hintergrund, vor allem da ich keinen Mac habe, um Versionen zu kompilieren geschweige denn zu testen.
Naja, dann dürfte vom GPL-Problem abgesene amarok für Dich interessant sein, denn das nutzt Qt als GUI-Bibliothek. Win32-Ports davon soll es auch geben.
Julian W. schrieb: > Ich bastle momentan an einem MediaCenter auf QT-Basis. Layout, > Medienbibliothek, ... ist soweit schon im "Grundstadium" schon fertig. > Nun fehlt noch das wichtiges: Die Wiedergabe. > > Dafür bräuchte ich eine plattformunabhängige Bibliothek, die zumindest > auf Linux und Windows läuft. Hmm, wie wär's denn mit Qt? ;-) http://doc.qt.nokia.com/latest/phonon-module.html
Julian W. schrieb: > die steht jedoch "leider" > unter der GPL Man kann VLC glaub ich auch als DLL anbinden, k.A. wie das dann rechtlich aussieht. Willst du den später das Programm überhaupt veröffentlichen? Für den internen Gebrauch ist es ja unschädlich. Julian W. schrieb: > der übergebe ich ffmpeg einfach den > Rohstream und erhalte Bild und Ton und muss mich noch selbst um die > Ausgabe derer kümmern Das würde ich jetzt mal so vermuten, zumindest sollte das möglich sein. Da du aber ja eh vermutlich deine eigenen Steuer/Ausgabekomponenten haben wollen wirst, sollte das ja nicht unschädlich sein oder? Es gibt einige Wrapper (z.B. FOBS4J, nutze ich unter Java mit Win/Linux) die ffmpeg nutzen, eventuell kann man sich da was abschauen. Ganz einfach sowas zu bauen ist aber alles nicht... der ganze Video/Audiokram ist recht nervig was die Abhängigkeiten betrifft, etwas Erfahrung sollte also da sein.
Nunja, "kann" Phonon überhaupt das, was ich brauche? Leider habe ich nicht sooo viel dazu gefunden, aber scheinbar nutzt Phonon die auf dem System installierten Codecs, was ich eher vermeiden möchte. ffmpeg bringt ja selbst die Codecs mit, am System muss also nichts verändert werden und es würde auch "überall" laufen, egal was der Benutzer für Codecs installiert hat. Zudem, kann ich Phonon einfach mit einem Datenstrom füttern? Kann Phonon mkv/mka verarbeiten? Was passiert, wenn eine mkv-Datei 2 Audio-Streams hat? Mir erscheint da Phonon "zu simpel" gestrickt zu sein, da ich "später" schon eine etwas komplexeres Handling mit Medien-Dateien benötige... Auch das Vorspulen bereitet mir jetzt schon Kopfzerbrechen, da ich die Daten ja meist streamen muss....
Läubi .. schrieb: > Man kann VLC glaub ich auch als DLL anbinden, k.A. wie das dann > rechtlich aussieht. Willst du den später das Programm überhaupt > veröffentlichen? Für den internen Gebrauch ist es ja unschädlich. Nunja, damit wäre mein Werk ja von einem GPL-Werk abgeleitet, und damit müsste es doch auch unter die GPL fallen... Zuerst einmal würde ich es nur intern nutzen, aber da ich da wohl viel Arbeit investieren werde, würde ich es auch gerne irgendwann mal veröffentlichen, und ich weiß nicht, ob mir dann die GPL zusagen wird, von daher würde ich mich hier noch gerne alle Optionen offen halten.
Julian W. schrieb: > müsste es doch auch unter die GPL fallen... Wenn du es veröffentlichst/verkaufst/verschenkst/... ja Julian W. schrieb: > von daher würde ich mich hier noch gerne alle Optionen offen halten Du kannst dir auch eine Abstraktionsschicht ausdenken und erst mal damit alles "probieren", eventuell gefällt es dir so gut und geht derart leicht von der Hand, dass die Vorteile die "Nachteile" der GPL überwiegen. Aber ansonsten halte ich es wie du und versuche GPL in eigenen Projekten zu vermeiden.
So, ich habe mal etwas mit Phonon rumgespielt, besser gesagt mit der AudioPlayer-Demo und muss sagen, ich bin positiv überrascht. Alle geforderten Medien-Dateien werden abgespielt. Nur leider habe ich keine (funktionierende) VideoPlayer-Demo gefunden. Weiß einer, wo die sich befindet bzw. hat gerade eine parat? Mich würde noch interessieren, wie Phonon die Medien wiedergibt, also ob es die Codecs des PCs nutzt oder eigene Codecs nutzt, sodass ich sicher sagen kann, das auf jedem PC diese Dateien wiedergegeben werden können? Zudem würde mich interessieren, in wieweit ich die Tonausgabe analysieren kann, z.B. in Form einer FFT? Wäre sowas mit Phonon möglich?
Bitte melde dich an um einen Beitrag zu schreiben. Anmeldung ist kostenlos und dauert nur eine Minute.
Bestehender Account
Schon ein Account bei Google/GoogleMail? Keine Anmeldung erforderlich!
Mit Google-Account einloggen
Mit Google-Account einloggen
Noch kein Account? Hier anmelden.