Ich vergass noch was zu sagen, der Fehler bei 396.54 kommt beim Start!
Da scheint die Version nicht mit dem ffmpeg zusammen zu spielen. Wenn er keinen Codec aufmachen kann, dann ist das aber ffmpeg.
jojo61
Ich vergass noch was zu sagen, der Fehler bei 396.54 kommt beim Start!
Da scheint die Version nicht mit dem ffmpeg zusammen zu spielen. Wenn er keinen Codec aufmachen kann, dann ist das aber ffmpeg.
jojo61
So habe die OSD sachen nochmal nachgearbeitet. Bis auf das starten mit -D sollte nun alles gehn.
Wenn man nach dem start mit -D ein attach, detach und dann wieder attach macht geht es auch. Das muss ich aber noch fixen.
Ich teste nun mit 396.54.
mfg
jojo61
Ok ich werde auch mal mit dem 396.54 testen. Ich will sicher keinen bestimmten Treiber vorschreiben, aber mir scheint an der Stelle doch noch Bewegung in den Treibern von NVIDIA zu sein. Das mit der Bildschirmauflösung schaue ich mir mal an, ist das aber nicht etwas exotisch ?
jojo61
So mit dem 396.54 läuft es bei mir auch völlig ok. Detachen und Attachen geht und mit -D hochfahen und dann attachen geht ach. Da frage ich mich was bei dir anders ist. Meine vermutung ist das es an den verschiedenen opengl contexten liegt. Nur die kann ich nicht auflösen wg. den verschiedenen Threads.
seahawk1986 du hast den 390.48 Treiber von NVIDIA. Ich teste die ganze Zeit mit 396.24. Der Absturz ist im NVIDIA Treiber. Kannst du das mal auf 396.24 updaten ? Alle neueren Treiber als 396.24 hatten/haben ein Problem mit CUDA und ich habe noch nicht evaluiert ob das nun behoben ist. Deswegen bitte teste mal mit dem 396.24.
jsffm welchen Treiber hast du denn im Einsatz ? Ich teste auf 10 Bit ausgabe und bei dir scheint er da in der Gegend abzuschmieren.
mfg
jojo61
Hallo jsffm
kannst du mal mit DEBUG übersetzen und mir dann einen backtrace schicken ?
mfg
jojo61
So nun ist auch ein fix für den schwarzen Bildschirm nach dem ATTA eingecheckt.
Ausserdem habe ich die Farben vom openglosd noch gefixt und den doppelpuffer wieder aktiviert.
Feedback ob es nun geht wäre super.
jojo61
Schön wenn es nicht mehr crasht. Das Problem mit schwarzem Schirm beim erneuten Attachen muss ich mir noch ansehn. Das habe ich hier auch.
Allerdings hilft bei mir ein umschalten. Ich denke aber das ist die gleiche Ursache.
Ich will noch den Full Color Support einbauen. Im Moment ist das noch fix auf Limited eingestellt. Und dann gibt es noch optimierungen beim initialisieren des HW Decoders. Dannach widme ich mich dann dem scalieren. Das BI-Lineare scalieren von opengl ist mir nicht gut genug für HD auf 4k.
jojo61
Ja ich habe einen aktiven DP 1.4 auf HDMI 2.0a Adapter.
Die 8 Bit am HDMI Port gilt nur für Linux. In Win10 geht da auch 10 Bit. Warum NVIDIA das unter Linux nicht freischaltet ist mir ein rätsel.
Die Hardware kann das auf jeden Fall.
jojo61
Habe noch einen Fix für den Aspectratio für SD Sender eingecheckt und zusätzlich noch einen Mutex für das openglosd.
Die Abstürze beim DETA kann ich leider nicht reproduzieren und würde mich über ein aktuelles backtrace freuen.
Als nächstes muss ich mal sehen wie man die 10 Bit Farbtiefe bei NVIDIA auch zum Fernseher bringt. Ein umstellen in xorg.conf auf 30 Bit bringt da nix weil NVIDIA die 10 Bit nur über DisplayPort ausgibt. Ich habe nun ein DP zu HDMI Adapter angeschlossen aber das alleine reicht wohl nicht. Da muss ich wohl noch die EDID Daten faken. Hat da jemand schonmal erfahrung gesammelt und 10 Bit zum laufen gebracht ?
mfg
jojo61
Ich nutze kde als Windowmanager. Ich denke ich muss nun doch mal openglosd gegen den video thread verriegeln. Bei mir ist der absturz bei detach mit openglosd weg gewesen. Scheint mir aber ein Timing Problem zu sein weil nicht verriegelt.
Dazu komme ich aber im Moment nicht mehr. Fahre für 2 Wochen in Urlaub.
mfg
jojo61
So habe noch etwas eingecheckt um den crash beim detach zu unterbinden. Hoffentlich hilf es.
mfg
jojo61
Die SD Sender werden in 4:3 gesendet (720:576 ). Ich wüsste nicht wie ich da erkennen kann ob es eine 4:3 Sendung oder 16:9 sendung ist,
Kann mir da jemand weiterhelfen ? Ich denke pan&scan ist da die richtige einstellung.
mfg
jojo61
jsffm stelle mal auf pan&scan in dem Setup für 16:9
Beim detach hat einer der oglThreads einen SEGFAULT . Mit gdb ist aber nicht herauszubekommen welcher das ist. Da laufen einfach zuviele.
Das sieht bei mir dann so aus:
[New Thread 0x7fffb632b700 (LWP 18273)]
[New Thread 0x7fffb5b2a700 (LWP 18274)]
[New Thread 0x7fffb5329700 (LWP 18275)]
[New Thread 0x7fffa3fff700 (LWP 18278)]
[New Thread 0x7fffa37fe700 (LWP 18279)]
[New Thread 0x7fffa2ffd700 (LWP 18280)]
[New Thread 0x7fffa27fc700 (LWP 18281)]
[New Thread 0x7fffa1ffb700 (LWP 18282)]
ratio: 16:9 6536:3609
hier kommt der detach
[Thread 0x7fffc7fff700 (LWP 18250) exited]
[Thread 0x7fffb632b700 (LWP 18273) exited]
[Thread 0x7fffb5b2a700 (LWP 18274) exited]
[Thread 0x7fffc4d11700 (LWP 18272) exited]
[Thread 0x7fffa2ffd700 (LWP 18280) exited]
[Thread 0x7fffa37fe700 (LWP 18279) exited]
Thread 31 "oglThread" received signal SIGSEGV, Segmentation fault.
[Switching to Thread 0x7fffb5329700 (LWP 18275)]
0x00007ffff12eba7d in xcb_writev () from /usr/lib64/libxcb.so.1
Missing separate debuginfos, use: zypper install fontconfig-debuginfo-2.11.1-4.3.x86_64 glibc-locale-debuginfo-2.22-19.1.x86_64 krb5-debuginfo-1.12.5-16.1.x86_64 libGLEW1_13-debuginfo-1.13.0-4.4.x86_64 libGLU1-debuginfo-9.0.0-18.4.x86_64 libX11-6-debuginfo-1.6.3-10.3.1.x86_64 libX11-xcb1-debuginfo-1.6.3-10.3.1.x86_64 libXau6-debuginfo-1.0.8-9.3.x86_64 libXext6-debuginfo-1.3.3-6.3.x86_64 libXfixes3-debuginfo-5.0.1-10.3.x86_64 libXrender1-debuginfo-0.9.9-6.3.x86_64 libasound2-debuginfo-1.1.4.1-1.1.x86_64 libbz2-1-debuginfo-1.0.6-34.15.x86_64 libcairo2-debuginfo-1.15.2-8.3.1.x86_64 libcap2-debuginfo-2.22-18.16.x86_64 libcom_err2-debuginfo-1.42.11-15.1.x86_64 libcroco-0_6-3-debuginfo-0.6.11-4.3.x86_64 libcurl4-debuginfo-7.37.0-36.1.x86_64 libdatrie1-debuginfo-0.2.4-22.3.x86_64 libdrm2-debuginfo-2.4.76-1.2.x86_64 libexpat1-debuginfo-2.1.0-24.1.x86_64 libffi4-debuginfo-5.3.1+r233831-10.1.x86_64 libfreetype6-debuginfo-2.6.3-5.3.1.x86_64 libgcc_s1-debuginfo-7.3.1+r258812-10.1.x86_64 libgdk_pixbuf-2_0-0-debuginfo-2.34.0-19.1.x86_64 libgio-2_0-0-debuginfo-2.48.2-3.4.x86_64 libglib-2_0-0-debuginfo-2.48.2-3.4.x86_64 libgmodule-2_0-0-debuginfo-2.48.2-3.4.x86_64 libgobject-2_0-0-debuginfo-2.48.2-3.4.x86_64 libgraphite2-3-debuginfo-1.3.1-7.3.1.x86_64 libharfbuzz0-debuginfo-1.4.5-6.1.x86_64 libidn11-debuginfo-1.28-9.3.1.x86_64 libjpeg8-debuginfo-8.1.2-42.1.x86_64 libkeyutils1-debuginfo-1.5.9-7.13.x86_64 libldap-2_4-2-debuginfo-2.4.44-18.1.x86_64 liblzma5-debuginfo-5.2.2-3.15.x86_64 libopenssl1_0_0-debuginfo-1.0.2j-25.1.x86_64 libpango-1_0-0-debuginfo-1.40.1-3.4.x86_64 libpcre1-debuginfo-8.39-11.1.x86_64 libpixman-1-0-debuginfo-0.34.0-4.3.x86_64 libpng16-16-debuginfo-1.6.8-11.3.x86_64 librsvg-2-2-debuginfo-2.40.20-15.1.x86_64 libsasl2-3-debuginfo-2.1.26-14.1.x86_64 libselinux1-debuginfo-2.5-4.17.x86_64 libssh2-1-debuginfo-1.4.3-18.3.x86_64 libstdc++6-debuginfo-7.3.1+r258812-10.1.x86_64 libthai0-debuginfo-0.1.25-3.3.x86_64 libva-drm1-debuginfo-1.7.3-1.3.x86_64 libva-x11-1-debuginfo-1.7.3-1.3.x86_64 libva1-debuginfo-1.7.3-1.3.x86_64 libvdpau1-debuginfo-1.1.1-11.3.x86_64 libxcb-icccm4-debuginfo-0.4.1-6.3.x86_64 libxcb-render0-debuginfo-1.11.1-9.1.x86_64 libxcb-shm0-debuginfo-1.11.1-9.1.x86_64 libxcb1-debuginfo-1.11.1-9.1.x86_64 libxml2-2-debuginfo-2.9.4-15.1.x86_64 libz1-debuginfo-1.2.8-14.3.1.x86_64
(gdb) bt
#0 0x00007ffff12eba7d in xcb_writev () at /usr/lib64/libxcb.so.1
#1 0x00007ffff1749b76 in _XSend () at /usr/lib64/libX11.so.6
#2 0x00007ffff1740516 in XQueryExtension () at /usr/lib64/libX11.so.6
#3 0x00007ffff17347d2 in XInitExtension () at /usr/lib64/libX11.so.6
#4 0x00007fffee72afbf in XextAddDisplay () at /usr/lib64/libXext.so.6
#5 0x00007fffc547dfca in () at /usr/lib64/libGLX_nvidia.so.0
#6 0x00007fffc547ee9b in () at /usr/lib64/libGLX_nvidia.so.0
#7 0x00007fffc5484b09 in () at /usr/lib64/libGLX_nvidia.so.0
#8 0x00007ffff795c4e2 in __nptl_deallocate_tsd () at /lib64/libpthread.so.0
#9 0x00007ffff795c737 in start_thread () at /lib64/libpthread.so.0
#10 0x00007ffff6313e8d in clone () at /lib64/libc.so.6
Alles anzeigen
Das hilft mir weiter. So wie es aussieht schickt X11 wenn es den Rand entfernt eine Nachricht über xcb die ich nicht verstehe oder die nicht supported ist.
Da schau ich mir mal an. Brauchst du das denn unbedingt und warum startest du nicht mit -f ?
Der Skindesigner bzw. das openglosd schreibt unsyncronisiert in das texture das ich als OSD anzeige. Das muss ich noch verriegeln. Mir ist aber auch aufgefallen das die Skins teilweise grau in grau sind und ich den Eindruck habe das die Farben nicht stimme. Bei der runden Uhr sind die Zeiger kaum zu sehen.
mfg
jojo61
PS das detachen verstehe ich immer noch nicht. Kannst du das mal mit gdb debuggen und nen Backtrace posten
Das das Bild nur die halbe höhe hat das liegt sicher nicht an FFMPEG. In der Funktion VideoUpdateOutput scheint mir noch ein BUG zu sein. Nur habe ich den bisher nicht richtig gefunden. Ich habe noch was verändert und mal einen Debug print eingebaut der ins Syslog schreibt welches Fenster er für das Video aufziehen will. Das sollte der Fernstergrösse entsprechen. Wenn das nicht so ist dann hat er sich verrechnet.
Ausserdem habe ich das Makefile angepasst so das man nun OPENGLOSD auskommentieren kann (ganz am Anfang). Ich konnte mit ffmpeg 3.4 alles kompilieren. Laufen lassen kann ich das nicht so ohne weiteres ohne mir die ganzen avlibs hier auf dem Rechner zu zerschiessen. Das mit den verschiedenen Versionen der FFMPEG libraries ist echt ne Kacke. Da ist nix abwärtskompatibel
Zu deb xcb Problemen hier noch meine derzeitigen Versionen: lib-xcb-iccm.so.4.0.0 und lib-xcb.so.1.1.0.
An den Standard Compileoptionen vom vdr habe ich nichts geändert. Warum das mit dem abschalten von OPENGLOSD funktionierte lag daran das bei mir das objektfile nicht gelöscht wurde und somit einfach dazugelinkt wurde. Das Makefile sollte das nun korrigiert haben.
mfg
jojo61
louis Der OSD Thread kann die Ausgabe nicht selber machen, das wäre sonst nicht mit dem Bild sysnconisiert. Ich schalte den Kontext immer schön brav um. Es ist auch zulässig aus 2 Threads auf das selbe Texture zuzugreifen. Aber vtl. muss ich noch eine semaphore dazwischen legen. Nur scheint es ja etwas grundsätzliches schief zu gehen bei den anderen.
Ich werde mir das ganze nun mal mit ffmpeg 3.4 ansehen. Evtl. ist da doch was andres.
mfg
jojo61
seahawk1986 compiliere mal ohne das openglosd. Dazu den Define im Makefile (-DOPENGLOSD) auskommentieren. Das Openglosd macht noch einen GL thread und da scheint es Probleme zu geben. Ich frage mich nur warum es bei mir einwandfrei läuft.
biggsmann der Eintrag im Log erscheint wenn er den Codec neu initialisiert. Hast du evtl. Empfangsprobleme ? Übersetze doch mal mit -DDEBUG und schaue dir mal das Log an.
mfg
jojo61