Форум программистов, компьютерный форум, киберфорум
C++
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск Заказать работу  
 
901 / 478 / 93
Регистрация: 10.06.2014
Сообщений: 2,700

Передача аудио и видео от одного узла к другому

27.03.2022, 10:24. Показов 825. Ответов 0
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
Хотел бы посоветоваться по сабжу.
Нужно реализовать сеть, в которой множество пользоватлей могли бы обмениваться стримом с камеры и голосом с микрофона, короче чатик сделать надо. Пока набросал в голове общий принцип и хотел бы вынести это на оценку а так же кое-что спросить.

Взаимодействие между участниками:
Каждый участник должен уметь передавать видео со своей камеры и аудио с микрофона.

Принцип передачи аудио и видео:
Данные будут отправляться по UDP с учетом порядка следования данных, т.к сам по себе UDP не гарантирует что получатель получит данные в том порядке, в котором они были отправлены.

Приватность:
У каждого участника конференции должна быть своя пара "открытый и закрытый ключ". Перед отправкой данных они будут шифроваться открытым ключом получателя, затем расшифровываться получателем и воспроизводиться у него на компьютере.

Передача видео:
Планирую считывать с камеры кадры один за другим, затем отправлять их получателю по несколько штук, что бы он расшифровал и отобразил у себя эти кадры. По одному кадру отправлять не хочу что бы снизить количество сетевых сообщений. С количеством отправляемых кадров за раз еще не определился.

Передача аудио:
Планирую формировать мелкие файлы со звуком и отправлять их получателю, что бы тот воспроизводил их у себя. Например, файлы длительностью 2 секунды (с длительностью еще не определился). Так же планирую добавить небольшую задержку, что бы компенсировать время затраченное на передачу аудиоданных по сети (это общая идея, пока нет значимой конкретики). Если в один момент говорят сразу несколько пользователей, то микшировать их аудиофайлы и подавать на выход уже файл который содержит голоса всех говорящих в данный момент.

Роль сервера:
Все аудио и видео данные будут пересылаться напрямую между участниками конференции. При начале конференции каждый участник будет взаимодействовать с сервером для получения айпи адресов участников конференции. Затем уже используя эти айпи адреса участники будут иметь возможность взаимодействовать между собой минуя сервер.

Чего я от вас хочу:
1) Оцените пожалуйста общую идею
2) Подскажите эффективные библиотеки для решения задачи (для видео пока остановится на OpenCV, звук - SDL, интерфейс - Qt)
3) Сообщите о подводных камнях, если вы их видите в общей идее
4) Приветствуюся полезные советы

Спасибо.
0
IT_Exp
Эксперт
34794 / 4073 / 2104
Регистрация: 17.06.2006
Сообщений: 32,602
Блог
27.03.2022, 10:24
Ответы с готовыми решениями:

Передача файла из одного ПК к другому
Мне нужно, чтоб я мог передавать файлы через com порт на другой комп'ютер через програму, но не знаю даже примерно как реализовать это.Я не...

Передача свойств одного компонента другому
Добрый день. Не подскажите - вопрос такой. Есть эталонный StringGrid1 с кучей свойств - кооличество столбцов, их размеры, размеры его...

Передача переменной из одного метода к другому
public static bool Func(int num) { string sa = num.ToString(); for (int i = 0; i < sa.Length; i++) ...

0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
BasicMan
Эксперт
29316 / 5623 / 2384
Регистрация: 17.02.2009
Сообщений: 30,364
Блог
27.03.2022, 10:24
Помогаю со студенческими работами здесь

Передача данных от от одного скрипта к другому
Как можно реализовать передачу данных от от одного скрипта к другому не через файл? Вот конкретный случай, где это будет использовано:...

Передача значения переменных одного класса другому
Всем привет. Нужно передать значения одного класса другому, при этом семантика методов класса меняться не должна, так как они на событие...

SignalR v2: передача данных от одного пользователя другому
Нужна помощь по SignalR v2, конкретно: Передача данных от js приложения одного пользователя к js приложению другого пользователю. Как...

Передача значимого типа от одного List<T> другому
Добрый день, уважаемые форумчане! Прошу помочь в передаче значений от одного List&lt;T&gt; другому: дело в том, что при упаковке...

передача нажатой клавиши с одного компонента другому
Доброй ночи. требуется при нажатии клавиш на одном компоненте передавать нажатую клавишу другому компоненту. допустим нахожусь я в...


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

Или воспользуйтесь поиском по форуму:
1
Ответ Создать тему
Новые блоги и статьи
Контроль заполнения и очистка дат в зависимости от значения перечислений
Maks 12.04.2026
Алгоритм из решения ниже реализован на примере нетипового документа "ПланированиеПерсонала", разработанного в конфигурации КА2. Задача: реализовать контроль корректности заполнения дат назначения. . .
Архитектура слоя интернета для сервера-слоя.
Hrethgir 11.04.2026
В продолжение https:/ / www. cyberforum. ru/ blogs/ 223907/ 10860. html Знаешь что я подумал? Раз мы все источники пишем в голове ветки, то ничего не мешает добавить в голову такой источник, который сам. . .
Подстановка значения реквизита справочника в табличную часть документа
Maks 10.04.2026
Алгоритм из решения ниже реализован на примере нетипового документа "ПланированиеПерсонала", разработанного в конфигурации КА2. Задача: при выборе сотрудника (справочник Сотрудники) в ТЧ документа. . .
Очистка реквизитов документа при копировании
Maks 09.04.2026
Алгоритм из решения ниже применим как для типовых, так и для нетиповых документов на самых различных конфигурациях. Задача: при копировании документа очищать определенные реквизиты и табличную. . .
модель ЗдравоСохранения 8. Подготовка к разному выполнению заданий
anaschu 08.04.2026
https:/ / github. com/ shumilovas/ med2. git main ветка * содержимое блока дэлэй из старой модели теперь внутри зайца новой модели 8ATzM_2aurI
Блокировка документа от изменений, если он открыт у другого пользователя
Maks 08.04.2026
Алгоритм из решения ниже реализован на примере нетипового документа, разработанного в конфигурации КА2. Задача: запретить редактирование документа, если он открыт у другого пользователя. / / . . .
Система безопасности+живучести для сервера-слоя интернета (сети). Двойная привязка.
Hrethgir 08.04.2026
Далее были размышления о системе безопасности. Сообщения с наклонным текстом - мои. А как нам будет можно проверить, что ссылка наша, а не подделана хулиганами, которая выбросит на другую ветку и. . .
Модель ЗдрввоСохранения 7: больше работников, больше ресурсов.
anaschu 08.04.2026
работников и заданий может быть сколько угодно, но настроено всё так, что используется пока что только 20% kYBz3eJf3jQ
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru