Форум РадиоКот https://radiokot.ru/forum/ |
|
Стрим аудио сигнала с ПК через сокет на сервер. На С++ https://radiokot.ru/forum/viewtopic.php?f=24&t=175034 |
Страница 1 из 1 |
Автор: | stinger502 [ Вс янв 17, 2021 18:37:30 ] |
Заголовок сообщения: | Стрим аудио сигнала с ПК через сокет на сервер. На С++ |
Подскажите пожалуйста, как реализовать стрим аудио либо с микрофона ПК, либо из WAV-файла через сокет на сервер. Пишу в С++ проект. Есть клиентский сокет и сервер. Через сокет на сервер удается переслать строку данных. Требуется захватить аудио с микрофона ПК или из WAV-файла и также отправить через сокет на сервер. Как это сделать не могу понять. Подскажите пожалуйста. клиентский сокет брал тут - https://docs.microsoft.com/en-us/window ... lient-code сервер брал тут - https://docs.microsoft.com/en-us/window ... erver-code Заранее спасибо. |
Автор: | Eddy_Em [ Вс янв 17, 2021 21:12:33 ] |
Заголовок сообщения: | Re: Стрим аудио сигнала с ПК через сокет на сервер. На С++ |
А что тут сложного-то? Вообще даже не нужно привлекать никаких С++. Все делается элементарно sox'ом через ssh. Если же так хочется на сях или крестах делать, то просто открываем /dev/dsp, читаем оттуда и отправляем это в сокет. |
Автор: | kolobok0 [ Пн янв 18, 2021 02:32:58 ] |
Заголовок сообщения: | Re: Стрим аудио сигнала с ПК через сокет на сервер. На С++ |
Если совсем просто, без программирования то смотрим магические слова типо gstreamer или ffmpeg4. делаем сначала консольный вариант. Если захотелось и дальше изобразить на си плас пласе - то переход там прост. можно ничего не делать а глянуть в контейнерах на докерхабе нужный софт. выдать команду докеру и через несколько секунд наслаждаться... векторов море, было бы желание (круглый) |
Автор: | stinger502 [ Пн янв 18, 2021 12:15:36 ] |
Заголовок сообщения: | Re: Стрим аудио сигнала с ПК через сокет на сервер. На С++ |
Извиняюсь, дорогие форумчане! Не указал, что под виндой это пытаюсь сделать. |
Автор: | stinger502 [ Ср янв 20, 2021 22:12:12 ] |
Заголовок сообщения: | Re: Стрим аудио сигнала с ПК через сокет на сервер. На С++ |
подниму тему, не теряя надежду)))) возьму консультацию по своему вопросу, с разумной оплатой, в личку. |
Автор: | Мурик [ Чт янв 21, 2021 14:25:23 ] |
Заголовок сообщения: | Re: Стрим аудио сигнала с ПК через сокет на сервер. На С++ |
Функцией waveInOpen открываете аудио устройство ввода и подготавливаете буферы. Код: If waveInOpen_(@ioswi,#WAVE_MAPPER+NumInDev-2,@ios,@iosInOutProc(),0,#CALLBACK_FUNCTION) = #MMSYSERR_NOERROR В CALLBACK функции принимаете данные ; готовим буфeры For i=0 To iosNBuf iosbufIN(i)\lpData = InBuf(i) iosbufIN(i)\dwBufferLength = iosBufSize waveInPrepareHeader_(ioswi, @iosbufIN(i), SizeOf(WAVEHDR));подг. блок waveInAddBuffer_(ioswi,iosbufIN(i),SizeOf(WAVEHDR)) Next Else ProcedureReturn #iosERR EndIf Код: ;процедура обновления буферов в режиме сквозного канала, в процессе выполняет внешнюю функцию В буфере будут звуковые данные с микрофона. Отправляете их на сервер.
Procedure iosInOutProc( hwi.l, uMsg.l, dwInstance.l, dwParam1.l, dwParam2.l) If iosProcessStart=1 If uMsg=#MM_WIM_DATA For i=0 To iosNBuf If (iosbufIN(i)\dwFlags & #WHDR_DONE) = #WHDR_DONE waveInAddBuffer_(ioswi, @iosbufIN(i), SizeOf(WAVEHDR));принять данные с микшера EndIf Next EndIf Else iosProcessStart=-1 EndIf EndProcedure |
Автор: | roman.com [ Пн мар 15, 2021 00:28:45 ] |
Заголовок сообщения: | Re: Стрим аудио сигнала с ПК через сокет на сервер. На С++ |
Не знаю как на С++... знаю как на Java )) ![]() |
Страница 1 из 1 | Часовой пояс: UTC + 3 часа |
Powered by phpBB © 2000, 2002, 2005, 2007 phpBB Group http://www.phpbb.com/ |