Уважаемые посетители! Форум CQHAM.RU существует исключительно за счет показа рекламы. Мы будем благодарны, если Вы не будете блокировать рекламу на нашем Форуме. Просим внести cqham.ru в список исключений для Вашего блокировщика рекламы.
Страница 298 из 329 ПерваяПервая ... 198248288295296297298299300301308 ... ПоследняяПоследняя
Показано с 2,971 по 2,980 из 3290

Тема: Виртуальная "шарманка"

  1. #2971
    Цитата Сообщение от SKirov Посмотреть сообщение
    под различные платформы
    Не нравится мне современная тенденция развития программных средств. Создаются какие-то монстры. Если разобраться, то передача и прием звука по сети интернет не такая уж и сложная задача. Есть АЦП и ЦАП, есть интернет, есть какая то графика для отображения программы. В своей Windows версии «Шарманки» я старался делать как можно проще. Работа со звуком с самой первичной виндусовой библиотекой, без всяких там DirectX и прочих оберток. Графика в WinAPI, изначальная философия Windows. Работа по сети - самая стандартная библиотека TCP/IP. Поэтому программа получилась более или менее компактной по сравнению с другими аналогичными программами. Попытался сделать версию под Linux, для начала в консольной версии. Что то получилось, но другая философия работы со звуком, отсутствие единого стандарта звука позволяет использовать эти наработки только для конкретных железок, в основном в микрокомпьютерах. Raspberry PI, OrangePi, и в основном для своего личного употребления. И уже заметны сложности, была изначально очень простая для понимания библиотека OSS, но теперь она осталась в современных версиях Linux только в режиме эмуляции. ALSA уже более сложная библиотека, со своей большой философией, вроде бы на ней у меня работает «Шарманка», но на прием нормально, а на передачу какие то непонятные задержки звука идут. И пока разобраться не могу. PULSE AUDIO даже не стал подробно изучать, еще более запутанная система, со своей сложной философией. Попытался изучить направление мобильных устройств. Тут вообще засада на засаде. Для программирования коммерческих продуктов, если заплатить за более юзабельный инструмент программиста, то это возможно, но делать что то мелкое для себя, как Шарманка, уже не рентабельно. Для маленькой программы на маленькой железки надо иметь программисту современный «шустрый» компьютер, с большим экраном. Программа получается уже очень далека от таких железок как АЦП и ЦАП. Если ли брать Андроид, то и выполняться она уже будет на какой то виртуальной машине. Вообще современная философия подразумевает, что современные программисты должны писать программы под какие то виртуальные системы, со своими хозяевами, которые будут определять как ты должен программу создавать, как ты ее будешь распространять и желательно так, что продукт был коммерческий, и что бы все зарабатывали, включая посредников, что бы была по крайней мере реклама. А программа твоя на конкретной железке работает все медленнее и медленнее, потому что среда в которой она работает (тот же Андроид, или Браузер) уже переписана под современное железо а на твоем старом она уже жутко тормозит. Тут недавно задумался как организовать прямую связь через интернет со своей мамой. Телефонные переговоры разоряют жутко. Стандартная схема через WhatsApp, как положено не работает, с большим трудом научил маму пока что только отвечать на входные звонки, и то через раз. Первая же эксплуатация совпала с каким то глюком на серверах WhatsApp, разговор проходил только в одну сторону. Подумал, а как все упростить, уж сколько с этим звуком разбираюсь. А что если сделать все на уровне обычного телефона, самый стандартный как раньше стояли в квартирах. Зазвонил, поднял трубку и разговариваешь. Хочешь сам позвонить, поднял трубку, пошли гудки вызова, с той стороны звенит телефон, подняли трубку – разговариваешь. Первым инструментом был выбран для реализации микрокомпьютер OrangePi, стоит 15 долларов у китайцев, он должен поместиться в телефонный аппарат. У него есть полноценная звуковая карта, правда микрофон уже распаян на плате микрокомпьютера, но его можно выпаять, а к контактам подвести микрофон с телефонной трубки. Уже проведены положительные эксперименты с библиотекой ALSA, пока что при работе на себя наблюдается непонятная для меня задержка звука где то то секунду, полторы. Можно и так применять, в Шарманки люди общаются иногда и с большей задержкой, но считаю что для телефонного разговора это многовато. Что интересно, если юзаю версию под OSS и запускаю через эмулятор алсы aoss ./telefon, то все работает как надо. А вот напрямую в ALSA делаю что то не так. Пока безуспешно ломал голову над решением этой проблемы, с помощью своего коллеги обратил внимание на микроконтроллеры. Они оказывается далеко шагнули с тех времен как я с ними впервые ознакомился. Для экспериментов взял самый простой Arduino Uno. Блин, какое счастье, прямая работа с железом без всяких философских оберток. У Arduino Uno есть 10 битный АЦП, решил начать эксперименты хотя бы со входным звуком. Сделал прерывание 10000 раз в секунду, усилил сигнал с микрофона до уровня АЦП, передал через Ethernet модуль по протоколу UDP на контрольную программу под Windows и получил приемлемое для телефонных разговоров качество звука. По крайней мере вход звука реализован. Надо только сделать опорное напряжение для АЦП не 5 вольт а поменьше, как раз для микрофонного усилителя. Arduino Uno это позволяет сделать. Если приделать ЦАП, то можно и выход звука проработать. Если не хватит ресурса Arduino Uno, можно поюзать Arduino Mega. Uno у китайцев стоит 3 доллара, Mega 9 долларов. Можно задействовать микроконтроллер STM32, там есть версии и с АЦП и ЦАП, и опять же у китайцев стоит не дорого. Вот это я понимаю возможности. После кнопки RESET работа восстанавливаться через пару секунд. И все это без огромных программных посредников в виде операционных систем, эмуляторов и библиотек со своей сложной философией. Так что если появиться новая шарманка, то скорее всего она будет работать на микроконтроллере, а не на мобильном телефоне.
    Последний раз редактировалось RN6LIQ; 24.07.2019 в 15:04.

  2. Спасибо от Radiotester, RK1AT, RZ6AT, yl2gl


  3. #2972
    Цитата Сообщение от RN6LIQ Посмотреть сообщение
    то скорее всего она будет работать на микроконтроллере
    Интересный вариант и направление в развитие проекта.

  4. #2973
    Цитата Сообщение от RN6LIQ Посмотреть сообщение
    Не нравится мне современная тенденция развития программных средств. Создаются какие-то монстры.... без всяких там DirectX и прочих оберток. а не на мобильном телефоне.
    Библиотеки для того и пишут чтобы не изобретать велосипеды, подобрал подходящие "склеил" за полчасика и вперёд. Проект вроде шарманки под андроид пишется за неделю, но тут есть один важный момент, как позвать всех участников с уже работающей шарманки. Типично это не получится: половина подерётся, другая половина не смогёт скачать программу на телефон ))) Но если есть сервер, значит у него есть какой-то порт , там можно открыть соединение передать данные получить. Описав это всё клиента уже другие люди будут писать, никто не будет переманивать людей в свою систему.

    ЗЫ. Есть программа Zello https://ru.wikipedia.org/wiki/Zello делает тоже самое что виртуальная шарманка, но нет там канала шарманщиков ...

  5. #2974
    Цитата Сообщение от SKirov Посмотреть сообщение
    Проект вроде шарманки под андроид пишется за неделю
    Для знающих людей, постоянно занимающихся этим (программированием под Андроид) так наверное и есть. Флаг им в руки со всеми велосипедами и паровозами о которых я писал раннее. А зелло лично я уже юзал. Не понравилось. Постарался в шарманке не наступать на ихние грабли. Правда со звуком перемудрил, построил свою концепцию с цифровыми фильтрами и прочими прелестями. Пытаюсь делать упрощенное зеркало на шарманку, хотя бы на прием, с более простыми протоколами, что бы можно было поделиться ими, но звук упростить не получается.

  6. #2975
    Цитата Сообщение от RN6LIQ Посмотреть сообщение
    решил начать эксперименты хотя бы со входным звуком
    Вчера вечером приделал к Arduino UNO, самодельное АЦП по схеме ниже
    Нажмите на изображение для увеличения. 

Название:	DAC.PNG 
Просмотров:	445 
Размер:	37.8 Кб 
ID:	317605
    Звук получился металлический, но вполне читабельный, для служебной связи вполне. Так это я еще резисторы не подбирал, просто доставал из коробки первый попавшийся и вставлял в макетную плату. Отсюда и небольшие нелинейные искажения. Так что вполне реально на Arduino UNO собрать простенький IP телефон, который будет работать через серверный коммутатор. Но надо еще доработать прием в плане синхронизации звука. Дело в том, что в Arduino UNO катастрофически не хватает памяти под буферизацию. Пока что применил обычную технологию как в шарманке, принял, запихнул в буфер и звук рано или поздно воспроизведется. Но в данном случае буфера в 700 байт маловато и звук начинает "хлопать". Если же забирать данные с Ethernet модуля не сразу, а по мере освобождения звукового буфера, то сам Ethernet со временем зависает (когда пакеты в сети задержаться где то, а потом придут сразу несколько) и потом помогает только клавиша reset. Надо придумать какой либо алгоритм который будет корректно работать со сверх малым буфером размером в 2,5 сетевых пакета.
    Последний раз редактировалось RN6LIQ; 25.07.2019 в 09:21.

  7. #2976
    Цитата Сообщение от RN6LIQ Посмотреть сообщение
    А зелло лично я уже юзал. Не понравилось.
    На мой взгляд в шарманке самое вкусное не звук/кодек и тд, а интерфейс управления(UI) и идеология общих каналов при этом количество которых ограничено. Кто первый занял частоту тот и трындит, каждый раз на канале кто-то другой, сами каналы переключаются с некоторой ламповостью - по шкале . Именно это делает шарманку интересной, у маркетоидов/психологов описан в учебниках такой способ увеличения привлекательности продукта введением искусственных ограничений. С другой стороны Зело удобно когда есть своя закрытая компания для разговоров, а искать там каналы в бесконечном количестве очень неудобно. Конечно UI не получится монетизировать, но как игрушка весьма доставляет.

  8. #2977
    А моя статистика по результатам общения с пользователями говорит о том, что большинство пользователей ценят шарманку именно за качественный звук. За возможность при полном дуплексе "на лету" выбирать нужное для себя качество сигнала. А за интерфейс меня кстати поругивают. Первое что подвигло пользователей юзать шарманку это все таки бренд! У большинства это часть жизни в реальном эфире под названием шарманка. Я лично не собирал шарманку, но слушал в юности ее активно. Потом негативной популярности добавили политические бои. Это не самая лучшая страница Шарманки, но именно звуковые возможности шарманки были активно и удачно протестированы при этом. Последовательной политикой наш модераторский коллектив постепенно вытеснил этот контингент на другие ресурсы. Монетизировать Шарманку никто и не собирался, это программа для радиолюбителей, но в основном получилось для радиолюбителей пенсионеров. Столько времени отдавать шарманке могут только свободные от рабочей рутины люди, ну и плюс ностальгия по такой форме общения как в эфире, но без помех и с хорошим качеством звука.

  9. #2978
    Василий Михайлович, у АВРок есть серия (тини 25, 45, 85 и АТ90PWM3), в которой есть встроенный генератор с ФАПЧ, который позволяет поднять тактовую частоту для внутренних таймеров до 64 МГц и получить 8 битный ШИМ с частотой 250 кГц. Затем простой фильтр нижних частот легко отделяет эту частоту от звука до 20 кГц. Получаем простой ЦАП для звука. Я даже делал генератор синуса с 16 битами таким образом.

  10. #2979
    Кстати, спасибо за совет. ШИМ я еще не юзал, надо пощупать его возможности. Только пробовать буду уже на STM32F103C, вполне хороший чип за свои деньги. Прикупил в Китае также 3 платы с STM32F407VG, но это направление только начинаю изучать.
    На двух Arduino Uno и двух Ethernet W5100 уже собрал два простых IP телефона для прямой связи с родительским домом. Одно устройство вставлено в обычный телефон, а другое в телефон с радио трубкой, DECT. Возможности Arduino Uno хватило только на реализацию 8 битного звука (приема передачи), реакции на поднятую трубку и осуществления звонка. Но работа по сети не получилась бы без дополнительных 16 килобайт модуля W5100. Также ничего бы не получилось без серверной программы, которая играет роль АТС. Именно Она дает непрерывный гудок при поднятии трубки телефона, длинные гудки при вызове, если постучать по клавише отбоя, короткие гудки , если телефон другой не в сети, и именно сервер осуществляет соединение телефонов между собой.


  11. #2980
    братва , вчера установил винд 10 про - шарманка на передачу не вкл уже день-ночь сутки прочь . где косяк?

Страница 298 из 329 ПерваяПервая ... 198248288295296297298299300301308 ... ПоследняяПоследняя

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

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

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

Похожие темы

  1. Синтезаторы "Колибри" и "Воробей" AD9951/AD9834/Si570
    от Genadi Zawidowski в разделе Трансиверы, приемники КВ/УКВ
    Ответов: 675
    Последнее сообщение: 07.02.2024, 17:09
  2. Трансивер "Шарманка" на MOSFET
    от Сергей01 в разделе Темы не вошедшие в другие разделы форума
    Ответов: 52
    Последнее сообщение: 16.11.2014, 17:14
  3. Трансматч в точке питания
    от LEONID2 в разделе Согласующие устройства
    Ответов: 13
    Последнее сообщение: 29.12.2013, 19:50
  4. "Емкостное реле" журн. " Радио" 2010/5 (датчик приближения человека)
    от СВП в разделе Темы не вошедшие в другие разделы форума
    Ответов: 48
    Последнее сообщение: 18.04.2011, 13:47

Ваши права

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