| Автор | Сообщение | 
|  | Дата: 01 Ноя 2010 23:15:21 
    # 
 xman
 Насчет фазы - согласен с выше сказанным, сколько бы она не крутилась - сама частота никуда не денется
 С чего такая уверенность? Скачок фазы = выброс на частотном детекторе. Производная млин... Всё зависит от алгоритма, который пользуют. Если пытаться частотный детектор анализировать- хз что из этого получится. имхо, конечно.
 | 
|  | Дата: 01 Ноя 2010 23:21:01 
    # 
 DEmiurg
 Так он там частотный и стоит. Другого способа я пока не знаю. :(
 | 
|  | Дата: 02 Ноя 2010 00:29:17 · Поправил: Programmist (02 Ноя 2010 02:43:49) 
    # 
 Code300, как оказалось при ближайшем рассмотрении, тоже далеко не идеал (к тому же еще и виснет, что вообще ни в какие ворота не лезет). 
 Взять те же записи ТС, из-за чего все и возникло.
 А вот одна из причин глюков:
  Увеличить
 (из записи ТС http://www.radioscanner.ru/uploader/2010/tel.mp3 )
 Вроде-бы как DTMF, а цифры две (вместо явно одной). Code300 от одной до трех выдает (в зависимости от настроения).
 Еще одно доказательство значения фазы для частотного детектора лежит выше в исходном тексте. 
 Демонстрация работы двух функций: Простого перемножения SinCos и алгоритм Герцеля для частот DTMF.
   (http://www.radioscanner.ru/uploader/2010/dtmftest.rar )
 Специально писал программу, т.к. предвидел вопросы про фазу.
 Почему скачет амплитуда, когда отсчет (буфера) начинается с произвольной точки?
 P.S. Сначала казалось, что DTMF, так себе – игрушка, а вышло, что это одна из самых важных основ для всего остального. | 
|  | Дата: 02 Ноя 2010 08:16:53 · Поправил: Mesh (02 Ноя 2010 08:19:55) 
    # 
 Programmist Что б брать те же записи ТС, из-за чего все и возникло.  нужо ветку всю прочитать. Записи ТС первая зоть бы, ну ни как не обарзец ДТМФ. И код 300 да и любая софтина и ваша так ж, там будет глючить не подетски.  Что б было Еще одно доказательство значения фазы для частотного детектора  Нужно не мурзилки ложить, где можно изобрахить чего угодно, а сигналик. :) А уж те кто в теме, как нибудь разберутся чего там в итоге на мурзилках вышло. Это вобзе как залог серьёзной дискусии, или сигналик и хоть какой-то предметный разговор, или мурзилки и говоори что хочешь. Последнее тут пользуется особой популярностью. Но оно и понятно, никто ни за что не отвечает, буровь своё и будет счастье. :) Что б код 300 не вис, нужно его не ворвовать, а покупать, и писать производителю, что де есть проблемка, исправте пожалуйста. А так знаете, что в какие вороте лезет, а что нет, большой вопрос. Ну и типо резююа, хе-хе в ЦОС игрушек нет, там всё оченно серьёхно. Если конечно вещь нужна, а не поделка.  Ну а то, что подход у 99 прцев шапкозакидательский так це не ЦОС виноват и не ДТМФ. И Герцель не известно как у вас реализован, опять мурзика в качестве дока. Вобще не воспринимаю такого, можно обкидаться этих картинок, но без сигналиков это раел всего лишь кртинка никого ни к чему ни обязывющая и выводов ни каких не потверждющая или опровергающая. Где-то так оно всё выходит. Имхо.
 | 
|  | Дата: 02 Ноя 2010 09:13:42 
    # 
 Programmist
 Взять те же записи ТС, из-за чего все и возникло
 Мне вот интересно, если взять телефон с ДТМФ набором, он эти записи скушает? И насколько правильно?
 | 
|  | Дата: 02 Ноя 2010 09:41:07 · Поправил: Programmist (02 Ноя 2010 09:46:37) 
    # 
 Mesh
Вот, к примеру, сигналик: http://www.radioscanner.ru/uploader/2010/phasesample.mp3  (смотреть на водопаде в MixW). Ага, все цифры разноцветные. И каждый раз по-разному. Что это? Запись изменяется? Так же и с DTMF. Скачет фаза - скачет амплитуда. Только там длительность меньше, от того и хуже все гораздо. Все должно быть в реальном времени, естественно.
 Герцель не знаю, как реализован, там написано, где его взял. Может и где ошибся, но обычно такие вещи с ошибками не работают. Кому интересно, пусть исходник смотрят, а это уже не картинка. Код 300 мне и даром не нужен, тем более декодировать им что-то. Взял попробовать для сравнения и удалил уже.
DEmiurg Первую, конечно - нет, но вторую должен. Раза с пятого. | 
|  | Дата: 02 Ноя 2010 11:44:22 
    # 
 Тут про DTMF Detector какие-то шибко умные вещи пишут. | 
|  | Дата: 02 Ноя 2010 11:59:21 · Поправил: xman (02 Ноя 2010 16:25:19) 
    # 
 Год назад один мой знакомый сделал коммерческий проект на PSoC - встраиваемый кодер-декодер DTMF таксистам для сибишек. Очень долго возился, и внедряли со страшным скрипом. В общем достичь параметров декодирования, сопоставимых с работой специализированных ИМС, так и не получилось.
 Programmist Насчет того графика, где вроде-бы как DTMF, а цифры две (вместо явно одной) - там длительность фазовой помехи меньше 40 мсек, так что думаю ее надо каким-нибудь образом игнорировать.
 | 
|  | Дата: 02 Ноя 2010 13:51:56 
    # 
 длительность фазовой помехи меньше 40 мсек, так что думаю ее надо каким-нибудь образом игнорировать.
 
 Например, так (вариация на классическую тему "превращение дроблений в краевые искажения в телетайпном приемнике"):
 
 
 void __fastcall TDtmfDecoder::PostFilter(int dtnum)
 // dtnum - очередной отсчет с выхода решателя (с непрерывным выходом)
 // 0 - нет сигнала
 // 1...16 - комбинация
 {
 int i;
 static char DtmfTable[]=" 147*2580369#ABCD";
 
 PostFilters[dtnum]++;
 if(PostFilters[dtnum]>=(DTMF_QD_FILTER_LENGTH/2))
 {
 for(i=0;i<17;i++) PostFilters[i]=0;
 if(dtnum!=PrevDigit)
 {
 PrevDigit=dtnum;
 if(dtnum) RxForm->PutSym(DtmfTable[dtnum]);
 }
 }
 
 }
 //--------------------------------------
 | 
|  | Дата: 02 Ноя 2010 14:31:02 
    # 
 Programmist Это вобще что? В записи?
  Увеличить
 По вашему это ДТМФ где фазовые искажения полностью разрушили дату? Вы вобще где и про что? :)
 Имхо это вторая тема про oqpsk, где чихать хотели на правду, она никого не интересует. 
 Чего ради запись в мр3? Вы декодите ДТМФ через мр3 кодек? Где само ДТМФ? Что должна доказывать или показывать эта наскальлная живопись? Чего ради я должен это смотреть в Миксе? И выяснять чего это Микса всё вермя кажет разное? Есть нормал инструмент спецом для анализу, веры котораму больше чем Миксе.
 Как вы там сказали, судбьв ваша ховсты кобылам прикручивать? :) Нет это не судьба ваша, а ваш выбор, сохнательный. Эта тема пусатая трата времени, для меня по крайней мере. Разговор слпого и глухого. Делайте что хотите и как хотите. Как надо вы всё равно сделать не в состоянии. Имхо. И вас это устраивает в полне. Ну и ладно. | 
|  | Дата: 02 Ноя 2010 18:53:11 · Поправил: Programmist (02 Ноя 2010 19:44:42) 
    # 
 Mesh
Вообще-то я про реальное время писал, а раз запись в mp3, значит этого достаточно, чтобы увидеть то, о чем шел разговор. Сдается мне, что вам действительно просто не интересно.
 Вот запись где фазовые искажения полностью разрушили дату , только не надо говорить, что это не DTMF, или что на статическом спектре все прекрасно читается. http://www.radioscanner.ru/uploader/2010/corrupted_data.wav А судьба - прикручивать не хвост, а хобот -  вещи немного разные, имхо. :)
xman Игнорировать фазовую помеху никак нельзя. Для начала нужно определить, что фаза изменилась, а таких средств у меня нет. Может, когда что и придет в голову, но пока воз и ныне там. :(
 Для начала нужен специальный частотный детектор, однако не выходит.
 У amx  идет пост-обработка, когда до нее дойду, возможно там что-то получится. | 
|  | Дата: 02 Ноя 2010 19:55:41 
    # 
 Programmist
 
 Не нужны там никакие частотные детекторы, всего лишь мощности на выходе фильтров анализировать нужно, чтобы голос/музыку отделять уровень вторых гармоник смотреть. Качественная реализация не такая простая штука как может показаться, требует годы работы и опыта. Если уж передискретизация с 44100 на 48000 проблемы вызывает то надо прежде с основ ЦОС начинать.
 | 
|  | Дата: 02 Ноя 2010 20:01:34 
    # 
 Mesh
 Чего ради запись в мр3
 Для DTMF lossless записи и не нужны. А работать с ним через кодек или конвертить сначала в cool'е- это уже дело десятое.
 Другое дело, что раз на статическом спектре все прекрасно читается, то и вопросов не должно возникать.
 | 
|  | Дата: 02 Ноя 2010 20:04:23 · Поправил: Mesh (02 Ноя 2010 20:06:07) 
    # 
 Programmist С датой как видите абсолютно не призлошло ничего криминального  :)
  Увеличить
 Всё чудесно разделяется, вычисляетс и ДТМФ как был так и остался. Я не вижу в упор ни каких смертелльных проблем с искуствеными и резкими  скачками фазы, в жизни так фазу не кидает даже на переотражёнке. :) 
 Прикольно только не надо говорить, что это не DTMF, или что на статическом спектре все прекрасно читается.  А что ндо говорить? Что дата рухнула, её в упор не видно? Вто время как она вот она на блюдечке лежит. :) 
 Пока у вас Микс будет в фаворе как инструмент для глубоких выводов и не такое ещё "не надо говорить" как условие будет выдвинуто. :) Мне реально не интересно тут в тысячный раз намекать, что прежде чем делать скоропалительные вывлоды о вреде поворотах фазы для ДТМФ, нужно как минимум иметь желание вьехать во всё по взрослому. А вот этого желание как раз кое у кого и нет. Ну с хвостом пардоне, чё-то попутал, хобот да, значится хобота приркручивать, токмо не судьба, не надо на карму косить ;-) Это ваш выбор. :) | 
|  | Дата: 02 Ноя 2010 20:10:51 · Поправил: Programmist (02 Ноя 2010 21:24:41) 
    # 
 candid
 Действительно, интересный проект, с исходным кодом. Там, похоже идет подсчет гармоник основных частот.
 Жаль, что половина на С++, а половина на asm-e. Так сходу разобраться не просто будет.
 
 petr0v
 требует годы работы и опыта Это точно!
 Передискретизация особых проблем не вызывает, только она тут не нужна. Правильный алгоритм пересчета займет больше ресурсов, чем обработка 48K массива.
 
 Mesh
 Так вот и стараюсь въехать, не все же сразу получается.
 | 
|  | Дата: 02 Ноя 2010 20:24:04 · Поправил: Mesh (02 Ноя 2010 20:25:10) 
    # 
 нет DEmiurg записи нужно дожить в таком виде в каком с ними работает прога. И если прога работает с самплами, то и не зачем тут мп3 подсовывать. Это вносит смуту в неокрепшие мозги. И если мы говорим о ДТМФ то мы говорим о ДТМФ а не о работе кодеков мп3, и делать тут мп3 нечего и так в двух соснах разобраться люди не жалеют, а тут ещё это. Programmist Пока я вижу упорное желание списать на фазу несуществующие проблемы, выдвигание каких-то условий "смотреть в Миксе", "это не говорить" и всё такое. :) Ну разберётесь ессно, если захотите  конечно.
 | 
|  | Дата: 03 Ноя 2010 08:59:02 
    # 
 Mesh
 записи нужно дожить в таком виде в каком с ними работает прога
 Глупости это всё. При чём здесь формат файла и неправильный/неработающий алгоритм обработки?Programmist по крайней мере пытается что-то сделать, разобраться, а не просто рекламу SA толкает )))
 | 
|  | Дата: 03 Ноя 2010 10:05:21 · Поправил: Mesh (03 Ноя 2010 10:45:33) 
    # 
 DEmiurg Ага что кто-то пытается в чём-то разобратся я уже слышал где-то. И начинается оно с лепете детского, типо а какая разница в чём запись, в мп3 или в амр фоормате, ведь ухами слышно так же. Было было, эта песня заунывная мне знакома. Вам смоотрю она по душе? Ну и флаг в руки. Мне фиолетово скрины какого софта выкладывать в качестве доков. :) SA это будет? или ваше какое творение или ещё чье. Есть кандидиты? Есть в наличии доступный, хорошо описаный и додкументированый софт на русском, с примерами, с разжёванным наследием? Огласите пожалуйста. :) Сказать "глупости всё", и узреть в доках рекламу мозгов то много не надо, а чего аргументированного ляпнуть, это надо ещё с уметь. Вы падаете в моих глазах ниже плинтуса с каждым своим постом. Оно не велика беда конечно. Да и предлогал я вам решить все не тех вопросы в личке, но вы как-то избирательно туповвты в этом плане. Ну и ладно, ваши проблемы. :)  Могу "прореклмировать" вашу фазовую поделку. 
 Народ все берите фазовую смотрелку DEmiurg ! Удобна, легка, точна, документированна, поддерживает море форматов файлов. Особое внимание уделено формату мп3, за который тут автор вдург встал горой, прога прямо таки запилена под него. Что несомненно делает честь создателю, и по совместительству болтуну. :) Автор её постоянно развивает и все изменения хорошо документирвет. Десятки статей и сотни примеров собраны в однм месте. Работает служба поддержки, где вам обстятельно всё расскажут. Все туда!
 Так нормально?  :)
 з.ы. Ссылку забыл на фазовую смотрелку 21 века дать, незаслужено пребывающую в тени и обеделённую рекламой . Работа с фазовыми сигналами - Страница 7 | 
|  | Дата: 03 Ноя 2010 14:51:46 · Поправил: Programmist (03 Ноя 2010 16:03:29) 
    # 
 С другой стороны выходит, что не делается - все к лучшему. Имхо, с такой "битой" фазой вероятность правильного определения DTMF значительно выше. Если сделать приемник, конечно. ;)
 
 Интересная игрушка Matlab, как оказалось. Много времени ушло, чтобы понять, что к чему, но в результате некоторые модели заработали. Даже половина DTMF-декодера. Все сигналы легко выводятся на осциллографы, с любых точек схемы. Работает с wav файлами, думаю, что можно и в РТ. Не нужно гадать на кофейной гуще, какой в итоге получится СШ. Удобно. :)
 | 
|  | Дата: 03 Ноя 2010 19:53:28 
    # 
 Mesh
 1. Могу "прореклмировать" вашу фазовую поделку
 Хорошие программы в рекламе не нуждаются ))) Тем более в неадекватной. Обман пользователей и всё такое...
 2. типо а какая разница в чём запись, в мп3 или в амр фоормате, ведь ухами слышно так же
 Для DTMF разницы никакой. Вы спектр нарисовали? Нарисовали... Частоты на нём видно? Видно...
 3. Мне фиолетово скрины какого софта выкладывать
 О том и речь. Programmist что-то сам написать пытается. У вас - просто скрины
 4. Вы падаете в моих глазах ниже плинтуса с каждым своим постом
 Мне от этого как-то ни холодно, ни жарко )))
 
 ЗЫ: PhViewer все поставленные перед ним задачи выполнил. Кто бы что тут не говорил ))). Алгоритмы для автоматической классификации и получения парамметров PSK/DPSK сигналов получены. Востребованость подобной программы исследована. Вопросы распространения и защиты решены.
 
 Programmist
 Работает с wav файлами, думаю, что можно и в РТ
 Матлаб/Симулинк работает реал тайм. Одна проблема- требует много ресурсов. Если что-то реальное писать, лутше без него. Если цель просто разобраться и отладить алгоритм - матлаб самое то
 | 
|  | Дата: 03 Ноя 2010 21:38:45 
    # 
 DEmiurg У вас - просто скрины  А что надо?! Я должен тут прогу написать? Вам не худо? Вы хоть понимате, что пытаетесть мне тут втюхать в вину? Скрины с легально купленого софта. Софт отечественной разработки. Авторы тут рядом. Нужно скрины с ворованного софта класть?  Сделать вид что софта  SA несуществует? Что б такие как вы спали спокойно? Я вам не нравлюсь? Велком в личку. :) Ваше зы, типовой самопиар. Это заказчику петь надо а не тут. :) Ну да ладно.  Дурдом какой-то из темы устроили.
 | 
|  | Дата: 03 Ноя 2010 21:43:18 
    # 
 Как раз из-за ресурсов в свое время был выбран Delphi, а не С++. Сейчас жалею, но пути назад нет. Пока хочу сделать для DTMF скользящий фильтр с переменной длиной.
   Где A: выход АЦП, B: циркулярный буфер, F: фильтр с размером L. По понятным причинам, никакие быстрые преобразования здесь не пройдут. А то так какой-то непорядок получается. Сигнал есть, а ни один РТ декодер его не читает. :( | 
|  | Дата: 03 Ноя 2010 21:50:09 
    # 
 Programmist Сигнал то где?
 | 
|  | Дата: 03 Ноя 2010 21:52:34 · Поправил: Programmist (03 Ноя 2010 21:57:55) 
    # 
 Mesh
 Вот я и выбрал эту кривую дорожку. Почти весь софт пусть
 гплохой, но свой. Даже Интернет обозреватель, где сейчас пишу - "Бамбук". :))
 Сигнал то где?
 Сигнал идет с АЦП по кругу через фильтр, который пока только на картинке. Весь фокус в том, что фильтр (детектор) должен менять свою длину, пока есть импульс.
 | 
|  | Дата: 03 Ноя 2010 21:55:26 · Поправил: Mesh (03 Ноя 2010 21:56:09) 
    # 
 Programmist Да причём тут бамбук и обозрвеатель. Где сигналик который ни один РТ декодер его не читает?
 
 А на картнике. Ну тогда я пас. :)
 | 
|  | Дата: 03 Ноя 2010 22:01:04 · Поправил: Programmist (03 Ноя 2010 22:13:45) 
    # 
 Mesh
 Вчерашний сигнал с перекрученной фазой не читает ни код 300, ни одна РТ программа, которые я пробовал.
 Пока на картинке... Не лепить же сразу готовую прогу. Здесь люди подсказывают, может я ошибаюсь и путь изначально не верный.
 | 
|  | Дата: 03 Ноя 2010 22:21:09 
    # 
 Programmist А что, должны читать?!
  Увеличить
 Короче, пока меня не хватил сердечный приступ. Я делаю ноги с этой темы. Это какй-то кошмар. Успехов всем. Пока одни тут слюнями на SA брызжут, другие в упор не понимают, что в ЦОС всё нужно контролировать, контролировать и ещё раз контролировать. Всё. Это финиш полный. :-) | 
|  | Дата: 03 Ноя 2010 23:05:17 · Поправил: Programmist (03 Ноя 2010 23:09:15) 
    # 
 Должны читать! Потому, как вот этому инструменту - веры гораздо больше:
  Увеличить
 (первый импульс) | 
|  | Дата: 03 Ноя 2010 23:12:12 · Поправил: amx (03 Ноя 2010 23:19:34) 
    # 
 Вчерашний сигнал с перекрученной фазой не читает ни код 300, ни одна РТ программа, которые я пробовал.
 
 Ну так правильно и делают. В этом сигнале нет правильных DTMF-посылок. Исправный DTMF-приемник
 обязан ничего не принять в этом сигнале.
 
 В этом же и состоит вся идея DTMF - передача данных на фоне голоса, сигналов АТС etc.
 Поэтому сигнал, не попадающий в довольно жесткие рамки - обязан игнорироваться.
 
 А в этом сигнале, как Вам уже показали, частоты даже примерно в сетку DTMF не попадают.
 | 
|  | Дата: 03 Ноя 2010 23:18:18 · Поправил: Programmist (03 Ноя 2010 23:35:30) 
    # 
 amx
 Сложно сказать, про фазу нигде ничего не сказано, а частоты в сигнале правильные.
 Имхо, размер FFT нужно брать в соответствии с длительностью. Изменится они ну никак не могли. В Cool-e все создано, в нем же и развернуто на 180.
 |