Gibt es an der "Front"(vdr-plugin-dvbvuplus) was neues ?
Nein. Ich verfolge das nicht weiter.
Gibt es an der "Front"(vdr-plugin-dvbvuplus) was neues ?
Nein. Ich verfolge das nicht weiter.
Concerning the translation: Please try this first.
Concerning the output plugin for the Vu+ DVB HW: OSD is broken and distorted. Viewing Video+Audio+Teletext and EPG is working. Currently I have not dealt with any encrypted channels as I do not own any smartcard.
I have setup some repos on Github which contain basically the stuff from openvuplus repos plus fixes. Mainly changed URLs or missing recipes for VDR compilation.
The main repo "openvuplus-vdr" also contains the VDR layer which I have taken from realglotzi.
Please look here for the recipes that are already working.
See "make help" to see the options. "make image" will build an image that can be flashed onto the box using the USB method (UNTESTED!).
If you want try the newly compiled VDR packages on a recent image (VTI team image 7.x), simply copy the IPK files from this dir onto the box: "openvuplus-vdr/build/vusolose/tmp/deploy/ipk/mips32el"
If you want to rebuild just a single recipe, do this first (in my case for the Vu+ SoloSE):
To build a recipe:
To clean up the recipe:
The working directory for the VDR recipes can be found here: "openvuplus-vdr/build/vusolose/tmp/work/mips32el-oe-linux"
You can also try just to download the source and extract it into the working directory:
Kleines Update:
Noch nichts Neues von AVM.
Ich selbst werde das Thema nicht weiter verfolgen, da ich den Fritzdvbc verkauft habe.
Ich nutze Debian 7 Wheezy x86_64 zum Bauen.
Sind die gleichen DVB-Module, sollte also klappen.
Teste doch mal, ob Du das VDR Layer in openatv eingebunden bekommst.
Vielen Dank!
habe bei mit bis jetzt immer openatv ohne Probleme übersetzt.
Bei openvuplus bekomme ich nun eine fehlermeldung vom tar
Wie hast du das hinbekommen?
DEN Fehler habe ich bisher noch nicht gehabt.
Ich werde mal ein Image für die Vu+ Duo2 bauen lassen. Vielleicht kommt der Fehler dann bei mir ja auch.
Es kann leider schonmal sein, dass ein Recipe nicht funktioniert. Meistens liegt es aber dann daran, dass die Download-URL nicht mehr funktioniert (Beispiel: libdaemon-0.14).
Oder aber ein Database-File gezogen wird und die Prüfsumme nicht mehr stimmt(Stichwort hddtemp).
Welchen Kernel und welche DVB-Modul-Version setzt denn openatv für die Vu+ STBs ein?
Eigentlich müsste es ja damit genausogut gehen, wenn es ein aktuelles OE-Image ist.
Könntest du mir auch deine recipes geben, mit denen du die ipk erstellt hast, dann könnte ich da selbst mal etwas rumprobieren...
Im Anhang findest Du das entsprechende Layer.
Sieht bei mir dann so aus:
drwxr-xr-x 8 1000 1000 4096 Okt 2 12:58 bitbake
drwxr-xr-x 3 1000 1000 4096 Okt 2 13:11 build
-rw-r--r-- 1 1000 1000 7945 Nov 27 14:52 Makefile
drwxr-xr-x 11 1000 1000 4096 Nov 21 13:44 meta-bsp
drwxr-xr-x 11 1000 1000 4096 Okt 2 13:00 meta-openembedded
drwxr-xr-x 12 1000 1000 4096 Okt 2 12:57 meta-openvuplus
drwxr-xr-x 4 1000 1000 4096 Nov 28 14:31 meta-vdr
drwxr-xr-x 7 1000 1000 4096 Okt 2 13:11 openembedded-core
drwxr-xr-x 3 1000 1000 4096 Okt 2 14:13 resource
Makefile wie folgt angepasst:
BBLAYERS ?= \
$(CURDIR)/meta-bsp/$(MACHINE) \
$(CURDIR)/meta-bsp/common \
$(CURDIR)/meta-openvuplus \
$(CURDIR)/meta-vdr \
$(CURDIR)/meta-openembedded/meta-oe \
$(CURDIR)/openembedded-core/meta
Dann noch ein "make clean", damit die ganzen Bitbake Config-files neu geschrieben werden und das VDR Layer berücksichtigt wird.
Jo, da ist ja auch erstmal nix schlimmes dabei. Es ist ja Debug-Output und kein Fehler.
Wie gesagt, die OSD-Darstellung funktioniert aber nicht richtig aktuell.
Hi!
Ich habe die Pakete mal hier hinterlegt.
Einfach mit "opkg install" installieren.
Du solltest direkt das Ausgabe-Plugin und das remote-Plugin einbinden.
Für das remote-Plugin muss ich bei der SoloSE dieses InputEvent-Device benutzen: /dev/input/event0
Die remote.conf sieht so aus bei mir (habe mir noch keine Gedanken macht, wo genau was sein soll):
remote-event0.Up 0000000100010067
remote-event0.Down 000000010001006C
remote-event0.Menu 000000010001008B
remote-event0.Ok 0000000100010160
remote-event0.Back 00000001000100AE
remote-event0.Left 0000000100010069
remote-event0.Right 000000010001006A
remote-event0.Red 000000010001018E
remote-event0.Green 000000010001018F
remote-event0.Yellow 0000000100010190
remote-event0.Blue 0000000100010191
remote-event0.0 000000010001000B
remote-event0.1 0000000100010002
remote-event0.2 0000000100010003
remote-event0.3 0000000100010004
remote-event0.4 0000000100010005
remote-event0.5 0000000100010006
remote-event0.6 0000000100010007
remote-event0.7 0000000100010008
remote-event0.8 0000000100010009
remote-event0.9 000000010001000A
remote-event0.Info 0000000100010166
remote-event0.Play 00000001000100CF
remote-event0.Pause 00000001000100A4
remote-event0.Power 0000000100010074
remote-event0.Channel+ 0000000100010192
remote-event0.Channel- 0000000100010193
remote-event0.Volume+ 0000000100010073
remote-event0.Volume- 0000000100010072
remote-event0.Mute 0000000100010071
remote-event0.Audio 0000000100010188
remote-event0.Subtitles 0000000100010189
Alles anzeigen
Wichtig ist natürlich noch, dass Enigma2 vorher gestoppt wird.
Zum Beispiel mit "init 4". Aktivierung von Enigma2 dann wieder mit "init 3".
Ich nutze auf beiden Boxen (Duo2 und SoloSE) bei mir das aktuelle VTI Image.
Die Pakete aus der Dropbox sind alle mit Hilfe des aktuellen GIT-Repositorys
Mhmm. Ich dachte, dass sich dafür mehr Leute interessieren würden.
Ich werde den aktuellen Stand des Ausgabe-Plugins mal packen und hier anhängen.
Bis auf Weiteres werde ich aber nicht weiter daran arbeiten.
UPDATE:
Anhänge eingefügt.
1) OE Recipe inkl. Ausgabe-Plugin VU+ STBs
2) OE Recipe inkl. vtuner Kernel-Modul (wird nicht benötigt, hatte es aber noch rumfliegen)
Die Hardware finde ich jetzt nicht so interessant, für den Preis finde ich die CPU zu lahm und den Onboard Tuner brauche ich auch nicht. Aber VDR mit Openembedded würde mich interessieren, da ich das auf meinen Raspis benutze. Guck mal hier:
Ok. Ich habe eine SoloSE hier. Ich frage mich, ob man die auch ohne Tuner bekommen könnte. Ist ja ein Wechseltuner. Kostet mit Tuner 199EUR. Ohne Tuner vielleicht 50EUR weniger?!
Dort hättest Du dann einen MIPS Dualcore mit 2x1300MHz und sogar eSATA.
Danke für den Tipp. Sieht sehr interessant aus. Alle Rezepte schon da.
Hallo zusammen,
ich wollte mal fragen, ob Interesse an "VDR auf einem Vu+ Zero " besteht? Prinzipiell wäre natürlich vermutlich jede Box möglich, die von OpenVuplus [LINK] unterstützt wird.
Die neue Kiste gibt es nämlich schon für 119EUR und erscheint im Dezember 2014.
Man bekommt eine MIPS-Hardware mit Gehäuse, IR-Fernbedienung und einem nicht-wechselbaren DVB-S2 Tuner.
Der einzige mehr und minder große Haken ist, dass die DVB-Module "closed-source" sind, aber mit der DVB API Version 5.10 auf dem aktuellen Stand sind.
Der kernel ist aktuell die Version 3.13.5.
Derzeit habe ich den VDR schon auf meiner Vu+ SoloSE Kiste laufen. Die IR-Fernbedienung funktioniert mit Hilfe des remote-Plugins auch schon, da sie über das Linux Input Event System läuft.
Video, Audio [auch lauter/leister/mute] und schnelles Umschalten zwischen den Kanälen (SD und HD) funktionieren schon sehr gut.
Das Ausgabe-Plugin orientiert sich an diversen anderen Ausgabe-Plugins. Hauptsächlich an dem dvbsddevice- und dvbhddevice-Plugin für die Einbindung der DVB API ohne OSD.
Das OSD läuft über den Linux-Framebuffer. Das funktioniert leider noch nicht richtig und die Darstellung ist verzehrt.
Hier könnte ich noch Unterstützung gebrauchen. Aktuell bediene ich mich hier an den Enigma2-Sourcen aus dem GIT Repository auf code.vuplus.com.
Wenn das Ausgabe-Plugin läuft, werde ich als nächstes das satip-Plugin und das streamdev-Plugin testen.
Zum Aufbau der Entwicklungsungebung, sollte man hiermit anfangen:
http://code.vuplus.com/ov-quick-start.html
Alles rund um den VDR wird dann als zusätzliches Layer bei bitbake mit eingebunden. Das habe ich noch nicht veröffentlicht.
Meine bisherige Arbeit basiert hierauf: https://github.com/seife/meta-vdr und hierauf: http://www.egal-vdr.de/ufs910/…9xx-0.0.3pre-20100613.tgz
Wie schaut's aus?
Gruß
Nano
It seems that today a new SAT>IP spec 1.2.1 was released. It includes DVB-C(2) support now. See appendix D.
http://www.satip.info/sites/sa…ication_release_notes.txt
http://www.satip.info/sites/sa…ication_version_1_2_1.pdf
Small update:
Today I have received a mail from AVM that the issues have been sent to the developers.
Stay tuned!
Thanks so far for your support.
Attached you will find a working patch for the satip plugin 0.3.3 that works with the Fritzdvbc device.
It would be nice if you could review the method cSatipServers::NumProvidedSystems(void) again for DVB-C.
In addition to your enum eSatipQuirkPlayPids I have added the enum eSatipQuirkForceLock which is set if a "fritzdvbc" is found.
It forces the methods SignalStrength(), SignalQuality() and HasLock() to return hardcoded values since RTCP 204 is missing.
I have added a small piece of code in UpdatePids() which adds a dummy PID of 100 to the URI if the eSatipQuirkPlayPids is set.
This prevents the SAT>IP server on the Fritzdvbc device from misbehaving if only PIDs <=20 are specified on the URL (example: pids=0,16,17,18,20).
So far I can tell that it works. I do not really know what the intention on this was from AVM.
I have tested the patch against several different channels on different transponders so far and it seems to work.
Emails to the AVM support have been written to bring up the issues and I hope that they will fix them.
New summary of found quirks:
1) No RTCP packet type 204
Problem:
The SAT>IP specification specifies the delivery of RTCP packets together with the RTP packets. Those RTCP packets of type 204 contain the status information of the associated stream.
Exampe: ver1.0;src=1; tuner1,240,1,7,112,,dvbc,,,,6900,34;pids=0,16,17,18,20
This also includes the status information (e.g. signal quality, lock status, etc.) of the tuner.
Fritzdvbc is does not deliver this kind of packets. The SAT>IP plugin cannot provide status info to VDR.
Workaround:
Until AVM fixes this, two options are possible:
1a) hard-code some dummy information and always deliver the lock status (easy to implement)
1b) Send RTSP DESCRIBE request for the stream on a regular interval to get the SDP record and extract the status info from there. (more complex to implement)
Remark:
Fritzdvbc only sends RTCP packet types 200 and 201: sender and receiver reports.
Strange: Why does it send a receiver report to the client?! The receiver report is supposed to be send by the client to server.
2) No addpids/delpids parameter support
Problem:
The SAT>IP specification specifies the mandatory parameters addpids/delpids to modify the table of delivered PIDs (delta-updates).
However, Fritzdvbc does not seem to support these parameters. The parameters are accepted (RTSP status code 200), but they have no effect.
Workaround:
Do not use delta-updates with addpids/delpids parameters. Only use full updates with the "pids" parameter.
3) PIDs <=20 cannot be delivered if only PIDs <=20 are specified in the "pids" parameter
Problem:
The SAT>IP specification specifies that PIDs from 0-8191 should be deliverable by specifying them with "pids" parameter. This would also include the case "pids=0".
However, Fritzdvbc does not deliver PIDs <=20, when no other PID that is really present in the stream is specified additionally. It issues an internal server error instead.
Not working examples: pids=0,16,17,18,20 // pids=0 // pids=20
Working examples for stream "ZDF SD" (PID100 is PMT): pids=0,16,17,18,20,100 // pids=0,100 // pids=0,21 (<- SETUP-Request returns code 200 (OK), the PID 21 is not used and so a delayed PLAY-Request result in code 454 (Unknown stream))
Workaround:
Only send the RTSP PLAY-request until all the required PIDs have been collected. As a consequence, dynamic channel updates only work if there are already some working channels.conf entries with th correct PID settings.
Make sure that "pids=" parameter does not only contain PIDs <=20.
Remark:
This should really be fixed/changed by AVM
Please also note the second update here: SAT>IP Plugin und Fritz!WLAN Repeater DVB-C
So the PLAY-Request may omit the "pids=" parameter if it was already used in the SETUP request to specifiy the PIDs.
""
So, the attached patch should add necessary quirks, but "pids=0", that's basicly a hard requirement if you want to adapt dynamically to any pid changes. I guess VLC is relying 100% to the channels.conf and doesn't use it as a starting point as VDR (Setup/Update Pids).
Thanks, I will try that. That "pids=0" is required for the PAT and therefore for dynamic updates is clear.
The problem with Fritzdvbc is that only specifiying "pids=0" leads to an internal server error. I assume because of a bug, because the whole SAT>IP server service does not work anymore after specifiying it. The webpage does not show the live-status anymore. A reboot is required.
This is wrong: If you specifiy an additional dummy PID (e.g."pids=0, 16") then the PAT is delivered together with the other PID.
Correct: Specifying only PIDs <=20 will produce the internal server error. Example: pids=0,16,17,18,20
Setting a dummy PID for which no packets are delivered, will also result in no delivery of the PID0 (PAT).
One more thing. Isn't this modification missing in your patch?
int cSatipServers::NumProvidedSystems(void)
{
int count = 0;
for (cSatipServer *s = First(); s; s = Next(s)) {
// DVB-S*: qpsk, 8psk
count += s->Satellite() * 4;
// DVB-T*: qpsk, qam16, qam64, qam256
count += (s->Terrestrial2() ? s->Terrestrial2() : s->Terrestrial()) * 4;
// DVB-C : qpsk, qam16, qam64, qam256
count += s->Cable() * 4;
}
return count;
}
Alles anzeigen
You'll have to notice that the Fritz!WLAN Repeater DVB-C isn't a real/certified/whatever SAT>IP device as the actual spec doesn't have the cable support yet.
AVM claims that the product is compatible to the SAT-IP-Standard (Cenelec prEN 50585):
http://avm.de/aktuelles/neues-…fritzwlan-repeater-dvb-c/
The new iOS app version of Fritz!TV now also offers the option to show the internal log.
In the log output it also states "SAT>IP server".
I have written a couple to emails to the AVM support already. I have linked this thread for technical details. Now I hope that they consider fixing the issues in their SAT>IP server implementation.
UPDATE1: Please see above for a minor correction concerning the acceptable "pids" parameter values.
Hallo zusammen,
ich habe basierend auf diesem Code hier ein kleines Test-Tool zusammengebaut, was die verschiedenen URL-Möglichkeiten ausprobiert.
Fazit:
* Der Fritzdvbc liefert bei addpids/delpids zwar keinen Fehler, wenn sie im PLAY-Request verwendet werden, sind aber offenbar ohne Funktion.
* Die aktuelle Firmware des Fritzdvbc erwartet beim PLAY-Request immer den "pids=" parameter, sonst gibt es einen "Internal Server Error".
* "pids=0" alleine funktioniert auch nicht, dann gibt es ebenfalls einen "Internal Server Error".
* "pids=all" wird nicht unterstützt
Schade!
UPDATE1:
Entfernt: "* das komplette Neusetzen der PIDs mit einem späteren PLAY-Request bleibt ohne Wirkung"
Nach Neustart des Fritzdvbc funktioniert es.
UPDATE2:
Korrektur: "erwartet beim PLAY-Request immer den "pids=" parameter": das ist nur zwingend notwendig, wenn beim SETUP-Request kein "pids" Parameter vorhanden war.
Do you have any application that works with the device using RTSP?
Yes.
VLC
vtuner/satip client
Noch was. Das Plugin generiert ja zunächst einen SETUP request ohne PIDs:
0x0030: 0f66 40d4 5345 5455 5020 7274 7370 3a2f .f@.SETUP.rtsp:/
0x0040: 2f31 3932 2e31 3638 2e31 302e 342f 3f66 /192.168.10.4/?f
0x0050: 7265 713d 3339 3426 7372 3d36 3930 3026 req=394&sr=6900&
0x0060: 6d74 7970 653d 3235 3671 616d 266d 7379 mtype=256qam&msy
0x0070: 733d 6476 6263 2052 5453 502f 312e 300d s=dvbc.RTSP/1.0.
0x0080: 0a43 5365 713a 2032 0d0a 5472 616e 7370 .CSeq:.2..Transp
0x0090: 6f72 743a 2052 5450 2f41 5650 3b75 6e69 ort:.RTP/AVP;uni
0x00a0: 6361 7374 3b63 6c69 656e 745f 706f 7274 cast;client_port
0x00b0: 3d33 3433 3433 2d33 3433 3434 0d0a 5573 =34343-34344..Us
0x00c0: 6572 2d41 6765 6e74 3a20 7664 722d 7361 er-Agent:.vdr-sa
0x00d0: 7469 702f 302e 332e 3320 2864 6576 6963 tip/0.3.3.(devic
0x00e0: 6520 3029 0d0a 4966 2d4d 6f64 6966 6965 e.0)..If-Modifie
0x00f0: 642d 5369 6e63 653a 2054 6875 2c20 3031 d-Since:.Thu,.01
0x0100: 204a 616e 2031 3937 3020 3030 3a30 303a .Jan.1970.00:00:
0x0110: 3030 2047 4d54 0d0a 0d0a 00.GMT....
Alles anzeigen
Dieser wird korrekt beantwortet:
0x0030: 0075 f94c 5254 5350 2f31 2e30 2032 3030 .u.LRTSP/1.0.200
0x0040: 204f 4b0d 0a43 5365 713a 2032 0d0a 5365 .OK..CSeq:.2..Se
0x0050: 7373 696f 6e3a 2033 3235 3b74 696d 656f ssion:.325;timeo
0x0060: 7574 3d36 300d 0a54 7261 6e73 706f 7274 ut=60..Transport
0x0070: 3a20 5254 502f 4156 503b 756e 6963 6173 :.RTP/AVP;unicas
0x0080: 743b 636c 6965 6e74 5f70 6f72 743d 3334 t;client_port=34
0x0090: 3334 332d 3334 3334 343b 736f 7572 6365 343-34344;source
0x00a0: 3d31 3932 2e31 3638 2e31 302e 343b 7365 =192.168.10.4;se
0x00b0: 7276 6572 5f70 6f72 743d 3530 3138 2d35 rver_port=5018-5
0x00c0: 3031 390d 0a63 6f6d 2e73 6573 2e73 7472 019..com.ses.str
0x00d0: 6561 6d49 443a 2033 3235 0d0a 0d0a eamID:.325....
Alles anzeigen
Dann folgt später nach zwei OPTION requests der PLAY request:
0x0030: 0f66 519b 504c 4159 2072 7473 703a 2f2f .fQ.PLAY.rtsp://
0x0040: 3139 322e 3136 382e 3130 2e34 2f73 7472 192.168.10.4/str
0x0050: 6561 6d3d 3332 353f 6164 6470 6964 733d eam=325?addpids=
0x0060: 3131 302c 3132 302c 3132 312c 3132 3520 110,120,121,125.
0x0070: 5254 5350 2f31 2e30 0d0a 4353 6571 3a20 RTSP/1.0..CSeq:.
0x0080: 350d 0a53 6573 7369 6f6e 3a20 3332 350d 5..Session:.325.
0x0090: 0a55 7365 722d 4167 656e 743a 2076 6472 .User-Agent:.vdr
0x00a0: 2d73 6174 6970 2f30 2e33 2e33 2028 6465 -satip/0.3.3.(de
0x00b0: 7669 6365 2030 290d 0a0d 0a vice.0)....
Hier gibt es dann das Problem:
0x0030: 0076 0a13 5254 5350 2f31 2e30 2035 3030 .v..RTSP/1.0.500
0x0040: 2049 6e74 6572 6e61 6c20 5365 7276 6572 .Internal.Server
0x0050: 2045 7272 6f72 0d0a 4353 6571 3a20 350d .Error..CSeq:.5.
0x0060: 0a53 6573 7369 6f6e 3a20 3332 350d 0a52 .Session:.325..R
0x0070: 5450 2d49 6e66 6f3a 2075 726c 3d72 7473 TP-Info:.url=rts
0x0080: 703a 2f2f 3139 322e 3136 382e 3130 2e34 p://192.168.10.4
0x0090: 2f73 7472 6561 6d3d 3332 353f 6164 6470 /stream=325?addp
0x00a0: 6964 733d 3131 302c 3132 302c 3132 312c ids=110,120,121,
0x00b0: 3132 350d 0a0d 0a 125....
Ich befürchte, dass der SAT>IP Server auf dem Fritz-DVBC wirklich kaum etwas vom Standard vernünftig unterstützt.
Hier vermute ich, dass er schlichtweg addpids und delpids nicht unterstützt.
Das muss ich noch überprüfen.
Ich denke, dass ich den Fehler im satip-Plugin gefunden habe.
Den Hinweis gab der folgende Log-Eintrag:
Die Variable modelTypeM wird in
zunächst auf eSatipModelTypeNone gesetzt.
Hier wird anhand der Modellbezeichnungen geprüft, wie modelTypeM gesetzt werden muss.
Für DVB-C ist bisher nur eine Sonderlösung bzgl. Octopus net enthalten, die aber den AVM Fritz!WLAN Repeater DVB-C nicht erkennt.
Daher bleibt die Variable modelTypeM auf
.
Später, wenn dann innerhalb von
ein passender SAT>IP Server gesucht werden soll, liefert die Methode
immer NULL zurück, da
DVB-C angefordert ist, aber kein Server mit DVB-C in der Liste mit erkannten SAT>IP Servern vermerkt ist.
Habe jetzt folgendes eingefügt:
server.c:
enum eSatipModule {
eSatipModuleDVBS2 = 0,
eSatipModuleDVBT,
eSatipModuleDVBT2,
eSatipModuleDVBC,
eSatipModuleCount
};
if (strstr(r, "DVBC")) {
modelTypeM |= cSatipServer::eSatipModelTypeDVBC;
if (char *c = strstr(r, "-"))
modelCountM[eSatipModuleDVBC] = atoi(++c);
else
modelCountM[eSatipModuleDVBC] = 1;
int cSatipServers::NumProvidedSystems(void)
{
int count = 0;
for (cSatipServer *s = First(); s; s = Next(s)) {
// DVB-S*: qpsk, 8psk
count += s->Satellite() * 4;
// DVB-T*: qpsk, qam16, qam64, qam256
count += (s->Terrestrial2() ? s->Terrestrial2() : s->Terrestrial()) * 4;
// DVB-C : qpsk, qam16, qam64, qam256
count += s->Cable() * 4;
}
return count;
}
Alles anzeigen
server.h
// int Cable() { return Match(eSatipModelTypeDVBC) ? (Match(eSatipModelTypeDVBT2) ? modelCountM[eSatipModuleDVBT2] : modelCountM[eSatipModuleDVBT]) : 0; } // an ugly hack
int Cable() { return Match(eSatipModelTypeDVBC) ? modelCountM[eSatipModuleDVBC] : 0; }
Jetzt wird endlich der RTSP-Request ausgelöst. Dieser sieht laut tcpdump auch gut aus. Aber es bleibt nur beim RTSP SETUP. Ein RTSP PLAY kommt nicht.