Playing iTunes Protected AAC files is VLC

For questions and discussion that is NOT (I repeat NOT) specific to a certain Operating System.
potuncle

Playing iTunes Protected AAC files is VLC

Postby potuncle » 06 Jan 2004 04:49

Ok, so now that code has been released to be able to play iTunes Music Store Protected AAC files in VLC, how do I do so? If you haven't heard about this code see this article.

The link at the bottom of the article goes to the CVS directory where the code is. I am not a developer and am not sure how to compile that code and use it. From what the article says, I need to run VLC in Windows to create a user key and then copy that to my linux box.

If anyone could please clarify this process it would be much appreciated. Basically I need to know how do I compile this code on Windows? On Linux, do I just do a make and then make install? Where is this user key created on my Windows disk, and where should I put it on my Linux disk?

Any help is appreciated.

Thanks,

Jason

Murray
Blank Cone
Blank Cone
Posts: 74
Joined: 24 Nov 2003 22:28
Location: Denmark, Mexico, Brazil, USA, France, Italy
Contact:

Postby Murray » 06 Jan 2004 09:57

Windows nightly builds are available at
http://vthr.via.ecp.fr/~videolan/build/win32/

The rest of the procedure is quite well explained in the article, IMHO.

--
Carlo
Last edited by Murray on 08 Jan 2004 15:05, edited 1 time in total.

potuncle

Still cannot play protected AAC files in VLC

Postby potuncle » 08 Jan 2004 01:21

OK, I downloaded and am running vlc-0.7.1-cvs-20040107 on WinXP and trying to get a user key created so I can play an iTunes Music Store file I purchased on a Linux computer.

Does iTunes for Windows need to be installed on the computer I am running VLC on to create my user key? If so, does this computer need to be activated in iTunes?

BTW, the protected AAC files I am trying to play were purchased by me on my Mac, but I would really like to be able to play them on my Linux box withount reencoding the files.

Below is the last part of the VLC messages after trying to play a protected aac file in Windows:
main debug: using demux module "mp4"
mp4 warning: DEMUX_GET_FPS unimplemented !!
mp4 warning: no track selected, exiting...
main: EOF reached
main debug: thread 2980 (input) created at priority 15 (src/input/input.c:270)
main debug: cmd=state old=1 new=1
main debug: playing at normal rate
main debug: 1 loops
main debug: dumping stream ID 0x0 [OK:0/D:0]
main debug: seekable stream, position: 143483/2119249 (0:00:08/0:02:02)
mp4 debug: freeing all memory
main debug: unlocking module "mp4"
access_file: closing `/://C:\Documents and Settings\celbjaw\Pink Moon.m4p'
main debug: unlocking module "access_file"
main debug: pes: 0 packets
main debug: data: 1 packets
main debug: buffers: 1 packets
main debug: freeing info structures...
main debug: thread 2980 joined (src/input/input.c:304)
main warning: refcount is 1, delaying before deletion

Any help is appreciated.

Thanks,

Jason

Murray
Blank Cone
Blank Cone
Posts: 74
Joined: 24 Nov 2003 22:28
Location: Denmark, Mexico, Brazil, USA, France, Italy
Contact:

Postby Murray » 08 Jan 2004 07:11

As far as I know, Jon's plugin is supposed to work on files encrypted with a Windows system key. The Mac key must be based on other criteria, so it can't be guessed by VLC.
Last edited by Murray on 08 Jan 2004 15:05, edited 1 time in total.

Guest

Re: Still cannot play protected AAC files in VLC

Postby Guest » 08 Jan 2004 14:31

Does iTunes for Windows need to be installed on the computer I am running VLC on to create my user key? If so, does this computer need to be activated in iTunes?
Yes and yes.

The user key will be written to "C:\Documents and Settings\$USERNAME\Application Data\vlc\drms"

If the vlc directory does not exist, you will have to create it in advance or else the file will not be written (this issue will be fixed soon).

The drms file should be copied to ~/.vlc/ on your GNU/Linux system.

--
jlj

JonLech
Blank Cone
Blank Cone
Posts: 11
Joined: 08 Jan 2004 14:23
Location: France
Contact:

Postby JonLech » 08 Jan 2004 14:36

As far as I know, Jon's plugin is supposed to work on files encrypted with a Windows system key. The Mac key must be based on other criteria, so it can't be guessed by VLC.
The system key is only needed to get the user key.

If you get the user key under Windows, you will be able to play music purchased using MacOS as well.

--
jlj

Guest

segfault

Postby Guest » 08 Jan 2004 15:10

I am getting a segfault when attempting to play back the file (after doing the steps outlined above):

(gdb) back
#0 0x4207c5fc in memcpy () from /lib/tls/libc.so.6
#1 0x402488e3 in faad_initbits (ld=0x827bfff, _buffer=0x439d4958,
buffer_size=136700792) at bits.c:54
#2 0x4024c245 in faacDecDecode (hDecoder=0x825d270, hInfo=0x439d4958,
buffer=0x827bfff "", buffer_size=72807003) at decoder.c:780
#3 0x401757e8 in a52_resample_init () from /usr/lib/libavcodec.so
#4 0x40069bf1 in avcodec_decode_audio () from /usr/lib/libavcodec.so
(gdb)

JonLech
Blank Cone
Blank Cone
Posts: 11
Joined: 08 Jan 2004 14:23
Location: France
Contact:

Re: segfault

Postby JonLech » 08 Jan 2004 15:25

I am getting a segfault when attempting to play back the file (after doing the steps outlined above):
Check the VLC messages. Does it say "drms initialized" or "drms not initialized"? If the latter, check for "drms_init ..." messages.

What is the size of your
C:\Documents and Settings\All Users\Application Data\Apple Computer\iTunes\SC Info\SC Info.sidb ?

--
jlj

Guest

Postby Guest » 08 Jan 2004 16:09

To the first question - I don't see either of those messages. Should I see them on startup or after I attempt to play the file (before the segfault).

To the second - I can answer once I get home - I do not have access to my windows machine from work.

-Mike

Aqualung
Cone that earned his stripes
Cone that earned his stripes
Posts: 116
Joined: 30 Nov 2003 05:47
Location: Teenage Wasteland

Postby Aqualung » 08 Jan 2004 21:38

Here's now what I understand from all this discussion (I guess I should apologize first for my inadequate background in the matter): If I want to get VLC to play protected AAC files on any Windows computer, I should first copy the user key in some VLC-related folder of the respective Windows computer. Note that this is only going to work with the tunes I downloaded, and no others(!). Also, it is only VLC that is going to play the protected files, no other program (like QuickTime for example) is going to be able to play them.

This looks, indeed, very cumbersome. What happened to that memory dump switcharoo that actually removed the protection, so one is not going to have to go through all this?

Anyway, I'd appreciate a reply just to let me know that I am not totally rambling...
Last edited by Aqualung on 09 Jan 2004 02:37, edited 1 time in total.

Guest

Postby Guest » 09 Jan 2004 00:51

SC Info.sidb is 180 bytes.

-Mike

Bruce

key code location and HD swap/Itunes version

Postby Bruce » 24 Jan 2004 23:03

WinXP Pro
vlc nightly build from 20040123

First to address a prior posters concern.

If you can play the AAC file on your windows box with vlc, you can stream to a AAC encoded file and remove the protections. (Use the stream wizard).

Now for my real question:

I have bought all of two iTunes files, one was pucrchaced a few months back using iTunes 4.1 and on an older hard drive. Since then I swapped HDs, re-authorized under iTunes and upgraded to the 4.2 version of iTunes.

I can play both files in iTunes, but only the newer one (new HD, new iTunes) file is playable by vlc. The drm does fail on the older file:

[00000201] mp4 input error: drms_init( priv ) failed

Is there a way to manually enter a key? I still have the old HD on my machine, it's just not drive C: anymore.

jlj

Re: segfault

Postby jlj » 26 Jan 2004 23:44

(gdb) back
#0 0x4207c5fc in memcpy () from /lib/tls/libc.so.6
#1 0x402488e3 in faad_initbits (ld=0x827bfff, _buffer=0x439d4958,
buffer_size=136700792) at bits.c:54
#2 0x4024c245 in faacDecDecode (hDecoder=0x825d270, hInfo=0x439d4958,
buffer=0x827bfff "", buffer_size=72807003) at decoder.c:780
#3 0x401757e8 in a52_resample_init () from /usr/lib/libavcodec.so
#4 0x40069bf1 in avcodec_decode_audio () from /usr/lib/libavcodec.so
(gdb)
There's a problem with using libavcodec (ffmpeg) for AAC decoding. Get a recent nightly build or update your cvs checkout (VLC will now always decode AAC using libfaad2 directly).

--
jlj

jlj

Re: key code location and HD swap/Itunes version

Postby jlj » 26 Jan 2004 23:49

I can play both files in iTunes, but only the newer one (new HD, new iTunes) file is playable by vlc.
Delete C:\Documents and Settings\$USER\Application Data\drms

Then try playing the files with the latest nightly build.

--
jlj

Bruce

Postby Bruce » 29 Jan 2004 16:45

Delete C:\Documents and Settings\$USER\Application Data\drms

Then try playing the files with the latest nightly build.
That worked like a charm! I guess it's a good thing someone had this problem. ;-)

deank

Itunes AAC files

Postby deank » 06 Feb 2004 23:04

HI..
I got the the protected Itunes songs to play in VLC and stream the files to a mp4 minus the DRM protection, but are these recompressed files or are they still compressed from Apple's original file?

Thanks

Still cant find that DRM unlock file. Where is it? Using the latest nightly build.

Guest

Postby Guest » 22 Feb 2004 21:07

Can someone give some straight forward instructions on how to stream a protected AAC file to a regular AAC file with the headers in place?

I can get my iTunes music to play in VLC but I cannot seem to save it as a regular AAC file.

Thanks in advance for the help

Guest

Postby Guest » 27 Feb 2004 00:27

Hey,
Just downloaded the latest build...

[00000220] mp4 input error: drms_init( priv ) failed

is the error I get. The file loads up, appears to be playing correctly, but nothing actually happens. I saw a recommendation to look for c:\documents and settings\user\Application Data\drms but I can't find the drms part of it. Did a general search for "drms" and it didn't show anything up on the search. Any other suggestions?

Thanks for your help,
Matt

NateUNI

Can play protected aac, but can't steam to file

Postby NateUNI » 28 Feb 2004 22:06

I can get the file to play great :) But when i try to stream it to a file I recieve a errors. What are you guys using as your stram settings, Thanks!!

appleguru

Postby appleguru » 03 Mar 2004 22:10

The user key will be written to "C:\Documents and Settings\$USERNAME\Application Data\vlc\drms"

If the vlc directory does not exist, you will have to create it in advance or else the file will not be written (this issue will be fixed soon).

The drms file should be copied to ~/.vlc/ on your GNU/Linux system.
Ok, So I fired up Windows 2000 in VPC... installed iTunes, installed VLC... played a drm'd file in itunes.. quit.. ran the file in VLC (The latest release) (It played). Now I'm looking for the drms file that Jon mentioned... I see no C:\Documents and Settings\$USERNAME\Application Data\vlc\drms ; but there is a C:\Documents and Settings\$USERNAME\Application Data\drms (And yes, I made an emtpy vlc folder... That may have only been needed for earlier versions though...)

Inside the drms folder is a file labeled 03052679.001 I copied this to ~/.vlc/ on my OS X machine, and attempt to open the .m4p file to no avail: I still get a mp4: drms_init( priv ) failed in VLC (Which means either the key couldn't be found or was wrong looking at the source.. This error comes up even without the drms key). Any ideas?

appleguru

Postby appleguru » 03 Mar 2004 22:24

Nevermind.. Works now 8) The drms file needed to be in a folder called .drms in my home folder 8) Now lets see if we can dump the raw streams...

appleguru

Postby appleguru » 03 Mar 2004 23:00

So I streamed to a .mp4 file with vlc.. and then opened the DRM free file in iTunes; retagged, added album art from original .m4p.. and finally have what I was trying to get.. It certainly isn't an easy process (Nor fast with VLC streaming at only 1x): Someone should write a script/app to do all this for you.. maybe even trigger it when you download a song from the iTMS (bB's idea)... But we still need a way to get the key on the mac though :D At least it worked; good work Jon and Co.

Guest

Postby Guest » 04 Mar 2004 08:31

Whenever I use the streaming wizzard to stream a song to file, I put the location that I want it saved to, I select mp4 as the encapsulation method, and all that happens is the file plays in the main window without sound. It doesn't save a file. What am I doing wrong? If I select dump raw input, it saves a file with the DRM.

This is what VLC sets as the parameters:
:sout=#duplicate{dst=std{access=file,mux=mp4,url="C:\Documents and Settings\Student\Desktop\test.mp4"}}

appleguru

Postby appleguru » 09 Mar 2004 04:00

I've found that it does exactly what you describe on the PC.... but works fine on the mac (But dump always just gives the DRM'd file). In both cases, it plays with no audio at '1x', but only on the mac do I get an actual file (Which of course then needs to be retagged...). VLC should make all this easier I think.. and be able to easily faster than 1x convert from .m4p to .m4a (IE, .mp4), copying all metadata (Including album art). That'd be very convenient.

Another thing obviously would be to be able to get your key on machines other than PC's, but since I already have my key, it's not such a big deal anymore ;)

mrfett
New Cone
New Cone
Posts: 4
Joined: 26 Jan 2004 23:15
Location: Boston
Contact:

Postby mrfett » 10 Mar 2004 11:35

VLC should make all this easier I think.. and be able to easily faster than 1x convert from .m4p to .m4a (IE, .mp4), copying all metadata (Including album art). That'd be very convenient.
lol yeah it would turn VLC into a iTMS pirating tool of unparalleled power. we gotta remember VLC is a media player. the tool works for playing DRMed aac files on any machine. that's pretty cool. also cool is that it's open source, so making a tool that does all the stuff you describe is feasible... for now i'm gonna try to go through my collection of DRMed files and try to "unencumber" them using VLC. what a PITA though...
think for yourself


Return to “General VLC media player Troubleshooting”

Who is online

Users browsing this forum: No registered users and 47 guests