summaryrefslogtreecommitdiff
path: root/doc/html/ru/features.html
blob: 0b8dfac9b435f8410c6388939c37f1f4f8b561cb (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//RU">
<!-- Copyright (c) 2000,2001,2002  Josh Coalson -->
<!-- Permission is granted to copy, distribute and/or modify this document -->
<!-- under the terms of the GNU Free Documentation License, Version 1.1 -->
<!-- or any later version published by the Free Software Foundation; -->
<!-- with no invariant sections. -->
<!-- A copy of the license can be found at http://www.gnu.org/copyleft/fdl.html -->
<HTML>
<HEAD>
<META CHARSET="windows-1251">
<TITLE>FLAC: характеристики</TITLE>
</HEAD>

<BODY>
<CENTER><TABLE cellpadding=0 cellspacing=0 border=0>
<TR>
<TD align=center>|</TD>
<TD height=22 align=center nowrap>
&nbsp;<A HREF="index.html">начало</A>&nbsp;</TD>
<TD align=center>|</TD>
<TD align=center nowrap>
&nbsp;<A HREF="news.html">новости</A>&nbsp;</TD>
<TD align=center>|</TD>
<TD align=center nowrap>
&nbsp;<A HREF="download.html">файлы</A>&nbsp;</TD>
<TD align=center>|</TD>
<TD align=center nowrap>
&nbsp;характеристики&nbsp;</TD>
<TD align=center>|</TD>
<TD align=center nowrap>
&nbsp;<A HREF="goals.html">цели</A>&nbsp;</TD>
<TD align=center>|</TD>
<TD align=center nowrap>
&nbsp;<A HREF="format.html">формат</A>&nbsp;</TD>
<TD align=center>|</TD></TR>

<TR>
<TD align=center>|</TD>
<TD align=center nowrap>
&nbsp;<A HREF="id.html">id</A>&nbsp;</TD>
<TD align=center>|</TD>
<TD align=center nowrap>&nbsp;
<A HREF="comparison.html">сравнение</A>&nbsp;</TD>
<TD align=center>|</TD>
<TD align=center nowrap>&nbsp;
<A HREF="developers.html">разработка</A>&nbsp;</TD>
<TD align=center>|</TD>
<TD align=center nowrap>
&nbsp;<A HREF="documentation.html">документация</A>&nbsp;</TD>
<TD align=center>|</TD>
<TD align=center nowrap>
&nbsp;<A HREF="links.html">ссылки</A>&nbsp;</TD>
<TD align=center>|</TD>
<TD align=center nowrap>
&nbsp;<A HREF="authors.html">авторы</A>&nbsp;</TD>
<TD align=center>|</TD></TR>
</TABLE></CENTER>

<P><CENTER><TABLE cellpadding=0 cellspacing=0 border=0>
<TR><TD align=center>|</TD>
<TD height=22 align=center nowrap>
&nbsp;<A HREF="../features.html">english</A>&nbsp;</TD>
<TD align=center>|</TD>
<TD align=center nowrap>
&nbsp;русский</A>&nbsp;</TD>
<TD align=center>|</TD></TR>
</TABLE></CENTER></P>


<CENTER><H2>FLAC: характеристики</H2></CENTER>

<P>FLAC - это аббревиатура от free lossless audio codec (свободный кодек, обеспечивающий сжатие без потерь). Проект FLAC включает:</P>

<P><BLOCKQUOTE><UL>
	<LI>потоковый формат,</LI>

	<LI>библиотеку <B><TT>libFLAC</TT></B> для базовых кодеров и декодеров и интерфейса для метаданных,</LI>

	<LI>объектную оболочку <B><TT>libFLAC++</TT></B> для <TT>libFLAC</TT>,</LI>

	<LI><B><TT>libOggFLAC</TT></B> и <B><TT>libOggFLAC++</TT></B>, обертки кодеров и декодеров <TT>libFLAC</TT> и <TT>libFLAC++</TT>, соответственно, для доступа к потокам FLAC в контейнере Ogg,</LI>

	<LI><B><TT>flac</TT></B>, утилиту командной строки, выполняющую сжатие и распаковку .flac файлов,</LI>

	<LI><B><TT>metaflac</TT></B>, утилиту командной строки для редактирования метаданных в файлах .flac,</LI>

	<LI>плагины для разных плейеров (Winamp, XMMS, ведется работа над другими).</LI>
</UL></BLOCKQUOTE></P>

<P>"Свобода" означает, что спецификация потокового формата относится к категории public domain (проект FLAC оставляет за собой право устанавливать спецификации и сертифицировать относящиеся к нему продукты на совместимость), а также то, что ни формат, ни один из реализованных методов кодирования/декодирования не запатентованы. Это также значит, что исходные тексты библиотек доступны по лицензии <A HREF="http://www.opensource.org/licenses/lgpl-license.html">LGPL</A>, а исходные тексты для <B><TT>flac</TT></B>, <B><TT>metaflac</TT></B> и плагинов по лицензии <A HREF="http://www.opensource.org/licenses/gpl-license.html">GPL</A>.


<P>FLAC компилируется на множестве платформ: Unixes (Linux, *BSD, Solaris, OS X), Windows, BeOS и OS/2. Имеются системы сборки для autoconf/automake, MSVC, Watcom C и Project Builder.</P>

<P>Характеристики FLAC:</P>

<P><BLOCKQUOTE><UL>
	<LI>Формат FLAC и методы кодирования/декодирования не защищены патентами.</LI>

	<LI>FLAC сжимает файлы без потерь. Кодирование PCM данных не приводит к потере информации, следовательно, декодируемый аудиофайл абсолютно идентичен тому, который был подан на вход кодеру. Чтобы определить возможные ошибки при передаче файла, для каждого фрейма вычисляется 16-битная контрольная сумма. Целостность на дальнейшем этапе подтверждается подписью <A HREF="http://userpages.umbc.edu/~mabzug1/cs/md5/md5.html">MD5</A> распакованных данных, которая находится в заголовке и может быть проверена при воспроизведении, декодировании или с помощью тестирования.</LI>

	<LI>FLAC разработан для сжатия аудиоданных. Теоретически, <B><TT>flac</TT></B> может компрессировать без потерь любые другие данные (если передавать их как 8-битный моно raw-файл), однако выходные файлы получаются почти такого же размера.</LI>

	<LI>Возможности сжатия во FLAC расширяемы. Это означает, что в будущих версиях формата могут быть добавлены новые методы без потери обратной совместимости.</LI>

	<LI>Реализованные на данный момент методы компрессии создают потоки меньшего размера, чем <A HREF="http://www.softsound.com/Shorten.html">Shorten</A> (кодек с открытыми исходными текстами, являющийся текущим стандартом сжатия без потерь "у них"). Время кодирования зависит от метода, но обычно сравнимо с <A HREF="http://www.softsound.com/Shorten.html">Shorten</A> и <A HREF="http://www.mp3dev.org/mp3/">LAME</A>. Самые активные методы могут работать очень медленно. Подробнее об этом можно посмотреть на странице <A HREF="comparison.html">сравнение</A>.</LI>

	<LI>FLAC рассчитан на быстрое декодирование. Декодирование в реальном времени легко достижимо даже на старых компьютерах, так как для него требуется только целочисленная арифметика.</LI>

	<LI>FLAC удобно использовать для архивации, так как сжатие с его помощью не приводит к потере информации. Вы не привязаны к формату. Если в будущем Вы решите использовать другой формат, данные будут восстановлены из .flac файла в первоначальном виде. Кроме контрольной суммы фрейма и подписи <A HREF="http://userpages.umbc.edu/~mabzug1/cs/md5/md5.html">MD5</A>, утилита <B><TT>flac</TT></B> имеет возможность проверки, использование которой приводит к тому, что кодируемый поток сразу же декодируется и сравнивается с исходным. Если происходит ошибка, кодер прекращает работу.</LI>

	<LI>FLAC - потоковый формат. Это значит, что каждый фрейм содержит достаточно информации для собственного декодирования. Текущий фрейм FLAC не зависит от предыдущих и последующих. FLAC использует коды синхронизации и контрольные суммы, что позволяет декодеру быстро выбирать позицию в текущем потоке.</LI>

	<LI>FLAC поддерживает быстрый и точный поиск, что полезно не только при воспроизведении, но и дает возможность использовать FLAC в звуковых редакторах.</LI>

	<LI>FLAC имеет расширяемую систему метаданных. Новые блоки метаданных могут быть определены и реализованы в будущих версиях без потери обратной совместимости. Приложение может использовать блок метаданных <A HREF="format.html#def_APPLICATION"><TT>APPLICATION</TT></A> после регистрации для него id. Добавленные тэги ID3 и ID3v2 к .flac файлам не влияют на поцесс декодирования.</LI>
</UL></BLOCKQUOTE></P>

<P>Некоторые дополнительные преимущества, вытекающие из приведенных выше характеристик:</P>

<BLOCKQUOTE><P><UL>
	<LI>Потоки FLAC могут быть воспроизведены слитно, без пауз между треками. Таким образом, Вы можете сжать концертный альбом, разделенный на треки, и добиться его непрерывного воспроизведения.</LI>

	<LI>Механизм точного поиска позволяет организовывать различные режимы воспроизведения: в плейере можно сделать индексный поиск, различные циклы или другие виды структурированного воспроизведения. Это очень полезно, например, для dj'ев или для репетиций, когда нужно повторять определенные пассажи.</LI>

	<LI>В итоге вы получаете гибкость wav-файла в сжатом потоковом формате.</LI>
</UL></BLOCKQUOTE></P>

<P>Чего <B>нет</B> во FLAC?</P>

<P><BLOCKQUOTE><UL>
	<LI>FLAC не осуществляет сжатие с потерями. Для этого существует много хороших форматов, таких как <A HREF="http://www.mp3-tech.org/">mp3</A> (отличная реализация с открытими исходными текстами <A HREF="http://www.mp3dev.org/mp3/">LAME</A>) и <A HREF="http://www.vorbis.com">Ogg Vorbis</A>.</LI>

	<LI>FLAC не будет SDMI совместимым и т.п. Перед проектом не стоит цели поддерживать методы защиты, которые на практике лишь увеличивают объем файла. Конечно, мы не собираемся препятствовать кому-либо создавать соответствующие блоки метаданных, однако, стандартные декодеры все равно будут их пропускать.</LI>
</UL></BLOCKQUOTE></B>

<P>&nbsp;Copyright (c) 2000,2001,2002 Josh Coalson</P>

</BODY>
</HTML>