информационная безопасность
без паники и всерьез
 подробно о проектеRambler's Top100
Портрет посетителяСтрашный баг в WindowsСетевые кракеры и правда о деле Левина
BugTraq.Ru
Русский BugTraq
 Анализ криптографических сетевых... 
 Модель надежности двухузлового... 
 Специальные марковские модели надежности... 
 Линуксовый ботнет, распространяющийся... 
 Конец поддержки Internet Explorer 
 Рекордное число уязвимостей в 2021 
главная обзор RSN блог библиотека закон бред форум dnet о проекте
bugtraq.ru / форум / miscellaneous
Имя Пароль
ФОРУМ
если вы видите этот текст, отключите в настройках форума использование JavaScript
регистрация





Легенда:
  новое сообщение
  закрытая нитка
  новое сообщение
  в закрытой нитке
  старое сообщение
  • Напоминаю, что масса вопросов по функционированию форума снимается после прочтения его описания.
  • Новичкам также крайне полезно ознакомиться с данным документом.
Давайте в отличии от Узбекских программистов не будем... 16.01.08 11:59  Число просмотров: 1804
Автор: DPP <Dmitry P. Pimenov> Статус: The Elderman
Отредактировано 16.01.08 12:05  Количество правок: 5
<"чистая" ссылка>
Давайте в отличии от Узбекских программистов не будем браться сразу за операционку, а начнем с кодека и утрем нос Франгоферам. Есть некоторые идеи.
Для начала хочется заметить, когда зародился МРЗ формат, я долго недоумевал, почему он такой не слишком компактный что-ли, как должен быть. ЕМНИП любую функцию на интервале можно разложить в гармонический ряд с заданной точностью. Отцифрованную звукозвпись, длиной в секунду можно представить, как дисретную функцию, заданную таблично. В предположении того, что по частоте гармоник можно ограничится диапазоном 10Гц-100кГц, получается, что для достаточной точности должно хватить 15-16 гармоник. Для каждой надо амплитуду, частоту, фазу, декремент затухания, то есть 8-10 байт. Итого на секунду звука должно хватить ~128 байт на канал. Это же килобит в секунду, а не 256 килобит в секунду! Ну понятно, стерео, но тогда МРЗ "рыхлее" в 128 раз получается! Откуда?
Может в МРЗ какие-то другие алгоритмы используются для преобразования. Скорее всего. Разложение на гармоники и обратное восстановление звука должно не ухудшать качество звука, а наоборот улучшать его! Во первых шумы не имеют гармонических составляющих по определению, стало быть побочный положительный эффект - избавляемся от шумов!
К стати. В связи с тем, что в основном звук, который преобразуется в МРЗ представляет из себя музыку, голос либо смесь, то есть песню. Весь этот звук имеет гармоническую природу - колебательные движения излучателей (струны, голосовые связки) в упругой среде. Стало быть можно выделить чистые гармоники. Отсюда вытекает модифицированный алгоритм сжатия - не тупо раскладывать на кратные гармоники, а вычислять подходяшие. Поскольку таких компонент будет не 15-16, а несколько меньше, поскольку в одноголосом инструменте уже вторая гармоника подчастую составляет несколько процентов от первой, то достаточно хранить только те, что присутствуют. Стало быть коэффициент сжатия получится еще выше и секунда одного канала может сжаться до 64, 48 и даже 32 байт! Что-то я лишку махнул, даже самому не верится. Наверное все-таки ошибся где-то, только не пойму где.
А, еще чуть не забыл про побочный положительный эффект разложения не на полный ряд гармоник. Обычно при записи звук проходит умеренно сложный аналоговый тракт, где может потерпеть некоторые типичные нелинейные искажения, например "насыщение" (обрубание "сверху"), гистерезис и прочие. Так вот гармоническое преобразование отцифрованного звука может "вылечить" поврежденную подобными искажениями запись.
Кто сбацает кодек - не забудте про меня :-).
К чему я это написал. Вот читал я про новый Франгофер и в голову еще интересные мысли пришли относительно сжатия без потерь или с незначительными потерями, но с более высокой степенью, чем существующие. Ну скажем можно получить не двухкратное, а четырех- или даже восьмикратное сжатие таких "тяжелых" данных, как отцифрованый звук.
<miscellaneous>
Сотрудники института Fraunhofer IIS новый формат под названием HD-AAC, который журналюги немедлено назвали "убийца сидюков". 11.01.08 22:56  
Автор: Fighter <Vladimir> Статус: Elderman
<"чистая" ссылка>


Здесь
Давайте в отличии от Узбекских программистов не будем... 16.01.08 11:59  
Автор: DPP <Dmitry P. Pimenov> Статус: The Elderman
Отредактировано 16.01.08 12:05  Количество правок: 5
<"чистая" ссылка>
Давайте в отличии от Узбекских программистов не будем браться сразу за операционку, а начнем с кодека и утрем нос Франгоферам. Есть некоторые идеи.
Для начала хочется заметить, когда зародился МРЗ формат, я долго недоумевал, почему он такой не слишком компактный что-ли, как должен быть. ЕМНИП любую функцию на интервале можно разложить в гармонический ряд с заданной точностью. Отцифрованную звукозвпись, длиной в секунду можно представить, как дисретную функцию, заданную таблично. В предположении того, что по частоте гармоник можно ограничится диапазоном 10Гц-100кГц, получается, что для достаточной точности должно хватить 15-16 гармоник. Для каждой надо амплитуду, частоту, фазу, декремент затухания, то есть 8-10 байт. Итого на секунду звука должно хватить ~128 байт на канал. Это же килобит в секунду, а не 256 килобит в секунду! Ну понятно, стерео, но тогда МРЗ "рыхлее" в 128 раз получается! Откуда?
Может в МРЗ какие-то другие алгоритмы используются для преобразования. Скорее всего. Разложение на гармоники и обратное восстановление звука должно не ухудшать качество звука, а наоборот улучшать его! Во первых шумы не имеют гармонических составляющих по определению, стало быть побочный положительный эффект - избавляемся от шумов!
К стати. В связи с тем, что в основном звук, который преобразуется в МРЗ представляет из себя музыку, голос либо смесь, то есть песню. Весь этот звук имеет гармоническую природу - колебательные движения излучателей (струны, голосовые связки) в упругой среде. Стало быть можно выделить чистые гармоники. Отсюда вытекает модифицированный алгоритм сжатия - не тупо раскладывать на кратные гармоники, а вычислять подходяшие. Поскольку таких компонент будет не 15-16, а несколько меньше, поскольку в одноголосом инструменте уже вторая гармоника подчастую составляет несколько процентов от первой, то достаточно хранить только те, что присутствуют. Стало быть коэффициент сжатия получится еще выше и секунда одного канала может сжаться до 64, 48 и даже 32 байт! Что-то я лишку махнул, даже самому не верится. Наверное все-таки ошибся где-то, только не пойму где.
А, еще чуть не забыл про побочный положительный эффект разложения не на полный ряд гармоник. Обычно при записи звук проходит умеренно сложный аналоговый тракт, где может потерпеть некоторые типичные нелинейные искажения, например "насыщение" (обрубание "сверху"), гистерезис и прочие. Так вот гармоническое преобразование отцифрованного звука может "вылечить" поврежденную подобными искажениями запись.
Кто сбацает кодек - не забудте про меня :-).
К чему я это написал. Вот читал я про новый Франгофер и в голову еще интересные мысли пришли относительно сжатия без потерь или с незначительными потерями, но с более высокой степенью, чем существующие. Ну скажем можно получить не двухкратное, а четырех- или даже восьмикратное сжатие таких "тяжелых" данных, как отцифрованый звук.
10000 гармоник. Звук - апериодичен. Без шума нет звука. 18.01.08 05:28  
Автор: Zef <Alloo Zef> Статус: Elderman
<"чистая" ссылка>
Поскольку звук с учетом атак и шумов апериодичен, то его в общем случае можно рассматривать не как набор кратных гармоник, а как непрерывный спектр частот. Обойти это можно, порезав сигнал на интервалы, каждый из которых рассматривать, как один период периодического сигнала. Тогда при заявленной полосе 10 - 100 000 Гц получается 10 000 гармоник на каждый 0.1 секундный интервал.
С чего такой вывод? Если брать первую гармонику w - 10Hz... 16.01.08 15:40  
Автор: amirul <Serge> Статус: The Elderman
<"чистая" ссылка>
> что-ли, как должен быть. ЕМНИП любую функцию на интервале
> можно разложить в гармонический ряд с заданной точностью.
> Отцифрованную звукозвпись, длиной в секунду можно
> представить, как дисретную функцию, заданную таблично. В
> предположении того, что по частоте гармоник можно
> ограничится диапазоном 10Гц-100кГц, получается, что для
> достаточной точности должно хватить 15-16 гармоник. Для

С чего такой вывод? Если брать первую гармонику w - 10Hz (угловую частоту считайте сами - мне лень), то 16-я гармоника это 16w = 160Hz. Маловато даже для речи, не говоря уж о музыке.

Есть же теорема Котельникова: Для дискретизации аналогового сигнала без потери информации частота отсчетов должна быть в два раза выше верхней граничной частоты спектра сигнала.

Если мы хотим более менее качественный звук, то верхней граничной частотой надо считать 20kHz, итого по вышеприведенной теореме нужно дискретизировать такой сигнал с частотой отсчетов не менне 40kHz (что чаще всего и происходит - 44100 - самая популярная частота дискретизации звука). 44100 отсчетов в секунду, 2 канала (не берем 5.1) по 16 бит каждый. PCM будет тянуть почти 170 килоБАЙТ/сек.

Ну а mp3 как раз и строится на дискретном косинус-преобразовании фреймов и выкидывании верхних гармоник.
Понятно, я то думал, что частоты удваиваются, как октавы у... 16.01.08 16:29  
Автор: DPP <Dmitry P. Pimenov> Статус: The Elderman
<"чистая" ссылка>
> С чего такой вывод? Если брать первую гармонику w - 10Hz
> (угловую частоту считайте сами - мне лень), то 16-я
> гармоника это 16w = 160Hz. Маловато даже для речи, не
> говоря уж о музыке.

Понятно, я то думал, что частоты удваиваются, как октавы у рояля. Получается надо рассчитать 20кГц/20Гц = 1000 гармоник. Для каждой по 8 байт, итого 8 килобайт в секунду или 64 килобита в секунду. Неплохо. Отцифровывать надо, конечно, по Котельникову, с частотой в двое превышающей, а именно не менее 40 килогерц, но Фурье про удвоение верхней гармоники ничего не говорит. Ну хорошо, получим 128 килобит в секунду, это предел.

----Отсюда
> Есть же теорема Котельникова: Для дискретизации
> аналогового сигнала без потери информации частота отсчетов
> должна быть в два раза выше верхней граничной частоты
> спектра сигнала.

>
> Если мы хотим более менее качественный звук, то верхней
> граничной частотой надо считать 20kHz, итого по
> вышеприведенной теореме нужно дискретизировать такой сигнал
> с частотой отсчетов не менне 40kHz (что чаще всего и
> происходит - 44100 - самая популярная частота дискретизации
> звука). 44100 отсчетов в секунду, 2 канала (не берем 5.1)
> по 16 бит каждый. PCM будет тянуть почти 170 килоБАЙТ/сек.

----До сюда
Все правильно, все знаю.

> Ну а mp3 как раз и строится на дискретном
> косинус-преобразовании фреймов и выкидывании верхних
> гармоник.

А только косинуса хватает? У Фурье нужны и синус и косинус.

Преобразование Фурье в Википедии
Хватает. Так как функция амплитуды строится от нуля до T... 17.01.08 11:50  
Автор: amirul <Serge> Статус: The Elderman
<"чистая" ссылка>
> именно не менее 40 килогерц, но Фурье про удвоение верхней
> гармоники ничего не говорит. Ну хорошо, получим 128 килобит
> в секунду, это предел.

> > Ну а mp3 как раз и строится на дискретном
> > косинус-преобразовании фреймов и выкидывании верхних
> > гармоник.
>
> А только косинуса хватает? У Фурье нужны и синус и косинус.

Хватает. Так как функция амплитуды строится от нуля до T (орицательных значений времени нет), то соответственно можно забить либо на синусы либо на косинусы, результат соответственно получится либо четным либо нечетным (как сами функции). По какой то причине забили на синусы - ну и ладно. В общем формат mp3 открытый (в смысле я встречал горы документации, а не то, что его не нужно лицензировать), и могу сказать, что там очень неглупо все сделано. Так что улучшить его показатели "в лоб" вряд ли получится.
Что-то не понял связь отсутствия отрицательных значение и... 17.01.08 16:37  
Автор: DPP <Dmitry P. Pimenov> Статус: The Elderman
Отредактировано 17.01.08 16:40  Количество правок: 3
<"чистая" ссылка>
> > А только косинуса хватает? У Фурье нужны и синус и
> косинус.
>
> Хватает. Так как функция амплитуды строится от нуля до T
> (орицательных значений времени нет), то соответственно
> можно забить либо на синусы либо на косинусы, результат
> соответственно получится либо четным либо нечетным (как
> сами функции). По какой то причине забили на синусы - ну и
> ладно.

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

> В общем формат mp3 открытый (в смысле я встречал
> горы документации, а не то, что его не нужно
> лицензировать), и могу сказать, что там очень неглупо все
> сделано. Так что улучшить его показатели "в лоб" вряд ли
> получится.

Улучшить, думается, можно. Дело в том, что в разложении Фурье не практикуется использование фазы. То есть если взять отцифрованную синусойду в интервале от 0 до Т со сдвигом фазы, скажем на 1/6Пи, то по Фурье будем иметь кучу ненулевых коэффициентов. Если же раскладывали каким-нибудь адаптационным методом, то получим в первом коэффициенте реальную амплитуду, остальные получили бы равными нулю и хранить их было бы не обязательно. То есть с высокой степенью вероятности звучание одной ноты музыкального инструмента разложилось бы в одну основную гармонику и два-три обертона. Добавив в формат один байт (количество гармоник) можно было бы не хранить лишнюю тысячу, при этом качество могло бы только выиграть.
В конце концов Франгоферы что-то новенькое все-таки придумали.
Нет отрицательных значений времени, а не амплитуды 17.01.08 18:48  
Автор: amirul <Serge> Статус: The Elderman
<"чистая" ссылка>
> Что-то не понял связь отсутствия отрицательных значение и
> отказ от использования синуса. Кроме того и отсутствие

Любую функцию можно представить в виде суммы четной и нечетной. Ряд косинусов дает четную функцию, ряд синусов - нечетную, их сумма - любую.

> отрицательных значение амплитуды поставил бы под сомнение.

Отрицательные значения амплитуды конечно есть

> Ну да ладно, беда не в этом. Даже наоборот, можно пару
> лишних байт не хранить в пачке гармоники.

> Улучшить, думается, можно. Дело в том, что в разложении

Улучшить можно, но я сказал, что "в лоб" не получится.
1




Rambler's Top100
Рейтинг@Mail.ru


  Copyright © 2001-2022 Dmitry Leonov   Page build time: 0 s   Design: Vadim Derkach