Archiv verlassen und diese Seite im Standarddesign anzeigen : dvb-t "bearbeitung" in echtzeit (mit java)?
hi
gibt es eine programmierschnittstelle (im idealfall java) die einen dvbt stream als dekodiertes bildmaterial bereitstellt? sprich, den weg von der dvbt hardware (karte oder stick) zum pixel uebernimmt?
fuer ein studienprojekt wollen wir eine art player entwickeln der das fernsehbild/ton verfremdet darstellt.
[ wir stehen noch ganz am anfang der recherche und sind noch fremd auf dem gebiet. von daher ist die frage vielleicht etwas seltsam formuliert, denn wir wissen selbst noch garnicht so genau was wir ueberhaupt brauchen bzw ob das ganze ueberhaupt machbar ist ;) ]
noch eine frage zu projektX; arbeitet das programm direkt mit der dvbt hardware zusammen, oder verarbeitet es nur den stream der zuvor durch das vom hersteller gelieferte programm abgelegt wurde?
gibt es eine programmierschnittstelle (im idealfall java) die einen dvbt stream als dekodiertes bildmaterial bereitstellt? sprich, den weg von der dvbt hardware (karte oder stick) zum pixel uebernimmt?
Was Ihr sucht ist ein Decoder. Also eine Software, die den DVB-Transportstream analysiert, die passenden Datenstreams (z.B. Videostream und dazu passenden Audiostream) raussucht und in Bild und Ton umwandelt. Unter Windows muss dazu ein entsprechendes Programm installiert sein, das üblicherweise mit der DVB-T-Hardware mitgeliefert wird. Alternativ so Programme wie DVB-Viewer, die sogar in gewissen Versionen frei zu haben sind. Im Normalfall können diese dann eines der Fernsehprogramme direkt anzeigen und gleichzeitig den Datenstrom als Datei(en) auf der Festplatte ablegen.
Wenn die Programme ordentlich für Windows geschrieben sind, installieren sie ihre eigentlichen Decoder offiziell als Codecs bzw. DirectX-Filter für Windows, die sich dann auch in eigenen Programmen nutzen lassen. Wenn Euch diese Begriffe erstmal nichts sagen, dann solltet ihr euch erst mal mit "Video-for-Windows" und "DirectX/DirectShow" auseinandersetzen.
Mit Java wird es da allgemein etwas schwieriger, da für die Decodierung meist die Hardware der Grafikkarte mitverwendet wird, die Decoder also sehr hardwarenah geschrieben sind. Damit sind sie nur auf bestimmter Hardware einsatzfähig und mit der Rechnerunabhängigkeit ist es nicht weit her.
Wie es mit Decodern unter anderen Betriebssystemen aussieht, kann ich leider nicht sagen, da kenne ich mich diesebezüglich nicht so aus.
noch eine frage zu projektX; arbeitet das programm direkt mit der dvbt hardware zusammen, oder verarbeitet es nur den stream der zuvor durch das vom hersteller gelieferte programm abgelegt wurde?
Letzteres. Es werden nur Dateien bearbeitet und dann auch wieder Dateien geliefert. Dabei werden Bild- und Tonspuren nacheinander bearbeitet. Für Echtzeitanwendungen ist ProjectX aus meiner Sicht daher nicht geeignet.
Gruß,
Hagge
Alternativ so Programme wie DVB-Viewer, die sogar in gewissen Versionen frei zu haben sind. Im Normalfall können diese dann eines der Fernsehprogramme direkt anzeigen und gleichzeitig den Datenstrom als Datei(en) auf der Festplatte ablegen.
gibt es da irgendwas als open source? ist ja im prinzip das ziel, das programm zu zeigen, wir wollen es nur zwischendurch noch ein wenig manipulieren :D
muss nicht zwingend java sein, das war nur so wunschdenken ;)
Wenn die Programme ordentlich für Windows geschrieben sind, installieren sie ihre eigentlichen Decoder offiziell als Codecs bzw. DirectX-Filter für Windows, die sich dann auch in eigenen Programmen nutzen lassen.
hab ich ueber den filter dann die moeglichkeit die hardware zu steuern, d.h. programme waehlen, etc ohne das die eigentliche software des herstellers laueft? sind die direct-x filter gut dokumentiert?
das waer ne vernuenftige moeglichkeit. welcher hersteller ist da zu empfehlen?
danke fuer die ausfuehrliche antwort, langsam kommt licht ins dunkel :)
gibt es da irgendwas als open source? ist ja im prinzip das ziel, das programm zu zeigen, wir wollen es nur zwischendurch noch ein wenig manipulieren
Hmm, weiß ich leider auch nicht. Ich selber verwende einen externen Satellitenreceiver mit Aufzeichnungsmöglichkeit, darum kenne ich mich bei den ganzen Softwarelösungen für DVB-Karten für PCs nicht so aus. Da müsste euch jemand anderes weiterhelfen.
Es gibt ein Projekt, ich glaube es heißt ffmpg oder so, in dem ein Open Source MPEG-Decoder entwickelt wird. Ansonsten vermute ich eher, dass die eigentlichen Decoder *nicht* im Quelltext verfügbar sind, denn ein Decoder kostet ganz ordentlich MPEG-Lizenzen. Selbst der Blick in die offizielle MPEG-Spezifikation verlangt meines Wissens ein Non-Disclosure-Agreement, und entsprechend wird es das MPEG-Konsortium wohl verbieten, jedweden Code als OpenSource rauszugeben. Auch wird ein offizieller Decoder aufgrund der Lizenzen nicht kostenfrei verfügbar sein, denn welcher Programm-Autor ist schon so gütig, selbst mehrere Tausend Dollar Gebühren zu zahlen und dann sein Programm trotzdem kostenlos abzugeben? Wie die das lizenztechnisch in dem ffmpg-Projekt machen, weiß ich ehrlich gesagt nicht. Aber bei nahezu allen in privater Initiative geschriebenen MPEG-Tools bemühen sich die Autoren darauf hinzuweisen, dass sie keinen Einblick in den offiziellen MPEG-Standard gehabt haben. Entsprechend klapprig funktionieren manche Tools dann auch. :)
Es gibt auch ein Abspielprogramm namens MPlayer (nicht der MediaPlayer von Windows, sondern wirklich MPlayer). Das ist auch Open Source und basiert meines Wissens auf der ffmpg-Bibliothek. Das Programm kann auch Transportstreams anzeigen (allerdings nur aus Files), insofern wäre das auch eine möglich Ansatzquelle für euch. Das wäre sogar mein heißester Tipp, denn das Programm kann so ziemlich jedes Fileformat anzeigen, das irgendwo rumläuft. Und es ist für Windows *und* Linux verfügbar.
hab ich ueber den filter dann die moeglichkeit die hardware zu steuern, d.h. programme waehlen, etc ohne das die eigentliche software des herstellers laueft? sind die direct-x filter gut dokumentiert?
das waer ne vernuenftige moeglichkeit. welcher hersteller ist da zu empfehlen?
Hmm, gute Frage. Es gibt meines Wissens nur recht wenige Hersteller für Decoder und verschiedene Hersteller von DVB-Karten kaufen dann dort für ihre Abspielsoftware den Decoder ein. Zumindest meine ich mal sowas in der c't bei einem Test von DVB-Karten gelesen zu haben. An so eine Software-Firma, von der auch die Hardware-Hersteller einkaufen, müsste man sich dementsprechend für den Decoder und dessen Beschreibung wenden. Aber mangels eigener Erfahrung im Einsatz solcher Karten bin ich da leider der falsche Ansprechpartner und die Firmennamen aus dem c't-Artikel sind mir in der Zwischenzeit auch wieder entfallen. Inwieweit sich solche Firmen, die dann vermutlich auch irgendwo in Fernost sitzen, auf ein Studienprojekt einlassen, kann ich leider nicht beurteilen, aber ich wäre mal nicht zu optimistisch.
Gruß,
Hagge
Hallo,
frei erhältliche MPEG2-Decoder sind hier (http://forum.gleitz.info/showthread.php?t=12587) aufgelistet. Die Sourcen gibt's, siehe z.B. dort den 3ten Post.
Gruß
akapuma
vielen dank euch beiden, besonders hagge fuer die muehe :)
wir werden wahrscheinlich auf manuell gecapturtes videomaterial zurueckgreifen, das spart wohl einiges an nerven.
falls es noch jemanden interessiert; es gibt 3 sdk's: dvbcore, TechnoTrend, und noch eins was ich grad vergessen hab. aber allesamt mies bzw garnicht dokumentiert. k.a. ob die was taugen, haben uns das nicht genauer angesehen, ist jetzt auch wurscht :)
bye,
dadatv
vBulletin® v3.8.6, Copyright ©2000-2012, Jelsoft Enterprises Ltd.