LXF99:WavPack
(Новая: ==''WavPack'' Cжатие: с потерями, но без потерь== :''WavPack'': Не иди на компромисс! :Убеждены, что отношение качест...) |
|||
Строка 4: | Строка 4: | ||
:Убеждены, что отношение качества аудиозаписи к размеру содержащего ее файла - величина постоянная? '''Александр Супрунов''' готов сломать этот стереотип. | :Убеждены, что отношение качества аудиозаписи к размеру содержащего ее файла - величина постоянная? '''Александр Супрунов''' готов сломать этот стереотип. | ||
− | + | С ростом мощностей компьютеров, увеличением емкости жестких дисков и благодаря широкому распространению DVD начали набирать популярность так называемые lossless-кодеки для сжатия звука. Другими словами, уже можно переставать мириться с потерями форматов MPEG Layer 3 или Ogg Vorbis и перейти на следующий уровень, применяя для аудиоданных сжатие без потерь. | |
− | + | На сегодня существует достаточно большое семейство lossless-кодеков: ''FLAC'' (Free Lossless Audio Codec), ''Monkey’s Audio'', ''WavPack'' и даже ''WMA9''. Записи, сжатые такими кодеками, имеют больший размер. По крайней мере, так считалось, пока не появился гибридный режим ''WavPack'', позволяющий использовать сжатие с потерями, ничего не теряя! О нем сегодня и пойдет речь. | |
{{Врезка | {{Врезка | ||
Строка 15: | Строка 15: | ||
===Что это?=== | ===Что это?=== | ||
− | + | ''WavPack'' – бесплатный открытый аудиокодек, разработанный Дэвидом Брайантом [David Bryant] и распространяющийся по лицензии BSD. Изначально ''WavPack'' был сугубо lossless-кодеком, но позднее в нем появилась уникальная возможность, резко выделяющая его из череды других решений – гибридный режим. | |
− | + | При кодировании в этом режиме создаются два файла – один сжат по принципу '''lossy (.wv)''' и несет все преимущества такого сжатия (имеет минимальный размер) и второй – корректирующий '''(.wvc)'''. Он используется при восстановлении потерянных данных с помощью утилиты ''WvUnpack'' – что позволяет бескомпромиссно решить вечную проблему выбора между качеством и количеством. | |
− | + | ''WavPack'' поддерживает высокие частоты дискретизации и позволяет сжимать 8/16/24/32-битные аудиофайлы. В lossless-режиме ''WavPack'' работает подобно стандартному архиватору вроде Zip, не приводит к деградации записей, как это происходит в форматах MP3 или Ogg и является идеальным способом архивирования аудиоконтента. Степень сжатия зависит от музыкального материала: композиции с более широким динамическим диапазоном сжимаются сильнее. В среднем, при lossless-режиме можно рассчитывать на 50%. В гибридном режиме lossy-файл будет лишь слегка превосходить по размерам файлы вездесущего MP3. | |
− | + | Прежде чем углубляться в сферу практического использования ''WavPack'', давайте рассмотрим основные преимущества кодека. Это, в первую очередь, быстрое сжатие (существует возможность кодировать симметрично/асимметрично, что позволяет влиять на время декомпрессии), открытый исходный код, гибридный режим, поддержка многоканального звука, аппаратная поддержка (iRiver H10/H1xx/H3xx, iAudio X5, Apple iPod, Toshiba Gigabeat), мультиплатформенность, ReplayGain (технология, уравнивающая громкость разных файлов при воспроизведении) и много чего другого. Хотелось бы еще раз подчеркнуть очень быстрое сжатие – в несколько раз более быстрее, чем сжатие в MP3 кодеком ''Lame''. | |
===Приступим к делу=== | ===Приступим к делу=== | ||
− | + | Ну что же, давайте попрактикуемся. Вероятно, кодек ''WavPack'' уже есть в вашем дистрибутиве (в моем ALT Linux 4.0 – точно), если же нет – ищите соответствующие RPM/Deb-пакеты или скачивайте исходные коды. Официальный сайт кодека – http://www.wavpack.com, но вы также можете найти ''WavPack'' на нашем DVD. Сборка из исходных текстов не вызывает сложностей и ограничивается стандартными | |
− | + | '''./configure''' (можете указать ключ '''--enable-mmx''' для использования MMX-инструкций вашего процессора), '''make''' и '''make install'''. | |
− | + | Следующий вопрос – откуда взять неискаженный звук? Можно, например, «оцифровать» CD. Этот вопрос я оставлю на самостоятельное изучение, скажу лишь, что для решения задачи существуют как графические ('''KAudioCreator'''), так и консольные утилиты. Важно лишь иметь возможность получить на выходе файл в формате WAV. В дальнейшем я буду предполагать, что он называется '''forest.wav'''. | |
− | + | Перейдите в консоль и наберите WavPack. В окне терминала отобразятся ключи, которые можно использовать при кодировании, и синтаксис команды: | |
<code> | <code> | ||
Строка 37: | Строка 37: | ||
</code> | </code> | ||
− | + | В простейшем случае достаточно указать оригинальный файл и название выходного файла в формате ''WavPack'' ('''.wv'''), используя ключ '''-o''': | |
<code> | <code> | ||
Строка 43: | Строка 43: | ||
</code> | </code> | ||
− | + | В результате будет создан файл '''forest.wv''', сжатый lossless-кодеком. В моем случае его размер файла уменьшился с 24,1 МБ до 10,9 МБ, и заметьте – без деградации аудиоматериала. Пожелав улучшить (или ухудшить) этот результат, я мог бы воспользоваться следующими ключами: | |
* '''-bn''' Включает гибридный режим. Значение n указывает число бит на сэмпл (от 2.0 до 23.9). | * '''-bn''' Включает гибридный режим. Значение n указывает число бит на сэмпл (от 2.0 до 23.9). | ||
* '''-c''' Создает корректирующий файл ('''.wvc''') для гибридного режима; | * '''-c''' Создает корректирующий файл ('''.wvc''') для гибридного режима; | ||
Строка 51: | Строка 51: | ||
* '''-x''' Увеличивает скорость декодирования в будущем за счет замедления кодирования в настоящм. | * '''-x''' Увеличивает скорость декодирования в будущем за счет замедления кодирования в настоящм. | ||
− | + | Полный список ключей можно получить, набрав '''wavpack --help'''. | |
===Высший пилотаж=== | ===Высший пилотаж=== | ||
− | + | Настало время активировать самый интересный, гибридный режим. За него отвечают ключи '''-b''' и '''-c'''. Если не использовать '''-с''', то корректирующий файл создан не будет и вы получите обычное lossy-сжатие без | |
возможности восстановить оригинал. Например, набрав | возможности восстановить оригинал. Например, набрав | ||
Строка 70: | Строка 70: | ||
качество будет повыше, но и размер выходного файла, соответственно, увеличится. | качество будет повыше, но и размер выходного файла, соответственно, увеличится. | ||
− | + | Но мы, помнится, собрались здесь вовсе не для того, чтобы сжимать аудио lossy-кодеком. Давайте создадим корректирующий файл, способный вернуть оригинальное звучание без потерь. Для это пригодится ключ '''-с''': | |
<code> | <code> | ||
Строка 76: | Строка 76: | ||
</code> | </code> | ||
− | + | В результате будет создан выходной файл '''forest.wv''' и корректирующий файл '''forest.wvc'''. Оптимальный, на мой взгляд, результат дает строка вида: | |
<code> | <code> | ||
Строка 82: | Строка 82: | ||
</code> | </code> | ||
− | + | Она создает корректирующий файл и одновременно удаляет оригинальный. При таком раскладе размер файла уменьшается с 24 МБ до 3,4 МБ ('''forest.wv'''), а корректирующий файл '''forest.wvc''' занимает 8,4 МБ. | |
− | + | Но в вашей аудиоколлекции наверняка будет больше одного файла. Чтобы разобраться с ними скопом, используйте команду вида | |
<code> | <code> | ||
Строка 90: | Строка 90: | ||
</code> | </code> | ||
− | + | Остается последний вопрос: на чем прослушать эту новенькую,только что сконвертированную в коллекцию «'''.wv + .wvc'''»? О, здесь изобилие вариантов: поддержка ''WavPack'' добавлена в ''FFmpeg'' и ''xine-lib'', а значит, доступна через большинство популярных оболочек. Попробуйте ''Amarok, Audacious, Quod Libet, XMMS''... А удовлетворившись программными проигрывателями, присмотритесь к аппаратным. Забудьте MP3, живите в XXI веке, используйте lossless-кодеки, Linux, бластеры и флаеры. Будущее не остановить! '''LXF''' |
Версия 12:50, 12 марта 2008
|
|
|
Содержание |
WavPack Cжатие: с потерями, но без потерь
- WavPack: Не иди на компромисс!
- Убеждены, что отношение качества аудиозаписи к размеру содержащего ее файла - величина постоянная? Александр Супрунов готов сломать этот стереотип.
С ростом мощностей компьютеров, увеличением емкости жестких дисков и благодаря широкому распространению DVD начали набирать популярность так называемые lossless-кодеки для сжатия звука. Другими словами, уже можно переставать мириться с потерями форматов MPEG Layer 3 или Ogg Vorbis и перейти на следующий уровень, применяя для аудиоданных сжатие без потерь.
На сегодня существует достаточно большое семейство lossless-кодеков: FLAC (Free Lossless Audio Codec), Monkey’s Audio, WavPack и даже WMA9. Записи, сжатые такими кодеками, имеют больший размер. По крайней мере, так считалось, пока не появился гибридный режим WavPack, позволяющий использовать сжатие с потерями, ничего не теряя! О нем сегодня и пойдет речь.
- Метамодернизм в позднем творчестве В.Г. Сорокина
- ЛитРПГ - последняя отрыжка постмодерна
- "Ричард III и семиотика"
- 3D-визуализация обложки Ridero создаем обложку книги при работе над самиздатом.
- Архитектура метамодерна - говоря о современном искусстве, невозможно не поговорить об архитектуре. В данной статье будет отмечено несколько интересных принципов, характерных для построек "новой волны", столь притягательных и скандальных.
- Литература
- Метамодерн
- Рокер-Прометей против изначального зла в «Песне про советскую милицию» Вени Дркина, Автор: Нина Ищенко, к.ф.н, член Союза Писателей ЛНР - перепубликация из журнала "Топос".
- Как избавиться от комаров? Лучшие типы ловушек.
- Что делать если роблокс вылетает на windows
- Что делать, если ребенок смотрит порно?
- Почему собака прыгает на людей при встрече?
- Какое масло лить в Задний дифференциал (мост) Visco diff 38434AA050
- О чем может рассказать хвост вашей кошки?
- Верветки
- Отчетность бюджетных учреждений при закупках по Закону № 223-ФЗ
- Срок исковой давности как правильно рассчитать
- Дмитрий Патрушев минсельхоз будет ли преемником Путина
- Кто такой Владислав Поздняков? Что такое "Мужское Государство" и почему его признали экстремистским в России?
- Как правильно выбрать машинное масло в Димитровграде?
- Как стать богатым и знаменитым в России?
- Почему фильм "Пипец" (Kick-Ass) стал популярен по всему миру?
- Как стать мудрецом?
- Как правильно установить FreeBSD
- Как стать таким как Путин?
- Где лучше жить - в Димитровграде или в Ульяновске?
- Почему город Димитровград так называется?
- Что такое метамодерн?
- ВАЖНО! Временное ограничение движения автотранспортных средств в Димитровграде
- Тарифы на электроэнергию для майнеров предложено повысить
Что это?
WavPack – бесплатный открытый аудиокодек, разработанный Дэвидом Брайантом [David Bryant] и распространяющийся по лицензии BSD. Изначально WavPack был сугубо lossless-кодеком, но позднее в нем появилась уникальная возможность, резко выделяющая его из череды других решений – гибридный режим.
При кодировании в этом режиме создаются два файла – один сжат по принципу lossy (.wv) и несет все преимущества такого сжатия (имеет минимальный размер) и второй – корректирующий (.wvc). Он используется при восстановлении потерянных данных с помощью утилиты WvUnpack – что позволяет бескомпромиссно решить вечную проблему выбора между качеством и количеством.
WavPack поддерживает высокие частоты дискретизации и позволяет сжимать 8/16/24/32-битные аудиофайлы. В lossless-режиме WavPack работает подобно стандартному архиватору вроде Zip, не приводит к деградации записей, как это происходит в форматах MP3 или Ogg и является идеальным способом архивирования аудиоконтента. Степень сжатия зависит от музыкального материала: композиции с более широким динамическим диапазоном сжимаются сильнее. В среднем, при lossless-режиме можно рассчитывать на 50%. В гибридном режиме lossy-файл будет лишь слегка превосходить по размерам файлы вездесущего MP3.
Прежде чем углубляться в сферу практического использования WavPack, давайте рассмотрим основные преимущества кодека. Это, в первую очередь, быстрое сжатие (существует возможность кодировать симметрично/асимметрично, что позволяет влиять на время декомпрессии), открытый исходный код, гибридный режим, поддержка многоканального звука, аппаратная поддержка (iRiver H10/H1xx/H3xx, iAudio X5, Apple iPod, Toshiba Gigabeat), мультиплатформенность, ReplayGain (технология, уравнивающая громкость разных файлов при воспроизведении) и много чего другого. Хотелось бы еще раз подчеркнуть очень быстрое сжатие – в несколько раз более быстрее, чем сжатие в MP3 кодеком Lame.
Приступим к делу
Ну что же, давайте попрактикуемся. Вероятно, кодек WavPack уже есть в вашем дистрибутиве (в моем ALT Linux 4.0 – точно), если же нет – ищите соответствующие RPM/Deb-пакеты или скачивайте исходные коды. Официальный сайт кодека – http://www.wavpack.com, но вы также можете найти WavPack на нашем DVD. Сборка из исходных текстов не вызывает сложностей и ограничивается стандартными
./configure (можете указать ключ --enable-mmx для использования MMX-инструкций вашего процессора), make и make install.
Следующий вопрос – откуда взять неискаженный звук? Можно, например, «оцифровать» CD. Этот вопрос я оставлю на самостоятельное изучение, скажу лишь, что для решения задачи существуют как графические (KAudioCreator), так и консольные утилиты. Важно лишь иметь возможность получить на выходе файл в формате WAV. В дальнейшем я буду предполагать, что он называется forest.wav.
Перейдите в консоль и наберите WavPack. В окне терминала отобразятся ключи, которые можно использовать при кодировании, и синтаксис команды:
wavpack [-options] [@]infile[.wav]|- [...] [-o [@]outfile[.wv]|
В простейшем случае достаточно указать оригинальный файл и название выходного файла в формате WavPack (.wv), используя ключ -o:
wavpack forest.wav -o forest.wv
В результате будет создан файл forest.wv, сжатый lossless-кодеком. В моем случае его размер файла уменьшился с 24,1 МБ до 10,9 МБ, и заметьте – без деградации аудиоматериала. Пожелав улучшить (или ухудшить) этот результат, я мог бы воспользоваться следующими ключами:
- -bn Включает гибридный режим. Значение n указывает число бит на сэмпл (от 2.0 до 23.9).
- -c Создает корректирующий файл (.wvc) для гибридного режима;
- -cc обеспечивает максимальную (для гибридного же режима) степень сжатия.
- -f Быстрый режим: повышает скорость работы, понижает степень сжатия.
- -h Опция, обратная -f. Сжимает медленно, но верно. Если же вам и этого мало, используйте -hh: качество и степень сжатия будут очень высокими, но использовать такой файл в портативном проигрывателе не рекомендуется.
- -x Увеличивает скорость декодирования в будущем за счет замедления кодирования в настоящм.
Полный список ключей можно получить, набрав wavpack --help.
Высший пилотаж
Настало время активировать самый интересный, гибридный режим. За него отвечают ключи -b и -c. Если не использовать -с, то корректирующий файл создан не будет и вы получите обычное lossy-сжатие без возможности восстановить оригинал. Например, набрав
wavpack -b2.0 forest.wav -o forest.wv
вы получите ролик наихудшего возможного качества и отсутствие корректирующего файла. Можете считать это аналогом MP3. В варианте
wavpack -b16 forest.wav -o forest.wv
качество будет повыше, но и размер выходного файла, соответственно, увеличится.
Но мы, помнится, собрались здесь вовсе не для того, чтобы сжимать аудио lossy-кодеком. Давайте создадим корректирующий файл, способный вернуть оригинальное звучание без потерь. Для это пригодится ключ -с:
wavpack -cb16 forest.wav -o forest.wv
В результате будет создан выходной файл forest.wv и корректирующий файл forest.wvc. Оптимальный, на мой взгляд, результат дает строка вида:
wavpack -chhdb16 forest.wav -o forest.wv
Она создает корректирующий файл и одновременно удаляет оригинальный. При таком раскладе размер файла уменьшается с 24 МБ до 3,4 МБ (forest.wv), а корректирующий файл forest.wvc занимает 8,4 МБ.
Но в вашей аудиоколлекции наверняка будет больше одного файла. Чтобы разобраться с ними скопом, используйте команду вида
wavpack -chdb2.0 *.wav -o /home/suprunov/music/
Остается последний вопрос: на чем прослушать эту новенькую,только что сконвертированную в коллекцию «.wv + .wvc»? О, здесь изобилие вариантов: поддержка WavPack добавлена в FFmpeg и xine-lib, а значит, доступна через большинство популярных оболочек. Попробуйте Amarok, Audacious, Quod Libet, XMMS... А удовлетворившись программными проигрывателями, присмотритесь к аппаратным. Забудьте MP3, живите в XXI веке, используйте lossless-кодеки, Linux, бластеры и флаеры. Будущее не остановить! LXF