1 / 1 / 0
Регистрация: 06.06.2009
Сообщений: 35

голосовой чат

19.03.2011, 09:03. Показов 11935. Ответов 8
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
Всем привет! Решил написать голосовой чат по локальной сети, но в сетевом программировании не очень разбираюсь. Посоветуйте с чего начать (документация, книги), какие протоколы использовать. Спасиба
0
Programming
Эксперт
39485 / 9562 / 3019
Регистрация: 12.04.2006
Сообщений: 41,671
Блог
19.03.2011, 09:03
Ответы с готовыми решениями:

Многопользовательский голосовой чат
Здравствуйте, нужна помощь в написании многопользовательского голосового чата. Я создал сервер на С++, и чат на С#. Сейчас у меня...

Голосовой плеер с вводным словом
Добрый день!/вечер! История: Делаю плеер на голосовом управлении(пример кода брал...

Голосовой ввод и вывод текста в RichTextBox
Есть ли тут знающие люди, как реализовать голосовой ввод и вывод текста? Есть RichTextBox в который собственно и должен записываться текст,...

8
46 / 46 / 3
Регистрация: 04.02.2011
Сообщений: 199
19.03.2011, 10:06
Для записи аудио используй NAudio.
0
1 / 1 / 0
Регистрация: 06.06.2009
Сообщений: 35
19.03.2011, 20:28  [ТС]
Цитата Сообщение от mak326428 Посмотреть сообщение
Для записи аудио используй NAudio.
Не могли б расказать подробнее
0
 Аватар для m0nax
1274 / 975 / 113
Регистрация: 12.01.2010
Сообщений: 1,971
19.03.2011, 20:38
NAudio же кажись не умеет проигрывать прямо из потока, только когда все догрузится полностью..
Хотя выбора то не особо конечно, если чего напильником его..
0
1 / 1 / 0
Регистрация: 06.06.2009
Сообщений: 35
19.03.2011, 22:21  [ТС]
Может подскажете алгоритм развязки этой задачи
0
46 / 46 / 3
Регистрация: 04.02.2011
Сообщений: 199
20.03.2011, 11:04
Wolandello, скачай бибилиотеку NAudio.
Записывать с помощью неё так:
C#
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
using NAudio.Wave;
using NAudio.FileFormats;
using NAudio.CoreAudioApi;
using NAudio;
 
namespace SpeechProject
{
    public partial class Form1 : Form
    {
        // WaveIn - поток для записи
        WaveIn waveIn;
        //Класс для записи в файл
        WaveFileWriter writer;
                //Имя файла для записи
        string outputFilename = "имя_файла.wav";
        
        public Form1()
        {
            InitializeComponent();        
        }
        //Получение данных из входного буфера и обработка полученных с микрофона данных
        void waveIn_DataAvailable(object sender, WaveInEventArgs e)
        {
            if (this.InvokeRequired)
            {
                this.BeginInvoke(new EventHandler<WaveInEventArgs>(waveIn_DataAvailable), sender, e);
            }
            else
            {
                //Записываем данные из буфера в файл
                writer.WriteData(e.Buffer, 0, e.BytesRecorded);
            }
        }
        //Завершаем запись
        void StopRecording()
        {
            MessageBox.Show("StopRecording");
            waveIn.StopRecording();
        }
        //Окончание записи
        private void waveIn_RecordingStopped(object sender, EventArgs e)
        {
            if (this.InvokeRequired)
            {
                this.BeginInvoke(new EventHandler(waveIn_RecordingStopped), sender, e);
            }
            else
            {
                waveIn.Dispose();
                waveIn = null;
                writer.Close();
                writer = null;
            }
        }
                //Начинаем запись
        private void button1_Click(object sender, EventArgs e)
        {
        try
        {
            MessageBox.Show("Start Recording");
            waveIn = new WaveIn();
            //Дефолтное устройство для записи (если оно имеется)
            waveIn.DeviceNumber = 0;
           //Прикрепляем к событию DataAvailable обработчик, возникающий при наличии записываемых данных
            waveIn.DataAvailable += waveIn_DataAvailable;
            //Прикрепляем обработчик завершения записи
            waveIn.RecordingStopped += new EventHandler(waveIn_RecordingStopped);
            //Формат wav-файла - принимает параметры - частоту дискретизации и количество каналов(здесь mono)
            waveIn.WaveFormat = new WaveFormat(8000, 1);
            //Инициализируем объект WaveFileWriter
            writer = new WaveFileWriter(outputFilename, waveIn.WaveFormat);
            //Начало записи
            waveIn.StartRecording();
            }
            catch (Exception ex)
            {MessageBox.Show(ex.Message)}
        }
                //Прерываем запись
        private void button2_Click(object sender, EventArgs e)
        {
            if (waveIn != null)
            {
                StopRecording();
            }
        }
  }
Не забудь включить микрофон.
1
_
2364 / 1243 / 78
Регистрация: 28.10.2009
Сообщений: 4,331
20.03.2011, 11:37
Wolandello, на сайте этой библиотеки -NAudio- есть рабочий пример передачи звука по сети
1
1 / 1 / 0
Регистрация: 06.06.2009
Сообщений: 35
20.03.2011, 19:26  [ТС]
А какой протокол необходимо использовать для передачи звука по сети? Нужно ли использовать сокеты?
0
 Аватар для afiskon
65 / 53 / 4
Регистрация: 06.09.2010
Сообщений: 254
22.03.2011, 13:44
Сокеты - использовать по-любому. Сначала пишите прототип, записывающий потоковый звук в файл, сохраняющий и воспроизводящий его. Затем останется фактически написать передачу этого файла по сети.
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
inter-admin
Эксперт
29715 / 6470 / 2152
Регистрация: 06.03.2009
Сообщений: 28,500
Блог
22.03.2011, 13:44
Помогаю со студенческими работами здесь

Голосовой дневник или голосовые заметки
Помогите пожалуйста с кодом как написать программу голосового дневника или голосовых заметок записывая все в txt файл не могу понять как...

Голосовой движок с поддержкой русского языка
народ подскажите голосовой движок для Microsoft SAPI с поддержкой русского языка нужно как распознавание так и синтезатор

Использовать голосовой поиск гугл
Собственно как? На какой адрес отправлять запрос. Кто может помочь, отблагодарю

Голосовой ввод в RichTextBox (используя Speech библиотеки от Microsoft)
Есть вот что-то такое не совсем рабочее. Не могу переделать под RichTextBox и заставить работать соответственно. Помогите:wall: // Create...

Голосовой движок Аленки. Что писать в списке выбора движка?
День добрый. гуглил гуглил но немогу найти информацию как настроить синтез речи аленкой, у меня сейчас стоит вот так SpeechSynthesizer...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
9
Ответ Создать тему
Опции темы

Новые блоги и статьи
Памятка для бота и "визитка" для читателей "Semantic Universe Layer (Слой семантической вселенной)"
Hrethgir 19.04.2026
Сгенерировано для краткого описания по случаю сборки и компиляции скелета серверного приложения. И пусть после этого скажут, что статьи сгенерированные AI - туфта и не интересно. И это не реклама -. . .
Запрет удаления строк ТЧ документа при определенном условии
Maks 19.04.2026
Алгоритм из решения ниже реализован на примере нетипового документа "Аккумуляторы", разработанного в конфигурации КА2. У данного документа есть ТЧ, в которой в зависимости от прав доступа. . .
Модель заражения группы наркоманов
alhaos 17.04.2026
Условия задачи сформулированы тут Суть: - Группа наркоманов из 10 человек. - Только один инфицирован ВИЧ. - Колются одной иглой. - Колются раз в день. - Колются последовательно через. . .
Мысли в слух. Про "навсегда".
kumehtar 16.04.2026
Подумалось тут, что наверное очень глупо использовать во всяких своих установках понятие "навсегда". Это очень сильное понятие, и я только начинаю понимать край его смысла, не смотря на то что давно. . .
My Business CRM
MaGz GoLd 16.04.2026
Всем привет, недавно возникла потребность создать CRM, для личных нужд. Собственно программа предоставляет из себя базу данных клиентов, в которой можно фиксировать звонки, стадии сделки, а также. . .
Знаешь почему 90% людей редко бывают счастливыми?
kumehtar 14.04.2026
Потому что они ждут. Ждут выходных, ждут отпуска, ждут удачного момента. . . а удачный момент так и не приходит.
Фиксация колонок в отчете СКД
Maks 14.04.2026
Фиксация колонок в СКД отчета типа Таблица. Задача: зафиксировать три левых колонки в отчете. Процедура ПриКомпоновкеРезультата(ДокументРезультат, ДанныеРасшифровки, СтандартнаяОбработка) / / . . .
Настройки VS Code
Loafer 13.04.2026
{ "cmake. configureOnOpen": false, "diffEditor. ignoreTrimWhitespace": true, "editor. guides. bracketPairs": "active", "extensions. ignoreRecommendations": true, . . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru