annotate src/flac-1.2.1/doc/html/ru/documentation.html @ 86:98c1576536ae

Bring in flac, ogg, vorbis
author Chris Cannam <cannam@all-day-breakfast.com>
date Tue, 19 Mar 2013 17:37:49 +0000
parents
children
rev   line source
cannam@86 1 <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//RU">
cannam@86 2 <!-- Copyright (c) 2000,2001,2002,2003,2004,2005,2006,2007 Josh Coalson -->
cannam@86 3 <!-- Permission is granted to copy, distribute and/or modify this document -->
cannam@86 4 <!-- under the terms of the GNU Free Documentation License, Version 1.1 -->
cannam@86 5 <!-- or any later version published by the Free Software Foundation; -->
cannam@86 6 <!-- with no invariant sections. -->
cannam@86 7 <!-- A copy of the license can be found at http://www.gnu.org/copyleft/fdl.html -->
cannam@86 8 <HTML>
cannam@86 9 <HEAD>
cannam@86 10 <META CHARSET="windows-1251">
cannam@86 11 <TITLE>FLAC: документация</TITLE>
cannam@86 12 </HEAD>
cannam@86 13
cannam@86 14 <BODY>
cannam@86 15 <CENTER><TABLE cellpadding=0 cellspacing=0 border=0>
cannam@86 16 <TR>
cannam@86 17 <TD align=center>|</TD>
cannam@86 18 <TD height=22 align=center nowrap>
cannam@86 19 &nbsp;<A HREF="index.html">начало</A>&nbsp;</TD>
cannam@86 20 <TD align=center>|</TD>
cannam@86 21 <TD align=center nowrap>
cannam@86 22 &nbsp;<A HREF="news.html">новости</A>&nbsp;</TD>
cannam@86 23 <TD align=center>|</TD>
cannam@86 24 <TD align=center nowrap>
cannam@86 25 &nbsp;<A HREF="download.html">файлы</A>&nbsp;</TD>
cannam@86 26 <TD align=center>|</TD>
cannam@86 27 <TD align=center nowrap>
cannam@86 28 &nbsp;<A HREF="features.html">характеристики</A>&nbsp;</TD>
cannam@86 29 <TD align=center>|</TD>
cannam@86 30 <TD align=center nowrap>
cannam@86 31 &nbsp;<A HREF="goals.html">цели</A>&nbsp;</TD>
cannam@86 32 <TD align=center>|</TD>
cannam@86 33 <TD align=center nowrap>
cannam@86 34 &nbsp;<A HREF="format.html">формат</A>&nbsp;</TD>
cannam@86 35 <TD align=center>|</TD></TR>
cannam@86 36
cannam@86 37 <TR>
cannam@86 38 <TD align=center>|</TD>
cannam@86 39 <TD align=center nowrap>
cannam@86 40 &nbsp;<A HREF="id.html">id</A>&nbsp;</TD>
cannam@86 41 <TD align=center>|</TD>
cannam@86 42 <TD align=center nowrap>
cannam@86 43 &nbsp;<A HREF="comparison.html">сравнение</A>&nbsp;</TD>
cannam@86 44 <TD align=center>|</TD>
cannam@86 45 <TD align=center nowrap>
cannam@86 46 &nbsp;<A HREF="developers.html">разработка</A>&nbsp;</TD>
cannam@86 47 <TD align=center>|</TD>
cannam@86 48 <TD align=center nowrap>
cannam@86 49 &nbsp;документация&nbsp;</TD>
cannam@86 50 <TD align=center>|</TD>
cannam@86 51 <TD align=center nowrap>
cannam@86 52 &nbsp;<A HREF="links.html">ссылки</A>&nbsp;</TD>
cannam@86 53 <TD align=center>|</TD>
cannam@86 54 <TD align=center nowrap>
cannam@86 55 &nbsp;<A HREF="authors.html">авторы</A>&nbsp;</TD>
cannam@86 56 <TD align=center>|</TD></TR>
cannam@86 57 </TABLE></CENTER>
cannam@86 58
cannam@86 59 <P><CENTER><TABLE cellpadding=0 cellspacing=0 border=0>
cannam@86 60 <TR><TD align=center>|</TD>
cannam@86 61 <TD height=22 align=center nowrap>
cannam@86 62 &nbsp;<A HREF="../documentation.html">english</A>&nbsp;</TD>
cannam@86 63 <TD align=center>|</TD>
cannam@86 64 <TD align=center nowrap>
cannam@86 65 &nbsp;русский</A>&nbsp;</TD>
cannam@86 66 <TD align=center>|</TD></TR>
cannam@86 67 </TABLE></CENTER></P>
cannam@86 68
cannam@86 69
cannam@86 70 <CENTER><H2>FLAC: документация</H2></CENTER>
cannam@86 71
cannam@86 72 <H3>Документация</H3>
cannam@86 73
cannam@86 74 <P>Эта страница разбита на следующие разделы:</P>
cannam@86 75
cannam@86 76 <UL>
cannam@86 77 <LI><A HREF="#format">формат</A> - описание формата FLAC для пользователя (более детальное описание для разработчика приведено на <A HREF="format.html">этой</A> странице).</LI>
cannam@86 78 <LI><A HREF="#flac"><B><TT>flac</TT></B></A> - иcпользование кодека <B><TT>flac</TT></B>, работающего из командной строки.</LI>
cannam@86 79 <LI><A HREF="#metaflac"><B><TT>metaflac</TT></B></A> - использование редактора метаданных <B><TT>metaflac</TT></B>, работающего из командной строки.</LI>
cannam@86 80 <LI><A HREF="#plugins">плагины</A> - документация для различных плагинов.</LI>
cannam@86 81 <LI><A HREF="../api/index.html">API</A> для <B><TT>libFLAC</TT></B> и <B><TT>libFLAC++</TT></B> - для разработчиков, желающих использовать поддержку FLAC в своих продуктах.</LI>
cannam@86 82 <LI><A HREF="#bugs">ошибки</A> - известные ошибки.</LI>
cannam@86 83 <LI><A HREF="#monkey">как добавить поддержку FLAC в Monkey's Audio GUI</A></LI>
cannam@86 84 </UL>
cannam@86 85
cannam@86 86 <P>Помните, что онлайновая версия этого документа (на английском языке) включается в последний релиз.</P>
cannam@86 87
cannam@86 88 <A NAME="format">
cannam@86 89 <H3>Формат</H3>
cannam@86 90
cannam@86 91 <P>Опции по умолчанию для <B><TT>flac</TT></B> настроены на получение оптимального соотношения скорость/уровень сжатия для большинства типов входных файлов. Здесь описывается как можно попытаться увеличить уровень или скорость сжатия или с наибольшим эффектом использовать систему метаданных.</P>
cannam@86 92
cannam@86 93 <P>Основными частями потока являются:</P>
cannam@86 94
cannam@86 95 <P><BLOCKQUOTE><UL>
cannam@86 96 <LI>Строка из четырех байтов &quot;fLaC&quot;.</LI>
cannam@86 97
cannam@86 98 <LI>Блок метаданных <A HREF="format.html#def_STREAMINFO">STREAMINFO</A>.</LI>
cannam@86 99
cannam@86 100 <LI>Другие необязательные блоки метаданных.</LI>
cannam@86 101
cannam@86 102 <LI>Один или более аудио фреймов.</LI>
cannam@86 103 </UL></BLOCKQUOTE></P>
cannam@86 104
cannam@86 105 <P>Первые четыре байта идетифицируют поток FLAC. Следующие за ними метаданные содержат информацию о потоке, затем идут сжатые аудиоданные.</P>
cannam@86 106
cannam@86 107 <A NAME="metadata">
cannam@86 108 <H4>Метаданные</H4>
cannam@86 109
cannam@86 110 <P>FLAC определяет несколько типов блоков метаданных (все они перечислены на странице <A HREF="format.html">формат</A>). Блоки метаданных могут быть любого размера, новые блоки могут быть легко добавлены. Декодер имеет возможность пропускать неизветные ему блоки метаданных. Обязателен только блок STREAMINFO. В нем содержится частота дискретизация, количество каналов и т.п., а также данные позволяющие декодеру настроить буфферы. Сюда также записывается подпись MD5 <I>несжатых</I> аудиоданных. Это полезно для проверки всего потока после его передачи.</P>
cannam@86 111
cannam@86 112 <P>Другие блоки предназначены для резервирования места, хранения таблиц точек поиска, тегов, список разметки аудиодисков а также данных для конкретных приложений. Опции для добавления блоков PADDING или точек поиска приведены ниже. FLAC не нуждается в точках поиска, однако они позволяют значительно увеличить скорость доступа, а также могут быть использования для расстановки меток в аудио редакторах.</P>
cannam@86 113
cannam@86 114 <P>Если Вам нужен собственный блок метаданных, Вы можете определить его и запросить идентификатор <A HREF="id.html">здесь</A>. Вы можете зарезервировать блок PADDING необходимого размера и записать на его место свои данные после кодирования. Полученнный поток будет отвечать формату FLAC, декодеры распознающие эти блоки смогут их использовать, остальные будут их пропускать.</P>
cannam@86 115
cannam@86 116
cannam@86 117 <H4>Аудиоданные</H4>
cannam@86 118
cannam@86 119 <P>За метаданным следуют сжатые аудиоданные. Метаданные и аудиоданные не чередуются. Как и большинство кодеков FLAC делит входной поток на блоки и кодирует их независимо друг от друга. Блок упаковыватся во фрейм и добавляется к потоку. Базовый кодер использует блоки постоянного размера для всего потока, однако формат предусматривает наличие блоков разной длины в потоке.</P>
cannam@86 120
cannam@86 121
cannam@86 122 <H4>Разбиение на блоки</H4>
cannam@86 123
cannam@86 124 <P>Размер блока - очень важный параметр для кодирования. Если он очень мал, то в потоке будет слишком заголовков фреймов, что уменьшит уровень сжатия. Если размер большой, то кодер не сможет подобрать эффективную модель сжатия. Понимание процесса моделирования поможет Вам увеличить уровень сжатия для некоторых типов входных данных. Обычно при использовании линейного прогнозирования на аудиоданных с частотой дискретизации 44.1 кГц оптимальный размер блока лежит в диапазоне 2-6 тысяч сэмплов. В этом случае значение по умолчанию - 4608. Если использовать быстрые постоянные предикторы, предпочтительнее меньшие размеры блоков, так как в этом случае размеры заголовков фреймов меньше.</P>
cannam@86 125
cannam@86 126
cannam@86 127 <H4>Межканальная декорреляция</H4>
cannam@86 128
cannam@86 129 <P>Если на вход поступают стерео аудиоданные, они могут пройти через стадию межканальной декорреляции. Правый и левый канал преобразуются к среднему и разностному по формулам: <TT>средний = (левый + правый)/2</TT>, <TT>разностный = левый - правый</TT>. В отличие от joint stereo этот процесс не приводит к потерям. Для данных с аудио компакт-дисков это обычно приводит к значительному увеличению уровня сжатия. Для включения использования этого метода кодирования <B><TT>flac</TT></B> имеет две опции: <TT>-m</TT> всегда делает разностную и независимую версию блока и выбирает наименьший фрейм и <TT>-M</TT>, которая адаптивно выбирает схему сжатия.</P>
cannam@86 130
cannam@86 131
cannam@86 132 <H4>Моделирование</H4>
cannam@86 133
cannam@86 134 <P>На следующем этапе кодер пытается аппроксимировать сигнал такой функцией, чтобы полученный после ее вычитания из оригинала результат (называемый разностью, остатком, ошибкой) можно было закодировать минимальным количеством битов. Параметры функций тоже должны записываться, поэтому они не должны занимать много места. FLAC использует два метода формирования аппроксимаций: 1) подгонка простого полинома к сигналу и 2) общее кодирование с линейными предикторами (LPC).</P>
cannam@86 135
cannam@86 136 <P>Во-первых, постоянное полиномиальное предсказание (<TT>-l 0</TT>) работает значительно быстрее, но менее точно, чем LPC. Чем выше порядок LPC, тем медленнее, но лучше будет модель. Однако с увеличением порядка выигрыш будет все менее значительным. В некоторой точке (обычно около 9) процедура кодера, определяющая наилучший порядок, начинает ошибаться и размер получаемых фреймов возрастает. Чтобы преодолеть это, можно использовать полный перебор (опция <TT>-e</TT>), что приведет к значительному увеличению времени кодирования.</P>
cannam@86 137
cannam@86 138 <P>Во-вторых, параметры для постоянных предикторов могут быть описаны тремя битами, а параметры для модели LPC зависят от количества бит на сэмпл и порядка LPC. Это значит, что размер заголовка фрейма зависит от выбранного метода и порядка и может повлиять на оптимальный размер блока.</P>
cannam@86 139
cannam@86 140
cannam@86 141 <H4>Остаточное кодирование</H4>
cannam@86 142
cannam@86 143 <P>Когда модель подобрана, кодер вычитает приближение из оригинала, чтобы получить остаточный (ошибочный) сигнал, который затем кодируется без потерь. Для этого используется то обстоятельство, что разностный сигнал обычно имеет распределение Лапласа и есть набор специальный кодов Хаффмана, называемые кодами Райса, позволяющие эффективно и быстро кодировать эти сигналы без использования словаря.</P>
cannam@86 144
cannam@86 145 <P>Кодирование Райса состоит из нахождения одного параметра, отвечающего распределению сигнала, а затем использования его для составления кодов. При изменении распределения меняется и оптимальный параметр, поэтому имеется метод позволяющий пересчитывать его по необходимости. Остаток может быть разбит на <I>контексты</I> или <I>разделы</I>, у каждого из которых будет свой параметр Райса. <B><TT>flac</TT></B> позволяет указать, как нужно производить разбиение, с помощью опции <TT>-r</TT>. Остаток может быть разбит на <I>2^n</I> раздела, если использовать <TT>-r n,n</TT>. Параметр <I>n</I> называется порядком раздела. Также кодер может искать в пределах от <I>m</I> до <I>n</I> порядка, выбирая лучший вариант, если указать <TT>-r m,n</TT>. Обычно выбор <I>n</I> не влияет на скорость кодирования. От разницы между <I>m</I> и <I>n</I> сильно зависит время работы, чем она больше, тем больше времени будет затрачиваться на поиск лучшего порядка. Выбор размера блока также влияет на оптимальный порядок раздела.</P>
cannam@86 146
cannam@86 147
cannam@86 148 <H4>Составление фреймов</H4>
cannam@86 149
cannam@86 150 <P>Аудиофрейму предшествует заголовок, который начинается с кода синхронизации и содержит минимум информации, необходимой декодеру для воспроизведения потока. Сюда также записывается номер блока или сэмпла и восьмибитная контрольная сумма самого заголовка. Код синхронизации, CRC заголовка фрейма и номер блока/сэмпла позволяют осуществлять пересинхронизацию и поиск даже в отсутствие точек поиска. В конце фрейма записывается его шестнадцатибитная контрольная сумма. Если базовый декодер обнаружит ошибку, будет сгенерирован блок тишины.</P>
cannam@86 151
cannam@86 152
cannam@86 153 <H4>Разное</H4>
cannam@86 154
cannam@86 155 <P>Чтобы поддерживать основные типы метаданных, базовый декодер умеет пропускать теги ID3V1 и ID3V2, поэтому их можно свободно добавлять. Теги ID3V2 должны располагаться перед маркером &quot;fLaC&quot;, а теги ID3V1 - в конце файла.</P>
cannam@86 156
cannam@86 157 <P>У <B><TT>flac</TT></B> есть опция (<TT>-V</TT>) для проверки выходных данных при кодировании. В этом случае декодер работает одновременно с кодером и его выход сравнивается с оригинальным вводом. Если будет найдено отличие, <B><TT>flac</TT></B> закончит работу с сообщением об ошибке.</P>
cannam@86 158
cannam@86 159
cannam@86 160 <A NAME="flac">
cannam@86 161 <H3><B><TT>flac</TT></B></H3>
cannam@86 162
cannam@86 163 <P><B><TT>flac</TT></B> - это кодек, работающий из командной строки. Входом для кодера и выходом для декодера должны быть данные в формате RIFF WAVE, AIFF или в виде потока сэмплов без заголовка. <B><TT>flac</TT></B> использует только линейные PCM сэмплы (другими словами, A-LAW, uLAW, и т.п. не поддерживаются). Следующим ограничением является то, что во кодируемом файле сэмплы должны быть 8, 16 или 24-битными. Это не ограничение формата, просто так работают базовый кодер и декодер.</P>
cannam@86 164
cannam@86 165 <P><B><TT>flac</TT></B> предполагает, что файлы RIFF WAVE имеют суффикс ".wav", а файлы формата AIFF имеют суффиксы ".aif", ".aiff" или встречен заголовок AIFF; это умолчание может быть переопределено специальным ключом. Также предполагается, что файлы с суффиком ".ogg" имеют формат Ogg-FLAC. В остальных случаях <B><TT>flac</TT></B> не делает предположений о суффиксах, хотя по соглашению файлы FLAC имеют суффикс ".flac" (или ".fla" на старых файловых системах таких как FAT-16).</P>
cannam@86 166
cannam@86 167 <P>Перед полным описанием ключей, используемых <B><TT>flac</TT></B>, обратим внимание на то что: 1) по умолчанию <B><TT>flac</TT></B> сжимает файлы (для декодирования используйте ключ <TT>-d</TT>); 2) ключи <TT>-0..-8</TT>, а также <TT>--fast</TT> и <TT>--best</TT>, управляющие уровнем сжатия, являются синонимами для различных групп настроек кодирования. Того же эффекта можно добиться, используя наборы соответствующих ключей; 3) модель обработки входных и выходных файлов у <B><TT>flac</TT></B> аналогична <B><TT>gzip</TT></B>.</P>
cannam@86 168
cannam@86 169 <P><B><TT>flac</TT></B> вызывается одним из четырех способов:</P>
cannam@86 170
cannam@86 171 <BLOCKQUOTE><UL>
cannam@86 172 <LI>Кодирование:<BR><TT>flac [<I><A HREF="#general_options">&lt;основные_ключи&gt;</A></I>] [<I><A HREF="#format_options">&lt;настройки_формата&gt;</A></I>] [<I><A HREF="#encoding_options">&lt;опции_кодирования&gt;</A></I>] [входной_файл [...]]</TT></LI>
cannam@86 173
cannam@86 174 <LI>Декодирование:<BR><TT>flac -d [<I><A HREF="#general_options">&lt;основные_ключи&gt;</A></I>] [<I><A HREF="#format_options">&lt;настройки_формата&gt;</A></I>] [<I><A HREF="#encoding_options">&lt;опции_кодирования&gt;</A></I>] [файл_FLAC [...]]</TT></LI>
cannam@86 175
cannam@86 176 <LI>Тестирование:<BR><TT>flac -t [<I><A HREF="#general_options">&lt;основные_ключи&gt;</A></I>] [файл_FLAC [...]]</TT></LI>
cannam@86 177
cannam@86 178 <LI>Анализ:<BR><TT>flac -a [<I><A HREF="#general_options">&lt;основные_ключи&gt;</A></I>] [<I><A HREF="#analysis_options">&lt;опции_анализа&gt;</A></I>] [файл_FLAC [...]]</TT></LI>
cannam@86 179 </UL></BLOCKQUOTE></P>
cannam@86 180
cannam@86 181 <P>В любом случае, если входной файл не указан, подразумевается стандартный ввод. Если указан только один входной файл, то это может быть "-" для стандартного ввода (stdin). Когда используется стандартный ввод, <B><TT>flac</TT></B> пишет в стандартный вывод (stdout). В остальных случаях <B><TT>flac</TT></B> выполнит указанные действия для каждого входного файла и запишет результаты в файлы с аналогичными именами (при кодировании суффикс будет заменен на ".flac" или, если его не было, будет добавлен; при декодировании суффиксы также изменяются в соответствии с типом выходных данных.) Оригинал удаляется, только если указан ключ <TT>--delete-input-file</TT>.</P>
cannam@86 182
cannam@86 183 <P>Существуют особые формы вызова процедур кодирования/декодирования из стандандартного ввода в файл.</P>
cannam@86 184
cannam@86 185 <P><BLOCKQUOTE>
cannam@86 186 <UL>
cannam@86 187 <LI><TT>flac [опции] - выходной_файл</TT></LI>
cannam@86 188
cannam@86 189 <LI><TT>flac -d [опции] - выходной_файл</TT></LI>
cannam@86 190 </UL>
cannam@86 191
cannam@86 192 <P>которые лучше чем</P>
cannam@86 193
cannam@86 194 <UL>
cannam@86 195 <LI><TT>flac [опции] &gt; выходной_файл</TT></LI>
cannam@86 196
cannam@86 197 <LI><TT>flac -d [опции] &gt; выходной_файл</TT></LI>
cannam@86 198 </UL>
cannam@86 199 </BLOCKQUOTE></P>
cannam@86 200
cannam@86 201 <P>так как в первом случае сохраняется возможность произвести при необходимости последующую обработку файла, например для записи заголовков <TT>RIFF WAVE</TT> или <TT>STREAMINFO</TT>.</P>
cannam@86 202
cannam@86 203 <P>Данные в стандартный вывод можно перенаправить с помощью ключа <TT>-c</TT>.</P>
cannam@86 204
cannam@86 205 <P>Опции кодирования влияют на скорость работы и уровень сжатия. Настройки формата определяют расположение сэмплов, если на вход поступает файл без заголовка. Если у файла есть заголовок RIFF WAVE или AIFF, то настойки формата не нужны, так как они берутся из файла.</P>
cannam@86 206
cannam@86 207 <P>В режиме тестирования <B><TT>flac</TT></B> работает как и при декодировании, только выходной файл не записывается. Режимы декодирования и тестирования проверяют поток на наличие ошибок, а также сравнивают подпись MD5 декодированного потока с сохраненной подписью, даже если формат потока правильный.</P>
cannam@86 208
cannam@86 209 <H4><a name="general_options">Основные ключи</A></H4>
cannam@86 210 <TABLE border=1>
cannam@86 211 <TR><TD WIDTH=25%><TT>-v</TT>, <TT>--version</TT></TD>
cannam@86 212 <TD WIDTH=75%>Номер версии <B><TT>flac</TT></B>.</TD></TR>
cannam@86 213
cannam@86 214 <TR><TD><TT>-h</TT>, <TT>--help</TT></TD>
cannam@86 215 <TD>Вывести основные методы использования и список всех опций. При запуске <B><TT>flac</TT></B> без аргументов отображается краткая справка.</TD></TR>
cannam@86 216
cannam@86 217 <TR><TD><TT>-H</TT>, <TT>--explain</TT></TD>
cannam@86 218 <TD>Вывести справку полностью. При запуске <B><TT>flac</TT></B> без аргументов отображается краткая справка.</TD></TR>
cannam@86 219
cannam@86 220 <TR><TD><TT>-d</TT>, <TT>--decode</TT></TD>
cannam@86 221 <TD>Декодирование (по умолчанию <B><TT>flac</TT></B> кодирует). <B><TT>flac</TT></B> завершит работу с кодом выхода <TT>1</TT>, если будет встречена ошибка или контрольная сумма MD5 декодированного потока не совпадет с сохраненной. Если ошибок не будет, код возврата будет равен <TT>0</TT>.</TD></TR>
cannam@86 222
cannam@86 223 <TR><TD><TT>-t</TT>, <TT>--test</TT></TD>
cannam@86 224 <TD>Тестирование (то же самое, что и декодирование, только выход не записывается в файл). Коды возврата те же.</TD></TR>
cannam@86 225
cannam@86 226 <TR><TD><TT>-a</TT>, <TT>--analyze</TT></TD>
cannam@86 227 <TD>Анализ (то же самое, что и декодирование, только выходом является файл статистики). Коды возврата те же. Режим предназначен в основном для разработчиков. В выходной текстовый файл записывается информация о каждом фрейме и подфрейме.</TD></TR>
cannam@86 228
cannam@86 229 <TR><TD><TT>-c</TT>, <TT>--stdout</TT></TD>
cannam@86 230 <TD>Направить результат в стандартный вывод (stdout).</TD></TR>
cannam@86 231
cannam@86 232 <TR><TD><TT>-s</TT>, <TT>--silent</TT></TD>
cannam@86 233 <TD>Не показывать статистику при кодировании/декодировании.</TD></TR>
cannam@86 234
cannam@86 235 <TR><TD><TT>-o файл</TT><BR><TT>--output-name=файл</TD>
cannam@86 236 <TD>Явно указать имя выходного файла, по умолчанию <B><TT>flac</TT></B> просто заменяет суффикс.</TD></TR>
cannam@86 237
cannam@86 238 <TR><TD><TT>--output-prefix=строка</TT></TD>
cannam@86 239 <TD>Добавляет префикс к каждому имени выходному файлу. Может имспользоваться для кодирования/декодирования файлов в другой каталог. Если указанная строка является частью пути, убедитесь, что она заканчивается слэшем '/'.</TD></TR>
cannam@86 240
cannam@86 241 <TR><TD><TT>--delete-input-file</TT></TD>
cannam@86 242 <TD>После успешного окончания кодирования/декодирования входной файл будет удален. Если произойдет ошибка, исходный файл останется.</TD></TR>
cannam@86 243
cannam@86 244 <TR><TD><TT>--skip={#|mm:ss.ss}</TT></TD>
cannam@86 245 <TD>Пропустить первые <TT>#</TT> сэмплов входного файла. Работает для кодирования и декодирования, но не для тестирования. Альтернативную форму mm:ss.ss можно использовать, чтобы указать минуты, секунды и сотые секунды.<BR>
cannam@86 246 Например:<BR>
cannam@86 247 <TT>--skip=123</TT> : пропустить первые 123 сэмпла входного файла<BR>
cannam@86 248 <TT>--skip=1:23.45</TT> : пропустить 1 минуту 23.45 секунд
cannam@86 249 </TD></TR>
cannam@86 250
cannam@86 251 <TR><TD><TT>--until={#|[+|-]mm:ss.ss}</TT></TD>
cannam@86 252 <TD>Остановиться на данном сэмпле входного файла. Работает для кодирования и декодирования, но не для тестирования. Сэмпл с указанным номером не включается в вывод. Альтернативную форму mm:ss.ss можно использовать, чтобы указать минуты, секунды и сотые секунды. Если впереди стоит знак <TT>+</TT>, то последний сэмпл берется от начальной точки воспроизведения, если - <TT>-</TT>, то последний сэмпл вычисляется от конца потока аудио.<BR>
cannam@86 253 Например:<BR>
cannam@86 254 <TT>--until=123</TT> : декодировать первые 123 сэмпла входного файла (сэмплы 0-122)<BR>
cannam@86 255 <TT>--until=1:23.45</TT> : декодировать 1 минуту 23.45 секунд<BR>
cannam@86 256 <TT>--skip=1:00 --until=+1:23.45</TT> : декодировать от 1:00.00 до 2:23.45<BR>
cannam@86 257 <TT>--until=-1:23.45</TT> : декодировать все, кроме последней 1 минуты и 23.45 секунд<BR>
cannam@86 258 <TT>--until=-0:00</TT> : декодировать весь ввод
cannam@86 259 </TD></TR>
cannam@86 260
cannam@86 261 <TR><TD><TT>--ogg</TT></TD>
cannam@86 262 <TD><P>При кодировании генерируется вывод в формате Ogg-FLAC вместо "родного" FLAC. Потоки Ogg-FLAC представляют собой потоки FLAC обернутые в транспортный уровень Ogg. Полученный файл будет иметь суффикс '.ogg' и будет декодироваться утилитой <TT><B>flac</B></TT>.</P>
cannam@86 263 <P>При декодировании формат ввода однозначно определяется как Ogg-FLAC. Это полезно при получении данных со стандартного ввода или если у файла суффикс не '.ogg'.</P></TD></TR>
cannam@86 264
cannam@86 265 <TR><TD><TT>--serial-number=#</TT></TD>
cannam@86 266 <TD>При использовании с ключом <TT>--ogg</TT> определяет серийный номер для потока FLAC. При кодировании без явно указанного серийного номера <B><TT>flac</TT></B> использует '0'. При декодировании по умолчанию используется серийный номер определенный на первой странице.</TD></TR>
cannam@86 267 </TABLE>
cannam@86 268
cannam@86 269
cannam@86 270 <H4><a name="analysis_options">Опции анализа</H4>
cannam@86 271 <TABLE border=1>
cannam@86 272 <TR><TD width=25%><TT>--residual-text</TT></TD>
cannam@86 273 <TD width=75%>Добавляет в файл остаточный сигнал. Результирующий файл получается <B>очень большим</B>.</TD></TR>
cannam@86 274
cannam@86 275 <TR><TD><TT>--residual-gnuplot</TT></TD>
cannam@86 276 <TD>Создает файлы-диаграммы для каждого подфрейма. В каждом файле будет остаточное распределение для подфрейма. Будет создано <B>очень много</B> файлов.</TD></TR>
cannam@86 277 </TABLE>
cannam@86 278
cannam@86 279
cannam@86 280 <H4><a name="decoding_options">Опции декодирования</H4>
cannam@86 281 <TABLE border=1>
cannam@86 282 <TR><TD width=30%><TT>-F</TT>,<BR><TT>--decode-through-errors</TT></TD>
cannam@86 283 <TD width=70%>По умолчанию <B><TT>flac</TT></B> прекращает декодирование в случае ошибки в потоке и удаляет частично декодированный файл. Использование ключа <TT>-F</TT> ведет к тому, что сообщения об ошибках выводятся, но <B><TT>flac</TT></B> продолжает работу до конца. Обратите внимание, что в результате такого декодирования в выходном файле могут быть пропущены сэмплы или появится блоки тишины.</TD></TR>
cannam@86 284 </TABLE>
cannam@86 285
cannam@86 286 <H4><a name="encoding_options">Опции кодирования</A></H4>
cannam@86 287 <TABLE border=1>
cannam@86 288 <TR><TD width=30%><TT>-V</TT></TD>
cannam@86 289 <TD width=70%>Проверять процесс сжатия. В данном случае <B><TT>flac</TT></B> создает параллельный декодер, раскодирующий выход кодера и сравнивает результат с оригиналом. Если будет найдено несоответствие, кодирование прекратится. Время работы с этой опцией увеличивается, однако, при этом гарантируется, что файл будет правильно декодирован.</TD></TR>
cannam@86 290
cannam@86 291 <TR><TD><TT>--lax</TT></TD>
cannam@86 292 <TD>Позволяет кодеру создавать файлы, отвечающие подмножеству формата FLAC. В результате работы будет получаться непотоковый файл, поэтому этот ключ следует использовать только для архивирования. Декодер будет поддерживать воспроизведение и поиск в таких файлах.</TD></TR>
cannam@86 293
cannam@86 294
cannam@86 295 <TR><TD><TT>--replay-gain</TT></TD>
cannam@86 296 <TD>Вычислить значения <A HREF="http://www.replaygain.org/">ReplayGain</A> и сохранить из в комментариях Vorbis, аналогично тому, как это делает <A HREF="http://packages.qa.debian.org/v/vorbisgain.html">VorbisGain</A>. Уровень записи и максимальные значения амплитуды будут вычислены для каждого входного файла. Кроме того будет рассчитаны значения для всего альбома (всех входных файлов). Для этого все файлы должны иметь одинакоыую частоту дискретизации, разрешение и число каналов. Допустимы только моно и стерео файлы, а частота дискретизации должна быть 8, 11.025, 12, 16, 22.05, 24, 32, 44.1 или 48 кГц. Обратите внимание на то, что для этой опции может понадобиться несколько дополнительных байтов в блоке PADDING, так как точный размер блока нельзя вычислить, пока не будут обработаны все файлы.<BR>
cannam@86 297 Обратите внимание на то, что эту возможность нельзя использовать при кодировании в стандартный вывод.</TD></TR>
cannam@86 298
cannam@86 299 <TR><TD><TT>--cuesheet=ИМЯ_ФАЙЛА</TT></TD>
cannam@86 300 <TD>Импортировать указанный список разбиения аудиодиска и сохранить его в блоке метаданных <A HREF="format.html#def_CUESHEET">CUESHEET</A>. Эту опцию можно использовать только при кодировании одного файла. Точки поиска будут добавлены для каждого трека из списка в блок <A HREF="format.html#def_SEEKTABLE">SEEKTABLE</A>, если не будет указана опция <TT>--no-cued-seekpoints</TT>.<BR>
cannam@86 301 Файл списка разбиения аудиодиска должен иметь такой же вид, в каком его создают программы <A HREF="http://www.goldenhawk.com/cdrwin.htm">CDRwin</A>, <A HREF="http://www.dcsoft.com/prod03.htm">CDRcue</A>, <A HREF="http://www.exactaudiocopy.de/">EAC</A> и т.д</TD></TR>
cannam@86 302
cannam@86 303
cannam@86 304 <TR><TD><TT>--sector-align</TT></TD>
cannam@86 305 <TD>
cannam@86 306 <P>При кодировании нескольких WAVE файлов, полученных с аудиодиска, выравнивать их на границу сектора. Эта опция применима только для кодирования нескольких WAVE файлов, каждый из которых должен иметь частоту дискретизации 44.1 кГц и два канала. Если будет указана эта опция кодер выровняет потоки .flac так,
cannam@86 307 что их длины будут кратны размеру сектора CD-Audio (равны 1/75 секундам или 588 сэмплам). Это осуществляется переносом части сектора в конце каждого WAVE файла в начало следующего. Последний поток будет дополнен до границы выравнивания нулями.</P>
cannam@86 308 <P>Использование этой опции не приведет ни к чему, если файлы уже выровнены (например, если правильно скопированы с аудиодиска). <TT><B>flac</B></TT> может выровнять только несколько файлов за один вызов.</P>
cannam@86 309
cannam@86 310 <P><B>ВНИМАНИЕ</B>: Порядок файлов имеет значение! Если вы сделаете следующий вызов '<TT>flac --sector-align *.wav</TT>', командный процессор может обработать шаблон не в том порядке, в каком вы рассчитываете. Поэтому лучше всего вызывать программу, явно указав список файлов, например, '<TT>flac --sector-align 8.wav 9.wav 10.wav</TT>'.
cannam@86 311 </TD></TR>
cannam@86 312
cannam@86 313 <TR><TD><TT>-S {#|X|#x|#s}</TT>,<BR><TT>--seekpoint={#|X|#x|#s}</TD>
cannam@86 314 <TD>Добавляет точки для поиска в таблицу <TT>SEEKTABLE</TT>.
cannam@86 315
cannam@86 316 <UL>
cannam@86 317 <LI><TT>#&nbsp;</TT> : создается точка поиска для сэмпла с определенным номером.</LI>
cannam@86 318
cannam@86 319 <LI><TT>X&nbsp;</TT> : резервируемые точки (всегда помещаются в конце <TT>SEEKTABLE</TT>).</LI>
cannam@86 320
cannam@86 321 <LI><TT>#x</TT> : # равномерно распределенных точек поиска, первая соответствует 0 сэмплу.</LI>
cannam@86 322
cannam@86 323 <LI><TT>#s</TT> : точки поиски расставляются для каждых # секунд; номер не обязательно должен быть целым числом, например, <TT>-S 9.5s</TT> ознчает, что точки будут проставлены с промежутком 9.5 секунд</LI>
cannam@86 324 </UL>
cannam@86 325
cannam@86 326 <P>Опцию <TT>-S</TT> можно использовать несколько раз. В результате получится объединенная таблица, в которой будут присутствовать только уникальные значения.<BR>
cannam@86 327 По умолчанию <B><TT>flac</TT></B> использует <TT>-S 10s</TT>. Если таблица поиска не нужна, укажите <TT>-S-</TT>.<BR>
cannam@86 328 <B>ПРИМЕЧАНИЕ</B>: <TT>-S #x</TT> и <TT>-S #s</TT> не будут работать, если кодер не сможет определить размер входного файла в начале работы.<BR>
cannam@86 329 <B>ПРИМЕЧАНИЕ</B>: если <I>#</I> больше или равен количеству сэмплов во входном файле, то точки добавлены не будут, если размер можно определить до кодирования, в противном случае будут записаны резервируемые точки.</P>
cannam@86 330 </TD></TR>
cannam@86 331
cannam@86 332 <TR><TD><TT>-P #</TT>, <TT>--padding</TT></TD>
cannam@86 333 <TD>Кодер запишет блок метаданных <TT>PADDING</TT>, указанного размера (в байтах), после блока <TT>STREAMINFO</TT>. Ключ <TT>--no-padding</TT> указывает, что блок <TT>PADDING</TT> не нужен (значение по умолчанию). Этот блок полезен, если вы собираетесь добавить тэг в файл позже. Вместо того, чтобы переписывать файл полностью, можно будет записать информацию вместо блока <TT>PADDING</TT>. Обратите внимание на то, что общий размер блока <TT>PADDING</TT> будет на 4 байта больше, так как 4 байта занимает заголовок.</TD></TR>
cannam@86 334
cannam@86 335 <TR><TD><TT>-T ПОЛЕ=ЗНАЧЕНИЕ</TT>, <TT>--tag=ПОЛЕ=ЗНАЧЕНИЕ</TT></TD>
cannam@86 336 <TD>Добавляет комментарии Vorbis, который должен соответствовать спецификации, т.е. ПОЛЕ должно содержать только определенные символы, завершающиеся знаком равенства. При необходимости не забывайте заключать комментарий в кавычки. Эту опцию можно использовать неоднократно для заполнения разных полей комментария. Все указанные значения будут применены ко всем кодируемым файлам.</TD></TR>
cannam@86 337
cannam@86 338 <TR><TD><TT>-b #</TT>, <TT>--blocksize</TT></TD>
cannam@86 339 <TD>Устанавливает размер блока в сэмплах. По умолчанию <TT>1152</TT> для <TT>-l 0</TT>, иначе <TT>4608</TT>. Стандартные потоки должны использовать одно из указаных значений: <TT>192/576/1152/2304/4608/256/512/1024/2048/4096/8192/16384/32768</TT>. Сейчас кодер использует постоянный размер блока для всего файла.</TD></TR>
cannam@86 340
cannam@86 341 <TR><TD><TT>-m</TT>, <TT>--mid-side</TT></TD>
cannam@86 342 <TD>Включает разностное кодирование (только для стерео потоков). Обычно увеличивает уровень сжатия на несколько процентов. Для каждого блока создается усредненная и стерео версия блока, сохраняется блок меньшего размера. Сейчас разностное кодирование доступно для файлов, где сэмпл имеет размер не больше 16 бит.</TD></TR>
cannam@86 343
cannam@86 344 <TR><TD><TT>-M</TT>, <TT>--adaptive-mid-side</TT></TD>
cannam@86 345 <TD>Включает адаптивное разностное кодирование (только для стерео потоков). Работает аналогично <TT>-m</TT>, однако кодер переключается между независимым и усредняющим кодированием адаптивно. Метод работает быстрее, но уровень сжатия меньше, так как <TT>-m</TT> производит полный перебор вариантов.</TD></TR>
cannam@86 346
cannam@86 347 <TR><TD><TT>-0..-8</TT></TD>
cannam@86 348 <TD>Быстрейшее сжатие ... максимальное сжатие. По умолчанию <TT>-5</TT>.</TD></TR>
cannam@86 349
cannam@86 350 <TR><TD><TT>-0</TT>, <TT>--compression-level-0</TT></TD>
cannam@86 351 <TD>Аналогично <TT>-l 0 -b 1152 -r 2,2</TT>.</TD></TR>
cannam@86 352
cannam@86 353 <TR><TD><TT>-1</TT>, <TT>--compression-level-1</TT></TD>
cannam@86 354 <TD>Аналогично <TT>-l 0 -b 1152 -r 2,2 -M</TT>.</TD></TR>
cannam@86 355
cannam@86 356 <TR><TD><TT>-2</TT>, <TT>--compression-level-2</TT></TD>
cannam@86 357 <TD>Аналогично <TT>-l 0 -b 1152 -r 3 -m</TT>.</TD></TR>
cannam@86 358
cannam@86 359 <TR><TD><TT>-3</TT>, <TT>--compression-level-3</TT></TD>
cannam@86 360 <TD>Аналогично <TT>-l 6 -b 4608 -r 3,3</TD></TR>
cannam@86 361
cannam@86 362 <TR><TD><TT>-4</TT>, <TT>--compression-level-4</TT></TD>
cannam@86 363 <TD>Аналогично <TT>-l 8 -b 4608 -r 3,3 -M</TT>.</TD></TR>
cannam@86 364
cannam@86 365 <TR><TD><TT>-5</TT>, <TT>--compression-level-5</TT></TD>
cannam@86 366 <TD>Аналогично <TT>-l 8 -b 4608 -r 3,3 -m</TT>.</TD></TR>
cannam@86 367
cannam@86 368 <TR><TD><TT>-6</TT>, <TT>--compression-level-6</TT></TD>
cannam@86 369 <TD>Аналогично <TT>-l 8 -b 4608 -r 4 -m</TT>.</TD></TR>
cannam@86 370
cannam@86 371 <TR><TD><TT>-7</TT>, <TT>--compression-level-7</TT></TD>
cannam@86 372 <TD>Аналогично <TT>-l 8 -b 4608 -r 6 -m -e</TT>.</TD></TR>
cannam@86 373
cannam@86 374 <TR><TD><TT>-8</TT>, <TT>--compression-level-8</TT></TD>
cannam@86 375 <TD>Аналогично <TT>-l 12 -b 4608 -r 6 -m -e</TT>.</TD></TR>
cannam@86 376
cannam@86 377 <TR><TD><TT>--fast</TT></TD>
cannam@86 378 <TD>Быстрейшее сжатие. Аналогично <TT>-0</TT>.</TD></TR>
cannam@86 379
cannam@86 380 <TR><TD><TT>--best</TT></TD>
cannam@86 381 <TD>Максимальное сжатие. Аналогично <TT>-8</TT>.</TD></TR>
cannam@86 382
cannam@86 383 <TR><TD><TT>-e</TT>,<BR><TT>--exhaustive-model-search</TT></TD>
cannam@86 384 <TD>Полный поиск модели (работает медленно!). Обычно кодер определяет лучшую модель и кодирует далее опираясь на нее. В данном режиме кодер будет создавать подфреймы всех порядков и использовать наименьший. Если максимальное значение порядка LPC велико, время кодирования существенно возрастет. Выигрыш обычно составляет около 0.5%.</TD></TR>
cannam@86 385
cannam@86 386 <TR><TD><TT>-E</TT>,<BR><TT>--escape-coding</TT></TD>
cannam@86 387 <TD>Использовать управляющие коды в кодере энтропии. Эта опция позволяет записывать незакодированное представление остатка в разделе, если его размер меньше. При этом время работы увеличивается, а уровень сжатия обычно улучшается примерно на 1%.</TD></TR>
cannam@86 388
cannam@86 389 <TR><TD><TT>-l #</TT>,<BR><TT>--max-lpc-order=#</TT></TD>
cannam@86 390 <TD>Определяет максимальный порядок LPC (коэффициентов линейного прогнозирования). Число должно быть меньше или равно <TT>32</TT>. Если значение равно <TT>0</TT>, кодер будет использовать вместо общего линейного прогнозирования постоянные коэффициенты. Этот метод увеличивает скорость работы, но файлы получаются на 5-10% больше.</TD></TR>
cannam@86 391
cannam@86 392 <TR><TD><TT>-q #</TT>,<BR><TT>--qlp-coeff-precision=#</TD>
cannam@86 393 <TD>Определяет точность дискретных коэффициентов линейного прогнозирования в битах. По умолчанию <TT>-q 0</TT>, что позволяет кодеру принимать решение в зависимости от сигнала. Лучше оставлять значение по умолчанию.</TD></TR>
cannam@86 394
cannam@86 395 <TR><TD><TT>-p</TT>,<BR><TT>--qlp-coeff-precision-search</TT></TD>
cannam@86 396 <TD>Производить оптимизацию LPC. Переопределяет любую опцию <TT>-q</TT>. Сильно замедляет работу, и уменьшает размер файла на долю процента. <TT>-q</TT> не работает, когда используется <TT>-l 0</TT>.</TD></TR>
cannam@86 397
cannam@86 398 <TR><TD><TT>-r [#,]#</TT>,<BR><TT>--rice-partition-order=[#,]#</TT></TD>
cannam@86 399 <TD>Установить <I>[min,]max</I> порядок раздела. Если минимальное значение не указано, то оно устанавливается равным 0. По умолчанию кодер один параметр Райса для всего остатка подфрейма. Если использовать эту опцию, остаток будет разделяться на <I>2^min#</I> ... <I>2^max</I> частей, для каждой из которых будет определен собственный параметр Райса. С увеличением параметра <I>max</I> выигрыш будет все меньше. Наиболее оптимальный вариант достигается при использовании <TT>-r 2,2</TT> (и больших значений для больших размеров блоков). При этом сжатие обычно увеличивается на 1.5%. Выбор оптимального значения можно произвести по формуле <TT>размер_блока/(2^n)=128</TT>. Максимальный уровень сжатия достигается при использовании <TT>-r 0,16</TT>.</TD></TR>
cannam@86 400 </TABLE>
cannam@86 401
cannam@86 402
cannam@86 403 <H4>Настройки формата</H4>
cannam@86 404 <TABLE border=1>
cannam@86 405 <TR><TD width=30%><TT>--endian={big|little}</TT></TD>
cannam@86 406 <TD width=70%>Определяет порядок байтов в файле без заголовка big-endian | little-endian.</TD></TR>
cannam@86 407
cannam@86 408 <TR><TD><TT>--channels=#</TT></TD>
cannam@86 409 <TD>Определяет количество каналов в файле без заголовка.</TD></TR>
cannam@86 410
cannam@86 411 <TR><TD><TT>--bps=#</TT></TD>
cannam@86 412 <TD>Определяет количество бит на сэмпл в файле без заголовка.</TD></TR>
cannam@86 413
cannam@86 414 <TR><TD><TT>--sample-rate=#</TT></TD>
cannam@86 415 <TD>Определяет количество сэмплов в секунду в файле без заголовка.</TD></TR>
cannam@86 416
cannam@86 417 <TR><TD><TT>--sign={signed|unsigned}</TT></TD>
cannam@86 418 <TD>Определяет, должны ли быть сэмплы в файле без заголовка беззнаковые или знаковые (по умолчанию знаковые).</TD></TR>
cannam@86 419
cannam@86 420 <TR><TD><TT>--force-aiff-format</TT></TD>
cannam@86 421 <TD>Декодер будет записывать в формат AIFF. Эта опция не нужна, если имя выходного файла (указанное с помощью ключа <TT>-o</TT>) заканчиватся на .aiff.</TD></TR>
cannam@86 422
cannam@86 423 <TR><TD><TT>--force-raw-format</TT></TD>
cannam@86 424 <TD>Воспринимать входной (или выходной при декодировании) файл как поток сэмплов без заголовка вне зависимости от суффикса.</TD></TR>
cannam@86 425 </TABLE>
cannam@86 426
cannam@86 427
cannam@86 428 <H4><a name="format-options">Отмена действия опций</H4>
cannam@86 429 <TABLE border=1>
cannam@86 430 <TR><TD width=40%>
cannam@86 431 <TT>--no-adaptive-mid-side</TT><BR>
cannam@86 432 <TT>--no-decode-through-errors</TT><BR>
cannam@86 433 <TT>--no-delete-input-file</TT><BR>
cannam@86 434 <TT>--no-escape-coding</TT><BR>
cannam@86 435 <TT>--no-exhaustive-model-search</TT><BR>
cannam@86 436 <TT>--no-lax</TT><BR>
cannam@86 437 <TT>--no-mid-side</TT><BR>
cannam@86 438 <TT>--no-ogg</TT><BR>
cannam@86 439 <TT>--no-padding</TT><BR>
cannam@86 440 <TT>--no-qlp-coeff-precision-search</TT><BR>
cannam@86 441 <TT>--no-residual-gnuplot</TT><BR>
cannam@86 442 <TT>--no-residual-text</TT><BR>
cannam@86 443 <TT>--no-sector-align</TT><BR>
cannam@86 444 <TT>--no-seektable</TT><BR>
cannam@86 445 <TT>--no-silent</TT><BR>
cannam@86 446 <TT>--no-verify</TT></TD>
cannam@86 447 <TD width=60%>Можно использовать для отключения действия конкретной опции.</TD></TR>
cannam@86 448 </TABLE>
cannam@86 449
cannam@86 450
cannam@86 451 <A NAME="metaflac">
cannam@86 452 <H3><B><TT>metaflac</TT></B></H3>
cannam@86 453
cannam@86 454 <P><B><TT>metaflac</TT></B> - это редактор метаданных, работающий из командной строки. Его можно использовать для удаления, вставки и вывода содержимого блоков во .flac файле, а также управления блоком<TT>PADDING</TT>, резервирующим место.</P>
cannam@86 455
cannam@86 456 <P>Документация для <B><TT>metaflac</TT></B> в формате HTML сейчас переписывается, поэтому сейчас о возможностях можно узнать, дав команду <TT>metaflac --help</TT> или ознакомиться со man-страницей.</P>
cannam@86 457
cannam@86 458 <A NAME="plugins"><A NAME="xmms_plugin">
cannam@86 459 <H3>Плагин для XMMS</H3>
cannam@86 460
cannam@86 461 <P>Для его установки необходимо скопировать <TT>libxmms-flac.so</TT> в каталог, где находятся плагины ввода XMMS (обычно <TT>/usr/lib/xmms/Input</TT>). Больше ничего настраивать не надо. Для воспроизведения .flac файлов перезапустите XMMS.</P>
cannam@86 462
cannam@86 463 <A NAME="winamp_plugin2">
cannam@86 464 <H3>Плагин для Winamp</H3>
cannam@86 465
cannam@86 466 <P>Есть два плагина для Winamp: один для версий 2.x, а второй для 3.x. Если вы используете Winamp 2.x, то для установки плагина необходимо скопировать <TT>in_flac.dll</TT> в каталог, где находятся плагины ввода Winamp (обычно <TT>/Plugins</TT>). Больше ничего настраивать не надо. Для воспроизведения .flac файлов перезапустите Winamp.</P>
cannam@86 467
cannam@86 468 <A NAME="winamp_plugin3">
cannam@86 469 <H3>Плагин для Winamp</H3>
cannam@86 470
cannam@86 471 <P>Есть два плагина для Winamp: один для версий 2.x, а второй для 3.x. Если вы используете Winamp 3.x, то для установки плагина необходимо скопировать <TT>cnv_flacpcm.wac</TT> в каталог, где находятся плагины ввода Winamp (обычно <TT>/Wacs</TT>). Больше ничего настраивать не надо. Для воспроизведения .flac файлов перезапустите Winamp.</P>
cannam@86 472
cannam@86 473 <A NAME="bugs">
cannam@86 474 <H3>Известные ошибки</H3>
cannam@86 475
cannam@86 476 <P>Отслеживание ошибок ведется на <A HREF="http://sourceforge.net/bugs/?group_id=13478">этой</A> странице проекта, находящейся на SourceForge. Если Вы будете сообщать об ошибке, пожалуйста, оставьте e-mail для контакта.</P>
cannam@86 477
cannam@86 478 <P>Ниже перечислены известные ошибки в текущей версии (1.1.0):</P>
cannam@86 479
cannam@86 480 <BLOCKQUOTE><UL>
cannam@86 481 <LI>Нет известных ошибок.</LI>
cannam@86 482 </UL></BLOCKQUOTE>
cannam@86 483
cannam@86 484 <P>В версии 1.0.4 были следующие значимые ошибки:</P>
cannam@86 485
cannam@86 486 <BLOCKQUOTE><UL>
cannam@86 487 <LI>Во всех декодерах до этой версии включительно была ошибка не позволяющая правильно пропускать неизвестные блоки метаданных. Файл FLAC, созданный кодером flac 1.1.0 и содержащий блок метаданных CUESHEET, не будет воспроизводиться более ранними версиями декодеров.</LI>
cannam@86 488 <LI>В <B><TT>metaflac</TT></B> была ошибка, возникающая при импортировании комметария в формате Vorbis, которая могла привести к повреждению файла FLAC.</LI>
cannam@86 489 </UL></BLOCKQUOTE>
cannam@86 490
cannam@86 491
cannam@86 492 <A NAME="monkey">
cannam@86 493 <H3>monkey</H3>
cannam@86 494
cannam@86 495 <P>Monkey's Audio поставляется с удобным пользовательским интерфейсом. Он поддерживает несколько внешних кодеров, в число которых не входит FLAC. Однако дистрибутив FLAC для Windows поставляется с утилитой, позволяющей заменить один из поддерживаемых внешних кодеков на FLAC. Это можно сделать так:</P>
cannam@86 496
cannam@86 497 <UL>
cannam@86 498 <LI>Скопируйте <B><TT>flac.exe</TT></B> и <B><TT>flac_ren.exe</TT></B> в каталог <B><TT>External/</TT></B> установки Monkey's Audio.</LI>
cannam@86 499
cannam@86 500 <LI>Выберите, какой поддерживаемый кодер заменить:
cannam@86 501 <UL>
cannam@86 502 <LI>Shorten - скопируйте <B><TT>flac_mac.exe</TT></B> поверх <B><TT>External/shortn32.exe</TT></B></LI>
cannam@86 503 <LI>WavPack - скопируйте <B><TT>flac_mac.exe</TT></B> поверх <B><TT>External/wavpack.exe</TT></B> и <B><TT>External/wvunpack.exe</TT></B></LI>
cannam@86 504 <LI>RKAU - скопируйте <B><TT>flac_mac.exe</TT></B> поверх <B><TT>External/rkau.exe</TT></B></LI>
cannam@86 505 </UL>
cannam@86 506 Если выбрать WavPack, то для изменения опций FLAC будет доступно меню настройки WavPack Configuration.</LI>
cannam@86 507 <LI>Теперь можно кодировать в формат FLAC. Переименованный файл <B><TT>flac_mac.exe</TT></B> вызывает <B><TT>flac.exe</TT></B>, а затем <B><TT>flac_ren.exe</TT></B> для присвоения получаемому файлу расширения .flac.</LI>
cannam@86 508 </UL>
cannam@86 509 </P>
cannam@86 510
cannam@86 511 <P>Другие оболочки можно использовать примерно таким же способом.</P>
cannam@86 512
cannam@86 513 <P>&nbsp;Copyright (c) 2000,2001,2002,2003,2004,2005,2006,2007 Josh Coalson</P>
cannam@86 514
cannam@86 515 </BODY>
cannam@86 516 </HTML>