<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<!-- Copyright (c) 2000,2001,2002,2003,2004,2005,2006,2007  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 http-equiv="Content-Type" content="text/html; charset=ISO-8859-1" />
	<meta name="author" content="Josh Coalson" />
	<meta name="description" content="A free, open source codec for lossless audio compression and decompression" />
	<meta name="keywords" content="free,lossless,audio,codec,encoder,decoder,compression,compressor,archival,archive,archiving,backup,music" />
	<link rel="shortcut icon" type="image/x-icon" href="favicon.ico" />
	<link rel="stylesheet" type="text/css" href="flac.css" />
	<title>FLAC - itunes</title>
</head>

<body>

<div class="logo">
	<a href="http://flac.sourceforge.net/"><img src="images/logo130.gif" alt="FLAC Logo" align="middle" border="0" hspace="0" /></a>
</div>

<div class="above_nav"></div>

<div class="navbar">
	&nbsp;<a href="index.html">home</a>&nbsp;&nbsp;|
	&nbsp;<a href="faq.html">faq</a>&nbsp;&nbsp;|
	&nbsp;<a href="news.html">news</a>&nbsp;&nbsp;|
	&nbsp;<a href="download.html">download</a>&nbsp;&nbsp;|
	&nbsp;<a href="documentation.html">documentation</a>&nbsp;&nbsp;|
	&nbsp;<a href="comparison.html">comparison</a>&nbsp;&nbsp;|
	&nbsp;<a href="changelog.html">changelog</a>&nbsp;&nbsp;|
	&nbsp;<a href="links.html">links</a>&nbsp;&nbsp;|
	&nbsp;<a href="developers.html">developers</a>&nbsp;
</div>

<div class="langbar">
	&nbsp;english&nbsp;&nbsp;|
	&nbsp;russian&nbsp;
</div>

<div class="below_nav"></div>

<div class="box">
	<div class="box_title">
		flac + itunes
	</div>
	<div class="box_header"></div>
	<div class="box_body">
		Would you like iTunes to support FLAC?  So would we!<br />
		<br />
		Due to the design of iTunes, only Apple can add support for FLAC <a href="#footnote1">[1]</a>.  And why wouldn't they?  FLAC usage is accelerating, <a href="links.html#music">many bands</a> like Pearl Jam, Phish, Dave Matthews Band, Metallica -- the same hip, influential people whose fans Apple courts -- are already distributing music in FLAC format, and users are clamoring for it in the iTunes forums:<br />
		<ul style="list-style-type: none">
			<li><a href="http://discussions.apple.com/thread.jspa?messageID=784174&amp;#784174">[2]</a> <i>"I have seen a lot of people on live music message boards turn away from the iPod because there are other music players that support FLAC. I am on the verge... and I am an Apple die-hard!"</i></li>
			<li><a href="http://discussions.apple.com/thread.jspa?messageID=799873&amp;#799873">[3]</a> <i>"If your source material is FLAC (as many bands have gone this way to distribute online music) your choice is to use another music player ..."</i></li>
			<li><a href="http://discussions.apple.com/search.jspa?threadID=&amp;q=flac&amp;objID=c149&amp;dateRange=all&amp;userID=&amp;numResults=30">[4]</a> (many more requests)</li>
		</ul>
		Make your voice heard!  <a href="http://www.apple.com/feedback/itunesapp.html">Fill out the iTunes feedback form</a> (politely!) and let them know.  Feel free to also direct them to this page.  We at the FLAC project <a href="developers.html">stand ready to help</a> as well.<br />
		<br />
		<br />
		<br />
		<a name="footnote1" />[1] <a href="http://xiph.org/quicktime">XiphQT</a>, through tremendous effort by developers, goes as far as possible in allowing some playback capability via QuickTime.  But proper iTunes support -- tag handling, no import delays, etc. -- is not possible without Apple.<br />
	</div>
	<div class="box_footer"></div>
</div>


<div class="copyright">
	<!-- @@@ oh so hacky -->
	<table>
		<tr>
			<td align="left">
				Copyright (c) 2000,2001,2002,2003,2004,2005,2006,2007  Josh Coalson
			</td>
			<td width="1%" align="right">
				<a href="http://sourceforge.net"><img src="http://sflogo.sourceforge.net/sflogo.php?group_id=13478&amp;type=1" width="88" height="31" border="0" alt="SourceForge.net Logo" /></a>
			</td>
			<td width="1%" align="right">
				<a href="http://www.eff.org/cafe/"><img src="images/cafebug.gif" alt="CAFE Logo" border="0" /></a><br />
			</td>
			<td width="1%" align="right">
				<a href="http://validator.w3.org/check?uri=referer"><img src="http://www.w3.org/Icons/valid-xhtml10" alt="Valid XHTML 1.0!" height="31" width="88" border="0" hspace="0" /></a>
			</td>
		</tr>
	</table>
</div>

</body>
</html>
