audiorecorder 2.0.0-rc3

  • Hallo Zusammen,


    nach ein paar Schwierigkeiten haben wir nun auch in der MLD 4.0.1 dieses Addon aktiv. Leider bekommen wir aber die Dateien nicht codiert, weder als mp2 noch als mp3.


    Im Log erscheint nur


    Und wenn ich dann im angegebenen Verzeichnis schaue, so sehe ich jeweils nur eine Datei mit der Größe von 1.3 K Byte. Sieht es aus, als wenn hier nur der MP3-Tag geschrieben wird.


    Als Umgebung setzen wir Ubuntu 14.04 ein und haben dort auch die libav-tools installiert, da ja nun kein ffmpeg mehr von Haus aus dabei ist. Somit sollte ja ein Symlink auf /usr/bin/avconv ausreichen.


    Hat jemand eine Idee, wie man das Verhalten korrigiert?


    Danke,


    Pit


    P.S: Die Addon Version habe ich von hier

  • Moin


    boah shit das hab ich gestern auch nicht gesehen gehabt.
    Dann brauchen wir uns nicht wundern das es nicht geht.


    Danke dir.


    Gruß MegaX

    Gruß MegaX


  • Hi Zusammen,


    jetzt haben gestern Abend mit 6 Augen auf die Meldungen im /var/log/messages geschaut und das nicht gesehen. Aber ja, Du hast Recht der Fehler ist eindeutig. Nur finden wir nicht die Lösung :rolleyes:


    Wenn wir auf der Konsole die Umwandlung starten so wird auch ein mp3-File erzeugt:



    Also ist der Codec "libmp3lame" auf jeden Fall auf der Maschine, nur wird er vom Addon nicht identifiziert bzw. geöffnet. Hat jemand einen Tipp ?


    Gruß,


    Pit

  • Hallo,


    Bin mir sicher das der Aufruf im convert.c angepasst werden muss.


    Code
    encoder_open = avcodec_open2(encoder_ctx, encoder_codec, NULL); if (encoder_open < 0) { dsyslog("[audiorecorder]: could not open codec %s (%s, %s())", codec, __FILE__, __func__); return; }


    Nur wie wäre korrekte Syntax in der Function?


    Pit

  • Hi
    musste unter 12.04 letzter git Stand, fogenden Patch einfügen gefunden hier.
    audiorecorder version 0.1.0-pre6



    Und wie im wiki http://wiki.ubuntuusers.de/FFmpeg Zusätzliche Codecs installieren. Es kommt beim starten zwar noch die Meldung


    aber das umwandeln geht.



    Bei 14.04 müsste man wie im wiki http://wiki.ubuntuusers.de/avconv noch libavcodec-extra-54 installieren.


    Gruß gst

  • Hi gst,


    vielen Dank für den Link, damit funktioniert zumindest schon mal die mp2-Variante.



    Bei der mp3-Auswahl kommt wieder zu dem Fehler von oben. Der Weg scheint schon mal richtig zu sein, nur halt nicht für mp3.... Noch eine Idee...


    Übrigens, wir haben auf der MLD Maschine folgende ffmpeg-Version. Sind wir da zu aktuell?




    Gruß,


    Pit


    P.S: Wir setzen die Ubuntu 14.04 mit dem ffmpeg-real Paket, die libavcodec-extra-54 ist doch "nur" für die avconv Variante.

  • Hi
    Ich benutze bei mir yavdr ubuntu 12.04, ffmpeg (wird über avconv aufgerufen) und da brauche ich die extras für mp3.
    Hier mal die Ausgaben vielleicht hilft es euch.


    Code
    avconv -formats | grep mp3
    avconv version 0.8.16-4:0.8.16-0ubuntu0.12.04.1, Copyright (c) 2000-2014 the Libav developers
      built on Sep 16 2014 18:33:49 with gcc 4.6.3
     DE mp3             MPEG audio layer 3


    und

    Code
    avconv -codecs | grep mp3
    avconv version 0.8.16-4:0.8.16-0ubuntu0.12.04.1, Copyright (c) 2000-2014 the Libav developers
      built on Sep 16 2014 18:33:49 with gcc 4.6.3
      EA    libmp3lame      libmp3lame MP3 (MPEG audio layer 3)
     D A D  mp3             MP3 (MPEG audio layer 3)
     D A D  mp3adu          ADU (Application Data Unit) MP3 (MPEG audio layer 3)
     D A D  mp3adufloat     ADU (Application Data Unit) MP3 (MPEG audio layer 3)
     D A D  mp3float        MP3 (MPEG audio layer 3)
     D A D  mp3on4          MP3onMP4
     D A D  mp3on4float     MP3onMP4


    und

    Code
    avconv version 0.8.16-4:0.8.16-0ubuntu0.12.04.1, Copyright (c) 2000-2014 the Libav developers
      built on Sep 16 2014 18:33:49 with gcc 4.6.3
    avconv 0.8.16-4:0.8.16-0ubuntu0.12.04.1
    libavutil    51. 22. 2 / 51. 22. 2
    libavcodec   53. 35. 0 / 53. 35. 0
    libavformat  53. 21. 1 / 53. 21. 1
    libavdevice  53.  2. 0 / 53.  2. 0
    libavfilter   2. 15. 0 /  2. 15. 0
    libswscale    2.  1. 0 /  2.  1. 0
    libpostproc  52.  0. 0 / 52.  0. 0


    PS: vielleicht mal direkt CODEC_ID_MP3 audiorecorder version 0.1.0-pre6
    Gruß gst

  • Hi
    Was mir noch einfällt, wo liegt den bei euch die avcodec.h bei mir ist sie unter
    /usr/include/libavcodec/avcodec.h
    bei ffmpeg könnte sie unter
    /usr/include/ffmpeg... liegen.
    Ist in audiorecorder.c definiert.

    C
    #endif
    
    
    extern "C" {
    #include <libavcodec/avcodec.h>
    }
    
    
    // extern cChannels Channels;
  • Servus,


    entschuldigung, für die späte Rückmeldung, aber irgendwie war ich "ausgeknockt"...


    Also ich habe es auch mal mit dem avconv versucht, da bekomme ich ganz ähnliche Rückmeldungen wie bei Dir.


    Code
    VDRSuedHD> ffmpeg -codecs | grep mp3
    avconv version 9.16-6:9.16-0ubuntu0.14.04.1, Copyright (c) 2000-2014 the Libav developers
      built on Aug 10 2014 18:16:02 with gcc 4.8 (Ubuntu 4.8.2-19ubuntu1)
    DEA.L. mp3                  MP3 (MPEG audio layer 3) (decoders: mp3 mp3float ) (encoders: libmp3lame )
    D.A.L. mp3adu               ADU (Application Data Unit) MP3 (MPEG audio layer 3) (decoders: mp3adu mp3adufloat )
    D.A.L. mp3on4               MP3onMP4 (decoders: mp3on4 mp3on4float )


    und

    Code
    VDRSuedHD> ffmpeg -formats | grep mp3
    avconv version 9.16-6:9.16-0ubuntu0.14.04.1, Copyright (c) 2000-2014 the Libav developers
      built on Aug 10 2014 18:16:02 with gcc 4.8 (Ubuntu 4.8.2-19ubuntu1)
     DE mp3             MP3 (MPEG audio layer 3)


    aber leider funktioniert es trotzdem nicht. :§$% Daher mache ich mal mit meinen Tests unter ffmpeg-real weiter, damit funktioniert zumindest schon mal der mp2-Weg, wobei das natürlich nicht ausreicht.



    und


    achja, die avcodec.h liegt unter:



    Somit leider auch kein Weg...


    Sonst noch eine Idee?


    Was mir noch auffällt, wenn man das Addon compiliert, dann sind da diese Hinweise.



    Ist da zu suchen, weil nun unter /opt/ffmpeg/include/... gesucht wird? (hab zwar versucht, ob es hilft wenn es verlinkt ist, aber es funzt trotzallem nicht)


    Wäre schön, wenn es doch noch Ideen gibt.


    Gruß,


    Pit

  • Hi
    nichts zu entschuldigen und die Warnungen bekomme ich beim bauen auch.
    Ich schrieb weiter oben vielleicht mal direkt CODEC_ID_MP3 audiorecorder version 0.1.0-pre6 , bei ffmpeg gab es in der Vergangenheit Änderungen das heißt jetzt AV_CODEC_ID_MP3 Vielleicht funktioniert es ja fest auf mp3 eingestellt. Sonst fällt mir auch nichts mehr ein mit meinem Halbwissen ;) .
    Gruß
    gst

  • Hi gst,


    leider das hatten wir auch schon versucht, hatte es nur vergessen zu erwähnen.


    Wenn ich mir die Warnings anschaue, so heisst es ja das die Funktion avcodec_encode_audio und avcodec_decode_audio deprecated (veraltet) sind, aber die neuen ffmpeg-Funktionen avcodec_encode_audio2 bzw. avcodec_decode_audio4 haben sich im Syntax verändert, und da bin (sind wir) raus. Da brauch ich mit meinem Halbwissen fast nicht mehr weiter machen und hoffe auf ...



    Danke, trotzdem das Du dir mit Gedanken gemacht hast.


    Pit

  • Moin,


    bitte mal git tag 2.0.0_rc4 aus dem http://projects.vdr-developer.…plugin-audiorecorder.git/ testen


    ich kann hier ohne probleme .mp3 files mit inhalt + mp3.tags erstellen


    bei einstellung im OSD mp3 ( achtung hier gibt es 2 mp3 einstellung!, bitte diese einstellung [mp2 mp3 mp3] im plugin osd setup benutzen.
    Das muss ich mir erstmal anschauen warum das damals vom original maintainer A.Land geproggt wurde,
    eventuell gab es bei uralten ffmpeg/libav mal eine internes mp3 encoding, welches inzwischen zugunsten der externen lib libmp3lame von lame entfernt wurde?)


    gelinkt ist das ganze gegen


    Code
    avconv 9.17
    libavutil     52.  3. 0 / 52.  3. 0
    libavcodec    54. 35. 0 / 54. 35. 0
    libavformat   54. 20. 4 / 54. 20. 4
    libavdevice   53.  2. 0 / 53.  2. 0
    libavfilter    3.  3. 0 /  3.  3. 0
    libavresample  1.  0. 1 /  1.  0. 1
    libswscale     2.  1. 1 /  2.  1. 1


    Cheers :prost2:


    /bin/joerg

  • Servus Jörg,


    Vielen Dank für deine Anpassung. Der Code liest sich ja ganz gut.


    Leider bin ich momentan um Urlaub. Aber es gibt ja mehrere die an dem Addon interessiert sind und spätestens Morgenfrüh steht es auch in der Mld bereit.


    Gruß,


    Pit


    P.S. Mein Feedback kommt natürlich sobald ich wieder zuhause bin

  • Hi Jörg,


    **Merci** für die neue Version ...nun wieder ohne "Extra Script" zum reencodieren. :]
    Läuft unter easyVDR 2.0(ubuntu 14.04LTS) mit FFmpeg-2.1 & 2.4.1


    ...mit "FFmpeg-2.4.1" gibt es auch kein Problem wenn FFmpeg mit audio_codecs[2] = "mp3"; gestartet wird.
    "mp3" ist mapped -> libmp3lame
    Siehe:


    P.S
    Im Anhang "channels_audiorecorder.conf" mit 100 Radio-Sender, könnest ja noch ins "contrib" packen.


    Gruss
    Wolfgang

    Dateien

    TT S2-6400 - saa716x kompilieren unter 20.04(Focal)

  • Neue Version vdr-plugin-audiorecorder-2.0.0._rc5 im git


    - extended audiorecorder.conf , thx to wolfi.m
    - disabled mp3 codec (not libmp3lame, welcher zum encodieren genutzt wird)
    jetzt gibt es keine meldung mehr "your version of libavcodec isn not compiled with mp3 support..."
    - default einstellung fuer erste install geändert, das plugin startet nicht mehr sofort, sonder muss im OSD setup gestarted werden
    - default einstellung fuer erste install auf mp3 geändert,
    das mp2 erstellen functioniert leider momentan nicht, es werden beim cp vorgang <title>.tmp.mp2 zu <ARTIST>/<TITLE>.mp2 keine dir <ARTIST> angelegt,
    EDIT: mp2 erstellung scheint wohl zu functionieren solange die files nicht in einer subdir abgelegt werden also <ARTIST>-<TITLE>.mp2
    keine ahnung wie das zu fixen ist mit meinen minimalen C++ kenntnissen :(, muss irgendwo in convert.c hängen


    braucht irgendwer eigentlich mp2 codierte files? (rethorische frage ;) )



    bitte testen...

  • Hi Jorg,


    git ausgecheckt -> Revision db58b08b - Build PPA Ok!
    ...in der "audiorecorder.conf" sollte der Kommentar vor 5 Radio-Stationen entfernt werden,
    da im Setup "Max. Anzahl paralleler Aufnahmen: 5" aktiviert sind.
    ...ist nicht so dolle wenn der User gleich die "audiorecorder.conf" editieren muss.
    Da wir bei easyVDR noch das "Setup-Plugin" verwenden (include tinyxml) muss ich PLG audiorecorder mit unserer
    Version von "tinyxml" patchen.(wird mal Zeit das zu excluden :D )
    ...wie bereits von Dir erwähnt, funktioniert "mp2" nicht. <Artist><Title> werden angelegt, *.mp2 ist ca. 1400b gross und enthält nur ID3.
    Aufnahmen *.mp3 sind alle Ok!


    Logfile "mp2"


    Was man beim "reencodieren" noch machen könnte, auch die Sample-Rate von 48kHz auf 44.1kHz zu ändern.
    P.S
    "mp2" wird wohl keiner mehr benötigen.
    Merci, dass du das Plugin übernommen hast.


    Gruss
    Wolfgang

    TT S2-6400 - saa716x kompilieren unter 20.04(Focal)

  • Sample-Rate von 48kHz auf 44.1kHz zu ändern


    Warum? MP3 funktioniert auch mit 48kHz und es will sicher keiner mehr Audio-CDs daraus machen. Der Klang wird durch das resampling auch nicht besser.


    vdr-User-# 755 to_h264 chk_r vdr-transcode github

  • @ wolfi.m


    danke fuer deine rückmeldung


    was mir auffällt, weil ja deine mp2 files ohne kontent und nur mit mp3 tags erstellt werden:

    Zitat

    [audiorecorder]: decoder initialized (convert.c, init_decoder())
    [audiorecorder]: could not open codec mp2 (convert.c, init_encoder())

    würde mich interessieren, ob du im vorfeld im log schon die meldung
    "[audiorecorder]: your version of libavcodec (ffmpeg) is not compiled with mp2 support"
    erhältst, das würde auf eine zu neuen oder buggy version von ffmpeg (avcodec) schliessen.
    Falls nicht, haben sich die umgebungsvariablen vom mp2 codec geändert :wand
    ( oh man, diese ständigen änderungen im ffmpeg/libav gehen mir echt auf den sagg...) :wand
    Schau mal bitte nach, BITTE Rückmeldung...


    zur sample rate: mit der Sample Rate mit der der stream reinkommt wird diese an das ergebniss mp2/mp3 durchgereicht.
    ist minimal in convert.c fixbar, ich beuge mich da der mehrheit, falls da nochmalig anfragen kommen...

    Code
    -encoder_ctx->sample_rate    = sample_rate;
     +encoder_ctx->sample_rate    = 44100;


    OT //anfang
    setup plugin, hat easy vdr keinen paketmager, das ist doch debian basiert, oder ist diese distri soweit abgespeckt?
    installiere dir tinyxml mit STL suport!!!
    und befreie das setup plugin mit dem patch aus gentoo von der benutzung des bundeld tinyxml code
    OT //ende


    wolfi.m, git version bringt nicht viel gegenüber der direct downloadbaren vdr-plugin-audiorecorder-2.0.0._rc5 version


    ich arbeite da momentan an der fixung der deprecated warnings
    ## convert deprecated audio function in convert.c
    ## avcodec_decode_audio3 --> avcodec_decode_audio4
    ## avcodec_encode_audio --> avcodec_encode_audio2


    compilieren tut der momentane stand, erzeugt aber nur files mit mp3 tags,
    Ehrlich gesagt weiss ich nicht wirklich was ich da tue mit meinen minimalen Laien kenntnissen.


    Ich befürchte fast, das ich da ohne Hilfe von auserhalb zu keinem verwertbarem Ergebniss komme :(


    wie auch immer, deprecated ist erst in libav10 obsolete, bei ffmpeg wird warscheinlich noch ein bisschen zeit vergehen bis das obsolete wird


    Cheers :prost2


    /bin/joerg

Jetzt mitmachen!

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