Уважаемые посетители! Форум CQHAM.RU существует исключительно за счет показа рекламы. Мы будем благодарны, если Вы не будете блокировать рекламу на нашем Форуме. Просим внести cqham.ru в список исключений для Вашего блокировщика рекламы.
Страница 1 из 6 1234 ... ПоследняяПоследняя
Показано с 1 по 10 из 60

Тема: Качественный звук через интернет по направлению (точка-точка)

  1. #1

    Качественный звук через интернет по направлению (точка-точка)

    Сделал для себя программу и хочу ею поделится, может кому то еще пригодится. Главное ее назначение это передача 16 битного звука с высоким битрейтом, вплоть до частоты дискретизации 192000. Мне это нужно для экспериментов с SDR сигналами. Например взять поток с SDR приемника, передать его через интернет и вывести на программу HDSDR. Конечно для этого нужен хороший интернет, ведь такой сигнал с частотой дискретизации 192000 потянет примерно на 6 Мбит/секунду. Но многих сейчас безлимитным скоростным интернетом не удивишь. Программу можно использовать и для других целей, например для общения с конкретными корреспондентами. Кроме режимов 16 битного звука, стерео и моно, с частотами дискретизации 8000, 11025, 16000, 22050, 24000, 44100, 48000, 96000, 192000 есть также возможность передать этот звук с нелинейным квантованием с помощью кодека G711, что уменьшит битрейт в два раза, но качество при этом изменится незначительно. На худой конец есть еще кодек GSM который требует битрейта всего 16 Кбит/секунду, даже при слабом интернете есть возможность общаться. Можно программу заранее настроить, и отправить архив корреспонденту который не очень разбирается в компьютерах, но может архив распаковать и запустить из папки исполняемый файл. Планирую, если даст Бог, в будущем прикрутить к этой программе видео, передачу файлов и ссылок, обмен скриншотами и использовать для общения с друзьями, вместо SKYPE, который все более и более не вызывает у меня доверия, после того как он попал в крепкие руки Microsoft. Взаимодействие между программами происходит по направлению и непосредственно с одного IP на другой. Транспортный протокол используется UDP, что позволяет передавать сигнал с небольшими задержками. Для Соединения программ используется принцип STUN, но не конкретно сам протокол, а только принцип. Для поиска корреспондента нужен сервер, но после того как корреспондент найден и создан туннель с ним, через NAT, программы работают напрямую, что уменьшает задержку сигнала. Не все сервера NAT пропускают через себя такие туннели, но как показывает практика большинство роутеров, как домашние так и провайдеровские, это делают. Для многих будет невозможно создать такие соединения в пределах одной квартиры, в одной сети, поскольку программам будут известны их внешние белые IP адреса, и именно по ним будет происходить взаимодействие, но если ваш роутер не может транслировать изнутри сети внешние IP во внутренние, то связи не будет.
    Саму программу можно скачать отсюда. В папке кроме исполняемого файла UB6LFT.EXE также находятся две DLL, key.dll нужна для Windows XP, что бы перехватывать нажатия клавиш, даже если окно программы не активно, а zlib1.dll применяется для сжатия сетевого трафика, когда это возможно, например для тихого звука или музыкальных пауз. Настройки программы будут сохранятся в файлах с расширением .$$$ Их может быть много в зависимости от направлений.
    После первого запуска откроется окно
    Нажмите на изображение для увеличения. 

Название:	b1.png 
Просмотров:	1236 
Размер:	16.8 Кб 
ID:	274415
    Название конфигурации нужно изменить на что то более удобное, произвольное по вашему выбору.
    Нажмите на изображение для увеличения. 

Название:	b2.png 
Просмотров:	1240 
Размер:	17.7 Кб 
ID:	274421
    Очень важно правильно заполнить поля позывных, поскольку именно по сочетанию своего позывного и позывного корреспондента будет искаться в интернете его адрес. Для настроек на картинке выше должны быть такие настройки его корреспондента.
    Нажмите на изображение для увеличения. 

Название:	b3.png 
Просмотров:	1260 
Размер:	18.0 Кб 
ID:	274428
    А вот пример настроек для различных корреспондентов на моем компьютере. Очень важно указать для них различные порты, иначе программы будут между собой конфликтовать. Ну и конечно названия конфигураций должны быть понятны.
    Нажмите на изображение для увеличения. 

Название:	bb1.png 
Просмотров:	1256 
Размер:	40.7 Кб 
ID:	274425

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

Название:	n1.png 
Просмотров:	1127 
Размер:	18.0 Кб 
ID:	274431
    Если мы планируем для первого раза просто поговорить с корреспондентом, то можно выставить следующие настройки
    Нажмите на изображение для увеличения. 

Название:	n2.png 
Просмотров:	978 
Размер:	18.2 Кб 
ID:	274433
    Здесь выбран битрейт побольше и добавлено усиление. Назначение окошек можно узнать подведя мышку к нужному окну и на время уставить курсом там, появится всплывающая подсказка. Задержку звука лучше оставить на минимуме, она добавляется только для трансляции музыки или когда корреспондент слышит вас с "подрывами". Для управления передачей выбрана левая клавиша Ctr.l
    Нажимаем кнопку Сохранить.
    Нажмите на изображение для увеличения. 

Название:	r1.png 
Просмотров:	1152 
Размер:	15.6 Кб 
ID:	274434
    Желтая полоса обозначает что в нашу сторону туннель создан и в окошке выше указан наш внешний IP и порт. Зеленая полоска ниже говорит о том, что мы находимся на приеме, а две полоски ниже информируют нас о том, что звуковое устройство по входу и выходу включились нормально. После очередного старта сразу будет высвечиваться именно это окно, в том случае если у вас одна конфигурация. Если конфигураций создано несколько, то при старте программы будет предложен выбор.
    Нажмите на изображение для увеличения. 

Название:	s1.png 
Просмотров:	861 
Размер:	16.4 Кб 
ID:	274435
    Итак пример взаимных настроек двух программ
    Нажмите на изображение для увеличения. 

Название:	nn0.png 
Просмотров:	1238 
Размер:	29.3 Кб 
ID:	274436
    А вот так они выглядят когда свяжутся и одна программа передает другой.
    Нажмите на изображение для увеличения. 

Название:	rr2.png 
Просмотров:	1244 
Размер:	27.9 Кб 
ID:	274437

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

Название:	nn1.png 
Просмотров:	964 
Размер:	42.8 Кб 
ID:	274438
    Тогда все три программы будут одновременно становится на передачу. В общем то управление программой довольно таки простое, но если будут вопросы, я отвечу.

  2. Спасибо от Integral, LY1SD, LZ1AO, RA3PKJ, RA9CMG, RD3Q, RK1AT, ru3ql, ua5aa, uk8adi


  3. #2
    Цитата Сообщение от RN6LIQ Посмотреть сообщение
    ее назначение это передача 16 битного звука
    Цитата Сообщение от RN6LIQ Посмотреть сообщение
    Например взять поток с SDR приемника, передать его через интернет
    Стоит для приёмника использовать 16 бит?

    Цитата Сообщение от RN6LIQ Посмотреть сообщение
    потянет примерно на 6 Мбит/секунду
    Если к примеру взять 12 бит то на разборчивости это мало отразится но поток снизит на много.
    Резонанс где-то рядом!

  4. #3
    Цитата Сообщение от AlexanderT Посмотреть сообщение
    Стоит для приёмника использовать 16 бит?
    Лучше бы и больше использовать, чем 16 бит, но и они дают неплохой динамический диапазон, и любая звуковая карта компьютера работает с 16 битным квантованием. 12 бит все таки маловато, да и не кратно байту, неудобно передавать по сети.

  5. #4
    Для того что бы с кем то связаться, лучше самому настроить обе программы положив их в разные папки. Надо их отдельно запустить и настроить их друг на друга, для этого можно оставить все по умолчанию кроме двух полей - позывных. В одной программе например написать Коля, Петя, а во второй Петя, Коля. Затем закрыть обе программы, одну паку со всеми файлами заархивировать и отослать товарищу, что бы он разархивировал и запустил исполняемый файл. Тогда точно не будет путаницы в позывных и связь обязательно будет.

  6. #5
    Немного подправил программу , прошу обновить версию. Была путаница если для многих соединений применялся один и тот же свой позывной. Устранено. Также был некорректный порт по умолчанию, устранено.

  7. #6
    Через модемы мобильных операторов будет работать? Там адреса не постоянны же...
    73! UK8ADI Сергей

  8. #7
    Цитата Сообщение от RN6LIQ Посмотреть сообщение
    для экспериментов с SDR сигналами
    Интересная вещица ...
    На удаленной позиции используем слабенький комп для работы SDR и отправки звукового потока куда нибудь на мощный комп(сервер) для обработки.
    Василий | TRX: SDR-Deluxe TRX 2208, SDR-Minor | Ant : V-Delta 15M

  9. #8
    Цитата Сообщение от uk8adi Посмотреть сообщение
    Через модемы мобильных операторов будет работать? Там адреса не постоянны же...
    Специально проводил эксперимент, организовал раздачу мобильного интернета на смартфоне по Wi-Fi. Ехал на машине с работы домой, на планшете (Windows 8) работала эта программа(шла трансляция музыки) и писала логи. Связь иногда прерывалась по пути следования (были участки плохого покрытия на левом берегу Дона), но каждый раз снова восстанавливалась. Что интересно, что IP(внешний белый) адрес всегда был один и тот же. Наверное потому, что расстояние небольшое. Но в принципе это не имеет значение. Если изменится белый адрес провайдера (если ехать на большие расстояния), то будет создан новый туннель к программе. Главное чтобы бы сочетание вашего позывного и позывного корреспондента были уникальными.
    Пример:
    Вы Петр
    Корреспондент Андрей
    Ваша программа будет искать сочетание имен АндрейПетр, а программа вашего корреспондента ПетрАндрей. Если таких сочетаний больше нет в интернете то программы должны найти друг друга и получить текущие IP и порты друг друга. Если IP и порты изменятся (поменялся IP провайдера), то программы опять начнут искать друг друга по именам и опять им будут сообщены их новые IP и порты. Не должно быть одинаковых сочетаний имен где то еще. Если у вас на домашнем компьютере настроены соединения с корреспондентом, то на вашем ноутбуке должны быть уже другие сочетания имен. Или эти конфигурации не должны запускаться одновременно. Также на одном компьютере нельзя запускать более одного экземпляра с одной конфигурацией. В противном случае можно получит IP и порт для туннеля не с того компьютера.

    Цитата Сообщение от RA9CMG Посмотреть сообщение
    На удаленной позиции используем слабенький комп для работы SDR и отправки звукового потока куда нибудь на мощный комп(сервер) для обработки.
    Одна поправка, должен быть хороший интернет, по крайней мере достаточный для той частоты дискретизации которую вы выберете. И Интернет должен быть безлимитный.

  10. #9
    Что бы с кем то проводить эксперименты в этой программе, нужно кого то сначала найти. Это неудобно, хочется вначале самому поиграться с настройками, но локально программы не связываются. Предлагаю скачать локальный сервер, который точно также сводит между собой программы но только локально, на одном компьютере. Сервер надо запустить в одном экземпляре. Затем создать две конфигурации друг на друга (лучше что бы программы работали в разных каталогах) и тестировать. Можно так локально подготовить конфигурацию для своего товарища, убедится что локально она работает и отослать весь каталог ему, вашему корреспонденту останется только запустить ub6lft.exe


  11. #10
    Есть такая проблема при передачи звука сетевым протоколом UDP - фрагментация. При прохождении узких мест, где величина информации не должна быть больше значения MTU данные разбиваются на несколько частей, а затем снова собираются в один пакет. В данной программе фрагментации будут подвергаться не все битрейты. Вот список звуковых режимов пакеты которых всегда будут проходить без фрагментации:

    В режиме моно - GSM (8000), 16 бит несжатый звук (8000, 11025, 16000, 22050, 24000), G711 (8000, 11025, 16000, 22050, 24000, 44100, 48000)
    В режиме стерео - 16 бит несжатый звук (8000, 11025, 16000), G711 (8000, 11025, 16000, 22050, 24000)

    Бывает, что звук начинает дергаться, пакеты как бы пропадают (наблюдалось при подключении к интернету через ADSL), в этом случае надо в программе уменьшить частоту дискретизации.

Страница 1 из 6 1234 ... ПоследняяПоследняя

Информация о теме

Пользователи, просматривающие эту тему

Эту тему просматривают: 1 (пользователей: 0 , гостей: 1)

Похожие темы

  1. Внешняя точка доступа
    от Алекс@ндр в разделе Трансиверы, приемники КВ/УКВ
    Ответов: 7
    Последнее сообщение: 21.01.2015, 14:09
  2. Ответов: 14
    Последнее сообщение: 08.01.2012, 21:22
  3. Точка доступа. Wi-Fi
    от victor322 в разделе Технический кабинет
    Ответов: 10
    Последнее сообщение: 11.10.2011, 22:11
  4. Пораженная точка в приемнике.
    от ut5vf в разделе Модификация радиостанций
    Ответов: 4
    Последнее сообщение: 27.07.2009, 21:11
  5. Точка запитки в MMANe
    от RU6DX в разделе Антенны
    Ответов: 9
    Последнее сообщение: 27.11.2008, 07:41

Ваши права

  • Вы не можете создавать новые темы
  • Вы не можете отвечать в темах
  • Вы не можете прикреплять вложения
  • Вы не можете редактировать свои сообщения
  •