Video abspielen.

Rund um die LCL und andere Komponenten
redplug
Beiträge: 31
Registriert: So 22. Nov 2009, 20:35

Video abspielen.

Beitrag von redplug »

Hallo.
Ich möchte ein Video von meiner TV Karte abspielen. (Möchte eine eigene TV Software schreiben weil die aktuelle TV Software unter Linux nicht mehr weiterentwickelt wird)
Das dev ist: /dev/video0
wenn ich ein
cat /dev/video0
ausführe bekomme ich auch eine Ausgabe mit kryptischen Zeichen. Wie aber gebe ich in Lazarus ein Video wieder?


Vielen Dank für alle Antworten im voraus.

Benutzeravatar
theo
Beiträge: 10904
Registriert: Mo 11. Sep 2006, 19:01

Re: Video abspielen.

Beitrag von theo »

http://wiki.lazarus.freepascal.org/Playing_videos" onclick="window.open(this.href);return false;

pluto
Lazarusforum e. V.
Beiträge: 7192
Registriert: So 19. Nov 2006, 12:06
OS, Lazarus, FPC: Linux Mint 19.3
CPU-Target: AMD
Wohnort: Oldenburg(Oldenburg)

Re: Video abspielen.

Beitrag von pluto »

Versuch mal Kaffeine. Das ist meiner Meinermeinung nach der beste Multimedia-Player. Damit kann man auch TV Schauen, wenn man eine TV-Karte hat. Andere Player habe ich noch nicht zum laufen bekommen.
Angeblich soll das auch mPlayer können. Dazu gibt es auch schon eine Komponente für Lazarus. Die Komponente heißt: MPlayerControl ich finde gerade den Link dazu nicht.

Ein anderer Beitrag währe hier, glaube ich, jedoch sind meine Englisch Kenntnisse zu schlecht: http://forum.lazarus.freepascal.org/ind ... 182.0.html" onclick="window.open(this.href);return false;

XINE kann / soll das auch können. Jedoch habe ich es mit dem XINE Player nicht geschafft und selbst einbinden geht zwar auch, aber nur mit Fehlern.... z.b. hängt sich das Programm auf oder StartX.
Daher ist es wohl am besten im Moment auf ein Externes Programm zuzugreifen.
MFG
Michael Springwald

Targion
Beiträge: 688
Registriert: Mi 3. Okt 2007, 21:00
OS, Lazarus, FPC: Linux (L 0.9.29 FPC 2.4.2)
CPU-Target: x86_64

Re: Video abspielen.

Beitrag von Targion »

pluto hat geschrieben:Versuch mal Kaffeine. Das ist meiner Meinermeinung nach der beste Multimedia-Player. Damit kann man auch TV Schauen, wenn man eine TV-Karte hat. Andere Player habe ich noch nicht zum laufen bekommen.
Angeblich soll das auch mPlayer können. Dazu gibt es auch schon eine Komponente für Lazarus. Die Komponente heißt: MPlayerControl ich finde gerade den Link dazu nicht.
Shau' mal auf den Link von theo ;-)
MPlayer kann TV streamen. (siehe hier) Es gibt aber auch viele Linux-Libs, die das ebenfalls können. Dazu müssen dann allerdings die entsprechenden C-Header übersetzt werden.
Notfalls kann man immer noch den VideoLan-Client Player einbinden.

redplug
Beiträge: 31
Registriert: So 22. Nov 2009, 20:35

Re: Video abspielen.

Beitrag von redplug »

Danke ich habe den mPlayer einbinden können.

Edit:
Hat jemand eine Idee wie ich nun ein TV Kanal öffnen kann?

Mit einem einfachen
MPlayerControl1.Filename:='/dev/video0';
MPlayerControl1.Play;


Kommt kein bild

Edit2:

Es hat sich auch das Erledigt.
folgendes Hilft:
MPlayerControl1.Filename:='tv:///dev/video0';
MPlayerControl1.Play;

Fragt sich nur wie ich den Kanal ändere...

RSE
Beiträge: 462
Registriert: Mi 30. Jul 2008, 13:11
OS, Lazarus, FPC: WinXP SP3 (L 0.9.28.2 FPC 2.2.4)
CPU-Target: 32Bit
Kontaktdaten:

Re: Video abspielen.

Beitrag von RSE »

Ich habe eine Grundsatzfrage, da ich (rein hobbymäßig) auch an einem Mediaplayer arbeite. Unter Windows werden für jede Multimediahardware Treiber geschrieben, so dass sie sich in DirectShow einbinden lässt. Somit stelle ich also ein Interface mit DirectShow her und kann somit (falls in Windows korrekt installiert!) auch alles wiedergeben, was von meiner DirectShow Schnittstelle unterstützt wird. DirectShow ist also das Mediaframework von Windows, so wie Quicktime von MacOS. Für Linux gibt es allerdings solch einen "Standard", der von allen Hardwareherstellern akzeptiert und unterstützt wird nicht, wober GStreamer einen Ansatz eines entsprechenden Frameworks bietet. Es hat sich allerdings meines Wissens noch nicht durchgesetzt. Somit gibt es in vielen Playern direkte fest einprogrammierte Unterstützung für einzelne Chips (der BT878 fällt mir da z.B. spontan ein). Das heißt für dein Vorhaben wiederum, dass dein TV-Programm nur maximal das leisten kann, was dir andere Player oder Bibliotheken als Interface zur Verfügung stellen, oder dass du selbst Hardwareunterstützung einbauen musst.

Bitte berichtigt mich, falls ich ein falsches Bild von der Linux-Situation habe. Ich bin bisher ausschließlich Windows-User und kenne diese Fakten über Linux nur von (evtl. alten) Websites und Erzählungen. Ich lege aber meinen Payer so an, dass er im Kern betriebssystemunabhängig ist und für die Einbindung von Hardware und Codecs dann betriebssystemspezifische Bibliotheken eingebunden werden. Für Windows reicht dafür eben eine Einbindung von DirectShow und für MacOS sollte es eine Quicktime-Schnittstelle tun. Linux ist und bleibt wohl aufgrund der Vielfalt das große Fragezeichen, wobei ich hoffe, dass GStreamer "Marktanteile gewinnt".
Seit er seinen neuen Computer hat, löst er alle Probleme, die er vorher nicht hatte!

pluto
Lazarusforum e. V.
Beiträge: 7192
Registriert: So 19. Nov 2006, 12:06
OS, Lazarus, FPC: Linux Mint 19.3
CPU-Target: AMD
Wohnort: Oldenburg(Oldenburg)

Re: Video abspielen.

Beitrag von pluto »

Im Prinzip hast du recht. Es gibt viele Möglichkeiten unter Linux. Es gibt GStreamer, XINE, mPlayer, VLC und mehr.
Im Neuen Ubuntu gibt es jetzt ein Interface. Ich glaube es heißt Phantome oder so ähnlich. Es bündelt alle Audio und Video Bibliotheken. Wie weit dieses Interface schon ist weiß ich nicht. Es wird schon genutzt wie gesagt in Ubuntu. Ich meine auch es soll Alsa ablösen. Wenn wir dafür Pascal header hätten, währe das Multimedia Problem fast gelöst.

Bis dahin: Meine XINE Sachen, könnten hier auch schon teilweise Abhilfe schaffe. Im Audio Bereich läuft es schon recht gut. Xine soll unterstützt neben den meisten Video-Formate auch TV und DVD's.
Beim Audio Abspielen gibt es keine Probleme mehr, nur noch bei den Video. Ein Externes Programm einbinden geht natürlich auch. Ist aber nicht das wahre.

Für Audio gibt es auch noch FMOD und BASS. Beides läuft unter Linux und für beides gibt es Pascal-Hader. Bei FMOD ist es etwas Problematisch welche zu finden. Bei BASS gibt es auch ein Video Bereich. Wie weit er ist weiß ich jedoch nicht. Leider konnte ich dafür bisher noch keine Pascal-Header finden. Nur halt für den Audio- Bereich.

Ich habe mir auch schon überlegt eine Art Interfaces zu schreiben, was FMOD, BASS und XINE unterstützt.
MFG
Michael Springwald

redplug
Beiträge: 31
Registriert: So 22. Nov 2009, 20:35

Re: Video abspielen.

Beitrag von redplug »

Nun das abspielen funktioniert ja.
ich habe auch nicht vor dafür einen eigenen Mediaplayer zu entwickeln.
Bei meinem aktuellen TV Betrachter MooTV stört mich die altbackene Ansicht und das er Vorschaubilder erstellt und so immer die Position der Buttons für die Kanäle ändert.
Ich will einfach ein TV Betrachter entwickeln der ein wenig moderner aussieht und leichter zu handhaben ist.
Außerdem stört mich bei MooTV das man die Lautstärke nicht regulieren kann (Weil die Ausgabe über ein loopback von Line In funktioniert). Mein Player soll das können.
Mal sehen vielleicht vermisst ja der ein oder andere das selbe und benutzt auch meinen Player (Würde mich sehr darüber freuen).
Werde ihn auf jeden Fall hier eintragen:
http://wiki.ubuntuusers.de/TV" onclick="window.open(this.href);return false;
und das Projekt bei launchpad eintragen damit potenzielle User eine einfache Installation über PPA haben.

PS:
Das ganze wird natürlich OpenSource und unter die GPL gestellt^^

pluto
Lazarusforum e. V.
Beiträge: 7192
Registriert: So 19. Nov 2006, 12:06
OS, Lazarus, FPC: Linux Mint 19.3
CPU-Target: AMD
Wohnort: Oldenburg(Oldenburg)

Re: Video abspielen.

Beitrag von pluto »

Hast du schon andere Programme ausprobiert ? Wie schon gesagt: Das beste und einfachste Programm für TV ist meiner Meinung nach Kaffeine. Das kann so gut wie alles in diesem Bereich. Mplayer bekomme ich mit TV gar nicht zum laufen. Videos gehen und Audio Dateien. Wie hast du es geschafft ? Ich habe es so gemacht wie du es gemacht hast. einfach mplayer mit tv:///E1 z.b. aufgerufen. Ich vermute mir fehlt die Kanal Liste.
MFG
Michael Springwald

redplug
Beiträge: 31
Registriert: So 22. Nov 2009, 20:35

Re: Video abspielen.

Beitrag von redplug »

du musst mplayer mit

Code: Alles auswählen

mplayer tv://E10" onclick="window.open(this.href);return false;
aufrufen
nicht mit

Code: Alles auswählen

mplayer tv:///E10
ich weis nicht ob auf E1 ein Kanal liegt. Wen darauf kein Kanal ist dann funktioniert es auch nicht.
Achja ich habe eine Analoge TV Karte - Kein DVB-T oder so was.
Hier mal ein paar Kanäle aus meiner .xawtv

Code: Alles auswählen

[ARD]
channel = E10
capture = on
 
[ZDF]
channel = E8
capture = on
 
[RTL]
channel = E11
capture = on
 
[Sat. 1]
channel = E9
capture = on
 
[kabel eins]
channel = SE6
capture = on
 
[RTL 2]
channel = SE13
capture = on
 
[ProSieben]
channel = SE20
capture = on
 
[VOX]
channel = SE11
capture = on
 
[DMAX]
channel = SE16
capture = on
 
[3sat]
channel = SE9
capture = on
 
[RBB]
channel = E6
capture = on
 
[MDR]
channel = SE18
capture = on
 
[NDR]
channel = SE17
capture = on
 
[WDR]
channel = S22
capture = on
 
[BR]
channel = 23
capture = on
 
[arte]
channel = SE4
capture = on
 
[PHOENIX]
channel = E7
capture = on
 
[N24]
channel = S35
capture = on
 
[n-tv]
channel = SE5
capture = on
 
[tv.berlin]
channel = SE7
capture = on
 
[BBC]
channel = SE14
capture = on
 
[CNN]
channel = SE12
capture = on
 
[MTV]
channel = 21
capture = on
 
[VIVA]
channel = 26
capture = on
 
[TiMM]
channel = S39
capture = on
 
[DSF]
channel = E5
capture = on
 
[EuroSport]
channel = 22
capture = on
 
[TV5MONDE]
channel = 32
capture = on
 
[euronews]
channel = SE10
capture = on
 
[KI.KA]
channel = SE15
capture = on
 
[Nick]
channel = SE19
capture = on
 
[SuperRTL]
channel = S21
capture = on

RSE
Beiträge: 462
Registriert: Mi 30. Jul 2008, 13:11
OS, Lazarus, FPC: WinXP SP3 (L 0.9.28.2 FPC 2.2.4)
CPU-Target: 32Bit
Kontaktdaten:

Re: Video abspielen.

Beitrag von RSE »

pluto hat geschrieben:Im Neuen Ubuntu gibt es jetzt ein Interface. Ich glaube es heißt Phantome oder so ähnlich. Es bündelt alle Audio und Video Bibliotheken.
Falls du Phonon meinst, dann ist auch das lediglich ein Mittler (original von KDE). Es stellt dir Interfaces bereit, um Audio- und Videostreams abzuspielen und stellt sogar (einheitliche) Bedienelemente. Am Backend ist es aber ebenso abhängig von den bekannten Mediaplayern, GStreamer etc. Es kann also auch wieder nur, was diese Player zur Verfügung stellen. Der Vorteil ist also die Nutzung potentiell aller Möglichkeiten über ein einziges Interface, mit dem Schwerpunkt auf Bedienerfreundlichkeit. GStreamer ist ähnlich angelegt wie DirectShow, hat auch Backends zu allen möglichen Mediaplayern und sonstigen Sourcen.
Seit er seinen neuen Computer hat, löst er alle Probleme, die er vorher nicht hatte!

pluto
Lazarusforum e. V.
Beiträge: 7192
Registriert: So 19. Nov 2006, 12:06
OS, Lazarus, FPC: Linux Mint 19.3
CPU-Target: AMD
Wohnort: Oldenburg(Oldenburg)

Re: Video abspielen.

Beitrag von pluto »

Hallo,
Falls du Phonon meinst
Genau das meine ich.
ist es aber ebenso abhängig von den bekannten Mediaplayern, GStreamer etc
Ja, dass schon, der Vorteil ist halt das es nach außen hin gleich sein soll. Was nun Intern verwendet wird dürfte keine große rolle spielen.
mit dem Schwerpunkt auf Bedienerfreundlichkeit.
Ja. Aber dafür wird es sicherlich Helfer Klassen geben oder sowas.

Was genau erwartest du ? Eine Klasse die alles kann ? Linux ist nun mal nicht Windows. Hier gibt es eine sehr viel größere Vielfalt als unter Windows. Ich finde es ist aber schonmal ein Anfang.
MFG
Michael Springwald

RSE
Beiträge: 462
Registriert: Mi 30. Jul 2008, 13:11
OS, Lazarus, FPC: WinXP SP3 (L 0.9.28.2 FPC 2.2.4)
CPU-Target: 32Bit
Kontaktdaten:

Re: Video abspielen.

Beitrag von RSE »

pluto hat geschrieben:Ich finde es ist aber schonmal ein Anfang.
Dem stimme ich voll zu. Wobei ich persönlich GStreamer bevorzugen würde, so vom Ansatz her.
Seit er seinen neuen Computer hat, löst er alle Probleme, die er vorher nicht hatte!

pluto
Lazarusforum e. V.
Beiträge: 7192
Registriert: So 19. Nov 2006, 12:06
OS, Lazarus, FPC: Linux Mint 19.3
CPU-Target: AMD
Wohnort: Oldenburg(Oldenburg)

Re: Video abspielen.

Beitrag von pluto »

GStreamer
hast du davon FPC-Header ?
MFG
Michael Springwald

RSE
Beiträge: 462
Registriert: Mi 30. Jul 2008, 13:11
OS, Lazarus, FPC: WinXP SP3 (L 0.9.28.2 FPC 2.2.4)
CPU-Target: 32Bit
Kontaktdaten:

Re: Video abspielen.

Beitrag von RSE »

Hab ich mich noch nicht im geringsten drum gekümmert, erstmal soll es auf win laufen, da hab ich selbst was davon ;-)
Seit er seinen neuen Computer hat, löst er alle Probleme, die er vorher nicht hatte!

Antworten