Lossless 32-bit fp audio compression
OptimFROG поддерживает 32бит целые и с плавающей точкой, FLAC теоретически может поддерживать 32бит целые, но не умеет 32бит fp.
OptimFROG поддерживает 32бит целые и с плавающей точкойО, прикольно. Правда, судя по сайту, как-то стремно он их поддерживает: в списке фич нет, и
It is a branch from the main OptimFROG Lossless version 4.509 project, with modifications and new algorithms to implement support for the IEEE Float formats. The branch with support for IEEE Float started in July 2002, and I recently decided to publicly release it (2003.10.04).Про флак я знаю, мне нужна компрессия именно плавающих.
This version has no input plug-ins available for real-time playback and the file format is not compatible and recognized by the mainstream OptimFROG Lossless 4.509 version. Also, it does not support any integer PCM wave formats. However, this version is completely compatible with the previous 4.508e experimental version.
D:\mp3\duduk\длеЯман\wavs>\sox\sox --info 1.wav
/cygdrive/d/sox/sox WARN wav: wave header missing FmtExt chunk
Input File : '1.wav'
Channels : 1
Sample Rate : 48000
Precision : 24-bit
Duration : 00:02:08.83 = 6183936 samples ~ 9662.4 CDDA sectors
File Size : 24.7M
Bit Rate : 1.54M
Sample Encoding: 32-bit Floating Point PCM
D:\mp3\duduk\длеЯман\wavs>\wavpack\wavpack.exe -hh -r 1.wav
WAVPACK Hybrid Lossless Audio Compressor Win32 Version 4.60.0
Copyright (c) 1998 - 2009 Conifer Software. All Rights Reserved.
created 1.wv in 30.34 secs (lossless, 33.92%)
D:\mp3\duduk\длеЯман\wavs>\wavpack\wavpack.exe -hh -r -p 1.wav 1-p.wv
WAVPACK Hybrid Lossless Audio Compressor Win32 Version 4.60.0
Copyright (c) 1998 - 2009 Conifer Software. All Rights Reserved.
created 1-p.wv in 35.70 secs (lossy, 888 kbps)
D:\mp3\duduk\длеЯман\wavs>dir 1*
Том в устройстве D не имеет метки.
Серийный номер тома: 1006-AF85
Содержимое папки D:\mp3\duduk\длеЯман\wavs
21.05.2009 21:07 24 735 788 1.wav
19.10.2009 21:13 16 345 186 1.wv
19.10.2009 21:15 14 311 054 1-p.wv
3 файлов 55 392 028 байт
0 папок 1 471 520 768 байт свободно
D:\mp3\duduk\длеЯман\wavs>
В принципе, я подозреваю, для хранения микрофонных записей -p хватит с избытком. Но даже и без него заметная экономия.
Ээээ, а зачем для микрофонной записи lossless?
Микрофоны и диктофоны
Даже самый крутой диктофон не является спасением от внешних факторов, делающих неразличимой запись 16 бит и 24 (ну и 32, само собой). Так что не особо там нужен лосслесс. И 24 бита.
не особо там нужен лосслессНу не скажите, Фёдор Михалыч. У LS10 вот явно сказано, что при записи в mp3 или wma он начинает резать частотку откровенно и жестоко. При этом при записи в 16/44.1 — от 20 герц до 20 килогерц обещается, а в 24/96 — от 20 герц до 40, что ли, килогерц. Мелочь, а приятно.
У LS10 вот явно сказано, что при записи в mp3 или wma он начинает резать частотку откровенно и жестоко. При этом при записи в 16/44.1 — от 20 герц до 20 килогерц обещается, а в 24/96 — от 20 герц до 40, что ли, килогерц. Мелочь, а приятно.Мифы на форум.локал?
Какой тебе толк от этих килогерц, если их ни один человек никогда не услышит? Ты и 20-килогерцовый писк едва ли услышишь (даже если услышишь — это всё равно граница слышимости а 40-килогерцовый — и подавно. Разве что понтоваться, что тут записано 20-40 килогерц. Ну так в любом звуковом редакторе можно на этих частотах абсолютно произвольных шумов понакрутить, и никто не заметит ни малейшей разницы.
20 я слышу уверенно. 21 уже да, похуже. В районе 22-х кончается. В любом случае, запись в мрз, которая мне сразу же порежет во что-то типа 60..18, существенно отличима даже от 16/44.1.
явно сказано, что при записи в mp3 или wma он начинает резать частотку откровенно и жестоко. При этом при записи в 16/44.1 — от 20 герц до 20 килогерц обещается, а в 24/96 — от 20 герц до 40, что ли, килогерцГм, ну вообще-то, если я правильно понял, о чём там говорится - это и есть суть дискретизации. Для того, чтобы более-менее прилично записывать колебания с частотой до Nкгц, тебе нужна частота дискретизации 2N.
Угу.
Какой тебе толк от этих килогерц, если их ни один человек никогда не услышит? Ты и 20-килогерцовый писк едва ли услышишь (даже если услышишь — это всё равно граница слышимости а 40-килогерцовый — и подавно. Разве что понтоваться, что тут записано 20-40 килогерц. Ну так в любом звуковом редакторе можно на этих частотах абсолютно произвольных шумов понакрутить, и никто не заметит ни малейшей разницы.Опять же, если говорить о теории - чем выше частота дискретизации, тем меньше будут отличия PCM-записи от исходного звука на всех частотах.
Или ты из
Даже больше скажу, 128kbps mp3 приятней все-таки делать из оригинала, чем из 320 kbps mp3. Он тогда теплее получается. И ламповее.
Ты лучше скажи, что ты записывать хочешь.
УгуНу так mp3-то тут ни при чём, это справедливо для любого PCM-формата, хоть сжимаешь, хоть не сжимаешь.
Цифра - это либо однобитный звук (который твоя железка, скорее всего, не поддерживает; и хранится оно всё-таки не в .wav; и вместо килогерц там мегагерцы либо PCM - и тогда тебе и без всяких mp3 для того, чтобы хотя бы что-то осталось от колебаний 22кгц, надо писать минимум на 44кгц.
ЗЫ: Собственно, википедия:
There has been an industry trend towards sampling rates well beyond the basic requirements; 96 kHz and even 192 kHz are available.[1] This is in contrast with laboratory experiments, which have failed to show that ultrasonic frequencies are audible to human observers; however in some cases ultrasonic sounds do interact with and modulate the audible part of the frequency spectrum (intermodulation distortion). It is noteworthy that intermodulation distortion is not present in the live audio and so it represents an artificial coloration to the live sound.[2]
Цифра - это либо однобитный звук (который твоя железка, скорее всего, не поддерживает; и хранится оно всё-таки не в .wav; и вместо килогерц там мегагерцы)Ой, интересно как стало сразу! А можно подробнее про эту технологию?
P.S. разложить PCM в один бит через сдвиговый регистр не засчитываем.
It is noteworthy that intermodulation distortion is not present in the live audio and so it represents an artificial coloration to the live sound.Вот эту штучку тоже надо было жирненьким выделить.
...DM is the simplest form of differential pulse-code modulation (DPCM)...
...DPCM or differential pulse-code modulation is a signal encoder that uses the baseline of PCM...Из твоих же ссылок.
Хоть заворачивай в один бит и мегагерцы, хоть не заворачивай, все равно PCM.
Кто мешает делать мр3 из диктофона сразу, без лосслеса?Тот простой факт, что у меня нет диктофона.
Ты лучше скажи, что ты записывать хочешь.Да все подряд. У меня есть звуковуха с микрофонным и инструментальным входом, а фонограммы, кроме записанных, бывают еще и синтезированные, и в последнем случае понижение до 24 раньше времени делать точно не хочется.
Понял. Спасибо.
Опять же, если говорить о теории - чем выше частота дискретизации, тем меньше будут отличия PCM-записи от исходного звука на всех частотах.Хуйня. Звук в любом случае - это суперпозиция частот. Выкидывая верхние, ты никак не влияешь на более низкие (если фильтр конечно считать идеальным).
если фильтр конечно считать идеальнымКакового в природе не бывает, как известно.
Ну то есть бывает, но как в натуре провести свертку с синком, еще никто не придумал. Я хочу, но не знаю, как.
Ну во-первых, даже при неидеальном фильтре двукратное увеличение частоты дискретизации слишком избыточно, а во-вторых, я возражал против формулировки "на всех частотах", которая - очевидный бред. Наличие или отсутствие частот выше 20кГц никак не повлияет на звук частотой 2000 Гц, потому что звук - суперпозиция гармонических колебаний различных частот.
двукратное увеличение частоты дискретизации слишком избыточноСзМ!
Без двухкратного увеличения частоты вообще никуда. При частоте дискретизации в 2Nкгц у тебя хоть как-то сохранятся _только_ колебания с частотой Nкгц.
Вопрос на засыпку - что, по-твоему, будет на выходе АЦП, который берёт сэмплы N тысяч раз в секунду, если у него на входе колебания с частотой Nкгц? Насколько сильно будут отличаться соседние сэмплы?
Ах да, и google теорему котельникова (или найквиста-шэннона).
Наличие или отсутствие частот выше 20кГц никак не повлияет на звук частотой 2000 Гц,Наличие колебаний с очень высокой частотой на слышимый звук, конечно же, не повлияет. А на оцифрованный со слишком низкой частотой - ещё как повлияет.
Опять же, вопрос на засыпку. Что будет на выходе твоего АЦП, берущего сэмплы 40 тысяч раз в секунду, если на входе - чистейшая нота 210кгц и больше ничего? Неужели только нули? Или всё-таки в результате у тебя будет периодичная последовательность 1, -1, -1, 1 с амплитудой в 5.25 раза меньше исходной (то есть, по сути, очень даже слышимая нота 10кгц, хотя и раз в пять тише, чем исходная 210кгц)?
Я прекрасно знаю о теореме Найквиста, и имел в виду увеличение в 2 раза относительно именно найквистовой частоты, что очевидно из предыдущего обсуждения (обсуждали увеличение с 44 кГц до 96 кГц).
А насчёт чистейшей ноты в 210 кГц - подскажи мне, пожалуйста, каким образом диктофон запишет звук частотой в 210кГц, и кто его сгенерирует?
Я прекрасно знаю о теореме Найквиста, и имел в виду увеличение в 2 раза относительно именно найквистовой частотыНу тогда бы сказал про n-кратное увеличение, а то действительно двусмысленность какая-то получилась, про двухкратное увеличение из-за этой теоремы в треде тоже говорилось.
А насчёт чистейшей ноты в 210 кГц - подскажи мне, пожалуйста, каким образом диктофон запишет звук частотой в 210кГцУ АЦП на входе, насколько мне известно, просто уровень сигнала в какой-то момент. Если этот уровень соответствует колебаниям с частотой 210кгц - что, по-твоему, будет на выходе у АЦП при частоте дискретизации 40кгц? Если ты считаешь, что это будут нули - объясни, откуда эти нули возьмутся.
и кто его сгенерирует?А как, по-твоему, в окружающем нас мире генерируются звуки? Спроси ещё, кто сгенерирует ультрафиолетовый цвет.
Я прекрасно знаю о теореме Найквиста, и имел в виду увеличение в 2 раза относительно именно найквистовой частоты, что очевидно из предыдущего обсуждения (обсуждали увеличение с 44 кГц до 96 кГц).звук частотой 22кГц и этот-же звук, но сдвинутый по фазе на Pi/4, при частоте дискретизациии 44кГц запишутся по разному.
У АЦП на входе, насколько мне известно, просто уровень сигнала в какой-то момент. Если этот уровень соответствует колебаниям с частотой 210кгц - что, по-твоему, будет на выходе у АЦП при частоте дискретизации 40кгц? Если ты считаешь, что это будут нули - объясни, откуда эти нули возьмутся.Откуда ты взял эти 210кГц? Речь идёт о целесообразности поднятия частоты дискретизации для воспроизведения звуков, слышимых человеческим ухом. Более того, речь идёт о диктофоне. Какого хрена тогда приплетать высокочастотные помехи, которые с большой долей вероятности в диктофонах режутся высокочастотными фильтрами ещё до оцифровки, и именно ими оправдывать необходимость поднятия частоты дискретизации?
звук частотой 22кГц и этот-же звук, но сдвинутый по фазе на Pi/4, при частоте дискретизациии 44кГц запишутся по разному.С этим согласен. Но, ещё раз: я не утверждаю, что увеличение частоты дискретизации не требуется вообще. Я спорю с тем, что сказал пенартур: "чем выше частота дискретизации, тем меньше будут отличия PCM-записи от исходного звука на всех частотах", утверждая, в свою очередь, что отличия будут только на частотах, близких к половине частоты дискретизации. Просто у пенартура видимо стоит перед глазами картинка из википедии, где нарисован вид PCM-сигнала в виде лесенки, и он никак не хочет понять, что даже такая лесенка - это чистая низкочастотная нота с гармониками более высоких частот, причём гармоники как раз начинаются с частоты, равной половине найквистовой. Именно так она и будет в итоге воспроизведена и услышана, и наличие высокочастотных гармоник не помешает, так как они не будут слышимы человеческим ухом.
звук частотой 22кГц и этот-же звук, но сдвинутый по фазе на Pi/4, при частоте дискретизациии 44кГц запишутся по разному.Что не удивительно, поскольку в теореме Котельникова строгое неравенство.
У АЦП на входе, насколько мне известно, просто уровень сигнала в какой-то момент. Если этот уровень соответствует колебаниям с частотой 210кгц - что, по-твоему, будет на выходе у АЦП при частоте дискретизации 40кгц? Если ты считаешь, что это будут нули - объясни, откуда эти нули возьмутся.А-а-а-а-а-а-а-а-а-а! Один пенартур заменяет три взвода огнеметчиков!11111
режутся высокочастотными фильтрамиЭто все-таки называют низкочастотными фильтрами нынче.
Да Ну понятно, что я имел в виду фильтр, отрезающий высокие
Я сам когда-то их так называл, но сейчас, по кр. мр., в русскоязычной номенклатуре от режущих фильтров перешли к пропускающим, как в английском.
ЗЫ: вопрос Пенартуру. Ты вообще реально с ЦАП и АЦП, с цифровой обработкой сигналов работал или просто википедию читал? Я со своей стороны могу сказать, что я занимался этим довольно плотно, так как моя курсовая по сейсмике состояла в разработке цифрового сейсмографа, и я сам собирал этот сейсмограф из акселерометров, ЦАП и АЦП и писал цифровые фильтры для него, чтобы исключить аналоговый дрейф при изменении температуры и влажности окружающей среды, так что твои намёки "погугли на тему теоремы Найквиста" совершенно безосновательны.
Откуда ты взял эти 210кГц?Из головы.
Ты на вопрос-то так и не ответил - у диктофона на входе то, что ему дал микрофон, а у микрофона на входе - окружающий мир, и там могут быть какие угодно звуки. Какой эффект будет на выходе ацп от 210кгц ноты?
Речь идёт о целесообразности поднятия частоты дискретизации для воспроизведения звуков, слышимых человеческим ухомДа, и если, когда ты записываешь звуки, слышимые человеческим ухом, рядом что-то будет жужжать на 210кгц - при воспроизведении этих звуков у тебя откуда-то вылезет 10кгц, которых в оригинале не было.
и именно ими оправдывать необходимость поднятия частоты дискретизацииИменно они и только они и заставляют записывать с более высокой частотой дискретизации.
и он никак не хочет понять, что даже такая лесенка - это чистая низкочастотная нота с гармониками более высоких частот, причём гармоники как раз начинаются с частоты, равной половине найквистовой. Именно так она и будет в итоге воспроизведена и услышана, и наличие высокочастотных гармоник не помешает, так как они не будут слышимы человеческим ухом.Я, кажется, говорил о проблемах АЦП, а не ЦАП.
В ЦАПе - да, из цифры вылезут высокие частоты, их человек не слышит, так что похуй.
В АЦП из высоких частот, которые человек не слышит, в цифру залезут низкие частоты, которые человек услышит.
О, может, ты чего простого подскажешь?Я совершенно точно уверен, что у него и эта функция в кармане лежит, и программа, сразу говорящая о том, завершится ли машина тьюринга, поданная на вход, и ещё много интересных вещей.
Ты на вопрос-то так и не ответил - у диктофона на входе то, что ему дал микрофон, а у микрофона на входе - окружающий мир, и там могут быть какие угодно звуки. Какой эффект будет на выходе ацп от 210кгц ноты?У тебя какая-то каша в голове. Естественно, на записи в таком случае появятся паразитные гармоники. Однако частоту дискретизации поднимают отнюдь не затем, чтобы избавиться от высокочастотных помех (так как в отсутствии аналогового lowpass-фильтра на входе в диктофон ультразвук частотой 210кГц устроит пиздец твоей записи как при частоте дискретизации 44кГц, так и при частоте 96кГц, и никто тебе в этом случае не сможет гарантировать наличие ещё более высокочастотных помех а затем, чтобы цифровые фильтры и эффекты, которые затем применяются к записи, давали как можно меньше артефактов.
Ты чего-то странного хочешь - наложить фильтр на функцию до дискретизации Тут либо делать аналитическое преобразование Фурье и обрезать спектр, либо дискретизировать с высокой частотой, делать fft и опять же резать спектр, соответственно ничего более умного, чем тебе уже подсказали, я придумать не могу...
В АЦП из высоких частот, которые человек не слышит, в цифру залезут низкие частоты, которые человек услышит.Ну ясен хрен, для того и стоят lowpass-фильтры перед оцифровкой! Но указывать возможные высокочастотные помехи как основную причину увеличения частоты дискретизации - это какая-то хуйня.
210кГц устроит пиздец твоей записи как при частоте дискретизации 44кГц, так и при частоте 96кГц, и никто тебе в этом случае не сможет гарантировать наличие ещё более высокочастотных помехКак я сейчас прикидываю, чтобы из звука высокой частоты при дискретизации, например, 192кгц, получилось менее 22кгц - это должно очень сильно не повезти.
а затем, чтобы цифровые фильтры и эффекты, которые затем применяются к записи, давали как можно меньше артефактов.То-то некоторые особо упоротые _слушают_ записи 24/192, а звукозаписывающие компании _выпускают_ эти 24/192 для конечных пользователей. Наверное, при выводе звука с плеера на колонки применяется ну очень много цифровых фильтров и эффектов. (На всякий случай уточню - я, конечно, говорю о 192, а не о 24).
И что ты хочешь этим сказать? Особо упоротые кабеля из золота прокладывают на подставочках из сибирского кедра, а некоторые компании для них такие кабеля выпускают, что с того? А то, что звукозаписывающие компании такое выпускают - ничего удивительного. Скорее всего, у них внутренний формат использует именно такую частоту дискретизации (как раз для сведения записи и для нормальных людей они потом его передискретизируют в 44кГц (CD-аудио а любители тёплого лампового звука за отдельное бабло приобретают "элитные" записи 24/192, утверждая, что они "слышат разницу". Ну если пипл хавает, то почему бы не сделать на этом бабло? Чистый маркетинг!
Особо упоротые кабеля из золота прокладывают на подставочках из сибирского кедра, а некоторые компании для них такие кабеля выпускают, что с того?Рынок таких кабелей всё-таки, думается мне, поменьше будет, чем у DVD-Audio/SACD.
и для нормальных людей они потом его передискретизируют в 44кГц (CD-аудио а любители тёплого лампового звука за отдельное бабло приобретают "элитные" записи 24/192Ага, и для нормальных людей они потом передискретизируют видео в 352*288 (CD-видео а любители тёплой ламповой картинки за отдельное бабло приобретают "элитные" записи 720*576 (DVD о блюреях и говорить не хочется.
Хочешь продолжать - давай. По пунктам:
Рынок таких кабелей всё-таки, думается мне, поменьше будет, чем у DVD-Audio/SACD.Рынок есть рынок, он формируется спросом. Тот факт, что упоротых любителей золотых кабелей меньше, чем упоротых любителей записей с частотой дискретизации 192кГц, никак не опровергает того факта, что такая высокая частота дискретизации нужна отнюдь не для того, чтобы избавиться от высокочастотных помех при записи звука. Более того, есть мнение, что рынок потребителей 192кГц-записей в немалой степени состоит из тех, кому эти записи нужны не для прослушивания, а для дальнейшего ремастеринга, сведения или миксования (типа ди-джеев).
Ага, и для нормальных людей они потом передискретизируют видео в 352*288 (CD-видео а любители тёплой ламповой картинки за отдельное бабло приобретают "элитные" записи 720*576 (DVD о блюреях и говорить не хочется.Ты сознательно упускаешь тот факт, что размер и разрешение видео ограничивается отнюдь не разрешающей способностью человеческого глаза, а существующими аппаратными средствами его кодирования-декодирования и объёмами носителей информации, тогда как разрешение аудио давно превысило порог слышимости и дальнейшее наращивание имеет смысл исключительно для цифровой обработки, а не для конечного воспроизведения.
ты мне про -то ответишь? Реально интересно.
Это бесполезно ) Я его про то, занимался ли он цифровой обработкой звука, тоже спрашивал и ответа, конечно же, нет Потому что ответ такой: он прочитал про теорему Найквиста в википедии и давай её пихать куда не попадя, при том, что обработкой сигналов никогда не занимался и все познания у него исключительно теоретические и очень поверхностные...
А что там отвечать-то? Просто рахождение в терминологии; ты считаешь это разновидностью PCM, кто-то другой не считает.
Ты чего-то странного хочешь - наложить фильтр на функцию до дискретизацииДа, именно так. Причем функцию, которую заранее аналитически и не выпишешь...
А ты её в ряд Тейлора разложи и порежь коэффициенты выше нужного
. Они гонят на звуковуху поток типа X_t = round(30000*cos(20000*2*Pi*t/44100 и думают, что слышат 20кГц. И 20.5, и 21, и 22.
> частотой до Nкгц, тебе нужна частота дискретизации 2N.
Не "нужна," а необходима. И, соответственно, речь идёт не про
"более-менее прилично." Теорема Котельникова, она же
Найквиста—Шеннона, видимо, тема сегодняшнего вечера.
---
"Математик может говорить, что ему хочется,
но физик должен, хотя бы в какой-то мере, быть в здравом рассудке."
Не вижу разницы между тем, что сказал я, и тем, что сказал ты.
Это потому что у тебя богатый опыт по распознаванию звука.
---
"Quae medicamenta non sanat, ferrum sanat,
quae ferrum non sanat, ignis sanat."
Что-то у тебя сейчас с логикой нелады.
---
"Математика --- лучший способ водить самого себя за нос."
думают, что слышат 20кГц. И 20.5, и 21, и 22.Ты знаешь, если учесть слово round, было бы странно, если бы они не услышали...
Алсо, спасибо за ссылку, паржал, попкорна похавал (а то есть хотелось). С трудом вспомнил, как мы с Шуриком семплы в кулэдите рассматривали. Молодость, молодость!..
Мог бы быть floor вместо него, или даже floor(... + random(1.0.
А что особенного в round?Вот последнее еще туда-сюда (хотя лучше round). А первые два есть нелинейные преобразования.
Мог бы быть floor вместо него, или даже floor(... + random(1.0.
Если ты теоретик, то линейная функция R->Z есть только одна, и она не интересна. Если практик, то round от floor на таком треке на слух не отличишь (если не принимать во внимание случай специально изготовленной неправильной звуковой карты и прочее пенартурство).
Если ты теоретик, то линейная функция R->Z есть только одна, и она не интереснаНу если говорить о матожидании, то то округление числа после прибавления random как раз и будет линейным.
Правда, я думаю, целый бит - слишком большая амплитуда для дизеринга, половинки бы хватило.
И еще, пацаны пользуются треугольным шумом.
Оставить комментарий
apl13
Я так понял, субж только вавпаком обеспечивается?