Автор |
Сообщение |
|
Дата: 01 Ноя 2010 23:15:21
#
xman
Насчет фазы - согласен с выше сказанным, сколько бы она не крутилась - сама частота никуда не денется
С чего такая уверенность? Скачок фазы = выброс на частотном детекторе. Производная млин... Всё зависит от алгоритма, который пользуют. Если пытаться частотный детектор анализировать- хз что из этого получится. имхо, конечно.
|
|
Дата: 01 Ноя 2010 23:21:01
#
DEmiurg
Так он там частотный и стоит. Другого способа я пока не знаю. :(
|
Реклама Google
|
|
|
Дата: 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.
|
Реклама Google |
|