hey liebe community
also
ich will jetz ma anfangen mich mit der bass.au3 zu beschäftigen
jetz dacht ich mir ich mach so n kleines mix tool
wie kann ich das anstellen das ich 2 lieder mixe
mit channels?
oda muss ich das anders machen
kleiner mixer mit bass.au3
-
- [ gelöst ]
-
yxyx -
26. Juni 2010 um 17:52 -
Geschlossen -
Erledigt
-
-
Hi
Um 2 Lieder gleichzeitig abzuspielen brauchst du nur 2 Streams zu starten:
Spoiler anzeigen
[autoit]#include "Bass.au3"
[/autoit] [autoit][/autoit] [autoit]$hGui = GUICreate("", 150, 120)
[/autoit] [autoit][/autoit] [autoit]
$hSlider1 = GUICtrlCreateSlider(35, 10, 30, 100, 0x0006)
$hSlider2 = GUICtrlCreateSlider(85, 10, 30, 100, 0x0006)
GUISetState()_BASS_Startup()
[/autoit] [autoit][/autoit] [autoit]_BASS_Init(0, -1, 44100, 0, "")
[/autoit] [autoit][/autoit] [autoit]$sFile1 = FileOpenDialog("Open...", "", "playable formats (*.MP3;*.MP2;*.MP1;*.OGG;*.WAV;*.AIFF;*.AIF)")
[/autoit] [autoit][/autoit] [autoit]
$sFile2 = FileOpenDialog("Open...", "", "playable formats (*.MP3;*.MP2;*.MP1;*.OGG;*.WAV;*.AIFF;*.AIF)")$hStream1 = _BASS_StreamCreateFile(False, $sFile1, 0, 0, 0)
[/autoit] [autoit][/autoit] [autoit]
$hStream2 = _BASS_StreamCreateFile(False, $sFile2, 0, 0, 0)_BASS_ChannelPlay($hStream1, True)
[/autoit] [autoit][/autoit] [autoit]
_BASS_ChannelPlay($hStream2, True)While _BASS_ChannelIsActive($hStream1)
[/autoit] [autoit][/autoit] [autoit]
$msg = GUIGetMsg()
Switch $msg
Case -3
ExitLoop
Case $hSlider1
_BASS_ChannelSetAttribute($hStream1, $BASS_ATTRIB_VOL, (100 - GUICtrlRead($hSlider1)) / 100)
Case $hSlider2
_BASS_ChannelSetAttribute($hStream2, $BASS_ATTRIB_VOL, (100 - GUICtrlRead($hSlider2)) / 100)
EndSwitch
Sleep(20)
WEnd_BASS_StreamFree($hStream1)
[/autoit] [autoit][/autoit] [autoit]
_BASS_StreamFree($hStream2)_BASS_Free()
[/autoit]Wenn du mit dem zusammengemixten Signal noch was machen möchtest, z.B. Gesammtlautstärke abfragen, dann solltest du _BASS_Mixer_StreamCreate und _BASS_Mixer_StreamAddChannel verwenden.
Spoiler anzeigen
[autoit]#include "Bass.au3"
[/autoit] [autoit][/autoit] [autoit]
#include "BassMix.au3"$hGui = GUICreate("", 150, 120)
[/autoit] [autoit][/autoit] [autoit]
$hSlider1 = GUICtrlCreateSlider(35, 10, 30, 100, 0x0006)
$hSlider2 = GUICtrlCreateSlider(85, 10, 30, 100, 0x0006)
GUISetState()_BASS_Startup()
[/autoit] [autoit][/autoit] [autoit]
_BASS_MIX_Startup()_BASS_Init(0, -1, 44100, 0, "")
[/autoit] [autoit][/autoit] [autoit]$sFile1 = FileOpenDialog("Open...", "", "playable formats (*.MP3;*.MP2;*.MP1;*.OGG;*.WAV;*.AIFF;*.AIF)")
[/autoit] [autoit][/autoit] [autoit]
$sFile2 = FileOpenDialog("Open...", "", "playable formats (*.MP3;*.MP2;*.MP1;*.OGG;*.WAV;*.AIFF;*.AIF)")$hStream1 = _BASS_StreamCreateFile(False, $sFile1, 0, 0, $BASS_STREAM_DECODE)
[/autoit] [autoit][/autoit] [autoit]
$hStream2 = _BASS_StreamCreateFile(False, $sFile2, 0, 0, $BASS_STREAM_DECODE)$hMixer = _BASS_Mixer_StreamCreate(44100, 2, 0)
[/autoit] [autoit][/autoit] [autoit]
_BASS_Mixer_StreamAddChannel($hMixer, $hStream1, 0)
_BASS_Mixer_StreamAddChannel($hMixer, $hStream2, 0)_BASS_ChannelPlay($hMixer, True)
[/autoit] [autoit][/autoit] [autoit]While _BASS_ChannelIsActive($hMixer)
[/autoit] [autoit][/autoit] [autoit]
$msg = GUIGetMsg()
Switch $msg
Case -3
ExitLoop
Case $hSlider1
_BASS_ChannelSetAttribute($hStream1, $BASS_ATTRIB_VOL, (100 - GUICtrlRead($hSlider1)) / 100)
Case $hSlider2
_BASS_ChannelSetAttribute($hStream2, $BASS_ATTRIB_VOL, (100 - GUICtrlRead($hSlider2)) / 100)
EndSwitch
Sleep(20)
WEnd_BASS_StreamFree($hStream1)
[/autoit] [autoit][/autoit] [autoit]
_BASS_StreamFree($hStream2)_BASS_Free()
[/autoit]mfgE
-
das nenn ich ma ne klare antwort
danke