Sie sind nicht angemeldet.

Lieber Besucher, herzlich willkommen bei: VDR Portal. Falls dies Ihr erster Besuch auf dieser Seite ist, lesen Sie sich bitte die Hilfe durch. Dort wird Ihnen die Bedienung dieser Seite näher erläutert. Darüber hinaus sollten Sie sich registrieren, um alle Funktionen dieser Seite nutzen zu können. Benutzen Sie das Registrierungsformular, um sich zu registrieren oder informieren Sie sich ausführlich über den Registrierungsvorgang. Falls Sie sich bereits zu einem früheren Zeitpunkt registriert haben, können Sie sich hier anmelden.

1

Freitag, 27. September 2013, 10:09

[Prototyp] RPI Ausgabeplugin

Hallo allerseits

Da ich schon lange auf ein schlankes Ausgabeplugin fürs RPI am warten bin, habe ich mich einfach mal darangesetzt. Inzwischen ist ein erster Prototyp lauffähig, den ich euch nicht vorenthalten will:

Quellcode

1
2
3
4
5
6
7
8
9
10
11
12
13
2013-09-27: Version 0.0.1

Initial prototype
- limitations:
  - video codec hard coded to MPEG2, output on HDMI
  - audio codec hard coded to MP3, output on phone jack
- tested:
  - OSD
  - SDTV live view and replay
- missing:
  - dynamic switching between MPEG2 and H264 video codec
  - trick speeds
  - much more...


Da fehlt natürlich noch einiges - dieser Post soll lediglich ein Zeichen sein, dass es an der RPI-Front weitergeht! Auch wenn das noch kein expliziter Aufruf zum Testen ist, freue ich mich natürlich auf Feedback!

- Edit -
Die neuen Versionen im Überblick:
Version 0.0.2 vom 29.09. feat. H264
Version 0.0.3 vom 02.10. feat. audio only & replay start/stop/pause
Version 0.0.4 vom 14.10. feat. verbesserter Audio-Support
Version 0.0.5 vom 17.11. feat. ruckelfreies Replay
Version 0.0.6 vom 15.12. feat. Trick Speeds & Still Picture
Version 0.0.7 vom 30.12. feat. Deinterlacer
Version 0.0.8 vom 10.02. feat. GrabImage() und ScaleVideo()

… neuere Versionen im Nachfolgethread oder die komplette History im Git auf vdr-developper.org .

Grüsse aus Bern
Thomas
»reufer« hat folgende Datei angehängt:

Dieser Beitrag wurde bereits 8 mal editiert, zuletzt von »reufer« (14. Oktober 2014, 20:04)


2

Freitag, 27. September 2013, 10:25

Sehr interessant! Vor allem ein großes Lob dafür, dass gleich zu Beginn der Sourcecode verfügbar ist!

Kennst du Details zu dieser "libilclient.a"? Für mich sieht es so aus, als wäre der Source dafür durchaus verfügbar:

https://github.com/raspberrypi/firmware/…i/libs/ilclient

Meine bescheidene Meinung wäre also: Entweder die Datei nimmt man als Bestandteil der Firmware an (dann gegen die im System installierte "libilclient" linken. Sofern es sowas gibt...) oder du solltest lieber die Source-Dateien (in ein Unterverzeichnis "ilclient") mit in deinen Source-Tree packen und die Library beim Kompilieren mit erzeugen. So wäre diese auch mit den für die entsprechende Distribution geltenden Kompiler-Parametern erzeugt.

Ansonsten ein großes :tup für deinen Einsatz!

3

Freitag, 27. September 2013, 10:33

Hallo
Meine bescheidene Meinung wäre also: Entweder die Datei nimmt man als Bestandteil der Firmware an (dann gegen die im System installierte "libilclient" linken. Sofern es sowas gibt...) oder du solltest lieber die Source-Dateien (in ein Unterverzeichnis "ilclient") mit in deinen Source-Tree packen und die Library beim Kompilieren mit erzeugen. So wäre diese auch mit den für die entsprechende Distribution geltenden Kompiler-Parametern erzeugt.
Danke fürs Feedback - zweiteres habe ich getan, in einem Verzeichns namens "ilclient". Oder habe ich Dich falsch verstanden?

Gruss
Thomas

4

Freitag, 27. September 2013, 10:37

Ich hatte Tomaten auf den Augen...

Klar. Da ist sie ja. Demnach ist der kleine "Fehler" nur, dass eine "libilclient.a" in deinem Archiv liegt.

Ich nehme meine voreilige Kritik zurück und schlage vor das "clean"-Target des Makefiles so zu erweitern, dass "*~" auch im Unterverzeichnis "ilclient", und die "libilclient.a" selber, gelöscht werden.

5

Freitag, 27. September 2013, 10:42

Klar. Da ist sie ja. Demnach ist der kleine "Fehler" nur, dass eine "libilclient.a" in deinem Archiv liegt.

Kann sein, dass es sich dabei um ein Überbleibsel von der Makefile-Bastelei handelt - werde ich noch löschen, ebenso die ilclient/*~-Dateien. Falls sich jemand beim VDR-Makesystem zu Hause fühlt, wäre ich über ein Review des Makefiles sehr erfreut! :]

Gruss
Thomas

6

Freitag, 27. September 2013, 10:43

:tup :tup
Sehr cool.
Ich habe mich schon gefragt welches meiner Prio 2 Projekte ich am WE machen werden.
Nun ist das hier aber zu Prio 1 geworden. :D :D


//Edit
Nach dem ersten Blick bin ich verwundert wie "wenige" Code es ist. Dachte für ein Ausgabedevice braucht man deutlich mehr. So ist es mir aber lieber, dann steige ich da vielleicht schneller durch.

Meine VDRs

VDR Server: Ubuntu Lucid Lynx mit 6TB im RAID und quadtuner DVB-S2
VDR Client1: Raspbian @ Raspberry Pi 2
VDR Client2: Ubuntu @ Laptop
VDR Client3: MDL @ Raspberry Pi
VDR Client4: zen2vdr @ SMT-7020s (wird zZ nicht benutzt)
VDR Client5: Android @ HP Touchpad mit VDR Manager App

Dieser Beitrag wurde bereits 1 mal editiert, zuletzt von »decembersoul« (27. September 2013, 11:05)


7

Freitag, 27. September 2013, 11:52

Unter ArchLinuxARM klappen die includes der ilclient-Dateien und ein paar anderer Bibliotheken aus der Firmware nicht, daher hole ich die aus den vom Firmware-Paket gelieferten Dateien:

Quellcode

1
2
3
4
5
6
7
8
9
10
11
--- rpihddevice-0.0.1/Makefile  2013-09-27 11:18:16.916355896 +0200
+++ b/Makefile  2013-09-27 11:19:53.265399220 +0200
@@ -51,7 +51,7 @@ DEFINES += -DPLUGIN_NAME_I18N='"$(PLUGIN
 DEFINES += -DHAVE_LIBOPENMAX=2 -DOMX -DOMX_SKIP64BIT -DUSE_EXTERNAL_OMX -DHAVE_LIBBCM_HOST -DUSE_EXTERNAL_LIBBCM_HOST -DUSE_VCHIQ_ARM
 DEFINES += -Wno-write-strings -fpermissive

-INCLUDES += -I/opt/vc/include/ -I/opt/vc/include/interface/vcos/pthreads
+INCLUDES += -I/opt/vc/include/ -I/opt/vc/include/interface/vcos/pthreads -I/opt/vc/include/interface/vmcs_host/linux/ -I/opt/vc/src/hello_pi/libs/ -I/opt/vc/src/hello_pi/libs/ilclient/

 ILCDIR   = ilclient
 VCLIBDIR = /opt/vc/lib

Ansonsten läuft das ja schon super mit SD-Kanälen (ich habe keine lokale DVB-Karte, nutze daher streamdev-client) :D - nur bei Radio-Kanälen habe ich keinen Ton und das Plugin hängt sich weg - am WE kann ich da vermutlich mehr dazu liefern, im Auslieferungszustand ist bei ArchLinuxARM journalctl nicht aktiv...
Mute und Lautstärkeregelung funktionieren bei mir auch noch nicht und nach dem Spulen und springen in Aufnahmen wird die Bildausgabe arg rucklig, bis man die Wiedergabe stoppt und neu startet - vermutlich steckt das im "much more" auf der TODO-Liste :)
yaVDR-Doku

Meine VDRs

VDR 1: Point of View Ion-330-1 (Intel Atom 330@1,6 GHz). 2GB, 4TB HDD, KNC One DVB-C, Sundtek MediaTV Pro (DVB-C), Atric IR-Einschalter Rev.5, yaVDR 0.6 testing
VDR 2: Acer Revo 3610, 4GB Ram, 1x HDD 320 GB, Pinnacle PCTV SAT 452e, Medion X10, YaVDR 0.5 testing
VDR 3: Intel DH67BL, Celeron 540, 4 GB Ram, POV Geforce 210 512 MB, 500 GB, DD Duo-flex CT, Arch LInux, VDR 2.2.0, CIR-Empfänger
Client 1: Raspberry Pi Model B, Arch Linux ARM, VDR 2.2.0
Client 2: Raspberry Pi 2, Arch Linux ARM, VDR 2.3.1
vdr-epg-daemon + MariaDB auf Cubietruck mit 32 GB SSD, Arch Linux ARM, optional Sundtek MediaTV Pro III + VDR 2.2.0
Ceterum censeo enchiridia esse lectitanda.

Dieser Beitrag wurde bereits 2 mal editiert, zuletzt von »seahawk1986« (27. September 2013, 12:25)


8

Freitag, 27. September 2013, 12:57

Ansonsten läuft das ja schon super mit SD-Kanälen (ich habe keine lokale DVB-Karte, nutze daher streamdev-client) - nur bei Radio-Kanälen habe ich keinen Ton und das Plugin hängt sich weg - am WE kann ich da vermutlich mehr dazu liefern, im Auslieferungszustand ist bei ArchLinuxARM journalctl nicht aktiv...
Mute und Lautstärkeregelung funktionieren bei mir auch noch nicht und nach dem Spulen und springen in Aufnahmen wird die Bildausgabe arg rucklig, bis man die Wiedergabe stoppt und neu startet - vermutlich steckt das im "much more" auf der TODO-Liste
Das ist korrekt. Lautstärke, Audio-only und alles ausser Start/Stop bei Aufnahmen fehlt und ist als nächstes dran. Das erste Ziel war, Bild und Ton synchron zum laufen zu bringen und beim Kanalwechsel jeweils alles sauber wieder auf und ab zu bauen. Aktuell schaut der Code recht übersichtlich aus, aber als OpenMax / OpenVG-Neuling hat mich das einiges an Nerven gekostet. Doch mit der aktuellen Grundlage sollte der Rest machbar sein...

Gruss
Thomas

9

Freitag, 27. September 2013, 14:40

Hi,

ich bin mal wieder begeistert, sogar ohne es getestet zu haben.
Mein erster Gedanke war: hoffentlich gibt's diesmal die Sourcen, damit nicht schon wieder ein viel versprechendes Project den Bach runter geht,...
Aber meine Sorge war glücklicherweise unbegründet. Danke schon mal, ich werd's sicher dieses Wochenende testen :)

Claus
MLD 2.0 mit vdr 1.6 - SMT-7020s - 80GB HDD
MLD 5.1 mit vdr 2.2 - lirc yaUSBir - Octopus NET S2 - SCR - XFX GeForce 9300 mit Intel E3200 - 2GB RAM -
WD Green 6TB HDD - SanDisk 64GB SSD - Lian Li PC-C37B - Samsung LE40A559
MLD 5.1 mit vdr 2.2 - Raspberry Pi 3 - rpihddevice
MLD 5.1 mit vdr 2.2 - Banana Pi - softhddevice
MLD 5.0 mit Squeeze Play - Raspberry Pi 2 - 32GB SD - 7" Touch TFT

10

Freitag, 27. September 2013, 14:45

Lässt sich ArchLinux ARM cross-kompilieren? Ich spiele gerade mit dem Gedanken vdr4arch RPi fähig zu machen bzw. fertige Pakete auszuliefern.
VDR4Arch --> Lian-Li PC-C37B | ASRock Q1900M | 4GB RAM | SanDisk SDSSDP064G | Samsung HD155UI | Digital Devices Cine S2 V6 | ZOTAC GT630 (Rev. 2) Zone Edition

11

Freitag, 27. September 2013, 14:50

Lässt sich ArchLinux ARM cross-kompilieren?

Es gibt eine fertige distccd-Toolchain dafür, die ich benutze: https://github.com/WarheadsSE/PKGs/tree/master/distccd-alarm damit sind die Zeiten zum Bauen durchaus akzeptabel. Ich baue aber alles direkt vom Raspberry aus, nicht komplett auf einem anderen Rechner.

Das Plugbuild-System von Arch Linux ARM war mir zu komplex und zu schlecht dokumentiert: https://github.com/archlinuxarm/plugbuild
yaVDR-Doku

Meine VDRs

VDR 1: Point of View Ion-330-1 (Intel Atom 330@1,6 GHz). 2GB, 4TB HDD, KNC One DVB-C, Sundtek MediaTV Pro (DVB-C), Atric IR-Einschalter Rev.5, yaVDR 0.6 testing
VDR 2: Acer Revo 3610, 4GB Ram, 1x HDD 320 GB, Pinnacle PCTV SAT 452e, Medion X10, YaVDR 0.5 testing
VDR 3: Intel DH67BL, Celeron 540, 4 GB Ram, POV Geforce 210 512 MB, 500 GB, DD Duo-flex CT, Arch LInux, VDR 2.2.0, CIR-Empfänger
Client 1: Raspberry Pi Model B, Arch Linux ARM, VDR 2.2.0
Client 2: Raspberry Pi 2, Arch Linux ARM, VDR 2.3.1
vdr-epg-daemon + MariaDB auf Cubietruck mit 32 GB SSD, Arch Linux ARM, optional Sundtek MediaTV Pro III + VDR 2.2.0
Ceterum censeo enchiridia esse lectitanda.

Dieser Beitrag wurde bereits 1 mal editiert, zuletzt von »seahawk1986« (27. September 2013, 15:24)


12

Freitag, 27. September 2013, 16:57

Hallo Thomas,
vielen Dank für dein neues Projekt. Ich werde das demnächst auch mal testen und hier berichten....
Viele Grüße, Uwe

mein VDR Stuff... :)

Thermaltake DH101: M2N68 Plus - 1 x HD-FF-6400 - 1 x L4MV6.2
angeschlossen über (SCR Inverto Black Unicable Multiswitch UST111-CUO10-8PP an Selfsat DQ)
yavdr-0.5 - vdr-2.2.0 - Plugins: dvbhddevice - targavfd - skinnopacity - osdteletext - xmltv2vdr
Neu: RaspberryPi3 mit rpihddevice Plugin (git) + sat2ip (an GSSBox) sowie USB-S2 DVB Empfänger (DVB-SKY) oder DVB-T(2)

13

Freitag, 27. September 2013, 17:38

Zum Crosskompilieren eines Kernels habe ich mir die Crosschain komplett auf dem Desktop gebaut. Hier war mir distcc einfach zu langsam.

Aber letztlich ist es in der Tat so, dass Kompilieren direkt auf ARM um Längen einfacher ist. Die ARM-Dinger brauchen ja kaum Strom. Kompilieren anstarten und dann einfach über die Nacht rennen lassen.

14

Freitag, 27. September 2013, 23:28

Fantastic work. Compiled vdr with streamdev-client and rpihddevice tonight and it worked surprisingly well. Fast channel switches and perfect picture quality on the channels (even though they are SD).

Can't wait to follow this project in more detail. Next steps for me is to get a libcec-deamon working so that I can use the remote controller of the TV.

Once again thanks for a very promising plugin.

My VDR systems


Server: Antec Fusion, Asus P5N7A-VM, Intel Core 2 Duo E7400 @ 2.8GHz, DD Cine S2 V6.5 + Duoflex S2 + Octopus Single CI, Gentoo, vdr-plugins: epgsearch, live, smarttvweb, streamdev-server, vompserver, vnsiserver
Client 1-1: Samsung UE46ES5505, Raspberry Pi with vompclient
Testing Client 1-2: Samsung UE46ES5505, Vdr on SmartTV
Client 2-1: Samsung UE32ES5505, Vdr on SmartTV
Client 3-1: Philips 32PFL4007T, Raspberry PI with vompclient
Client 4-1: Philips 40PFL5206,
Raspberry PI with vompclient
Client 5-1: Philips 32', Zotac MAG, OpenElec with XBMC Gotham
Testing Client 6-1: Philips 42', Vdr 2.1.6 with rphhddevice


15

Samstag, 28. September 2013, 21:56

Fantastic work. Compiled vdr with streamdev-client and rpihddevice tonight and it worked surprisingly well. Fast channel switches and perfect picture quality on the channels (even though they are SD).

Can't wait to follow this project in more detail. Next steps for me is to get a libcec-deamon working so that I can use the remote controller of the TV.

Once again thanks for a very promising plugin.

Hello
You should take a look at my howto:
Raspberry PI über CEC steuern

Meine VDRs

VDR Server: Ubuntu Lucid Lynx mit 6TB im RAID und quadtuner DVB-S2
VDR Client1: Raspbian @ Raspberry Pi 2
VDR Client2: Ubuntu @ Laptop
VDR Client3: MDL @ Raspberry Pi
VDR Client4: zen2vdr @ SMT-7020s (wird zZ nicht benutzt)
VDR Client5: Android @ HP Touchpad mit VDR Manager App


16

Sonntag, 29. September 2013, 00:30

Ich habe etwas gebraucht bis ich alles so weit hatte.
Nun läuft das Plugin und das OSD sieht auch gut aus aber wenn ich mir ein Video über streamdev-client holen will, dann hängt sich das Plugin auf und der Watchdog schlägt zu.

Ich glaube das Problem sind diese Zeilen:

Quellcode

1
2
3
4
Sep 29 00:26:20 raspberrypi vdr: [13290] rpihddevice: OmxSetVideoCodec()
Sep 29 00:26:20 raspberrypi vdr: [13287] rpihddevice: OmxError(UnsupportedSetting)
Sep 29 00:26:20 raspberrypi vdr: [13290] rpihddevice: failed to enable port buffer on video decoder!
Sep 29 00:26:20 raspberrypi vdr: [13290] rpihddevice: OmxSetVideoCodec() end



Hier noch mal alles zusammen

Spoiler Spoiler


Quellcode

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
Sep 29 00:26:19 raspberrypi vdr: [13277] VDR version 2.0.3 started
Sep 29 00:26:19 raspberrypi vdr: [13277] switched to user 'vdr'
Sep 29 00:26:19 raspberrypi vdr: [13277] codeset is 'UTF-8' - known
Sep 29 00:26:19 raspberrypi vdr: [13277] ERROR (tools.c,1460): /usr/local/share/locale: Datei oder Verzeichnis nicht gefunden
.....
Sep 29 00:26:19 raspberrypi vdr: [13277] loading plugin: PLUGINS/lib//libvdr-streamdev-client.so.2.0.0
Sep 29 00:26:19 raspberrypi vdr: [13277] loading plugin: PLUGINS/lib//libvdr-rpihddevice.so.2.0.0
Sep 29 00:26:19 raspberrypi vdr: [13277] new device number 1
Sep 29 00:26:19 raspberrypi vdr: [13277] rpihddevice: new cAudio()
Sep 29 00:26:19 raspberrypi vdr: [13277] loading /var/lib/vdr//setup.conf
Sep 29 00:26:19 raspberrypi vdr: [13277] loading /var/lib/vdr//sources.conf
Sep 29 00:26:19 raspberrypi vdr: [13277] loading /var/lib/vdr//diseqc.conf
Sep 29 00:26:19 raspberrypi vdr: [13277] loading /var/lib/vdr//scr.conf
Sep 29 00:26:19 raspberrypi vdr: [13277] loading /var/lib/vdr//channels.conf
Sep 29 00:26:19 raspberrypi vdr: [13277] loading /var/lib/vdr//timers.conf
Sep 29 00:26:19 raspberrypi vdr: [13277] loading /var/lib/vdr//commands.conf
Sep 29 00:26:19 raspberrypi vdr: [13277] loading /var/lib/vdr//reccmds.conf
Sep 29 00:26:19 raspberrypi vdr: [13277] loading /var/lib/vdr//svdrphosts.conf
Sep 29 00:26:19 raspberrypi vdr: [13277] loading /var/lib/vdr//remote.conf
Sep 29 00:26:19 raspberrypi vdr: [13277] loading /var/lib/vdr//keymacros.conf
Sep 29 00:26:19 raspberrypi vdr: [13277] registered source parameters for 'A - ATSC'
Sep 29 00:26:19 raspberrypi vdr: [13277] registered source parameters for 'C - DVB-C'
Sep 29 00:26:19 raspberrypi vdr: [13277] registered source parameters for 'S - DVB-S'
Sep 29 00:26:19 raspberrypi vdr: [13277] registered source parameters for 'T - DVB-T'
Sep 29 00:26:19 raspberrypi vdr: [13277] no DVB device found
Sep 29 00:26:19 raspberrypi vdr: [13277] initializing plugin: streamdev-client (0.6.0-git): VTP Streaming Client
Sep 29 00:26:19 raspberrypi vdr: [13277] new device number 10
Sep 29 00:26:19 raspberrypi vdr: [13277] streamdev-client: got device number 10
Sep 29 00:26:19 raspberrypi vdr: [13277] initializing plugin: rpihddevice (0.0.1): HD output device for Raspberry Pi
Sep 29 00:26:19 raspberrypi vdr: [13277] OmxInit()
Sep 29 00:26:19 raspberrypi vdr: [13283] video directory scanner thread started (pid=13277, tid=13283, prio=high)
Sep 29 00:26:19 raspberrypi vdr: [13283] video directory scanner thread ended (pid=13277, tid=13283)
Sep 29 00:26:19 raspberrypi vdr: [13284] epg data reader thread started (pid=13277, tid=13284, prio=high)
Sep 29 00:26:19 raspberrypi vdr: [13284] reading EPG data from /var/cache/vdr/epg.data
Sep 29 00:26:19 raspberrypi vdr: [13284] epg data reader thread ended (pid=13277, tid=13284)
Sep 29 00:26:19 raspberrypi vdr: [13282] video directory scanner thread started (pid=13277, tid=13282, prio=high)
Sep 29 00:26:19 raspberrypi vdr: [13282] video directory scanner thread ended (pid=13277, tid=13282)
Sep 29 00:26:19 raspberrypi vdr: [13285] section handler thread started (pid=13277, tid=13285, prio=low)
Sep 29 00:26:19 raspberrypi vdr: [13277] setting primary device to 1
Sep 29 00:26:19 raspberrypi vdr: [13277] rpihddevice: new cOsdProvider()
Sep 29 00:26:19 raspberrypi vdr: [13277] assuming manual start of VDR
Sep 29 00:26:19 raspberrypi vdr: [13277] SVDRP listening on port 6419
Sep 29 00:26:19 raspberrypi vdr: [13277] setting current skin to "lcars"
Sep 29 00:26:19 raspberrypi vdr: [13277] loading /var/lib/vdr//themes/lcars-default.theme
Sep 29 00:26:19 raspberrypi vdr: [13277] starting plugin: streamdev-client
Sep 29 00:26:19 raspberrypi vdr: [13277] starting plugin: rpihddevice
Sep 29 00:26:19 raspberrypi vdr: [13277] remote control KBD - keys known
Sep 29 00:26:19 raspberrypi vdr: [13277] switching to channel 5
Sep 29 00:26:19 raspberrypi vdr: [13277] cTimeMs: using monotonic clock (resolution is 1 ns)
Sep 29 00:26:19 raspberrypi vdr: [13288] rpihddevice: cOvg() thread started
Sep 29 00:26:19 raspberrypi vdr: [13289] KBD remote control thread started (pid=13277, tid=13289, prio=high)
Sep 29 00:26:19 raspberrypi vdr: [13277] streamdev-client: Connected to server 192.168.1.2:2004 using protocol version 1.0
Sep 29 00:26:19 raspberrypi vdr: [13277] setting watchdog timer to 60 seconds
Sep 29 00:26:19 raspberrypi vdr: [13277] rpihddevice: SetPlayMode(Audio/Video)
Sep 29 00:26:19 raspberrypi vdr: [13277] rpihddevice: Start()
Sep 29 00:26:19 raspberrypi vdr: [13277] rpihddevice: SetClockState(eClockStateWaiting)
Sep 29 00:26:19 raspberrypi vdr: [13277] rpihddevice: Start() end
Sep 29 00:26:19 raspberrypi vdr: [13290] receiver on device 10 thread started (pid=13277, tid=13290, prio=high)
Sep 29 00:26:19 raspberrypi vdr: [13291] TS buffer on device 10 thread started (pid=13277, tid=13291, prio=high)
Sep 29 00:26:19 raspberrypi vdr: [13277] OSD size changed to 1920x1080 @ 1
Sep 29 00:26:20 raspberrypi vdr: [13290] rpihddevice: OmxSetVideoCodec()
Sep 29 00:26:20 raspberrypi vdr: [13287] rpihddevice: OmxError(UnsupportedSetting)
Sep 29 00:26:20 raspberrypi vdr: [13290] rpihddevice: failed to enable port buffer on video decoder!
Sep 29 00:26:20 raspberrypi vdr: [13290] rpihddevice: OmxSetVideoCodec() end
Sep 29 00:26:21 raspberrypi vdr: [13291] i/o throttle activated, count = 1 (tid=13291)
Sep 29 00:26:21 raspberrypi vdr: [13291] buffer usage: 70% (tid=13290)
Sep 29 00:26:22 raspberrypi vdr: [13291] buffer usage: 80% (tid=13290)
Sep 29 00:26:22 raspberrypi vdr: [13291] buffer usage: 90% (tid=13290)
Sep 29 00:26:22 raspberrypi vdr: [13291] buffer usage: 100% (tid=13290)

Meine VDRs

VDR Server: Ubuntu Lucid Lynx mit 6TB im RAID und quadtuner DVB-S2
VDR Client1: Raspbian @ Raspberry Pi 2
VDR Client2: Ubuntu @ Laptop
VDR Client3: MDL @ Raspberry Pi
VDR Client4: zen2vdr @ SMT-7020s (wird zZ nicht benutzt)
VDR Client5: Android @ HP Touchpad mit VDR Manager App


17

Sonntag, 29. September 2013, 15:36

Zwar immer noch ein Prototyp, aber das Plugin wird nun immerhin seinem Namen gerecht:

Quellcode

1
2
3
4
5
6
7
8
9
10
11
12
13
2013-09-29: Version 0.0.2
-------------------------
- new:
  - volume control
  - H264 support
- fixed:
  - added missing includes to Makefile
  - PTS/OMX_TICKS conversion
- missing:
  - audio only play mode
  - buffer handling for proper replay support
  - other audio formats
  - much more...


Aktuell habe ich zwei Baustellen:

- Audio only
Leider habe ich als cDevice keine Möglichkeit herauszufinden, ob überhaupt Videodaten kommen oder nicht. Beim 'OMX-Baukasten' ist es so, dass ich dem Takt im Voraus sagen muss, ob er Bild und Ton synchronisieren soll. Momentan klappt daher Audio only nicht, da der Clock nicht anläuft, sondern auf ein Frame aus dem Video-Decoder wartet. Hier bin ich für kreative Vorschläge offen!

- Replay
Hier muss ich wohl noch einiges umbauen und eine Art Buffer-Management implementieren. Erst wenn das klappt und die Poll()-Methode funktioniert, kann ich mich um Play/Pause und Trickspeeds kümmern. Aber da muss ich so oder so nochmal über die Bücher...

Grüsse aus Bern
Thomas
»reufer« hat folgende Datei angehängt:

18

Sonntag, 29. September 2013, 15:48

Das mit dem Bild bei h264 klappt, leider überträgt Kabel D für die Sender nur DD-Ton, keine normales Stereo-mpeg - gibt es eine Chance da noch Dolby-Digitalton zu unterstützen?
Hier bin ich für kreative Vorschläge offen!

Könnte man eventuell wie bei xineliboutput eine "nosignal.mpg" bzw. eine "radio.mpg" nutzen und daraus das Video-Bild holen?
yaVDR-Doku

Meine VDRs

VDR 1: Point of View Ion-330-1 (Intel Atom 330@1,6 GHz). 2GB, 4TB HDD, KNC One DVB-C, Sundtek MediaTV Pro (DVB-C), Atric IR-Einschalter Rev.5, yaVDR 0.6 testing
VDR 2: Acer Revo 3610, 4GB Ram, 1x HDD 320 GB, Pinnacle PCTV SAT 452e, Medion X10, YaVDR 0.5 testing
VDR 3: Intel DH67BL, Celeron 540, 4 GB Ram, POV Geforce 210 512 MB, 500 GB, DD Duo-flex CT, Arch LInux, VDR 2.2.0, CIR-Empfänger
Client 1: Raspberry Pi Model B, Arch Linux ARM, VDR 2.2.0
Client 2: Raspberry Pi 2, Arch Linux ARM, VDR 2.3.1
vdr-epg-daemon + MariaDB auf Cubietruck mit 32 GB SSD, Arch Linux ARM, optional Sundtek MediaTV Pro III + VDR 2.2.0
Ceterum censeo enchiridia esse lectitanda.

19

Sonntag, 29. September 2013, 15:49

vorhin eingeschaltet und läuft nun ohne das ich was geändert habe ?(

Jetzt ist meine SD hinüber. :motz4

Was ich aber feststellen könnte war das die PES Erkennung in PlayVideo nicht ganz richtig ist.

H264 NAL AUD Access Unit Delimiter (0x00) 0x00 0x00 0x01 0x09

Im Code wird aber nicht die führende (0x00) berücksichtigt.
Daher findet er bei H264 Streams nie einen Anfang.
Das alleine reicht aber nicht aus. Weiter bin ich aber nicht gekommen.

Meine VDRs

VDR Server: Ubuntu Lucid Lynx mit 6TB im RAID und quadtuner DVB-S2
VDR Client1: Raspbian @ Raspberry Pi 2
VDR Client2: Ubuntu @ Laptop
VDR Client3: MDL @ Raspberry Pi
VDR Client4: zen2vdr @ SMT-7020s (wird zZ nicht benutzt)
VDR Client5: Android @ HP Touchpad mit VDR Manager App

Dieser Beitrag wurde bereits 1 mal editiert, zuletzt von »decembersoul« (29. September 2013, 20:59)


Dr. Seltsam

Im Forum Zuhause

Beiträge: 10 116

Wohnort: 3. Planet des Sonnensystems

Beruf: Organisator

  • Nachricht senden

20

Sonntag, 29. September 2013, 15:49

Zitat

- Audio only
Leider habe ich als cDevice keine Möglichkeit herauszufinden, ob überhaupt Videodaten kommen oder nicht. Beim 'OMX-Baukasten' ist es so, dass ich dem Takt im Voraus sagen muss, ob er Bild und Ton synchronisieren soll. Momentan klappt daher Audio only nicht, da der Clock nicht anläuft, sondern auf ein Frame aus dem Video-Decoder wartet. Hier bin ich für kreative Vorschläge offen!


schau Dir mal mein pvr350-Plugin (1.7.4) an. Der Decoder konnte keine Audio-only-Daten dekodieren, sondern brauchte dazu auch Video.
Audio-only-Streams beginnen immer mit einem Audio-Paket. Streams mit Video+Audio hingegen mit einem Video Paket. Die Erkennung habe ich dann über PlayAudio und PlayVideo gemacht. Ob das bei h264 genauso geht, weiss ich nicht.
Für Audio-only streams erzeugt das Plugin dann dummy-Video-Pakete mit einem Schwarzbild.

Reinhard Nissl war mir damals eine große Hilfe, ohne ihn hätte ich das nicht hingekriegt.
VDR 1: Silverstone LC20, Cougar A300/R, MSI C847MS-E33, passive Asus GT520, KNC One DVB-C, Cine CT V6, WD10EACS; Atric-IR-Einschalter. SW: yavdr 0.5 per SSD
VDR 2: im Aufbau: ACT-620 mit Coba-NT, Asrock B75 Pro3-M, Celeron G540, Sundtek MediaTV Digital Home (DVB-C/T), passive Asus GT610. SW: Ubuntu 13.04 minimal (ohne grafische Oberfläche) per SSD

Ähnliche Themen

Immortal Romance Spielautomat