Hey@All
Da es im Internet viele Programm gibt, die von einer *.wav die Tonhöhe ändern, wollte ich fragen, ob man das auch mit AutoIt realisieren kann. Wahrscheinlich kann man dies mit der Bass.dll machen, aber bis jetzt habe ich darüber noch nichts nützliches gefunden. Währe nett wenn ihr mir helfen könntet.
MfG AntiSpeed
Tonhöhe veränderen (mit Bass.dll?)
-
- [ gelöst ]
-
AntiSpeed -
23. Juli 2010 um 14:43 -
Geschlossen -
Erledigt
-
-
-
Kannst du mir kein Bsp. geben wie man das ändern kann?
Wäre nett von dir . -
Ich hab das hier in der Bass Sammlung gefunden.
Aber bei mit summt dass nur und es kommt kein vernünfitger Ton. Aber das leigt entweder an der Bass oder an meinem Rechner.
-
Das brummt solange bis es geladen hat.
Kann man das Brummen wegmachen?Ich möchte ja die "Tonhöhe" verändern, also das Lied höher oder tiefer machen. Vlt hast du mich ja falsch verstanden...
-
Sprenger hats schon in seinem Vorpost richtig erkannt.
ZitatWenn nicht findet sich in der BassFX bestimmt etwas
http://www.autoitscript.com/forum/index.php?showtopic=83481
ZitatBassFX (By eukalyptus/BrettF)
An extension providing several effects, including tempo & pitch control. -
Die Pitch.au3 verlangsamt/verschnellert aber "nur" die Datei.
-
Die Pitch.au3 verlangsamt/verschnellert aber "nur" die Datei.
Pitch (englisch: to pitch = werfen, neigen, stimmen, pitch = Tonhöhe, Neigungswinkel) -
Normalerweise wird beim Pitchen eine Sounddatei mit einer anderen Samplerate abgespielt = Tonhöhe UND Geschwindigkeit verändern sich
Bei der bassfx.dll gibt es 3 verschiedene Varianten:
BASS_ATTRIB_TEMPO_FREQ = Verändert nur die Samplerate beim Abspielen = Ton wird langsamer und tiefer
BASS_ATTRIB_TEMPO = Kombination aus Timestreching und Samplerate = Ton wird langsamer bei gleichbleibender Tonhöhe
BASS_ATTRIB_TEMPO_PITCH = Kombination aus Timestreching und Samplerate = Tonhöhe verändert sich, Geschwindigkeit bleibt gleichSpoiler anzeigen
[autoit]#include <Bass.au3>
[/autoit] [autoit][/autoit] [autoit]
#include <BassConstants.au3>
#include <BassFX.au3>
#include <BassFXConstants.au3>HotKeySet("{UP}", "_Pitch")
[/autoit] [autoit][/autoit] [autoit]
HotKeySet("{DOWN}", "_Pitch")
HotKeySet("{LEFT}", "_Pitch")
HotKeySet("{RIGHT}", "_Pitch")HotKeySet("{ESC}", "_Exit")
[/autoit] [autoit][/autoit] [autoit]Global $sFile = FileOpenDialog("Open...", "", "playable formats (*.MP3;*.MP2;*.MP1;*.OGG;*.WAV;*.AIFF;*.AIF)")
[/autoit] [autoit][/autoit] [autoit]
Global $hStream, $hTempo
Global $iPitch = 0
Global $iTempo = 0_BASS_STARTUP("BASS.dll")
[/autoit] [autoit][/autoit] [autoit]
_BASS_FX_Startup("bass_fx.dll")_BASS_Init(0, -1, 44100, 0, "")
[/autoit] [autoit][/autoit] [autoit]$hStream = _BASS_StreamCreateFile(False, $sFile, 0, 0, $BASS_STREAM_DECODE)
[/autoit] [autoit][/autoit] [autoit]
$hTempo = _BASS_FX_TempoCreate($hStream, $BASS_SAMPLE_LOOP)_BASS_ChannelPlay($hTempo, 1)
[/autoit] [autoit][/autoit] [autoit][/autoit] [autoit]While _BASS_ChannelIsActive($hTempo)
[/autoit] [autoit][/autoit] [autoit]
ToolTip("Pitch: " & $iPitch & " semitones" & @CRLF & "Tempo: " & $iTempo & " percent")
Sleep(100)
WEnd_Exit()
[/autoit] [autoit][/autoit] [autoit][/autoit] [autoit]Func _Exit()
[/autoit] [autoit][/autoit] [autoit]
_BASS_StreamFree($hStream)
_BASS_Free()
Exit
EndFunc ;==>_EXITFunc _Pitch()
[/autoit]
Switch @HotKeyPressed
Case "{UP}"
$iPitch += 1
_BASS_ChannelSetAttribute($hTempo, $BASS_ATTRIB_TEMPO_PITCH, $iPitch)
Case "{DOWN}"
$iPitch -= 1
_BASS_ChannelSetAttribute($hTempo, $BASS_ATTRIB_TEMPO_PITCH, $iPitch)
Case "{LEFT}"
$iTempo -= 1
_BASS_ChannelSetAttribute($hTempo, $BASS_ATTRIB_TEMPO, $iTempo)
Case "{RIGHT}"
$iTempo += 1
_BASS_ChannelSetAttribute($hTempo, $BASS_ATTRIB_TEMPO, $iTempo)
EndSwitch
EndFunc ;==>_PitchmfgE
-
Du bist genialer als genial!