DVB-Radioaufnahme für Audio-CD resamplen und als WAV exportieren?

  • Hallo zusammen,


    ich verwende LinVDR 0.7 mit Dr. Seltsams Kernel-Update und den Toxic-Patches; Project X ist installiert und funktioniert im Zusammenspiel mit der DVD-Erstellung. Nun würde ich gern ein Script o.ä. nachrüsten, mit dem sich Radioaufzeichnungen auf Knopfdruck von 48 kHz nach 44,1 kHz resamplen und in einem Ausgabepfad eigener Wahl ablegen lassen (z.B. /pub/export/audiocd). Es würde genügen, wenn dort WAV abgelegt würde, das danach unter Windows paßgenau geschnitten und als Audio-CD gebrannt wird.


    Ich stelle mir das so vor, dass sich das Script aus dem Aufnahmeverzeichnis mit der roten Taste ("Befehle") aufrufen und starten ließe, wenn die Wunschaufnahme ausgewählt wird, ähnlich wie das bei der Markierung für die DVD-Erstellung funktioniert.


    Kann bei diesem Wunsch jemand einem Linux-Unerfahrenen weiterhelfen?

  • Ja, das habe ich gesehen, aber dort wird kein Resampling vorgenommen und darauf kommt es entscheidend an. Ich kann nicht beurteilen, wie man das unter Linux anstellt und bräuchte deshalb zumindest ein lauffähiges Script, mit dem ich arbeiten könnte (also sowas ähnliches wie das von Dir verlinkte). Irgendwie bekomme ich das dann notfalls auch in VDR eingebunden.


    Da Project X die Möglichkeit bietet, ein Resampling vorzunehmen (zur Güte kann ich nichts sagen), wäre das vielleicht eine Option, relativ widerstandsarm zum Ziel zu gelangen, kann das sein...?


    Schön wäre ja, mehrere Aufnahmen in eine Liste zu übergeben und diese auf Knopfdruck als Batch im Hintergrund abarbeiten zu können, damit es zu einer echten Arbeitsentlastung wird. Finden sich dann im Exportverzeichnis die neu gesampelten WAVs, könnten diese rasch unter Windows geschnitten und als Audio-CD gebrannt werden. Eine erneute Kompression wäre dabei wenig wünschenswert.


    Für Linuxer ist das vermutlich ein Klacks, für meine Wenigkeit ein hartes Stück Arbeit, wenn ich keine Hilfestellungen erhalte. Deshalb bitte ich hier freundlich die Experten, für einen kurzen Moment über mein Anliegen nachzudenken und wenn möglich ein paar konstruktive Inputs zu geben. Ich würde es ihnen danken. :)

  • also ein *.vdr File in ein *.wav mit 44100 Samplerate zu wandeln geht vielleicht ungefaehr so (habe es aber nicht getestet):

    Code
    cd /tmp
    /usr/bin/perl /usr/local/bin/vdrsync.pl -audio-only -o . 001.vdr
    lame -v -h --mp2input --decode vdrsync0.mpa vdrsync0.wav
    sox vdrsync0.wav -r 44100 vdrsync1.wav

    Ob es das, was du vorhast schon in aehnlicher Form fertig gibt, weiss ich nicht. Bestimmt aber nicht fuer den Linvdr. Wenn du dir schon m$ antun moechtest, was spricht dagegen den gesamten Prozess dorthin zu verlagern? Die haben dort doch sicher fertige Loesungen wie Sand am Meer.

  • Danke für diese Idee. Vorab zu Deinem Vorschlag, die Nachbearbeitung unter Windows durchzuführen. Gegen die komplette Migration nach Windows spricht der Komfort, für das Brennen bereits hinreichend vorbereitete Dateien vorzufinden. Sie müssen ja so oder so noch geschnitten werden und das Zuschneiden von Radiomitschnitten gestaltet sich im VDR sehr viel aufwendiger als unter Windows. Deshalb wäre es für meinen Workflow von Vorteil, die Vorarbeit irgendwann im Hintergrund vom VDR leisten zu lassen, um die WAVs bei Gelegenheit aus dem Exportverzeichnis zu fischen, zurecht zu stutzen und schließlich zu brennen. Das spart unter Windows einen Arbeitsschritt.


    Gegen sox spräche spontan, dass ich es nicht habe und nicht sicher bin, es ohne Entwicklerumgebung installiert zu bekommen, aber das wäre immerhin mal einen Blick wert. Ungeachtet dessen ging eine meiner Überlegungen dahin, ob man nicht Project X dafür mißbrauchen könnte. Über dessen GUI läßt sich ein Resampling vornehmen, aber wie man das über die Kommandozeile hinbekommt, ist mir ein Rätsel. Es scheint dafür keine Kommandos zu geben und man müßte irgendwie zuerst dynamisch eine INI generieren, wenn ich das richtig sehe.

  • Hi,


    ich hatte auch schon mal sowas gemacht allerdings für Filme (mpg/avi)
    weiss nicht genau ob das auch mit vdr-files funktioniert
    war auch für mehre Dateien gedacht (Quick&Dirty)
    nur umgekehrt von 44100 Hz -> 48000 Hz
    Augenmerk auf "ffmpeg"


    hier mal mein script für avi



    für avi hab ich bis jetzt noch keinen muxer-Pogramm gefunden das Audio und Video zusammenbringt wie bei Mpeg


    Einmal editiert, zuletzt von glasmaster ()

  • habs grad mal probiert mit


    ffmpeg -i 001.vdr -vn -ar 44100 -acodec adpcm_ima_wav test.wav


    scheint zu gehen aber ergebnis war mit störungen versehen.
    evt mal noch andere Codec ausprobieren !


    mit


    ffmpeg -formats


    bekommt man alle unterstützten angezeigt



    edit:
    mit folgenden gehts


    ffmpeg -i 001.vdr -vn -ar 44100 -acodec pcm_s16le test.wav

    Einmal editiert, zuletzt von glasmaster ()

  • Hallo glasmaster,


    riesig, das ist ja ein wirklich toller Anfang mit vorhandenen Tools. Ich habe es eben mit


    ffmpeg -i 001.vdr -b 192 -ar 44100 -ad adpcm_ima_wav 001.wav


    ausprobiert und ebenfalls hingekriegt. Allerdings ist Dein WAV um einiges kleiner. *jubel* Danke Dir!


    Jetzt muss ich mir mal anschauen, was tarandor für ein Script gebaut hat. Vielleicht bekommt man diesen Code da irgendwie hineingepfriemelt, damit sich auch auch die Automatisierung durchführen läßt. Dieser Beitrag liest sich auch ganz gut als Inspirationsgrundlage. Mal sehen, wie weit ich jetzt komme.


    Schonmal vielen Dank - es ist also zumindest machbar. :)

  • Gibt es eigentlich eine Möglichkeit, seine Scripte vernünftig zu debuggen? Ich tüftle hier vor mich hin und die einzige sichere Erkenntnis ist soweit, dass ich bis jetzt nur Murks zustande gekriegt habe. Leider erweist sich logread als arg zugeknöpft, so dass es schwer fällt, den Fehlern auf die Schliche zu kommen. Auch diverse fertige Scripte laufen aus unerklärlichen Gründen nicht und ich wüßte zu gern den Grund, damit ich nicht um fertige Ergebnisse betteln muss. ;)


    Edit (und *gähn*). Ich kann ja mal kurz zusammenfassen, wie weit ich mit meinem stümperhaften Linux-Latein bislang bin:


    Bash
    #!/bin/bash
    
    
    input="$1"
    output="/pub/export/audiocd/"
    name="`echo "$input"|cut -d"/" -f 3`"
    
    
    /usr/bin/ffmpeg -i $input/0**.vdr -b 192 -ar 44100 -ad adpcm_ima_wav $output$name.wav </dev/null &>/tmp/acdexport.log

    Auf das Script (acdexport.sh) wird aus der reccmds.conf verwiesen:


    Code
    Audio-CD-Export             : /etc/vdr/plugins/audiocd/acdexport.sh

    Bitte nicht lachen, immerhin sind das meine erste Gehversuche beim Gescripte. Es ist ganz bestimmt nicht elegant, aber ein Anfang und es funktioniert (juchu). Und es wird auch eine Log-Datei angelegt, die etwas mehr preisgibt als logread.


    Die Mängel, für die noch eine Lösung zu suchen wäre:


    - Scriptaufruf im Hintergrund (blockiert während der Operation das OSD und muss unbedingt behoben werden)
    - Statusberichte im OSD (Beginn/Ende der Umwandlung)
    - Stapelverarbeitung für mehrere Aufträge
    - automatische Durchnummerierung für die Zieldatei, falls mehr als eine Quelldatei (vdr.001, vdr.002 usw.) gefunden wird

Jetzt mitmachen!

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