bitstreamout läßt sich nicht abschalten

  • Hi!


    Nachdem das bitstreamout-plugin jetzt bei mir läuft (nach ersten kurzen Tests sowohl Live als auch Replay perfekt synchron und ohne Aussetzer, bin begeistert!), hab ich nur noch das Problem, dass es gar nicht mehr aufhören will zu laufen ;-): es reagiert nicht auf Off weder im Einstellungen-Plugins-Menü noch im Hauptmenü (-o).


    Mein Setup: Digital Audio von DVB (J2) nach Digital In der Soundkarte (CMI8738 ), von dort Digital Out Optisch zum Receiver. MP2 ist daher im Setup des Plugins ausgeschaltet.


    Ohne das Plugin war die Soundkarte auf Loop konfiguriert, d.h. das Digitalsignal der DVB-Karte wird von Digital In der Soundkarte zum Digital Out durchgeschleift - ich brauche also keine analoge Verbindung von der Soundkarte zum Receiver, und bei der Soundkarte muss SPDIF Out IMMER On sein.
    Und grundsätzlich funktioniert das auch mit dem Plugin: DD-Sender kommen als DD beim Receiver an, andere als 48kHz PCM. Was eben nicht geht, ist bei einem Sender mit DD-Ton trotzdem den MP2-Ton (z.B. O-Ton bei Premiere) als PCM zu bekommen.


    Meine Vorstellung von der Funktionsweise des Plugins war, dass bei einem Sender mit DD-Ton Loopthrough abgeschaltet wird und stattdessen das Plugin den DD-Stream auf das Digital Out der Soundkarte schickt, und das für dieses Umschalten das mute script verwendet wird.


    Das scheint aber nicht der Fall zu sein, denn das script wird immer nur mit "unmute" aufgerufen, egal ob zu einem Sender mit oder ohne DD-Ton gewechselt wird. Ich vermute also mal, dass das Plugin intern diese Umschaltung vornimmt (denn wie gesagt kommt bei einem Nicht-DD-Sender ja korrekt der PCM-Ton an); ist das so? Und wozu wird dann überhaupt das mute script gebraucht?


    Für mein Setup wäre folgendes Verhalten sinnvoll:
    Plugin On, DD-Sender oder Replay mit DD: Loop Off, SPDIF Out On
    Plugin On, Nicht DD-Sender oder Replay ohne DD: Loop On, SPDIF Out On
    Plugin Off, Alle Sender und Replay: Loop On, SPDIF Out On


    Ich glaube, das Plugin verfolgt da eine andere Logik und geht teilweise von analogen Verbindungen aus, oder?


    Sorry für den langen Text, habe mir auch schon mal den Source Code angeschaut, aber konnte daraus die Programmlogik nicht auf Anhieb erkennen ;)


    Danke,


    Schöne Grüße,
    Günther


    Edit (Wunschtraum): Perfekt wäre es natürlich, wenn bitstreamout sich (als Patch?) wie AC3OverDB verhalten würde - also in die normale Sprachumschaltung vom vdr integriert wäre...


    Edit2: Beim Abspielen von Filmen hat das Deaktivieren des Plugins übrigens doch eine Wirkung - dann wird tatsächlich wieder der MP2-Ton abgespielt. Allerdings fängt nach wenigen Sekunden der Film dermaßen zu ruckeln an, dass einem nur noch übrig bleibt, das Plugin wieder zu aktivieren...

    c't VDR v6, vdr 1.6.0, Kernel 2.6.24, P3 Tualatin Celeron 1400 @1GHz, Asus TUSL-2c, ACPI on, APIC on, FS 1.3 DVB-S FF, Skystar 2c

    3 Mal editiert, zuletzt von tdsandme ()

  • Habe gerade mal 0.50e ausprobiert - leider funktioniert auch da die Abschaltung nicht im Livebetrieb.


    Was das MP2-Delay angeht, habe ich keine Einstellung gefunden, bei der das Bild nicht deutlich früher als der Ton ist. (EDIT: Hatte es erst falschherum beschrieben)
    Da ich normalerweise Loopthrough benutze, stört mich das nicht wirklich - DD ist ok und das ist die Hauptsache.
    Aber da es im Changelog erwähnt wird, wollte ich halt mal drauf hinweisen, dass es wohl nicht in allen Fällen eine Verbesserung gab.


    Grüße
    Günther

    c't VDR v6, vdr 1.6.0, Kernel 2.6.24, P3 Tualatin Celeron 1400 @1GHz, Asus TUSL-2c, ACPI on, APIC on, FS 1.3 DVB-S FF, Skystar 2c

    2 Mal editiert, zuletzt von tdsandme ()

  • Zitat

    Original von tdsandme
    Nachdem das bitstreamout-plugin jetzt bei mir läuft (nach ersten kurzen Tests sowohl Live als auch Replay perfekt synchron und ohne Aussetzer, bin begeistert!), hab ich nur noch das Problem, dass es gar nicht mehr aufhören will zu laufen ;-): es reagiert nicht auf Off weder im Einstellungen-Plugins-Menü noch im Hauptmenü (-o).


    Das ist ein Bug und den habe ich nun hoffentlich gefixt.


    Zitat


    Ohne das Plugin war die Soundkarte auf Loop konfiguriert, d.h. das Digitalsignal der DVB-Karte wird von Digital In der Soundkarte zum Digital Out durchgeschleift - ich brauche also keine analoge Verbindung von der Soundkarte zum Receiver, und bei der Soundkarte muss SPDIF Out IMMER On sein.
    Und grundsätzlich funktioniert das auch mit dem Plugin: DD-Sender kommen als DD beim Receiver an, andere als 48kHz PCM. Was eben nicht geht, ist bei einem Sender mit DD-Ton trotzdem den MP2-Ton (z.B. O-Ton bei Premiere) als PCM zu bekommen.


    Also wenn Du das Skript mute/cmi8738.sh verwendest, sollte der CMI8738 chip
    je nach Einstellung von MP2 auf loop through konfiguriert sein (bei Mp2Enable=off)
    oder eben nicht (bei Mp2Enable=on).


    Zitat


    Meine Vorstellung von der Funktionsweise des Plugins war, dass bei einem Sender mit DD-Ton Loopthrough abgeschaltet wird und stattdessen das Plugin den DD-Stream auf das Digital Out der Soundkarte schickt, und das für dieses Umschalten das mute script verwendet wird.


    Exakt so ist es, jedenfalls mit dem passenden mute Skript [b]und[/] wenn diese
    mute Skript auch via der Option ``-m <Pfad_zum_Skript>'' dem bitstreamout
    plugin bekannt gegeben wurde.


    Zitat


    Das scheint aber nicht der Fall zu sein, denn das script wird immer nur mit "unmute" aufgerufen, egal ob zu einem Sender mit oder ohne DD-Ton gewechselt wird. Ich vermute also mal, dass das Plugin intern diese Umschaltung vornimmt (denn wie gesagt kommt bei einem Nicht-DD-Sender ja korrekt der PCM-Ton an); ist das so? Und wozu wird dann überhaupt das mute script gebraucht?


    Das bitstreamout plugin verwendet ein gegebenes mute Skript, da die ALSA
    lib dafür kein eindeutiges Interface hat ... dafür sind vermutlich die Treiber
    Optionen zu unterschiedlich.


    Das geht leider nicht wegen des Design von VDR und daher gibt es die Option -o ,
    um ein zusätzliches Menu im Hauptmenu für genau das zu aktivieren. Es sieht ein
    klein wenig anderst aus als das Menu unter dem Punk Plugins und bietet die
    Sprachauswahl an.


    Zitat


    Edit2: Beim Abspielen von Filmen hat das Deaktivieren des Plugins übrigens doch eine Wirkung - dann wird tatsächlich wieder der MP2-Ton abgespielt. Allerdings fängt nach wenigen Sekunden der Film dermaßen zu ruckeln an, dass einem nur noch übrig bleibt, das Plugin wieder zu aktivieren...


    Zu Ruckeln? Das sollte nicht sein, jedenfalls mit einem ungepatchten VDR.


    Werner

  • Hallo!


    Erstmal vielen Dank für die Kommentare!


    Zitat

    Original von bitstreamout


    Das ist ein Bug und den habe ich nun hoffentlich gefixt.


    Super, da bin ich ja auf die nächste Version gespannt.


    Zitat


    Also wenn Du das Skript mute/cmi8738.sh verwendest, sollte der CMI8738 chip
    je nach Einstellung von MP2 auf loop through konfiguriert sein (bei Mp2Enable=off)
    oder eben nicht (bei Mp2Enable=on).


    Genau das script verwende ich. Es wird z.B. bei jedem Kanalwechsel aufgerufen, aber immer mit dem Parameter unmute (was ich mit Debugausgaben überprüft habe).
    Also unabhängig davon, ob der Kanal DD hat oder nicht, wird immer (wegen unmute) IEC Output On und Loop On (bei MP2Enable off) gesetzt. Obwohl also das script immer Loop ON setzt, kommt bei DD Sendern trotzdem der DD-Ton einwandfrei rüber - das wundert mich, daher dachte ich die Umschaltung wird intern vom Plugin und nicht vom script gemacht.


    Zitat


    Das geht leider nicht wegen des Design von VDR und daher gibt es die Option -o ,
    um ein zusätzliches Menu im Hauptmenu für genau das zu aktivieren. Es sieht ein
    klein wenig anderst aus als das Menu unter dem Punk Plugins und bietet die
    Sprachauswahl an.


    Ja, das hab ich jetzt gerade eben ausprobiert und damit konnte ich eben auf Premiere bei xXx zwischen DD5.1 in Deutsch und MP2 in Englisch umschalten (Testen war etwas mühsam, weil da so wenig gesprochen wird ;-). Soweit also gelöst. Danke!
    Was mich aber wunderte: Der Kanal hat drei Audio PIDs - 515 für DD5.1. Deutsch, 512 für MP2 Deutsch und 513 für MP2 Englisch, aber egal ob ich 512 oder 513 wählte, der Ton war immer MP2 Englisch. Das ist zwar genau das, was ich brauche, aber evt. ist da noch ein kleiner Bug bei mehr als 2 AudioPids.


    Zitat

    Zu Ruckeln? Das sollte nicht sein, jedenfalls mit einem ungepatchten VDR.


    Werner


    Mein ct-vdr hat nur die Standard-Patches threadkill, graphlcd, analogtv und reccmdsubs125. Wenn ich einen Film ohne DD-Ton abspiele, ist alles in Ordnung, egal ob das Plugin on oder off ist. Bei einem Film mit DD-Ton wird bei bitstreamout on der DD-Ton einwandfrei abgespielt, es läßt sich aber nicht mit o.g. Menü die Audiospur wechseln. Bei bitstreamout off stottert der Film (sowohl Bild als auch Ton) nur noch vor sich hin, wobei mir jetzt aufgefallen ist, dass dabei ohne Unterlass das mute-script (wie immer mit parameter unmute) aufgerufen wird.


    Das ist aber die (für mich) einzig wirklich störende Sache; bei Livesendungen funktioniert ja die Sprachumschaltung über das Menü und durch die Loop-Schaltung hab ich auch keine Verzögerungen bei MP2 Ton.
    Im übrigen ist mir aber beim Erstellen von DVDs bisher eher beim DD-Ton aufgefallen, dass man je nach Sender mit unterschiedlichen Bild/Ton-Offsets arbeiten muss, damit es lippensynchron wird; mit dem MP2-Ton hatte ich da eigentlich noch nie Probleme.


    Jedenfalls Danke für die Hilfe (und vor allem auch für bitstreamout!),


    Schöne Grüße
    Günther

    c't VDR v6, vdr 1.6.0, Kernel 2.6.24, P3 Tualatin Celeron 1400 @1GHz, Asus TUSL-2c, ACPI on, APIC on, FS 1.3 DVB-S FF, Skystar 2c

  • Zitat


    Edit2: Beim Abspielen von Filmen hat das Deaktivieren des Plugins übrigens doch eine Wirkung - dann wird tatsächlich wieder der MP2-Ton abgespielt. Allerdings fängt nach wenigen Sekunden der Film dermaßen zu ruckeln an, dass einem nur noch übrig bleibt, das Plugin wieder zu aktivieren...


    Zitat


    Mein ct-vdr hat nur die Standard-Patches threadkill, graphlcd, analogtv und reccmdsubs125. Wenn ich einen Film ohne DD-Ton abspiele, ist alles in Ordnung, egal ob das Plugin on oder off ist. Bei einem Film mit DD-Ton wird bei bitstreamout on der DD-Ton einwandfrei abgespielt, es läßt sich aber nicht mit o.g. Menü die Audiospur wechseln. Bei bitstreamout off stottert der Film (sowohl Bild als auch Ton) nur noch vor sich hin, wobei mir jetzt aufgefallen ist, dass dabei ohne Unterlass das mute-script (wie immer mit parameter unmute) aufgerufen wird.


    Das sollte nun gefixt sein. Im ATHORS vom bitstreamout plugin steht meine
    Email-Adresse. Wenn Du magst, dann schick' mir 'ne real Email und Du
    bekommst eine Testversion.


    Werner

Jetzt mitmachen!

Sie haben noch kein Benutzerkonto auf unserer Seite? Registrieren Sie sich kostenlos und nehmen Sie an unserer Community teil!