![]() |
An lame.exe Bitratevariable übergeben?
Hallo,
versuche schon seit Gestern an die lame.exe eine Bitravariable zu übergeben, aber es gelingt mir nicht. Also zur Zeit encodiere ich die mp3's wie folgt:
Delphi-Quellcode:
Den Parameter "-h" will ich durch die Variable "bitrate" ersetzen, und da komm ich nicht weiter.
//var bitrate: String;
begin //bitrate:='-b 128'; BASS_Encode_Start(chan, Pointer(PWideString('lame -h - "' + Verzeichnis + '"')), BASS_UNICODE, nil, nil); end; Hab schon so versucht und zig anders... also klappt nichts. Wer hilft mir da weiter?
Delphi-Quellcode:
... 'lame "'bitrate'" ...
|
AW: An lame.exe Bitratevariable übergeben?
![]() Zitat:
|
AW: An lame.exe Bitratevariable übergeben?
Hm.... :gruebel:
hilft mir irgendwie nicht weiter, -b192 ist doch keine Variable und die will ich grade. :gruebel: |
AW: An lame.exe Bitratevariable übergeben?
Delphi-Quellcode:
var bitrate: integer;
begin bitrate := 128; BASS_Encode_Start(chan, Pointer(PWideString(Format('lame -b%d -"%s"',[bitrate, Verzeichnis]))), BASS_UNICODE, nil, nil); |
AW: An lame.exe Bitratevariable übergeben?
Ach so... ok ist schon verständlicher.
Und wenn ich "-b" durch "-h" ersetzen will und dabei hat "-h" keine Bitrate? :gruebel: Das ist nämlich so: Automatische Bitrate:
Delphi-Quellcode:
BASS_Encode_Start(chan, Pointer(PWideString('lame -h - "' + Verzeichnis + '"')), BASS_UNICODE, nil, nil);
Und das hier manuelle:
Delphi-Quellcode:
BASS_Encode_Start(chan, Pointer(PWideString('lame -b 128 - "' + Verzeichnis + '"')), BASS_UNICODE, nil, nil);
Also die Parameter "-h" und "-b" müssen wohl auch Variablen sein, oder?
Delphi-Quellcode:
bitrate:='-h';
oder bitrate:='-b 128'; |
AW: An lame.exe Bitratevariable übergeben?
Delphi-Quellcode:
type TBitrate = (brAutomatic, br128, br192); //nur als Beispiel, sollte noch erweitert werden
procedure MachWas(bitrate: TBitrate); var brString: string; begin case bitrate of br128: brString := '-b 128'; br192: brString := '-b 192'; else //brAutomatic oder ungültiger Wert brString := '-h'; end; BASS_Encode_Start(chan, Pointer(PWideString(Format('lame %s -"%s"',[brString, Verzeichnis]))), BASS_UNICODE, nil, nil); |
AW: An lame.exe Bitratevariable übergeben?
:shock: :roteyes:
Geht das nicht einfacher? Ok danke, ich schau ma was es sich machen lässt. |
AW: An lame.exe Bitratevariable übergeben?
Klar geht das auch einfacher.
Delphi-Quellcode:
Ist halt nicht so schön strukturiert ;)
var bitrate: integer;
... if bitrate > 0 then brString := '-b ' + IntToStr(bitrate) else brString := '-h'; |
AW: An lame.exe Bitratevariable übergeben?
Ok das ist klar, aber mein Problem ist wie setze ich die Variable "bitrate" in die Kommandozeile von lame rein?
Wie gesagt hab schon alles mögliche versucht. |
AW: An lame.exe Bitratevariable übergeben?
Mit Format(), wie oben geschrieben.
|
Alle Zeitangaben in WEZ +1. Es ist jetzt 15:48 Uhr. |
Powered by vBulletin® Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024-2025 by Thomas Breitkreuz