![]() |
Модераторы: feodorv |
![]() ![]() ![]() |
|
tonchitos |
|
|||
![]() Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 447 Регистрация: 24.2.2007 Репутация: нет Всего: 40 |
Я буду ваять курсовик. Хочу сделать куцый аналог скайпа. То есть перехватывать голосовые сообщения, шифровать их и передавать, а там, соответственно получать и тд. Ну и еще чего нить к нему приделаю...но это уже в процессе..
Но я в сетевом программировании нолик. ![]() Посоветуйте, что мне нужно освоить для решения этой задачи..Программирую на Visual C++(знаю апи и мфс). Время на курсовик у меня - два месяца(я успею разобраться, да? ![]() Жду любых советов подсказок и мыслей. Заранее всем спасибки.. Добавлено через 3 минуты и 27 секунд И ссылочки кидаааайте, да побоооольше! -------------------- – Люди забыли эту истину, – сказал Лис, – но ты не забывай: ты навсегда в ответе за всех, кого приручил. |
|||
|
||||
azesmcar |
|
|||
![]() uploading... ![]() ![]() ![]() ![]() Профиль Группа: Участник Клуба Сообщений: 6291 Регистрация: 12.11.2004 Где: Армения Репутация: 3 Всего: 211 |
Скайп использует технологию VoIP (Voice Over IP). Короче говоря это не самое простое что можно придумать для курсовой. Для начала ты должен выбрать для себя какой нибудь протокол, хотя в принципе если тебе нужно чтоб пользователи могли общатся только через твою программу это не обьязательно. Можешь придумать свой. Но если подойти к делу серьезно, то нужен протокол.
На данный момент SIP наилучший вариант. Хотя с протоколом H323 микрософт облегчит тебе путь (смотри TAPI - Telephony Application Programming Interface ). Кроме этого нучно изучить механизм передачи голоса по интернет, т.е. алгоритм преобразования Analog-Digital. Алгоритм смотри здесь http://en.wikipedia.org/wiki/Nyquist%E2%80...ampling_theorem Также почитай описание технологии VoIP
Это сообщение отредактировал(а) azesmcar - 11.4.2007, 08:51 |
|||
|
||||
tonchitos |
|
|||
![]() Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 447 Регистрация: 24.2.2007 Репутация: нет Всего: 40 |
Спасибо....а..я за два месяца успею? Как думаете?
И еще, люди, ссылочки то на русском кидайте...а то на инглише у мя скорость чтения ниже в 10 раз, неудобно оч. -------------------- – Люди забыли эту истину, – сказал Лис, – но ты не забывай: ты навсегда в ответе за всех, кого приручил. |
|||
|
||||
Бонифаций |
|
|||
![]() Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 827 Регистрация: 15.9.2005 Где: Brisbane Репутация: нет Всего: 40 |
если писать с нуля - два месяца слишком мало
В качестве отправной точки посмотрите исходники twinkle (его можно собрать совсем без GUI), и проект ccrtp -------------------- Бонифаций. |
|||
|
||||
tonchitos |
|
||||
![]() Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 447 Регистрация: 24.2.2007 Репутация: нет Всего: 40 |
Да мне не важно, какую технологию использует скайп, мне нужно написать прогу, которая перехватывает звук у микрофона, шифрует(как любой файл), передает, принимает, расшифровывает,ну тож самое можно делать и с текстом.
Поэтому если есть простая технология, то советуйте. -------------------- – Люди забыли эту истину, – сказал Лис, – но ты не забывай: ты навсегда в ответе за всех, кого приручил. |
||||
|
|||||
azesmcar |
|
||||||||||
![]() uploading... ![]() ![]() ![]() ![]() Профиль Группа: Участник Клуба Сообщений: 6291 Регистрация: 12.11.2004 Где: Армения Репутация: 3 Всего: 211 |
Что-то не припоминаю чтобы RFC на русском писали ![]()
не сходится
Аналог скайпа означает что ты сможешь звонить не только на компьютер но и на обычный домашний телефон..т.е. IP Телефония. Если нет, тогда тебе просто нужен Voice Chat. Правда это не особо облегчит твое дело, все равно АЦП звука придется писать.
Очень простая технология...записываешь звук, преобразовываешь и посылаешь серверу. С нуля за 2 месяца не напишешь, особенно если не знаком с VoIP. Лучше посмотри на уже готовые решения
попробуй реализовать используя TAPI (в этом случае можешь в качестве клиента использовать Phone Dailer), или пересмотри тему курсовика. Это сообщение отредактировал(а) azesmcar - 11.4.2007, 14:44 |
||||||||||
|
|||||||||||
witex |
|
|||
![]() Бывалый ![]() Профиль Группа: Участник Сообщений: 224 Регистрация: 16.10.2006 Где: Эстония Репутация: 1 Всего: 4 |
я думаю полный аналог скайпа не нужен, потому что он то не сразу VOIP использовал! и на простые телефоны только через пару лет звонить начал! вообьще лудще простой аналог сетевой звонилки сдеть вот и всё! идин к одному!
Естественно в асинхронном режиме! потому что так синхронном будет смещение звука и искожение! преоброзовывать советую в МП3 формат и посылатть однин паккет с его контрольной суммой МД5! будет проще. и надёжно! а шифрование зачем тебе я не понимаю!
в скайпе звук не посылается серверу! он послыется сразу абоненту! сервер только следит за тем кто в онлайне! сервером только становиться тот кто звонит! а ваабще если посмотреть , на коференцию в скайпе то там даже если организатор в офлайн удёт она будет жить! так что Скайп сервер следит только за тем, если звонок или нету! и ни чего более! остальное всё передаётся P2P- --------------------
Я не волшебник, я только учусь."Шлёпни в Гугл" - Афтор Былов Ю.М. |
|||
|
||||
AndreyK |
|
|||
Шустрый ![]() Профиль Группа: Участник Сообщений: 102 Регистрация: 15.3.2007 Репутация: нет Всего: нет |
Я бы воспользовался обычным API
открываем: waveInOpen waveInStart записываем в буфер: waveInPrepareHeader waveInAddBuffer waveInUnprepareHeader по мере записи передаём по сети обычным send принимаем в буфер recv открываем: waveOutOpen проигрываем: waveOutWrite где-то есть готовые примеры ... |
|||
|
||||
AndreyK |
|
|||
Шустрый ![]() Профиль Группа: Участник Сообщений: 102 Регистрация: 15.3.2007 Репутация: нет Всего: нет |
Есть альтернативный вариант:
Берём какую нибудь программу, которая всё это может (например до XP был NetMeeting , а теперь ,наверное, какая ни будь другая утилита винды может) и используем его для передачи звука по сети, через встроенный в него интерфейс. Надо только в инструкциях разобраться... Это сообщение отредактировал(а) AndreyK - 16.4.2007, 15:28 |
|||
|
||||
![]() ![]() ![]() |
1 Пользователей читают эту тему (1 Гостей и 0 Скрытых Пользователей) | |
0 Пользователей: | |
« Предыдущая тема | C/C++: Сети | Следующая тема » |
|
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности Powered by Invision Power Board(R) 1.3 © 2003 IPS, Inc. |