IPB

Welcome Guest ( Log In | Register )

5 Pages V  < 1 2 3 4 > »   
Reply to this topicStart new topic
Apple Lossless Audio Codec is now open source (Apache license)
Justin Ruggles
post Oct 28 2011, 20:21
Post #26





Group: Developer
Posts: 165
Joined: 3-June 06
From: Raleigh, NC
Member No.: 31393



QUOTE (saratoga @ Oct 28 2011, 14:42) *
QUOTE (Justin Ruggles @ Oct 28 2011, 14:36) *
QUOTE (saratoga @ Oct 28 2011, 13:51) *
QUOTE
Yes, but they're reverse-engineered codecs that are incomplete and not 100% compliant due to unknown or little-known syntax elements.


Source? I haven't heard of this.

You mean you want to see the source code? Or what is the source of this information?

If you mean the latter, the source is me. smile.gif I mentored the Google Summer of Code student who implemented the FFmpeg ALAC encoder a few years ago.


No I mean a source for files that the current decoder cannot handle due to unknown syntax elements?

Any 5.1-channel or 32-bit file, for example. I think someone did figure out correct 5.1 behavior, but it hasn't been implemented in FFmpeg/Libav at this point. Also, there could be breakages that haven't been reported. At any rate, the reverse-engineered decoder did do a pretty good job of handling the vast majority of files, but having a complete implementation will be nice.
Go to the top of the page
+Quote Post
benski
post Oct 28 2011, 20:42
Post #27


Winamp Developer


Group: Developer
Posts: 670
Joined: 17-July 05
From: Brooklyn, NY
Member No.: 23375



QUOTE (saratoga @ Oct 28 2011, 14:42) *
No I mean a source for files that the current decoder cannot handle due to unknown syntax elements?

Reason for edit: deleting unnecessary full quotation of above post


I've worked with and made changes / submitted changes to the crazney.net decoder and can definitely confirm that there are things that it doesn't handle correctly. I plan on updating it based on the newly released code.
Go to the top of the page
+Quote Post
googlebot
post Oct 28 2011, 21:25
Post #28





Group: Members
Posts: 698
Joined: 6-March 10
Member No.: 78779



Webkit was a BSD and LGPL project. So Apple did not have to contribute anything to be allowed to take from it. It was a great project with good modularization and performance to begin with, but Apple's high quality contributions were really a significant reason for its take-off.
Go to the top of the page
+Quote Post
kwanbis
post Oct 28 2011, 21:31
Post #29





Group: Developer (Donating)
Posts: 2362
Joined: 28-June 02
From: Argentina
Member No.: 2425



Ok, then, so, what harm does it makes?


--------------------
MAREO: http://www.webearce.com.ar
Go to the top of the page
+Quote Post
kornchild2002
post Oct 29 2011, 01:37
Post #30





Group: Members
Posts: 2068
Joined: 8-April 05
From: Cincinnati, OH
Member No.: 21277



QUOTE (slothropean @ Oct 27 2011, 17:03) *
So does this mean Apple is finally going to start offering lossless for sale on the iTunes store?


I highly doubt Apple is going to start offering ALAC content in the iTunes Store mainly because they are about to turn the switch on for iTunes Match and that deals with lossy (256kbps AAC) audio only. I just don't see Apple starting one lossy service only to startup a lossless one in a short amount of time. If anything, Apple is just pushing their format beyond the constraints of their own software. Sure, third part encoders and decoders exist but now users can rely on code directly from Apple instead of using something that may not be completely solid (dBpowerAMP's early implementation of their own ALAC encoder is a prime example). Leave it up to people on the internet to either blindly stamp on everything Apple does only to chock it up to them trying to take over the world or mindlessly praising it as if everything from them is a gift. I think this walks somewhere in the middle. Yes, Apple obviously has their reasoning which will never truly get out but the positive is that the most popular portable audio player line, the most popular slate tablet, and one of the most popular smartphones out there all work with this and now others can take advantage of Apple's ALAC implementation without reverse engineering.
Go to the top of the page
+Quote Post
funkyblue
post Oct 29 2011, 04:55
Post #31





Group: Members
Posts: 322
Joined: 28-November 01
From: South Australia
Member No.: 555



I'd presume if any hardware or software that has FLAC support would add Apple Lossless support now.
Can only be good.

I personally hope for lossless iTunes. Now that would be amazing!
Go to the top of the page
+Quote Post
Garf
post Oct 29 2011, 12:08
Post #32


Server Admin


Group: Admin
Posts: 4883
Joined: 24-September 01
Member No.: 13



QUOTE (googlebot @ Oct 28 2011, 22:25) *
Webkit was a BSD and LGPL project. So Apple did not have to contribute anything to be allowed to take from it.


You have been reading too much Apple propaganda.

The core components (rendering, DOM, JavaScript) were LGPL only, forcing Apple to at the very least publish the changes they needed to make to those components. The things that were BSD were stuff like the debugger and the benchmarks, i.e. the stuff that nobody cares about.

Apple published their changes to WebKit because they legally had no other choice.

Having to publish the changes to Webkit hurt Apple a lot because it allowed Google an easier entry into the browser market. You really think Apple voluntary helped one of their biggest competitors?
Go to the top of the page
+Quote Post
galad
post Oct 29 2011, 13:04
Post #33





Group: Members
Posts: 3
Joined: 31-December 09
Member No.: 76542



Yes, Apple needed to publish their changes, but they could have continued to send out some massive diff files every new Safari release (with no description of what changed, how or why), like they used to do, instead of creating a public website for webkit development, a public svn repository, a community around it and accepting contribution by third-parts.

So it's a bit hypocrite to criticize Apple and Webkit by saying that they were just obliged to do what they did.
Go to the top of the page
+Quote Post
nu774
post Oct 29 2011, 16:43
Post #34





Group: Developer
Posts: 514
Joined: 22-November 10
From: Japan
Member No.: 85902



It seems Apple's reference implementation gives incorrect magic cookie on little endian host.
In function ALACEncoder::GetMagicCookie():
CODE
theChannelLayout.mChannelLayoutTag = ALACChannelLayoutTags[theConfig.numChannels - 1];
--snip---
memcpy(theCookiePointer, &theChannelLayout, sizeof(ALACAudioChannelLayout));

In the upper line, mChannelLayoutTag is set without endian conversion, then it's just copied to the magic cookie buffer.
Probably this is not what they meant, since ALACSpecificConfig part is converted to big-endian.
Go to the top of the page
+Quote Post
Justin Ruggles
post Oct 29 2011, 17:44
Post #35





Group: Developer
Posts: 165
Joined: 3-June 06
From: Raleigh, NC
Member No.: 31393



QUOTE (nu774 @ Oct 29 2011, 11:43) *
It seems Apple's reference implementation gives incorrect magic cookie on little endian host.
In function ALACEncoder::GetMagicCookie():
CODE
theChannelLayout.mChannelLayoutTag = ALACChannelLayoutTags[theConfig.numChannels - 1];
--snip---
memcpy(theCookiePointer, &theChannelLayout, sizeof(ALACAudioChannelLayout));

In the upper line, mChannelLayoutTag is set without endian conversion, then it's just copied to the magic cookie buffer.
Probably this is not what they meant, since ALACSpecificConfig part is converted to big-endian.

You should register at macosforge and send them a bug report.
Go to the top of the page
+Quote Post
nu774
post Oct 29 2011, 17:51
Post #36





Group: Developer
Posts: 514
Joined: 22-November 10
From: Japan
Member No.: 85902



Hi,
In fact, I registered and tried it, only to see the server error like this;
QUOTE
Traceback (most recent call last):
File "/opt/local/Library/Frameworks/Python.framework/Versions/2.6/lib/python2.6/site-packages/trac/web/api.py", line 376, in send_error
'text/html')
File "/opt/local/Library/Frameworks/Python.framework/Versions/2.6/lib/python2.6/site-packages/trac/web/chrome.py", line 733, in render_template
message = req.session.pop('chrome.%s.%d' % (type_, i))
File "/opt/local/Library/Frameworks/Python.framework/Versions/2.6/lib/python2.6/site-packages/trac/web/api.py", line 195, in __getattr__
value = self.callbacks[name](self)
File "/opt/local/Library/Frameworks/Python.framework/Versions/2.6/lib/python2.6/site-packages/trac/web/main.py", line 265, in _get_session
return Session(self.env, req)
File "/opt/local/Library/Frameworks/Python.framework/Versions/2.6/lib/python2.6/site-packages/trac/web/session.py", line 162, in __init__
self.get_session(req.authname, authenticated=True)
File "/opt/local/Library/Frameworks/Python.framework/Versions/2.6/lib/python2.6/site-packages/trac/web/session.py", line 178, in get_session
super(Session, self).get_session(sid, authenticated)
File "/opt/local/Library/Frameworks/Python.framework/Versions/2.6/lib/python2.6/site-packages/trac/web/session.py", line 59, in get_session
(sid, int(authenticated)))
File "/opt/local/Library/Frameworks/Python.framework/Versions/2.6/lib/python2.6/site-packages/trac/db/util.py", line 64, in execute
return self.cursor.execute(sql_escape_percent(sql), args)
File "/opt/local/Library/Frameworks/Python.framework/Versions/2.6/lib/python2.6/site-packages/trac/db/util.py", line 64, in execute
return self.cursor.execute(sql_escape_percent(sql), args)
InternalError: current transaction is aborted, commands ignored until end of transaction block
Go to the top of the page
+Quote Post
Justin Ruggles
post Oct 29 2011, 18:33
Post #37





Group: Developer
Posts: 165
Joined: 3-June 06
From: Raleigh, NC
Member No.: 31393



QUOTE (nu774 @ Oct 29 2011, 12:51) *
In fact, I registered and tried it, only to see the server error like this;
QUOTE
Traceback (most recent call last):
File "/opt/local/Library/Frameworks/Python.framework/Versions/2.6/lib/python2.6/site-packages/trac/web/api.py", line 376, in send_error
'text/html')
(snip)
InternalError: current transaction is aborted, commands ignored until end of transaction block


That's unfortunate. Maybe someone should keep a mirror repo until Apple provides a non-broken way to communicate bugs.

edit: or email one of the people who made the initial git commits

This post has been edited by Justin Ruggles: Oct 29 2011, 18:37
Go to the top of the page
+Quote Post
Aramys
post Nov 1 2011, 10:00
Post #38





Group: Members
Posts: 5
Joined: 10-May 08
Member No.: 53408



Great news, I trully hope this move from Apple means they will now switch to HD-AAC, at last !
Go to the top of the page
+Quote Post
LosMintos
post Nov 1 2011, 13:40
Post #39





Group: Members
Posts: 37
Joined: 30-January 08
Member No.: 50912



QUOTE (kwanbis @ Oct 28 2011, 20:13) *
A LOT of us have ipods/ipads/iphones, and they only use ALAC, not FLAC.

This IS good news.
It would have been really good news, if they had added FLAC support to those devices.
Go to the top of the page
+Quote Post
Garf
post Nov 1 2011, 15:29
Post #40


Server Admin


Group: Admin
Posts: 4883
Joined: 24-September 01
Member No.: 13



QUOTE (Aramys @ Nov 1 2011, 11:00) *
Great news, I trully hope this move from Apple means they will now switch to HD-AAC, at last !


ALAC doesn't have anything to do with HD-AAC.
Go to the top of the page
+Quote Post
Garf
post Nov 1 2011, 15:37
Post #41


Server Admin


Group: Admin
Posts: 4883
Joined: 24-September 01
Member No.: 13



QUOTE (galad @ Oct 29 2011, 14:04) *
Yes, Apple needed to publish their changes, but they could have continued to send out some massive diff files every new Safari release (with no description of what changed, how or why), like they used to do, instead of creating a public website for webkit development, a public svn repository, a community around it and accepting contribution by third-parts.

So it's a bit hypocrite to criticize Apple and Webkit by saying that they were just obliged to do what they did.


I pointed out your claims regarding the LGPL were false, and that Apple is legally compelled to produce the modified sources. That makes me a hypocrite?

You *are* correct in saying that Apple provided their changes in the most unproductive way possible until they started getting massive community backlash against it, and the associated bad publicity.
Go to the top of the page
+Quote Post
Aramys
post Nov 1 2011, 15:57
Post #42





Group: Members
Posts: 5
Joined: 10-May 08
Member No.: 53408



QUOTE (Garf @ Nov 1 2011, 15:29) *
QUOTE (Aramys @ Nov 1 2011, 11:00) *
Great news, I trully hope this move from Apple means they will now switch to HD-AAC, at last !


ALAC doesn't have anything to do with HD-AAC.


Where do you read that ALAC as something to do with HD-AAC in my post? huh.gif

Apple making gifts to the community is just so strange. I hope it means they drop ALAC to use another (very promising) tech to sell lossless on iTunes.

This post has been edited by Aramys: Nov 1 2011, 16:17
Go to the top of the page
+Quote Post
googlebot
post Nov 1 2011, 18:36
Post #43





Group: Members
Posts: 698
Joined: 6-March 10
Member No.: 78779



I'm pretty sure that Apple has something coming for lossless mid- to long-term. They have no track record for releasing open source projects, that would else end up in the trash (or transition to pure maintenance mode), without ulterior motives.

I'd think that they wait a while until there is broader, ~100% compatible support and then launch a new offer, with a decreased risk that half of the blogosphere cries "nice, but why not FLAC FFS?".
Go to the top of the page
+Quote Post
Aramys
post Nov 1 2011, 19:47
Post #44





Group: Members
Posts: 5
Joined: 10-May 08
Member No.: 53408



All Apple devices or whatever other brand devices able to play AAC files are compatible with HD-AAC (they'll only play the "core" lossy AAC-LC part of the file). Maybe Apple sees that ALAC will never be adopted by other makers so now could be the time to use an ISO standard, licensed technology, which is also highly compatible with the current iTunes catalog. Time will tell.
Go to the top of the page
+Quote Post
kwanbis
post Nov 1 2011, 19:51
Post #45





Group: Developer (Donating)
Posts: 2362
Joined: 28-June 02
From: Argentina
Member No.: 2425



QUOTE (LosMintos @ Nov 1 2011, 13:40) *
It would have been really good news, if they had added FLAC support to those devices.

Well, LOSSLESS is LOSSLESS, so the good thing is that you can now reencode from FLAC to ALAC at the time of transfer.


--------------------
MAREO: http://www.webearce.com.ar
Go to the top of the page
+Quote Post
saratoga
post Nov 1 2011, 19:57
Post #46





Group: Members
Posts: 4866
Joined: 2-September 02
Member No.: 3264



QUOTE (kwanbis @ Nov 1 2011, 14:51) *
QUOTE (LosMintos @ Nov 1 2011, 13:40) *
It would have been really good news, if they had added FLAC support to those devices.

Well, LOSSLESS is LOSSLESS, so the good thing is that you can now reencode from FLAC to ALAC at the time of transfer.



You've been able to do this for years now.
Go to the top of the page
+Quote Post
kwanbis
post Nov 1 2011, 20:07
Post #47





Group: Developer (Donating)
Posts: 2362
Joined: 28-June 02
From: Argentina
Member No.: 2425



QUOTE (saratoga @ Nov 1 2011, 19:57) *
You've been able to do this for years now.

Right. But now with an official encoder.


--------------------
MAREO: http://www.webearce.com.ar
Go to the top of the page
+Quote Post
saratoga
post Nov 1 2011, 20:11
Post #48





Group: Members
Posts: 4866
Joined: 2-September 02
Member No.: 3264



QUOTE (kwanbis @ Nov 1 2011, 15:07) *
QUOTE (saratoga @ Nov 1 2011, 19:57) *
You've been able to do this for years now.

Right. But now with an official encoder.


Yes, but my point is that if you're transcoding from FLAC having an official encoder changes nothing.
Go to the top of the page
+Quote Post
kwanbis
post Nov 1 2011, 20:32
Post #49





Group: Developer (Donating)
Posts: 2362
Joined: 28-June 02
From: Argentina
Member No.: 2425



QUOTE (saratoga @ Nov 1 2011, 20:11) *
Yes, but my point is that if you're transcoding from FLAC having an official encoder changes nothing.

Au contraire! It makes me sure that the ALAC i get would be totally official an 100% compatible.


--------------------
MAREO: http://www.webearce.com.ar
Go to the top of the page
+Quote Post
saratoga
post Nov 1 2011, 20:48
Post #50





Group: Members
Posts: 4866
Joined: 2-September 02
Member No.: 3264



QUOTE (kwanbis @ Nov 1 2011, 15:32) *
QUOTE (saratoga @ Nov 1 2011, 20:11) *
Yes, but my point is that if you're transcoding from FLAC having an official encoder changes nothing.

Au contraire! It makes me sure that the ALAC i get would be totally official an 100% compatible.


Well ok it changes nothing from an audio stand point. The warm fuzzy feeling you get is up to you smile.gif
Go to the top of the page
+Quote Post

5 Pages V  < 1 2 3 4 > » 
Reply to this topicStart new topic
1 User(s) are reading this topic (1 Guests and 0 Anonymous Users)
0 Members:

 



RSS Lo-Fi Version Time is now: 31st July 2014 - 20:04