mirror of
https://github.com/Swiftgram/Telegram-iOS.git
synced 2026-01-11 07:07:53 +00:00
- Use VoiceProcessingIO on OS X 10.7 and higher
- Apply AGC after AEC/NS to work around loud echo on desktops - Fixed (?) mic muting on Windows
This commit is contained in:
@@ -61,12 +61,13 @@ AudioInputWASAPI::AudioInputWASAPI(std::string deviceID){
|
||||
audioClient=NULL;
|
||||
captureClient=NULL;
|
||||
thread=NULL;
|
||||
started=false;
|
||||
|
||||
SetCurrentDevice(deviceID);
|
||||
}
|
||||
|
||||
AudioInputWASAPI::~AudioInputWASAPI(){
|
||||
if(audioClient && isRecording){
|
||||
if(audioClient && started){
|
||||
audioClient->Stop();
|
||||
}
|
||||
|
||||
@@ -109,15 +110,14 @@ void AudioInputWASAPI::Start(){
|
||||
thread=CreateThread(NULL, 0, (LPTHREAD_START_ROUTINE)AudioInputWASAPI::StartThread, this, 0, NULL);
|
||||
}
|
||||
|
||||
if(audioClient)
|
||||
started=true;
|
||||
if(audioClient){
|
||||
audioClient->Start();
|
||||
}
|
||||
}
|
||||
|
||||
void AudioInputWASAPI::Stop(){
|
||||
isRecording=false;
|
||||
|
||||
if(audioClient)
|
||||
audioClient->Stop();
|
||||
}
|
||||
|
||||
bool AudioInputWASAPI::IsRecording(){
|
||||
@@ -368,7 +368,8 @@ void AudioInputWASAPI::RunThread() {
|
||||
memcpy(remainingData+remainingDataLen, data, dataLen);
|
||||
remainingDataLen+=dataLen;
|
||||
while(remainingDataLen>960*2){
|
||||
InvokeCallback(remainingData, 960*2);
|
||||
if(isRecording)
|
||||
InvokeCallback(remainingData, 960*2);
|
||||
memmove(remainingData, remainingData+(960*2), remainingDataLen-960*2);
|
||||
remainingDataLen-=960*2;
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user