blob: dcd58f83e02503069d9009d0a2e54462b804959c [file] [log] [blame]
Dominik Riebeling251e5192006-08-02 17:21:38 +00001% $Id$ %
2\chapter{File formats}
3\section{\label{ref:Supportedfileformats}Supported file formats}
Alexander Levin90f21b32011-05-10 20:19:34 +00004\begin{rbtabular}{\textwidth}{cl>{\raggedright}p{7em}X}%
Alexander Levinfb87e892009-08-24 21:22:18 +00005{\textbf{Icon} & \textbf{File Type} & \textbf{Extension}
6 & \textbf{Action when selected}}{}{}
Dominik Riebeling251e5192006-08-02 17:21:38 +00007\includegraphics[width=0.37cm]{appendix/images/icon-directory.png}
Alexander Levin90f21b32011-05-10 20:19:34 +00008 & Directory & \emph{none} & Enter the directory \tabularnewline
Yoshihisa Uchida50b03632010-02-28 10:42:56 +00009\opt{recorder,recorderv2fm,ondiofm,ondiosp}{
10 \includegraphics[width=0.37cm]{appendix/images/icon-rolo.png}
Alexander Levin90f21b32011-05-10 20:19:34 +000011 & Rockbox firmware & \fname{.ajz} & Load the new firmware with ROLO \tabularnewline
Yoshihisa Uchida50b03632010-02-28 10:42:56 +000012}
13\opt{swcodec}{
14 \includegraphics[width=0.37cm]{appendix/images/icon-audio-file.png}
15 & Audio file & \emph{various}\newline%
16 (see \ref{ref:Supportedaudioformats})%
Dominik Riebeling0eea6ce2009-04-02 19:21:15 +000017 % do NOT use \reference{} here as that will break the table.
Alexander Levin90f21b32011-05-10 20:19:34 +000018 & Start playing the file and show the WPS\tabularnewline
Nils Wallméniusa7210832008-08-11 22:47:17 +000019}
Alexander Levin90f21b32011-05-10 20:19:34 +000020 & Bookmark & \fname{.bmark} & Display all bookmarks for an audio file\tabularnewline
Yoshihisa Uchida50b03632010-02-28 10:42:56 +000021\opt{lcd_bitmap}{
22 & Game of Life & \fname{.cells} & Show the configuration with the
Alexander Levin90f21b32011-05-10 20:19:34 +000023 ``Rocklife'' plugin\tabularnewline
Yoshihisa Uchida50b03632010-02-28 10:42:56 +000024}
Dominik Riebeling251e5192006-08-02 17:21:38 +000025\includegraphics[width=0.37cm]{appendix/images/icon-config.png}
Alexander Levin90f21b32011-05-10 20:19:34 +000026 & Configuration File & \fname{.cfg} & Load the settings file\tabularnewline
Dominik Riebeling251e5192006-08-02 17:21:38 +000027\includegraphics[width=0.37cm]{appendix/images/icon-chip8.png}
Alexander Levin90f21b32011-05-10 20:19:34 +000028 & Chip8 game & \fname{.ch8} & Play the Chip8 game \tabularnewline
Alexander Levin71812ca2009-03-20 19:33:20 +000029\opt{lcd_color}{
30 & Colours & \fname{.colours} & Open the colours file for editing.
Alexander Levin90f21b32011-05-10 20:19:34 +000031 See \reference{ref:ChangingFiletypeColours}.\tabularnewline
Alexander Levin71812ca2009-03-20 19:33:20 +000032}
Yoshihisa Uchida50b03632010-02-28 10:42:56 +000033\includegraphics[width=0.37cm]{appendix/images/icon-cuesheet.png}
Alexander Levin90f21b32011-05-10 20:19:34 +000034 & Cuesheet & \fname{.cue} & View the cuesheet file \tabularnewline
Yoshihisa Uchida50b03632010-02-28 10:42:56 +000035\opt{radio}{
Alexander Levin90f21b32011-05-10 20:19:34 +000036 & FM Presets & \fname{.fmr} & Load the FM Presets (previous are discarded)\tabularnewline
Yoshihisa Uchida50b03632010-02-28 10:42:56 +000037}
38\includegraphics[width=0.37cm]{appendix/images/icon-font.png}
Alexander Levin90f21b32011-05-10 20:19:34 +000039 & Font & \fname{.fnt} & Change the user interface font to this one\tabularnewline
Yoshihisa Uchida50b03632010-02-28 10:42:56 +000040\opt{gigabeat}{
41 \includegraphics[width=0.37cm]{appendix/images/icon-rolo.png}
Alexander Levin90f21b32011-05-10 20:19:34 +000042 & Rockbox firmware & \fname{.gigabeat} & Load the new firmware with ROLO \tabularnewline
Yoshihisa Uchida50b03632010-02-28 10:42:56 +000043}
44\opt{iaudio}{
45 \includegraphics[width=0.37cm]{appendix/images/icon-rolo.png}
Alexander Levin90f21b32011-05-10 20:19:34 +000046 & Rockbox firmware & \fname{.iaudio} & Load the new firmware with ROLO \tabularnewline
Yoshihisa Uchida50b03632010-02-28 10:42:56 +000047}
48\opt{ipod}{
49 \includegraphics[width=0.37cm]{appendix/images/icon-rolo.png}
Alexander Levin90f21b32011-05-10 20:19:34 +000050 & Rockbox firmware & \fname{.ipod} & Load the new firmware with ROLO \tabularnewline
Yoshihisa Uchida50b03632010-02-28 10:42:56 +000051}
Marianne Arnoldb43b4932011-01-17 18:30:18 +000052\opt{iriverh100,iriverh300}{
Yoshihisa Uchida50b03632010-02-28 10:42:56 +000053 \includegraphics[width=0.37cm]{appendix/images/icon-rolo.png}
Alexander Levin90f21b32011-05-10 20:19:34 +000054 & Rockbox firmware & \fname{.iriver} & Load the new firmware with ROLO \tabularnewline
Yoshihisa Uchida50b03632010-02-28 10:42:56 +000055}
56\includegraphics[width=0.37cm]{appendix/images/icon-image-file.png}
Alexander Levin90f21b32011-05-10 20:19:34 +000057 & Image & \fname{.jpg} & View the JPEG image \tabularnewline
Yoshihisa Uchida50b03632010-02-28 10:42:56 +000058 & Link & \fname{.link} & Display list of target files and directories;
Alexander Levin90f21b32011-05-10 20:19:34 +000059 selecting one jumps to the target. See \reference{ref:Shortcutsplugin}.\tabularnewline
Yoshihisa Uchida50b03632010-02-28 10:42:56 +000060\includegraphics[width=0.37cm]{appendix/images/icon-lang.png}
Alexander Levin90f21b32011-05-10 20:19:34 +000061 & Language File & \fname{.lng} & Load the language file \tabularnewline
Yoshihisa Uchida50b03632010-02-28 10:42:56 +000062\includegraphics[width=0.37cm]{appendix/images/icon-playlist.png}
Alexander Levin90f21b32011-05-10 20:19:34 +000063 & Playlist & \fname{.m3u}, \fname{.m3u8} & Load the playlist and start playing
64 the first file \tabularnewline
Szymon Dzioka8b55892014-10-15 16:23:34 +020065\opt{iriverh10,iriverh10_5gb,sansa,mrobe100,vibe500,samsungyh}{
Yoshihisa Uchida50b03632010-02-28 10:42:56 +000066 \includegraphics[width=0.37cm]{appendix/images/icon-rolo.png}
Alexander Levin90f21b32011-05-10 20:19:34 +000067 & Rockbox firmware & \fname{.mi4} & Load the new firmware with ROLO \tabularnewline
Yoshihisa Uchida50b03632010-02-28 10:42:56 +000068}
69\opt{player}{
70 \includegraphics[width=0.37cm]{appendix/images/icon-rolo.png}
Alexander Levin90f21b32011-05-10 20:19:34 +000071 & Rockbox firmware & \fname{.mod} & Load the new firmware with ROLO \tabularnewline
Yoshihisa Uchida50b03632010-02-28 10:42:56 +000072}
73\opt{masd,masf}{
74 \includegraphics[width=0.37cm]{appendix/images/icon-audio-file.png}
Alexander Levin90f21b32011-05-10 20:19:34 +000075 & Audio file & \fname{.mp2}, \fname{.mp3} & Start playing the file and show the WPS\tabularnewline
Yoshihisa Uchida50b03632010-02-28 10:42:56 +000076}
77\opt{swcodec}{
78 \includegraphics[width=0.37cm]{appendix/images/icon-movie-file.png}
Alexander Levin90f21b32011-05-10 20:19:34 +000079 & Video & \fname{.mpg}, \fname{.mpeg}, \fname{.mpv}, \fname{.m2v} & Play the MPEG1/2 video \tabularnewline
Yoshihisa Uchida50b03632010-02-28 10:42:56 +000080}
81\includegraphics[width=0.37cm]{appendix/images/icon-rock.png}
Alexander Levin90f21b32011-05-10 20:19:34 +000082 & Plugin & \fname{.rock} & Start the plugin\tabularnewline
Yoshihisa Uchida50b03632010-02-28 10:42:56 +000083\opt{masf}{\opt{lcd_bitmap}{
84 \includegraphics[width=0.37cm]{appendix/images/icon-movie-file.png}
Alexander Levin90f21b32011-05-10 20:19:34 +000085 & Rockbox Video & \fname{.rvf} & View the movie (Rockbox format)\tabularnewline}
Yoshihisa Uchida50b03632010-02-28 10:42:56 +000086}
87\opt{sansaAMS}{
88 \includegraphics[width=0.37cm]{appendix/images/icon-rolo.png}
Alexander Levin90f21b32011-05-10 20:19:34 +000089 & Rockbox firmware & \fname{.sansa} & Load the new firmware with ROLO \tabularnewline
Yoshihisa Uchida50b03632010-02-28 10:42:56 +000090}
91\includegraphics[width=0.37cm]{appendix/images/icon-text.png}
Alexander Levin90f21b32011-05-10 20:19:34 +000092 & Text File & \fname{.txt} & Display the text file using the text viewer plugin\tabularnewline
Yoshihisa Uchida50b03632010-02-28 10:42:56 +000093\opt{archos}{
94 \includegraphics[width=0.37cm]{appendix/images/icon-ucl.png}
Alexander Levin90f21b32011-05-10 20:19:34 +000095 & Flash Image & \fname{.ucl} & Flash the Rockbox image into the ROM \tabularnewline
Yoshihisa Uchida50b03632010-02-28 10:42:56 +000096 }
Alexander Levin90f21b32011-05-10 20:19:34 +000097 & Voice file & \fname{.voice} & Allow Rockbox to speak menus\tabularnewline
Yoshihisa Uchida50b03632010-02-28 10:42:56 +000098\opt{masf}{
99 \includegraphics[width=0.37cm]{appendix/images/icon-wav-file.png}
Alexander Levin90f21b32011-05-10 20:19:34 +0000100 & Wave Audio File & \fname{.wav} & Play the WAV file \tabularnewline%
Yoshihisa Uchida50b03632010-02-28 10:42:56 +0000101}
102\includegraphics[width=0.37cm]{appendix/images/icon-wps.png}
Alexander Levin90f21b32011-05-10 20:19:34 +0000103 & While Playing Screen & \fname{.wps} & Load the new WPS display configuration\tabularnewline
Alexander Levinfb87e892009-08-24 21:22:18 +0000104\end{rbtabular}
Dominik Riebeling251e5192006-08-02 17:21:38 +0000105
Nils Wallméniusa7210832008-08-11 22:47:17 +0000106\opt{swcodec}{
Andree Buschmann0101c702011-05-17 20:50:26 +0000107 \chapter{Audio and metadata formats}
Nils Wallméniusa7210832008-08-11 22:47:17 +0000108 \section{\label{ref:Supportedaudioformats}Supported audio formats}
Alexander Levin6a62e222010-03-01 21:10:04 +0000109 \subsection{Lossy Codecs}
Alexander Levin90f21b32011-05-10 20:19:34 +0000110 \begin{rbtabular}{\textwidth}{l>{\raggedright}p{6em}X}%
Alexander Levinfb87e892009-08-24 21:22:18 +0000111 {\textbf{Format} & \textbf{Extension} & \textbf{Notes}}{}{}
Andree Buschmann0101c702011-05-17 20:50:26 +0000112 ATSC A/52 (AC3)
113 & \fname{.a52}, \fname{.ac3}, \fname{.rm}, \fname{.ra}, \fname{.rmvb}
114 & Supports downmixing for playback of 5.1 streams in stereo\\
115 ADX
116 & \fname{.adx}
Andree Buschmannbdaac8b2011-11-29 20:36:11 +0000117 & Encrypted ADX is not supported.\\
Andree Buschmann0101c702011-05-17 20:50:26 +0000118 Advanced Audio Coding
119 & \fname{.m4a}, \fname{.m4b}, \fname{.mp4}, \fname{.rm}, \fname{.ra}, \fname{.rmvb}
120 \nopt{clipv1,c200v2}{
121 & Supports AAC-LC, -HEv1, and -HEv2 profiles\\}
122 \opt{clipv1,c200v2}{ % low memory targets (CODEC_SIZE <= 512 KB)
123 & Supports AAC-LC profile\\}
124 MPEG audio
125 & \fname{.mpa}, \fname{.mp1}, \fname{.mp2}, \fname{.mp3}
126 & MPEG 1/2/2.5 Layer 1/2/3\\
127 Musepack
128 & \fname{.mpc}
129 & Supports SV7 and SV8 in mono/stereo \\
130 OGG/Vorbis
131 & \fname{.ogg}, \fname{.oga}
132 & Playback of some old ``floor 0'' files may fail on low memory targets.
133 Files with album art larger than available RAM will be skipped.
134 Chained Ogg files are not supported.\\
135 Sony Audio
136 & \fname{.oma}, \fname{.aa3}, \fname{.rm}, \fname{.ra}, \fname{.rmvb}
137 & Supports ATRAC3\\
138 RealAudio
139 & \fname{.rm}, \fname{.ra}, \fname{.rmvb}
140 & Supports RealAudio G2 (Cook)\\
141 Speex
142 & \fname{.spx}
143 & \\
144 Dialogic telephony type
145 & \fname{.vox}
146 & \\
147 Windows Media Audio Standard
148 & \fname{.wma}, \fname{.wmv}, \fname{.asf}
149 & \\
150 Windows Media Audio Professional
151 & \fname{.wma}, \fname{.wmv}, \fname{.asf}
152 & \\
Yoshihisa Uchida50b03632010-02-28 10:42:56 +0000153 \end{rbtabular}
Andree Buschmann0101c702011-05-17 20:50:26 +0000154
155 \note{AAC-HE profiles might not play in realtime on all devices due to CPU
156 performance requirements.}
Yoshihisa Uchida50b03632010-02-28 10:42:56 +0000157
Alexander Levin6a62e222010-03-01 21:10:04 +0000158 \subsection{Lossless Codecs}
Yoshihisa Uchida50b03632010-02-28 10:42:56 +0000159 \begin{rbtabular}{\textwidth}{lp{6em}X}%
160 {\textbf{Format} & \textbf{Extension} & \textbf{Notes}}{}{}
Andree Buschmann0101c702011-05-17 20:50:26 +0000161 Audio Interchange File Format
162 & \fname{.aif}, \fname{.aiff}
163 & Linear PCM 8/16/24/32 bit, IEEE float 32/64 bit, ITU-T G.711 a-law/$\mu$-law,
164 QuickTime IMA ADPCM\\
165 Monkey's Audio
166 & \fname{.ape}, \fname{.mac}
Marianne Arnold892cc662011-05-20 05:50:01 +0000167 &
Andree Buschmann0101c702011-05-17 20:50:26 +0000168 \opt{gigabeatf,iriverh100,iriverh300,iaudiox5,iaudiom5,iaudiom3,ipodnano2g,clipv1}{
Marianne Arnold892cc662011-05-20 05:50:01 +0000169 -c1000 to -c3000 files decode fast enough to be useful.}
170 \opt{gigabeats}{}
Szymon Dzioka8b55892014-10-15 16:23:34 +0200171 \opt{ipod,iriverh10,iriverh10_5gb,mrobe100,sansa,vibe500,samsungyh}{
Andree Buschmann271fdb62011-05-20 06:30:22 +0000172 \nopt{ipodnano2g}{Only -c1000 files decode fast enough to be useful.}}
Marianne Arnold892cc662011-05-20 05:50:01 +0000173 \\
Andree Buschmann0101c702011-05-17 20:50:26 +0000174 Sun Audio
175 & \fname{.au}, \fname{.snd}
176 & Linear PCM 8/16/24/32 bit, IEEE float 32/64 bit, ITU-T G.711 a-law/$\mu$-law\\
177 Free Lossless Audio
178 & \fname{.flac}
Andree Buschmann5b8ed622011-12-14 18:02:57 +0000179 & Supports multichannel playback including downmixing to stereo.\\
Andree Buschmann0101c702011-05-17 20:50:26 +0000180 Apple Lossless
181 & \fname{.m4a}, \fname{.mp4}
182 & \\
183 Shorten
184 & \fname{.shn}
185 & Seeking not supported.\\
186 True Audio
187 & \fname{.tta}
188 & \\
189 Wave64
190 & \fname{.w64}
191 & Supports same formats as Waveform audio format.\\
192 Waveform audio format
193 & \fname{.wav}
194 & Linear PCM 8/16/24/32 bit, IEEE float 32/64 bit, ITU-T G.711 a-law/$\mu$-law,
195 Microsoft ADPCM, Intel DVI ADPCM (IMA ADPCM) 2/3/4/5 bit, Dialogic OKI ADPCM,
196 YAMAHA ADPCM, Adobe SWF ADPCM\\
197 Wavpack
198 & \fname{.wv}
199 & \\
Yoshihisa Uchida50b03632010-02-28 10:42:56 +0000200 \end{rbtabular}
Andree Buschmann5b8ed622011-12-14 18:02:57 +0000201
202 \note{Free Lossless Audio multichannel tracks may not play in realtime on all devices due to CPU
203 performance requirements.}
Yoshihisa Uchida50b03632010-02-28 10:42:56 +0000204
Alexander Levin6a62e222010-03-01 21:10:04 +0000205 \subsection{Other Codecs}
Alexander Levin90f21b32011-05-10 20:19:34 +0000206 \begin{rbtabular}{\textwidth}{l>{\raggedright}p{6em}X}%
Yoshihisa Uchida50b03632010-02-28 10:42:56 +0000207 {\textbf{Format} & \textbf{Extension} & \textbf{Notes}}{}{}
Andree Buschmann0101c702011-05-17 20:50:26 +0000208 Atari Sound Format
209 & \fname{.cmc}, \fname{.cm3}, \fname{.cmr}, \fname{.cms}, \fname{.dmc},
210 \fname{.dlt}, \fname{.mpt}, \fname{.mpd}
211 & \\
212 Synthetic music Mobile Application Format
213 & \fname{.mmf}
214 & PCM/ADPCM only \\
Andree Buschmannacb09172011-08-07 20:01:04 +0000215 Game Boy Sound Format
216 & \fname{.gbs}
217 & Progress bar and seek use subtracks instead of seconds.\\
218 AY Sound Chip Music
219 & \fname{.ay}
220 & Progress bar and seek use subtracks instead of seconds for
221 multitrack files.\\
222 Hudson Entertainment System Sound Format
223 & \fname{.hes}
224 & Progress bar and seek use subtracks instead of seconds.\\
Andree Buschmann2bd24902011-08-07 21:12:21 +0000225 \nopt{clipv1,c200v2}{
Andree Buschmannacb09172011-08-07 20:01:04 +0000226 MSX Konami Sound System
227 & \fname{.kss}
Andree Buschmann724a2d22011-08-12 21:36:29 +0000228 & Progress bar and seek use subtracks instead of seconds.\\}
Andree Buschmannacb09172011-08-07 20:01:04 +0000229 SMS/GG/CV Sound Format
230 & \fname{.sgc}
231 & Supports Sega Master System and Game Gear Sound Format.
232 Progress bar and seek use subtracks instead of seconds.\\
233 Video Game Music Format
234 & \fname{.vgm}
235 & \\
236 Gzipped Video Game Music Format
237 & \fname{.vgz}
Andree Buschmann4d01ace2011-08-17 22:20:09 +0000238 & \\
Andree Buschmann0101c702011-05-17 20:50:26 +0000239 MOD
240 & \fname{.mod}
241 & \\
242 NES Sound Format
243 & \fname{.nsf}, \fname{.nsfe}
Andree Buschmann724a2d22011-08-12 21:36:29 +0000244 & Progress bar and seek use subtracks instead of seconds.\\
Andree Buschmann0101c702011-05-17 20:50:26 +0000245 Atari SAP
246 & \fname{.sap}
247 & \\
248 Sound Interface Device
249 & \fname{.sid}
Andree Buschmann2d403102011-05-19 20:21:48 +0000250 & Progress bar and seek use subtracks instead of seconds.\\
Andree Buschmann0101c702011-05-17 20:50:26 +0000251 SPC700
252 & \fname{.spc}
253 & \\
Alexander Levinfb87e892009-08-24 21:22:18 +0000254 \end{rbtabular}
Alexander Levin526346b2011-05-09 20:34:14 +0000255
Andree Buschmann4d01ace2011-08-17 22:20:09 +0000256 \note{NSF and VGM might not play in realtime on all devices due to CPU
257 performance requirements.}
258
Andree Buschmann2d403102011-05-19 20:21:48 +0000259 \subsection{Codec featureset}
Andree Buschmannacb09172011-08-07 20:01:04 +0000260 \begin{rbtabular}{.95\textwidth}{lXXX}%
Andree Buschmann2d403102011-05-19 20:21:48 +0000261 {\textbf{Format} & \textbf{Seek} & \textbf{Resume} & \textbf{Gapless}}{}{}
262 ATSC A/52 (AC3) & x & x & \\
263 ADX & x & & \\
Andree Buschmann78cd0c52011-05-19 21:49:25 +0000264 Advanced Audio Coding & x & x & x \\
Andree Buschmann2d403102011-05-19 20:21:48 +0000265 MPEG audio & x & x & x \\
266 Musepack & x & x & x \\
267 OGG/Vorbis & x & x & x \\
268 Sony Audio & x & x & \\
269 RealAudio & x & x & \\
270 Dialogic telephony type & x & x & \\
271 Windows Media Audio Standard & x & x & \\
272 Windows Media Audio Professional & x & x & \\
273 Audio Interchange File Format & x & x & x \\
274 Monkey's Audio & x & x & x \\
275 Sun Audio & x & x & x \\
276 Free Lossless Audio & x & x & x \\
277 Apple Lossless & x & x & x \\
278 Shorten & & & x \\
279 True Audio & x & x & x \\
280 Wave64 & x & x & x \\
281 Waveform audio format & x & x & x \\
282 Wavpack & x & x & x \\
283 Atari Sound Format & x & & \\
284 Synthetic music Mobile Application Format & x & x & \\
Andree Buschmannacb09172011-08-07 20:01:04 +0000285 Game Boy Sound Format & x & & \\
286 AY Sound Chip Music & x & & \\
287 Hudson Entertainment System Sound Format & x & & \\
288 MSX Konami Sound System & x & & \\
289 SMS/GG/CV Sound Format & x & & \\
290 Video Game Music Format & x & x & \\
291 Gzipped Video Game Music Format & x & x & \\
Andree Buschmann2d403102011-05-19 20:21:48 +0000292 MOD & x & & \\
293 NES Sound Format & x & & \\
294 Atari SAP & x & & \\
295 Sound Interface Device & x & & \\
296 SPC700 & x & & \\
297 \end{rbtabular}
298
Andree Buschmannacb09172011-08-07 20:01:04 +0000299 \note{The seek implementations of NES Sound Format, Sound Interface Device,
300 Game Boy Sound Format, AY Sound Chip Music, Hudson Entertainment System Sound,
301 Format, MSX Konami Sound System and SMS/GG/CV Sound Format use subtracks
302 instead of seconds, whereas each subtrack equals a second.}
Andree Buschmann2d403102011-05-19 20:21:48 +0000303
Alexander Levin526346b2011-05-09 20:34:14 +0000304 \section{\label{ref:SupportedMetadata}Supported metadata tags}
305 Rockbox supports different metadata formats. In general those tag formats
Andree Buschmann0101c702011-05-17 20:50:26 +0000306 are ID3 (v1.0, v1.1, v2.2, v2.3 and v2.4), APE (v1 and v2), Vorbis, MP4 and
307 ASF. Few codecs use codec specific tags, several codecs do not use any tags
308 yet. The following table gives an overview about what tag types rockbox
309 supports for which audio file extension.
Alexander Levin526346b2011-05-09 20:34:14 +0000310
311 \note{There is always only \emph{one} tag type supported for each file
312 extension.}
313
314 \begin{rbtabular}{\textwidth}{lX}%
Andree Buschmann0101c702011-05-17 20:50:26 +0000315 {\textbf{Tag type} & \textbf{File extension}}{}{}
316 ID3 & \fname{.mp1}, \fname{.mpa}, \fname{.mp2}, \fname{.mp3},
317 \fname{.rm}, \fname{.ra}, \fname{.rmvb}, \fname{.tta} \\
318 APE & \fname{.mpc}, \fname{.ape}, \fname{.mac}, \fname{.wv} \\
319 Vorbis & \fname{.ogg}, \fname{.oga}, \fname{.spx}, \fname{.flac} \\
320 MP4 & \fname{.m4a}, \fname{.m4b}, \fname{.mp4} \\
321 ASF & \fname{.wma}, \fname{.wmv}, \fname{.asf} \\
322 Codec specific & \fname{.mmf}, \fname{.mod}, \fname{.nsf}, \fname{.nsfe},
Andree Buschmannacb09172011-08-07 20:01:04 +0000323 \fname{.sap}, \fname{.sid}, \fname{.spc}, \fname{.gbs},
324 \fname{.ay}, \fname{.kss}, \fname{.sgc}, \fname{.vgm} \\
Andree Buschmann0101c702011-05-17 20:50:26 +0000325 None & \fname{.a52}, \fname{.ac3}, \fname{.adx}, \fname{.oma},
326 \fname{.aa3}, \fname{.aif}, \fname{.aiff}, \fname{.au},
327 \fname{.snd}, \fname{.shn}, \fname{.vox}, \fname{.w64},
328 \fname{.wav}, \fname{.cmc}, \fname{.cm3}, \fname{.cmr},
329 \fname{.cms}, \fname{.dmc}, \fname{.dlt}, \fname{.mpt},
Andree Buschmannacb09172011-08-07 20:01:04 +0000330 \fname{.mpd}, \fname{.hes}, \fname{.vgz} \\
Alexander Levin526346b2011-05-09 20:34:14 +0000331 \end{rbtabular}
Andree Buschmann0101c702011-05-17 20:50:26 +0000332
333 \subsection{Featureset for generic metadata tags}
Frank Gevaertsfc81af92011-11-26 22:51:19 +0000334 \label{ref:featureset_for_generic_metadata_tags}
Andree Buschmannf3722122011-12-17 15:07:55 +0000335 \begin{rbtabular}{0.90\textwidth}{lXXXXX}%
Andree Buschmann0101c702011-05-17 20:50:26 +0000336 {\textbf{Feature} & \textbf{ID3} & \textbf{APE} & \textbf{Vorbis} &
337 \textbf{MP4} & \textbf{ASF}}{}{}
338 Embedded albumart \fname{.bmp} & & & & & \\
Andree Buschmann93c6f132011-08-07 15:23:57 +0000339 Embedded albumart \fname{.jpg} & x & x & & x & x \\
Andree Buschmann0101c702011-05-17 20:50:26 +0000340 Embedded albumart \fname{.png} & & & & & \\
Andree Buschmannf3722122011-12-17 15:07:55 +0000341 Embedded cuesheet & x & & x & & \\
Andree Buschmann0101c702011-05-17 20:50:26 +0000342 Replaygain information & x & x & x & x & x \\
343 Title (string) & x & x & x & x & x \\
344 Artist (string) & x & x & x & x & x \\
345 Album (string) & x & x & x & x & x \\
346 Genre (string) & x & x & x & x & x \\
347 Disc (string or number) & x & x & x & x & \\
348 Track (string or number) & x & x & x & x & x \\
349 Year (string or number) & x & x & x & x & x \\
350 Composer (string) & & x & x & x & x \\
351 Comment (string) & x & x & x & x & x \\
352 Albumartist (string) & x & x & x & x & x \\
353 Grouping (string) & & x & x & x & \\
354 \end{rbtabular}
355
Andree Buschmann93c6f132011-08-07 15:23:57 +0000356 \note{Embedded album art for ASF is limited to pictures of maximum 64 KB size.}
357
Andree Buschmann0101c702011-05-17 20:50:26 +0000358 \subsection{Featureset for codec specific metadata}
359 \begin{rbtabular}{\textwidth}{lX}%
360 {\textbf{Feature} & \textbf{Codec specific metadata (file extension)}}{}{}
361 Embedded \fname{.bmp} & None \\
362 Embedded \fname{.jpg} & None \\
363 Embedded \fname{.png} & None \\
364 Replaygain & \fname{.mpc}\\
365 Title & \fname{.tta}, \fname{.spc}, \fname{.mmf}, \fname{.sid},
366 \fname{.rm}, \fname{.ra}, \fname{.rmvb}, \fname{.nsf},
Andree Buschmannacb09172011-08-07 20:01:04 +0000367 \fname{.nsfe}, \fname{.mod}, \fname{.sap}, \fname{.gbs},
368 \fname{.ay}, \fname{.sgc}, \fname{.vgm} \\
Andree Buschmann0101c702011-05-17 20:50:26 +0000369 Artist & \fname{.tta}, \fname{.spc}, \fname{.mmf}, \fname{.sid},
370 \fname{.rm}, \fname{.ra}, \fname{.rmvb}, \fname{.nsf},
Andree Buschmannacb09172011-08-07 20:01:04 +0000371 \fname{.nsfe}, \fname{.sap}, \fname{.gbs}, \fname{.ay},
372 \fname{.sgc}, \fname{.vgm} \\
373 Album & \fname{.spc}, \fname{.sid}, \fname{.nsf}, \fname{.nsfe},
374 \fname{.gbs}, \fname{.ay}, \fname{.sgc}, \fname{.vgm} \\
Andree Buschmann0101c702011-05-17 20:50:26 +0000375 Genre & \fname{.tta}, \fname{.spc}, \fname{.sap} \\
376 Disc & \fname{.tta} \\
377 Track & \fname{.tta} \\
378 Year & \fname{.spc}, \fname{.sid}, \fname{.sap} \\
379 Composer & \fname{.mmf} \\
Andree Buschmannacb09172011-08-07 20:01:04 +0000380 Comment & \fname{.spc}, \fname{.rm}, \fname{.ra}, \fname{.rmvb},
381 \fname{.vgm} \\
Andree Buschmann0101c702011-05-17 20:50:26 +0000382 Albumartist & None \\
383 Grouping & None \\
384 \end{rbtabular}
385
386 \subsection{Limitations of metadata handling}
387 \begin{enumerate}
388 \item Multiple tags (e.g. for Genre) are not supported. The first tag
389 item of a set of multiple tags is used.
390 \item Only one tag type is supported for each audio format.
391 \nopt{clipv1,c200v2}{
392 \item Overall there are 900 bytes available to load metadata strings.
393 \item The maximum size of each metadata item (e.g. Artists) is limited
394 to 240 bytes.
395 }
396 \opt{clipv1,c200v2}{
397 \item Overall there are 300 bytes available to load metadata strings.
398 \item The maximum size of each metadata item (e.g. Artists) is limited
399 to 90 bytes.
400 }
401 \end{enumerate}
Nils Wallméniusa7210832008-08-11 22:47:17 +0000402}