HOWTO Play M4P Audio Files
From Gentoo Linux Wiki
[edit] Introduction
M4P files are iTunes protected media format in AAC audio codec. M4A files are the same but without the protection.
[edit] How To
If the M4P audio files in question are the purchased, DRM'd downloads from iTunes, check HOWTO Convert from iTunes.
For mplayer and xine: Both programs have the aac useflag, so just add aac to the USE variable in /etc/make.conf, then re-emerge.
# emerge -uaDN world
or
# emerge -aDN mplayer # emerge -aDN xine-lib
The first option will recompile any installed package which has the aac useflag. The second option is more specific.
For Amarok:
Amarok uses xine to do all of its decoding, so make sure xine-lib is compiled with the aac useflag. Amarok also needs the mp4 useflag set. This useflag enables support for tags in M4A files. Add mp4 to the USE variable in /etc/make.conf, then re-emerge
# emerge -aDN amarok
After amarok has finished compiling, restart the program.
If you want to play unprotected M4A files in xmms, just emerge the latest version of media-libs/faad2 with xmms use variable.
# emerge media-libs/faad2
The latest version of faad2 (media-libs/faad2-2.0-r13) doesn't have any use flags, so you cannot specify xmms and have xmms support m4a files using this method.
[edit] Cplay
In order to listen to the M4A/M4P files in cplay (with mplayer), you need to add the player in /etc/cplayrc (global) or ~/.cplayrc (local)
| File: /etc/cplayrc or ~/.cplayrc |
PLAYERS = [
FrameOffsetPlayer("ogg123 -q -v -k %d %s", "\.ogg$"),
FrameOffsetPlayer("splay -f -k %d %s", "(^http://|\.mp[123]$)", 38.28),
FrameOffsetPlayer("mpg123 -q -v -k %d %s", "(^http://|\.mp[123]$)", 38.28),
FrameOffsetPlayer("mpg321 -q -v -k %d %s", "(^http://|\.mp[123]$)", 38.28),
TimeOffsetPlayer("madplay -v --display-time=remaining -s %d %s", "\.mp[123]$"),
NoOffsetPlayer("mikmod -q -p0 %s", "\.(mod|xm|fm|s3m|med|col|669|it|mtm)$"),
NoOffsetPlayer("xmp -q %s", "\.(mod|xm|fm|s3m|med|col|669|it|mtm|stm)$"),
NoOffsetPlayer("play %s", "\.(aiff|au|cdr|mp3|ogg|wav)$"),
NoOffsetPlayer("speexdec %s", "\.spx$"),
NoOffsetPlayer("mplayer -slave %s", "\.(m4p|m4a)$")
]
|
