mp3-Datei per Batch ausgeben und dabei die Lautstärkeneinstellung mitgeben... Welcher Commandline-Parameter?

  • Hallo Forum,

    ich kämpfe mal wieder mit den vielen VLC-Commandline-Parametern...

    Für meine Modellbahn gebe ich Zufalls-Geräusche auf unterschiedlichen Micro-Lautsprechern aus, die auf der Anlage versteckt sind (z.B. im Bahnhofsgebäude, etc).

    Die Auswahl der Mp3-Datei und das Ansteuern eines der kleinen Lautsprecher bewerkstellige ich mit einem XML-Script und einer Relaisschaltung... das funktioniert soweit ganz prima.


    Für das Abspielen der MP3-Datei, rufe ich ein Batch auf (WIN10, Standardsoundkarte) und übergebe diesem den Dateinamen der mp3-Sounddatei die abgespielt werden soll

    ..\soundprog\vlc.exe --qt-start-minimized --intf=dummy --play-and-exit --quiet ..\sounds\%1

    Auch dieses funktioiert sehr gut.


    Nun möchte ich noch die Lautstärke als Commandline-Parameter mitgeben.

    Ich habe u.a. mit --volume-step=... und mit --gain=... experimentiert. Das hatte aber keinen Effekt.

    Kann mir jemand sagen, welchen Parameter ich im Batch mitgeben muss um die Lautstärke zu beeinflussen?


    (ein Parameter für Fade-In und Fade-out wäre auch toll... aber die Lautstärke ist wichtiger.)


    Vielen Dank für eure Tipps

    VG

    Tom

    • Official Post

    Hallo Tom,


    für die Lautstärke habe ich unter den Kommandozeilenparameter passende Hinweise gefunden.

    - https://wiki.videolan.org/VLC_command-line_help/


    Die Frage ist, welche Tonausgabe vom Betriebssystem als Standard verwendet wird.

    Unter Windows wird oft DirectX für die Tonausgabe genutzt. Hier bietet sich der Parameter --directx-volume= an.

    Den passenden Wert zwischen 0.00 und 2.00 muss man ausprobieren (z.B.: --directx-volume=0.50).


    Sonst auch mal den Parameter --gain=[0.00 bis 8.00] oder --volume-step=[1.00 bis 256.00] ausprobieren.


    Weitere Parameter zum ausprobieren wären:

    --mmdevice-volume=

    --waveout-volume=


    Einen Parameter für Fade-in und Fade-out habe ich nicht gefunden.


    MfG

    Thomas

  • Servus Thomas,

    vielen Dank für deine Antwort.

    Ich habe alle Parameter ausprobiert, Schlussendlich führte der Parameter --gain=[0.00 bis 8.00] zum gewünschten Ziel.

    Wenn ich Werte zwischen 0.1 und 1.0 übergebe , so habe ich den von mir gewünschten Effekt.

    Die Sounds werden leiser oder lauter und dadurch entsteht der Eindruck, die Geräuschquelle wäre weit entfernt oder ganz nahe.

    Genau was ich wollte!

    Prima!

    Herzlichen Dank für deinen Tipp.


    Viele Grüße

    Tom


    Ich habe nochmals eine Frage:

    In bzw. an meinem PC gibt es eine interne Soundkarte und eine externe USB-Sound"karte" (so ein kleiner USB-Stecker der als Soundkarte funktioniert).

    Beide Soundsysteme funktionieren mit der obigen Anwendung einwandfrei.

    Frage:

    Kann ich den VLC-Player, per Commandline-Parameter, dazu bringen Sound entweder über die interne Soundkarte oder über die externe USB-Sound"karte" abzuspielen?

  • Hallo, ich stehe gerade vor ziemlich genau dem selben Problem.

    Allerdings auf einem Raspberry Pi4 mit Bullseye 64 bit.

    VLC 3.0.18 Vetinari (revision 3.0.13-8-g41878ff4f2)


    Ich starte über die Kommandozeile einen Radiostream ohne GUI – das funktioniert soweit einwandfrei.

    Beispielsweise: cvlc http://streams.br.de/bayern1nbopf_2.m3u

    Ergebnis: Stream startet und läuft.


    Bezüglich der Lautstärke habe ich festgestellt, dass der Stream dann mit dem Pegel wiedergegeben wird, der zuletzt beim Abspielen eines Streams über das GUI eingestellt wurde. Wenn dort der Pegel auf 0 gestellt wurde ist über den Kommandozeilenaufruf nichts zu hören, selbst wenn man den Befehl um das Attribut --gain 8 ergänzt.


    Es muss doch irgendwie möglich sein, den Pegel über Kommandozeile zu setzen!?

    Früher gab es anscheinend das Attribut --volume. Beim Versuch es zu nutzen heißt es Warning: option --volume no longer exists.. Auch --volume-step wirkt sich nicht auf die Lautstärke des Streams aus.

    Und mit --gain kann man die Lautstärke nur bedingt beeinflussen (vorausgesetzt der Pegel ist nicht 0) – aber je mehr man den Pegel mit Gain verstärkt, desto verzerrter ist die Audioausgabe.


    Gibt es wirklich keine Möglichkeit den Lautstärke-Pegel über die Kommandozeile zu setzen?