Path
Code: Select all
C:\Program Files (x86)\wxMP3gain\wxMP3gain.exe
Code: Select all
C:\Program Files (x86)\wxMP3gain\wxMP3gain.exe
that means MP3gain is still the engine, so let's use its CMD line feature for automated tasks16.09.2016 - wxMP3gain is a free front-end for the MP3gain
That's coooooolnoname wrote:" just me " wrote the function WatchFolder() to receive notice when changes are made in a folder.
https://autohotkey.com/boards/viewtopic.php?t=8384
Code: Select all
copyright(c) 2001-2009 by Glen Sawyer
uses mpglib, which can be found at http://www.mpg123.de
Usage: mp3gain.exe [options] <infile> [<infile 2> ...]
options:
/v - show version number
/g <i> - apply gain i without doing any analysis
/l 0 <i> - apply gain i to channel 0 (left channel)
without doing any analysis (ONLY works for STEREO files, not Joint Stereo)
/l 1 <i> - apply gain i to channel 1 (right channel)
/e - skip Album analysis, even if multiple files listed
/r - apply Track gain automatically (all files set to equal loudness)
/k - automatically lower Track/Album gain to not clip audio
/a - apply Album gain automatically (files are all from the same
album: a single gain change is applied to all files, so
their loudness relative to each other remains unchanged,
but the average album loudness is normalized)
/m <i> - modify suggested MP3 gain by integer i
/d <n> - modify suggested dB gain by floating-point n
/c - ignore clipping warning when applying gain
/o - output is a database-friendly tab-delimited list
/t - writes modified data to temp file, then deletes original instead of modifying bytes in original file
/q - Quiet mode: no status messages
/p - Preserve original file timestamp
/x - Only find max. amplitude of file
/f - Assume input file is an MPEG 2 Layer III file (i.e. don't check for mis-named Layer I or Layer II files)
/? or /h - show this message
/s c - only check stored tag info (no other processing)
/s d - delete stored tag info (no other processing)
/s s - skip (ignore) stored tag info (do not read or write tags)
/s r - force re-calculation (do not read tag info)
/s i - use ID3v2 tag for MP3 gain info
/s a - use APE tag for MP3 gain info (default)
/u - undo changes made (based on stored tag info)
/w - "wrap" gain change if gain+change > 255 or gain+change < 0 (use "/? wrap" switch for a complete explanation)
If you specify /r and /a, only the second one will work
If you do not specify /c, the program will stop and ask before
applying gain change to a file that might clip
Code: Select all
mp3gain.exe /q /c /s d /s s /r /k /g <89.0> /SetTimer 60
Code: Select all
F1::Run, cmd /k mp3gain.exe /q /c /s d /s s /r /k /g 89.0 My.mp3 ; press F1 to run ...
Also wenn mein Musikordner "D:\Music" ist, dann so?BoBo wrote:Die pfeilklammern in der beschreibung zur syntax kennzeichnen variable parameter, heißt, im verwendeten befehl zur ausführung fallen die klammern weg. Ich würde zur umwandlung immer ein separates eingangsverzeichnis verwenden. Nach umwandlung dann die datei in den zielordner verschieben. Damit entfällt zudem die thematik der unterscheidung zw bereits konvertierten und unbehandelten dateien. Pfade sind entsprechend anzupassen!
Code: Select all
F1::Run, cmd /k mp3gain.exe /q /c /s d /s s /r /k /g 89.0 My.mp3 ; press F1 to run ...
Code: Select all
F1::Run, cmd /k mp3gain.exe /q /c /s d /s s /r /k /g 89.0 D:\Music ; press F1 to run ...
Code: Select all
mp3gP := "D:\MP3G" ; pfad zu mp3gain/root path
SPath := "D:\MP3G\ToDo" ; pfad eingangsverzeichnis/source path
DPath := "D:\Music" ; pfad zum zielverzeichnis/destination path
param := " /q /c /s d /s s /r /k /g 89.0 " ; mp3g parameter/parameters
F3:: ; zum starten drücke F3/press F3 to start
SetTimer, Check4Files, 5000 ; check alle 5 sek/sec
Return
Check4Files:
if !FileExist(SPath . "\*.mp3") ; datei existiert nicht .../file doesn't exist
Return ; zurück auf Los!/... back to sender.
Loop, Files, % SPath . "\*.mp3" ; datei verarbeitung/file processing
{
RunWait, % "cmd /k " . mp3gP . "\" . mp3gain.exe " . param . " " . SPath . "\" . A_LoopFileName ; datei mp3gainen/convert file
FileMove, % SPath . "\" . A_LoopFileName, % DPath . "\" . A_LoopFileName, 0 ; nach konvertierung verschieben (nicht überschreiben)/move it (won't override)
SoundBeep ; make some noize!
}
Return
Wenn du ausschließlich einen einzelnen ordner beackern willst, kannst du unbearbeitete auf read/write-attribut suchen, und mit/nach konvertierung auf readonly setzen. Good luckThouldre wrote:Danke! Wie ich sehe hast du daraus ein AHK Skript gemacht. Also doch nicht mehr via CMD? Warum der Wandel? Außerdem hätte ich noch einige Fragen: Nö, kein wandel. Mit dem hotkey und der ausführung von mp3gain via CMD über Run[Wait] war das immer ein AHKscript.
- Läuft das Skript automatisch bis zum nächsten reboot weiter, wenn man es einmal gestartet hat? ; reboot? Reload, ja.
- Bzgl. des "D:\MP3G" Ordners: Wird dieser konstant auf neue Dateien überwacht oder wird es der "D:\Music" Ordner? Weder noch, überwacht wird "D:\MP3G\ToDo"
- Wird nur bei neuen Dateien getriggert oder auch bei veränderten? Dort, bei allen MP3s die drin liegen. Deswegen getrennte ordner
Da bin ich bereits dran. Allerdings ist das setzen von file attributen (hier für mp3s) scheinbar nicht so ohne weiteres (3rd party tools) möglich. Werde dazu in einem separaten thread hilfe anfragen. Bei "normalen" dateien wären das wohl nur zwei zeilen zusätzlicher code gewesen.Thouldre wrote:Ich habe die letzten drei Stunden versucht das hinzukriegen, aber leider nicht geschafft. Mir fehlt anscheinend zu viel Vorwissen...
Naja, dann muss ich wohl mit dem ursprünglichen Skript zurechtkommen. Danke für deine Hilfe, ohne dich wäre ich nicht einmal so weit gekommen! Ich weiß das sehr zu schätzen!
Solltest du aber irgendwann mal die Zeit und Lust finden das Skript auf einen einzelnen Ordner anzupassen, würde mich das sehr freuen!
Danke das du weitermachst!! Es würde mich sehr freuen, wenn das klappt!BoBo wrote:Da bin ich bereits dran. Allerdings ist das setzen von file attributen (hier für mp3s) scheinbar nicht so ohne weiteres (3rd party tools) möglich. Werde dazu in einem separaten thread hilfe anfragen. Bei "normalen" dateien wären das wohl nur zwei zeilen zusätzlicher code gewesen.
Spoiler
Weil das eine simplere Lösung im Alltag wäre, die ich auch meinem Bruder einrichten kann ohne dass der Technikmuffel was davon mitbekommen muss.BoBo wrote:Für mich bleibt allerdings unverständlich warum du mit der zwei folder-lösung nicht glücklich bist (schon aus sicherheitsgründen, denn kaputt probiert is schnell). Aus dem web lädt das system per default dateien in den download-folder (und lokal kannste deine sammlungen eben auch da reinkippen). Dort sollte dann das script auf eingehende dateien lauern. Nach konvertierung wird eh in einen wunsch-ordner verschoben. So what?[/color]
Users browsing this forum: Rohwedder and 180 guests