Jump to content
Sign in to follow this  
Lord_Doominik

forward a soundsignal to the microphone

Recommended Posts

Lord_Doominik

i want to know, if i could forward a soundsignal (maybe an mp3-file) directly to the output of the microphone... sth. like the SoundPlay() function, just for the microinput... or do you know, if there is a way to do sth like that?

i need this, because friends of me want to make a dualshoutcast. they want to play sounds, while recording, over hotkeys... i made a program for them to play sounds over this hotkeys, but thats bad in a dualcast, cause they need to record with stereomix. so they hear themselves with delay.

Edited by Lord_Doominik

Share this post


Link to post
Share on other sites
PsaltyDS

...forward a soundsignal (maybe an mp3-file) directly to the output of the microphone...

...they want to play sounds, while recording, over hotkeys...

May be a language barrier here... else some serious confusion... :)


Valuater's AutoIt 1-2-3, Class... Is now in Session!For those who want somebody to write the script for them: RentACoder"Any technology distinguishable from magic is insufficiently advanced." -- Geek's corollary to Clarke's law

Share this post


Link to post
Share on other sites
Lord_Doominik

May be a language barrier here... else some serious confusion... :)

hm... hard to say, but i want to forward the sound as it would be said by somebody with a microphone. eventually an example would help:

if i say sth via microphone there is an input (my voice) at the soundcard and an output (my voice which will be sent to somebody in skype or teamspeak, or maybe to an recording program). i want to send a sound (a mp3 eg) over this output signal, but not via stereo mix.

with the second thing i mean, that they want to play sounds over hotkeys (eg f1 or f2), which they want to record. if they play them, they dont go over the microphone output, so they wont be recorded, if stereomix is not activated.

EDIT:

found sth interesting... maybe this would help me, solve my problem, if you could choose stereomix and microphone as a source. then i could just switch the recording source from microphone to stereo mix before playing the sound and after playing the sound back to microphone.

EDIT2:

ok, i found a very bad way, but it works more or less. when the hotkey for the sound is pressed the program switches the recording input device from microphone to stereo mix and back, after playing the sound. i solved it just with this, but i think it is very crappy and a very bad solution ^^... another problem is, that i have win2k and i dont think, that this will work with winxp or other organisation systems ^^. is there at least a way to open your windows recording control panel via autoit?

heres the code, eventually you understand me than better:

; Name: LAC-Player.au3
; Author: Dominik Weinrich
; Version: 1.0

#Include <Misc.au3>

WinWaitClose("TPT Music Hotkeys GUI")
MsgBox(0, "Recording Control", "Please ope your Windows Recording Control Panel and do not close it while running the program")
WinWait("Recording Control")

$stereomix = ControlGetHandle("Recording Control", "&Auswählen", 2000)
$microphone = ControlGetHandle("Recording Control", "&Auswählen", 3000)

While 1
    If WinExists("Recording Control") == 0 Then
        MsgBox(16, "Error", "Error: Your Recording Control Panel isn't opened anymore.")
        Run(@ScriptDir & "\LAC-Player.exe")
        Exit
    EndIf
    If _IsPressed("70") Then
        ControlCommand("Recording Control", "&Auswählen", $stereomix, "Check")
        SoundPlay(IniRead(@ScriptDir & "\Hotkeys.txt", "Hotkeys", "0", "error"), 1)
        ControlCommand("Recording Control", "&Auswählen", $microphone, "Check")
    EndIf
    If _IsPressed("71") Then
        ControlCommand("Recording Control", "&Auswählen", $stereomix, "Check")
        SoundPlay(IniRead(@ScriptDir & "\Hotkeys.txt", "Hotkeys", "1", "error"), 1)
        ControlCommand("Recording Control", "&Auswählen", $microphone, "Check")
    EndIf
    If _IsPressed("72") Then
        ControlCommand("Recording Control", "&Auswählen", $stereomix, "Check")
        SoundPlay(IniRead(@ScriptDir & "\Hotkeys.txt", "Hotkeys", "2", "error"), 1)
        ControlCommand("Recording Control", "&Auswählen", $microphone, "Check")
    EndIf
    If _IsPressed("73") Then
        ControlCommand("Recording Control", "&Auswählen", $stereomix, "Check")
        SoundPlay(IniRead(@ScriptDir & "\Hotkeys.txt", "Hotkeys", "3", "error"), 1)
        ControlCommand("Recording Control", "&Auswählen", $microphone, "Check")
    EndIf
    If _IsPressed("74") Then
        ControlCommand("Recording Control", "&Auswählen", $stereomix, "Check")
        SoundPlay(IniRead(@ScriptDir & "\Hotkeys.txt", "Hotkeys", "4", "error"), 1)
        ControlCommand("Recording Control", "&Auswählen", $microphone, "Check")
    EndIf
    If _IsPressed("75") Then
        ControlCommand("Recording Control", "&Auswählen", $stereomix, "Check")
        SoundPlay(IniRead(@ScriptDir & "\Hotkeys.txt", "Hotkeys", "5", "error"), 1)
        ControlCommand("Recording Control", "&Auswählen", $microphone, "Check")
    EndIf
    If _IsPressed("76") Then
        ControlCommand("Recording Control", "&Auswählen", $stereomix, "Check")
        SoundPlay(IniRead(@ScriptDir & "\Hotkeys.txt", "Hotkeys", "6", "error"), 1)
        ControlCommand("Recording Control", "&Auswählen", $microphone, "Check")
    EndIf
    If _IsPressed("77") Then
        ControlCommand("Recording Control", "&Auswählen", $stereomix, "Check")
        SoundPlay(IniRead(@ScriptDir & "\Hotkeys.txt", "Hotkeys", "7", "error"), 1)
        ControlCommand("Recording Control", "&Auswählen", $microphone, "Check")
    EndIf
    If _IsPressed("78") Then
        ControlCommand("Recording Control", "&Auswählen", $stereomix, "Check")
        SoundPlay(IniRead(@ScriptDir & "\Hotkeys.txt", "Hotkeys", "8", "error"), 1)
        ControlCommand("Recording Control", "&Auswählen", $microphone, "Check")
    EndIf
    If _IsPressed("79") Then
        ControlCommand("Recording Control", "&Auswählen", $stereomix, "Check")
        SoundPlay(IniRead(@ScriptDir & "\Hotkeys.txt", "Hotkeys", "9", "error"), 1)
        ControlCommand("Recording Control", "&Auswählen", $microphone, "Check")
    EndIf
    If _IsPressed("7A") Then
        ControlCommand("Recording Control", "&Auswählen", $stereomix, "Check")
        SoundPlay(IniRead(@ScriptDir & "\Hotkeys.txt", "Hotkeys", "10", "error"), 1)
        ControlCommand("Recording Control", "&Auswählen", $microphone, "Check")
    EndIf
    If _IsPressed("7B") Then
        ControlCommand("Recording Control", "&Auswählen", $stereomix, "Check")
        SoundPlay(IniRead(@ScriptDir & "\Hotkeys.txt", "Hotkeys", "11", "error"), 1)
        ControlCommand("Recording Control", "&Auswählen", $microphone, "Check")
    EndIf
WEnd
Edited by Lord_Doominik

Share this post


Link to post
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now
Sign in to follow this  

×