[ANNOUNCE] vdr-cdda-0.0.1

  • Zitat

    Original von hotzenplotz5
    ?( ..... eine "mach mir gleich eine mp3 version auf festplatte" option wäre
    auch ziemlich geil ....... ?(


    Wäre denkbar... sowas hat aber erstmal eine ziemlich niedrige Priorität. Momentan suche ich noch nach dem Fehler bei der Wiedergabe.
    Wenn jemand da ne Ahnung hat, wie die Daten in dem lpcm Paket genau auszusehen haben, wäre ich für ein Tipp dankbar. Ich stochere da momentan etwas im Dunkeln.


    Zitat

    Original von ronnykornexl
    http://www.vdr-wiki.de/wiki/index.php/cdda-plugin


    Villeicht kann sich der Autor noch ein bischen im Wiki austoben?


    Hoffe ja es wird libcddb sein, ansonnsten ignorieren.


    Ins Wiki kann ich dann bei Gelegenheit etwas schreiben, aber erst wenn das Plugin soweit sauber läuft.


    libcddb ? Ich wollte das eigentlich selbst implementieren, ich mag nicht zuviele Abhängigkeiten. Wobei ich zugeben muss, dass ich nicht wirklich weiß wie das Protokoll aussieht. ;)


    gruß
    Christian

  • Wo denkst Du ist das Problem?


    a.) beim Auslesen der Daten
    b.) bein Abspielen der Daten
    c.) beim Konvertieren von a nach b


    Code, der vielleicht helfen könnte:


    muggle-Plugin: vdr_player.c
    mp3-Plugin: player-mp3.c


  • Ich denke das Problem liegt bei c! Wobei da nicht viel konvertiert wird. Die pcm Daten werden von der CD gelesen, vorne wird ein lpcm & pes Header angehangen und anschliessend werden sie abgespielt. Meine Header sind mit denen von muggle/mp3 identisch.
    Den Kode von beiden (muggle,mp3) habe ich mir auch schon öfters angesehen. Da aber bei beiden die pcm Daten aus einer anderen lib (libmad,libsndfile) kommen, weiß ich (noch) nicht wie die aussehen.


    Fakt ist: Wenn ich die Daten (1764Byte) mit den beiden Headern (pes 9Byte und lpcm 7Byte) versehe, kommt aus dem Ausgang nur Schrott raus. Es hört sich bei mir so an, als ob die Daten um ein Byte verschoben abgespielt werden.
    Also hab ich dann ganz mutig ein Byte hinzugefügt (bzw. den lpcm-Header auf 8Byte gepadded) und dann stimmte es wieder. Die Musik kommt (zumindest bei mir) "korrekt", aus den Lautsprechern. Ob das wirklich so sein muss... ich habe keine Ahnung!


    Heute Abend werde ich nochmal danach schauen.


    gruß
    Christian

  • Meinst Du byte oder bit? In der Tat muss man ein wenig aufpassen, dass man die korrekte Auflösung (sprich Anzahl bits) erwischt und die Quelldaten auch richtig schiebt, so dass die höherwertigen Bits richtig sind. Das dabei mal ein paar Nullen bei den niederwertigen Bits entstehen oder ein paar Bits verlorengehen ist ziemlich egal.


    Lars

  • Zitat

    Original von LarsAC
    Meinst Du byte oder bit? In der Tat muss man ein wenig aufpassen, dass man die korrekte Auflösung (sprich Anzahl bits) erwischt und die Quelldaten auch richtig schiebt, so dass die höherwertigen Bits richtig sind. Das dabei mal ein paar Nullen bei den niederwertigen Bits entstehen oder ein paar Bits verlorengehen ist ziemlich egal.


    Ich meinte Byte. Bits schiebe ich nur bei den Headern, da habe ich auch schon etwas rumexperimentiert. Ändert aber nichts an dem Problem!

  • Zitat

    Original von MarcTwain
    So, nach einer grösseren Aufräumaktion und Patchen in den Header-Files von gcc compiliert es jetzt.


    Wenn ich das beschreibe, denken alle, ich sei ein Trottel. :)


    Edit:
    Knistern tut es auch bei mir. :)


    Hallo Marc


    Ich habe das gleiche Problem beim maken wie du.
    Vielleicht könntest du ja mal beschreiben was du getan hast.


    --> Headerfile ...


    Vielen Dank im Vorraus

  • hat schon mal jemand das verhalten bei cd's mit Kopierschutz getestet?


    Ein bekannter hat recht viele CD's die sich mit dem alten Plugin nicht abspielen lassen.


  • Wo bleibst Du denn gerade hängen?


    Es gab bei mir mehrere Probleme: getpopt war zu alt, libcdio lässt sich nur ohne Examples lösen, bool in gcc-include, stl.h fehlte als Include....


    Ich konnte meine Patchversion heute Abend per http bereitstellen. Das Problem mit der Definition von bool, musst Du jedoch händisch lösen, wenn es bei Dir auftritt.

  • Danke cmos.


    Funktioniert jetzt bestens. Super!


    Ein kleiner Schönheitsfehler: Wenn man die CD auswirft mit der Taste am Laufwerk, merkt das das Plugin nicht und spielt immer wieder den gleichen Schnipsel Musik ab.

  • Zitat

    Original von LarsAC
    cmos: was war denn nun der Fehler?


    Hehe
    Eigentlich war das nur eine Kleinigkeit: meine im PES Header hinterlegte Länge der Daten stimmte nicht! Ich wußte nicht, dass die PES Extension dort mit eingerechnet wird. Damit war meine Länge um 3 Byte zu kurz, weshalb die Samples dann verschoben/falsch abgespielt wurden ... :rolleyes:


    Vielleicht sollte ich nicht eine CD mit elektronischer Tanzmusik als Test verwenden. Dann wären mir die fehlenden Samples wohl eher aufgefallen ;)

  • Zitat

    Original von cmos


    Während die CD abgespielt wird? Eigentlich sollte dann das CD Laufwerk gesperrt sein. Bei mir ist das so...


    Ja, während des Abspielens. :) CD kommt bei mir raus. :)

  • Hi,

    Zitat

    wie kann man denn nun das Media-Detection-Plugin dahingehen ändern cdda zu starten, wenn eine Audio-CD eingelegt wird?


    da muss man doch nur einen weiteren Eintrag fuer wavs (?) in der Typelist erstellen, wobei dann ja nicht (wie beim mp3-plugin) gemountet werden muss.
    Aber bis cmos keine Schnittstelle fuers GLCD-Plugin und CDDB-Anbindung realisiert hat :D , werde ich da noch etwas warten ...
    Gruss
    Burkhardt
    Aber auch von mir ein :tup , denn cdfs ist wirklich nicht das NonPlusUltra.
    Zusatz:
    Habs doch nich sein lassen koennen: Ein Eintrag wie { "*.wav", "cdda", true, Find, true } reicht im vdrcd-plugin, doch automatisches Abspielen klappt damit noch nicht --> muss mir das Ganze mal in Ruhe anschauen.

  • Zitat

    Original von burki
    Habs doch nich sein lassen koennen: Ein Eintrag wie { "*.wav", "cdda", true, Find, true } reicht im vdrcd-plugin, doch automatisches Abspielen klappt damit noch nicht --> muss mir das Ganze mal in Ruhe anschauen.


    Dafür wird dann wohl wieder cdfs benötigt :( . Sonst findet das find-Kommando keine *.wav ...
    IMHO sendet das vdrcd Tastenkode's um die Wiedergabe zu starten. Kann mich aber auch täuschen.


    Zitat

    Original von LarsAC
    Aber wg der gLCD-Anbindung könnt ich mal reinschauen, die ist recht easy.


    Habt Ihr eine glcd Anbindung in muggle? Würde ich dann als Vorlage nutzen ...

  • hallo,


    schönes Plugin, kommt bei mir in die Kategorie wertvoll :strike2


    so bekommt man ohne viel Ballast seine Audio CDs über J2 auf den Digital Receiver.


    Eins habe ich noch bemerkt. Wenn die CD durch ist, beendet sich wohl das plugin, dh. ich kann bsw. schon mit links und rechts in den kanalgruppen springen aber der Ton ist noch nicht zurück (manchmal), das klappt erst wenn ich einmal den Kanal hoch und runter schalte.


    Verwendet das plugin noch Funktionen zur Motorsteuerung ( evt. CD Bremse ? ) Beim Abspielen über das Plugin klackt mein LW im Sekundenrythmus, beim steuern über den cdda-player aus den libcdio oder anderer Tools höre ich dies nicht.


    gruß lola

  • Hi,
    richtig, es wird wieder cdfs benoetigt (wobei mich das persoenlich eh primaer beim Abspielen selbst stoert).
    Auch richtig ist, dass noch ein:

    Code
    else if (strcmp(Typelist[type].PlugIn, "cdda") == 0) {
                        osd->ProcessKey(kOk);
                        delete osd;
                        osd = NULL;
                   }


    benoetigt wird.
    Gruss
    Burkhardt

Jetzt mitmachen!

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