LinuxQuestions.org
Help answer threads with 0 replies.
Home Forums Tutorials Articles Register
Go Back   LinuxQuestions.org > Forums > Linux Forums > Linux - Software
User Name
Password
Linux - Software This forum is for Software issues.
Having a problem installing a new program? Want to know which application is best for the job? Post your question in this forum.

Notices


Reply
  Search this Thread
Old 08-23-2004, 10:26 AM   #1
eqxro
Member
 
Registered: Apr 2004
Location: Outer space :D
Distribution: Gentoo 2005.0 amd64 2.6.14-dfx3
Posts: 203

Rep: Reputation: 30
Playing M4A files in xmms


Hi all!

I've got some .m4a files that i want to listen to in XMMS. As far as I know I (obiously) need an input plugin for these files. The thing is I don't know what plugin I need.

I have MDK 10.0 with xmms-1.2.10, gcc 3.4.1, kernel 2.6.8.0-rc2, KDE3.3. I think I have some problems with gcc, so it would be best if the plugin is precompiled
 
Old 08-23-2004, 10:59 AM   #2
mikedeatworld
Member
 
Registered: Nov 2003
Location: Farmington Michigan
Distribution: UBUNTU - Slackware - SuSE 9.1 - Knoppix - Fedora
Posts: 828

Rep: Reputation: 30
i have the same prob in SuSE, no solution found yet...

let me know what you find out.
 
Old 08-23-2004, 01:13 PM   #3
eqxro
Member
 
Registered: Apr 2004
Location: Outer space :D
Distribution: Gentoo 2005.0 amd64 2.6.14-dfx3
Posts: 203

Original Poster
Rep: Reputation: 30
Okay, I've found a plugin, xmms-mp4plugin. It should play mp4 files, and as I read the m4a's are the audio tracks of m4a's... the link is THIS, and the sources can be downloaded from HERE. So, I've downloaded it, unpacked it, ran bootstrap, then configure, but I came to a halt when make returned:

[alex@Alexx xmms_mp4Plugin-0.4]$ make
make all-recursive
make[1]: Entering directory `/usr/local/share/Downloads/xmms_mp4Plugin-0.4'
Making all in libmp4v2
make[2]: Entering directory `/usr/local/share/Downloads/xmms_mp4Plugin-0.4/libmp 4v2'
/bin/sh ../libtool --mode=compile c++ -DHAVE_CONFIG_H -I. -I. -I.. -I../include -g -O2 -c atom_co64.cpp
c++ -DHAVE_CONFIG_H -I. -I. -I.. -I../include -g -O2 -Wp,-MD,.deps/atom_co64.pp -c atom_co64.cpp -fPIC -DPIC -o atom_co64.lo
In file included from ../include/mpeg4ip.h:27,
from mp4common.h:29,
from atom_co64.cpp:22:
../include/systems.h:136:2: #error "Don't have stdint.h or inttypes.h - no way t o get uint8_t"
In file included from mp4common.h:36,
from atom_co64.cpp:22:
mp4property.h:61: error: expected `0' before ""
mp4property.h:61: error: invalid initializer for virtual method `virtual MP4PropertyType MP4Property::GetType()'
mp4property.h:61: error: expected `;' before ""
mp4property.h:77: error: expected `0' before ""
mp4property.h:77: error: invalid initializer for virtual method `virtual u_int32_t MP4Property::GetCount()'
mp4property.h:77: error: expected `;' before ""
mp4property.h:78: error: expected `0' before ""
mp4property.h:78: error: invalid initializer for virtual method `virtual void MP4Property::SetCount(u_int32_t)'
mp4property.h:78: error: expected `;' before ""
mp4property.h:82: error: expected `0' before ""
mp4property.h:82: error: invalid initializer for virtual method `virtual void MP4Property::Read(MP4File*, u_int32_t)'
mp4property.h:82: error: expected `;' before ""
mp4property.h:84: error: expected `0' before ""
mp4property.h:84: error: invalid initializer for virtual method `virtual void MP4Property::Write(MP4File*, u_int32_t)'
mp4property.h:84: error: expected `;' before ""
mp4property.h:87: error: expected `0' before ""
mp4property.h:87: error: invalid initializer for virtual method `virtual void MP4Property:ump(FILE*, u_int8_t, bool, u_int32_t)'
mp4property.h:87: error: expected `;' before ""
mp4property.h: In member function `u_int32_t MP4TableProperty::GetCount()':
mp4property.h:442: error: 'class MP4Property' has no member named 'GetType'
mp4property.h: In member function `void MP4TableProperty::SetCount(u_int32_t)':
mp4property.h:449: error: 'class MP4Property' has no member named 'GetType'
In file included from mp4common.h:48,
from atom_co64.cpp:22:
rtphint.h: At global scope:
rtphint.h:38: error: expected `0' before ""
rtphint.h:38: error: invalid initializer for virtual method `virtual u_int16_t MP4RtpData::GetDataSize()'
rtphint.h:38: error: expected `;' before ""
rtphint.h:39: error: expected `0' before ""
rtphint.h:39: error: invalid initializer for virtual method `virtual void MP4RtpData::GetData(u_int8_t*)'
rtphint.h:39: error: expected `;' before ""
make[2]: *** [atom_co64.lo] Error 1
make[2]: Leaving directory `/usr/local/share/Downloads/xmms_mp4Plugin-0.4/libmp4v2'
make[1]: *** [all-recursive] Error 1
make[1]: Leaving directory `/usr/local/share/Downloads/xmms_mp4Plugin-0.4'
make: *** [all-recursive-am] Error 2




The error says it expects a 0 before ""?!? Before what?!? (it should've been written between the double-quotes)... (
 
Old 09-15-2004, 05:48 PM   #4
schmmd
LQ Newbie
 
Registered: Mar 2004
Location: Everett, WA
Distribution: Slackware 9.1
Posts: 27

Rep: Reputation: 15
The Answer!

http://www.audiocoding.com/modules/mydownloads/

That includes the necessary plug-in and libraries. It worked fine with XMMS on my Slack 10 box. README.linux has all the information on installation. There also exists a slackpack at http://www.linuxpackages.net/pkg_details.php?id=4301.

I had one problem with the source. When I "make"-ed the xmms plugin source it had an error that common/mp4v2/.libs/.libs didn't exist. To fix the error, I made a copy of common/mp4v2/.libs and moved it into itself (copied it into common/mp4v2/.libs). Then, after a compile and a ldconfig, the plugin appeared in xmms.
 
Old 01-21-2005, 02:50 AM   #5
cthielen
LQ Newbie
 
Registered: Jan 2005
Posts: 1

Rep: Reputation: 0
This is due to updates in GCC that no longer accepts the = NULL thing. Just go to each line it complains about and change the = NULL to = 0 and it'll compile. This change is needed in about 10 places in two different .h files.
 
Old 02-01-2005, 12:18 AM   #6
nerval
LQ Newbie
 
Registered: Jul 2004
Posts: 3

Rep: Reputation: 0
.

Having the libraries for mp4 and the mp4 plugin for xmms would be in half to play those files.
 
Old 03-14-2005, 08:43 AM   #7
Askholia
LQ Newbie
 
Registered: Mar 2005
Posts: 16

Rep: Reputation: 0
Hello there,

I've been at pains to install a plugin that plays m4a/AAC audio on xmms - to no avail. I've installed the packages you've mentioned above (xmms-mp4) the development libs which i figured was relation to it and everything that I suspected of being related to xmms and aac audio.

the plugins shows up in the preferences of xmms and is enabled (MP4 & MPEG2/4-AAC audio player-1.2.x [libmp4.so]). Problem is, i cant play any of the m4a tracks on xmms. When i try to add a file or a directory xmms shuts down by itself :S

Since I've never used linux before I do not know to make head or tail of the configuration and installation process. If someone can hint out the problem, i'd really appreciate.
 
Old 03-16-2005, 12:18 PM   #8
eqxro
Member
 
Registered: Apr 2004
Location: Outer space :D
Distribution: Gentoo 2005.0 amd64 2.6.14-dfx3
Posts: 203

Original Poster
Rep: Reputation: 30
Shutting down by itself means it crashes... It probably spits out some debugging info, so you might want to try running 'xmms' in a konsole and post here whatever error messages you get. This way, we might be able to help you more, and point you to the "trouble-maker".
 
Old 04-13-2005, 11:44 AM   #9
jong357
Senior Member
 
Registered: May 2003
Location: Columbus, OH
Distribution: DIYSlackware
Posts: 1,914

Rep: Reputation: 52
Hey, thanks cthielen.... Worked like a charm. Made a patch if anyone is interested.. It's for faad2 which contains the same source code. Modify the header path of the patch if your using it on the stand alone package of mp4v2...

Code:
--- faad2.orig/common/mp4v2/mp4property.h	2003-06-29 18:41:00.000000000 -0400
+++ faad2/common/mp4v2/mp4property.h	2005-04-13 00:28:20.736865472 -0400
@@ -58,7 +58,7 @@
 		return m_name;

 	}

 

-	virtual MP4PropertyType GetType() = NULL; 

+	virtual MP4PropertyType GetType() = 0; 

 

 	bool IsReadOnly() {

 		return m_readOnly;

@@ -74,17 +74,17 @@
 		m_implicit = value;

 	}

 

-	virtual u_int32_t GetCount() = NULL;

-	virtual void SetCount(u_int32_t count) = NULL;

+	virtual u_int32_t GetCount() = 0;

+	virtual void SetCount(u_int32_t count) = 0;

 

 	virtual void Generate() { /* default is a no-op */ };

 

-	virtual void Read(MP4File* pFile, u_int32_t index = 0) = NULL;

+	virtual void Read(MP4File* pFile, u_int32_t index = 0) = 0;

 

-	virtual void Write(MP4File* pFile, u_int32_t index = 0) = NULL;

+	virtual void Write(MP4File* pFile, u_int32_t index = 0) = 0;

 

 	virtual void Dump(FILE* pFile, u_int8_t indent,

-		bool dumpImplicits, u_int32_t index = 0) = NULL;

+		bool dumpImplicits, u_int32_t index = 0) = 0;

 

 	virtual bool FindProperty(const char* name,

 		MP4Property** ppProperty, u_int32_t* pIndex = NULL);

--- faad2.orig/common/mp4v2/rtphint.h	2003-06-29 18:41:00.000000000 -0400
+++ faad2/common/mp4v2/rtphint.h	2005-04-13 00:47:55.386291616 -0400
@@ -35,8 +35,8 @@
 		return m_pPacket;

 	}

 

-	virtual u_int16_t GetDataSize() = NULL;

-	virtual void GetData(u_int8_t* pDest) = NULL;

+	virtual u_int16_t GetDataSize() = 0;

+	virtual void GetData(u_int8_t* pDest) = 0;

 

 	MP4Track* FindTrackFromRefIndex(u_int8_t refIndex);
 
Old 02-28-2006, 04:33 PM   #10
VibeOfOurTribe
LQ Newbie
 
Registered: Jul 2004
Posts: 21

Rep: Reputation: 16
Thanks everyone. I don't know why it was such a pain to find this link.

http://fondriest.frederic.free.fr/fi...in-0.4.tar.bz2

Code:
tar xvjf xmms_mp4Plugin-0.4.tar.bz2
cd xmms_mp4Plugin-0.4
./bootstrap
./configure && make && make install
worked for me without modifying any code. It then showed up in the input plugins list in xmms as MP4 & MPEG2/4-AAC audio player
 
Old 02-11-2007, 01:21 PM   #11
yorches
LQ Newbie
 
Registered: Mar 2005
Location: Guadalajara, Mexico
Distribution: Slackware 11.0
Posts: 4

Rep: Reputation: 0
I had the same

Last edited by yorches; 02-11-2007 at 01:26 PM.
 
Old 02-11-2007, 01:22 PM   #12
yorches
LQ Newbie
 
Registered: Mar 2005
Location: Guadalajara, Mexico
Distribution: Slackware 11.0
Posts: 4

Rep: Reputation: 0
I had the same problem as eqxro, and cthielen's solution worked beautifully for me. I changed all the = NULL to = 0 in mp4property.h and in rtphint.h and the plugin compiled just fine. Both files are in the libmp4v2 directory.
Thank you cthielen and everybody else.
 
Old 04-05-2007, 02:43 AM   #13
Minthos
LQ Newbie
 
Registered: Apr 2007
Posts: 1

Rep: Reputation: 0
Quote:
Originally Posted by VibeOfOurTribe
Thanks everyone. I don't know why it was such a pain to find this link.

(urls removed because forum is anal)

Code:
tar xvjf xmms_mp4Plugin-0.4.tar.bz2
cd xmms_mp4Plugin-0.4
./bootstrap
./configure && make && make install
worked for me without modifying any code. It then showed up in the input plugins list in xmms as MP4 & MPEG2/4-AAC audio player
Didn't work for me. Added #define NULL 0 to two header files and changed my /usr/lib/gcc/x86_64-pc-linux-gnu/3.4.6/include/stddef.h from
Code:
#ifndef __cplusplus
#define NULL ((void *)0)
#else   /* C++ */
#define NULL 0
#endif  /* C++ */
to
Code:
#ifndef NULL
#define NULL 0
#endif
temporarily, then it compiled and installed itself as a plugin in xmms.
xmms then loaded the files, but refused to play them.
 
  


Reply



Posting Rules
You may not post new threads
You may not post replies
You may not post attachments
You may not edit your posts

BB code is On
Smilies are On
[IMG] code is Off
HTML code is Off



Similar Threads
Thread Thread Starter Forum Replies Last Post
Amarok XMMS Meta tagging m4a and FAAC command line tool carl0ski Linux - Software 2 05-08-2005 01:20 AM
XMMS m4a plugin...in Knoppix? Robotech_Master Linux - Software 0 11-01-2004 01:35 PM
easy way for m4a"s in xmms MadSkillzMan Linux - Software 1 10-01-2004 04:09 PM
xmms + aac (m4a,etc) mrgreenfur Linux - Software 12 09-30-2004 12:05 PM
XMMS and playing files on the network Celettu Linux - Networking 3 07-13-2004 02:11 AM

LinuxQuestions.org > Forums > Linux Forums > Linux - Software

All times are GMT -5. The time now is 12:16 AM.

Main Menu
Advertisement
My LQ
Write for LQ
LinuxQuestions.org is looking for people interested in writing Editorials, Articles, Reviews, and more. If you'd like to contribute content, let us know.
Main Menu
Syndicate
RSS1  Latest Threads
RSS1  LQ News
Twitter: @linuxquestions
Open Source Consulting | Domain Registration