Главная страница
Top.Mail.Ru    Яндекс.Метрика
Текущий архив: 2005.11.13;
Скачать: CL | DM;

Вниз

Сравнение звука   Найти похожие ветки 

 
P_Wlasik   (2005-03-07 04:48) [0]

Господа, подскажите, как можно опеределить "налету"  примерное наличие записанного на винт звукового фрагмента с поступающим потоком, ну например с Line-in, в реальном времени?


 
uny ©   (2005-03-07 20:31) [1]

через быстрое преобразование фурье - сделать это обоим звуковым фрагментам, и по содержанию звуковых частот делать оценку, вплоть до фазы каждой частоты


 
P_Wlasik   (2005-03-08 04:29) [2]

Не совсем понял... Это для 2-х файлов, а если 1 идёт с тюнера, и надо, допустим, что-то сделать по заранее известному фрагменту? Я то не знаю, в какой момент он начнётся...


 
uny ©   (2005-03-08 09:28) [3]

>Не совсем понял...
с тюнера _постоянно_ пишется в буфер в памяти - вот вам и второй файл.  
хотя если фрагмент заранее известен, то наверно можно упростить - зависит от какой именно фрагмент(форма звука)


 
AlterEgo of WondeRu ©   (2005-03-08 12:11) [4]

P_Wlasik   (08.03.05 4:29) [2]
Я то не знаю, в какой момент он начнётся...


когда в спектре звука появятся ярковыраженные гармоники, а не "белый шум", то можно говорить о начале Вашего сообщения!


 
P_Wlasik   (2005-03-09 05:08) [5]


> AlterEgo of WondeRu ©   (08.03.05 12:11) [4]
> P_Wlasik   (08.03.05 4:29) [2]
> Я то не знаю, в какой момент он начнётся...
>
> когда в спектре звука появятся ярковыраженные гармоники,
> а не "белый шум", то можно говорить о начале Вашего сообщения!

Вообще идея в том, чтобы потише рекламу делать при просмотре с TV-тюнера, а там то постоянно какой-то звук идёт


 
uny ©   (2005-03-09 17:33) [6]

[5] P_Wlasik   (09.03.05 05:08)
>чтобы потише рекламу делать при просмотре с TV-тюнера
когда реклама идёт, то нет логотипа канала. родной софт для тюнера испльзует этот факт что бы вырезать рекламу при записи.


 
programania ©   (2005-03-09 21:31) [7]

Проще всего сравнить по амплитуде:
Записать файл с диска в память усреднить abs амплитуды на участках 0.1 сек
нормализовать т.е. увеличить амплитуду до 32000, чтоб не зависело от громкости
записать в массив 3-4 сек.
Получать с line in, делать ту же обработку и писать в кольцевой буфер
и каждые 0.02сек считать разницу последних из line in с массивом
если меньше порога уменьшить звук,
вот только как его увеличить, когда реклама кончится?
может просто через 5 минут
или посылать нажатие переключения на другой канал.


 
MaFon   (2005-06-23 00:10) [8]

громкость тв-программы и рекламы должна быть одинаковой. Примерно так говорится в законе о рекламе. вот.


 
Thaddy   (2005-06-27 14:22) [9]

Wrong! The loudness is the same! (really, that is determined by the broadcaster)
What happens for commercials is that they are heavily compressed with an audio compressor (that is: the sound is leveled out, not made smaller) Compression means something different for Audio than it means for files!
This means that you can detect a commercial by comparing the loudest averages and the softest averages in the wave buffer.
When they exceed a certain threshold, it is *probably* a commercial. You don't need a FFT for that, you can do that in the time domain, by simply parsing and averaging loudest and softest values in the buffer.
This is actually a very easy form of DSP, but results may vary, because the film may contain some passages that are also heavily audio compressed.


 
Thaddy   (2005-06-27 15:37) [10]

To explain why loudness is wrong:
Loudness only makes the sound louder. Compression first makes the differences between loudest and softest smaller, and then adjusts the total volume. The effect is that the total sound is perceived to be louder than before. (but it isn"t!!!!)


 
Thaddy   (2005-06-27 20:52) [11]

maFon means the same as I mean. Probably crossed somewhere. Only is not loudness but volume. I do not understand sufficient russian to distinguish. I have written an audio library that contains routines to determine loudest and softest samples in a buffer. It is here:
www.thaddy.com/tdkdsplib.zip and includes explanation.



Страницы: 1 вся ветка

Текущий архив: 2005.11.13;
Скачать: CL | DM;

Наверх




Память: 0.49 MB
Время: 0.045 c
4-1126619198
Erik1
2005-09-13 17:46
2005.11.13
Как получить статус процесса?


6-1122847694
Flood_control
2005-08-01 02:08
2005.11.13
Как организовать отображение на ShellListView


2-1129543528
lodir
2005-10-17 14:05
2005.11.13
Преобразование ...


2-1129556336
Fast2
2005-10-17 17:38
2005.11.13
Как "редактировать" DBGrid?


14-1130140271
syte_ser78
2005-10-24 11:51
2005.11.13
какие базы (локальные) поодерживают украинскую локализацию?