[mythtv] [PATCH] MP4 MetaIO support

aczmail at cox.net aczmail at cox.net
Mon Feb 7 15:45:12 UTC 2005


You can make these changes to fix the compilation error, but when I attempt to compile, it just reveals more compilation problems in other files...

Changes to metaiomp4.cpp:
> cvs diff metaiomp4.cpp                                 
Index: metaiomp4.cpp
===================================================================
RCS file: /var/lib/mythcvs/mythmusic/mythmusic/metaiomp4.cpp,v
retrieving revision 1.1
diff -r1.1 metaiomp4.cpp
179c179
<     QString artist = "", album = "", title = "", genre = "";
---
>     QString artist = "", album = "", compilation="", title = "", genre = "";
237a238,243
>     if (mp4ff_meta_get_compilation(mp4_ifile, &char_storage))
>     {
>         compilation = QString::fromUtf8(char_storage);
>         free(char_storage);
>     }
> 
328a335
>                                      compilation, 

However, for me, these changes result in:

azawacki at MythTV:~/cvs-myth/mythmusic/mythmusic$ make
g++ -c -pipe -Wall -W -O3 -march=pentiumpro -fomit-frame-pointer -I/usr/include/SDL -D_REENTRANT -D_REENTRANT -fPIC  -D_GNU_SOURCE -DPREFIX=\"/usr/local\" -DHAVE_MMX -DQT_NO_DEBUG -DQT_THREAD_SUPPORT -DQT_PLUGIN -DQT_SHARED -I/usr/share/qt/mkspecs/default -I. -I/usr/local/include -I/usr/include/cdda -I/usr/lib/qt/include -I/usr/X11R6/include -o metaiomp4.o metaiomp4.cpp
g++ -c -pipe -Wall -W -O3 -march=pentiumpro -fomit-frame-pointer -I/usr/include/SDL -D_REENTRANT -D_REENTRANT -fPIC  -D_GNU_SOURCE -DPREFIX=\"/usr/local\" -DHAVE_MMX -DQT_NO_DEBUG -DQT_THREAD_SUPPORT -DQT_PLUGIN -DQT_SHARED -I/usr/share/qt/mkspecs/default -I. -I/usr/local/include -I/usr/include/cdda -I/usr/lib/qt/include -I/usr/X11R6/include -o aacdecoder.o aacdecoder.cpp
aacdecoder.cpp: In member function `void aacDecoder::flush(bool)':
aacdecoder.cpp:122: error: could not convert `(*(((Decoder*)this)->Decoder::output()->AudioOutput::_vptr.AudioOutput + 24u))(((Decoder*)this)->Decoder::output(), ((aacDecoder*)this)->aacDecoder::output_buf, samples, -0x000000001ll)' to `bool'
aacdecoder.cpp: In member function `bool aacDecoder::initializeMP4()':
aacdecoder.cpp:375: error: 'class AudioOutput' has no member named 'SetSourceBitrate'
aacdecoder.cpp: In member function `virtual void aacDecoder::run()':
aacdecoder.cpp:496: error: 'class AudioOutput' has no member named 'Drain'
aacdecoder.cpp:569: error: 'class AudioOutput' has no member named 'SetSourceBitrate'
aacdecoder.cpp:573: error: 'class AudioOutput' has no member named 'SetSourceBitrate'
make: *** [aacdecoder.o] Error 1

However, this may be a setup issue with my system, so YMMV.

> 
> From: Simon Kenyon <simon at koala.ie>
> Date: 2005/02/07 Mon AM 10:35:31 EST
> To: aczmail at cox.net
> CC: mythtv-dev at mythtv.org,  Colin Guthrie <myth at colin.guthr.ie>
> Subject: Re: [mythtv] [PATCH] MP4 MetaIO support
> 
> On Monday 07 February 2005 15:24, you wrote:
> > Simon Kenyon wrote:
> > >On Saturday 05 February 2005 19:33, Lonnie Hutchinson wrote:
> > >>This patch moves the metadata stuff from aacdecoder into metaiomp4 and
> > >>adds the ability to update the tags in the files.
> > >>
> > >>Please include this in CVS for the 0.17 release if possible. Thanks.
> > >
> > >sorry for asking this, but my C++ is not up to scratch
> > >just checked out the source from CVS and i'm getting this error.
> > >it looks ok to me so i cannot see what is going wrong
> > >
> > >thanks
> > >--
> > >simon
> > >
> > >g++ -c -pipe -Wall -W -g -I/usr/include/SDL -D_REENTRANT -D_REENTRANT
> > > -fPIC -D_GNU_SOURCE -DPREFIX=\"/usr\" -DHAVE_MMX -DQT_THREAD_SUPPORT
> > > -DQT_PLUGIN -I/usr/qt/3/mkspecs/linux-g++ -I. -I/usr/include
> > > -I/usr/include/cdda -I/usr/qt/3/include -I/usr/X11R6/include -o
> > > metaiomp4.o metaiomp4.cpp metaiomp4.cpp: In member function `virtual
> > > Metadata*
> > >MetaIOMP4::read(QString)':
> > >metaiomp4.cpp:334: error: invalid conversion from `int' to `const char*'
> > >metaiomp4.cpp:334: error:   initializing argument 1 of
> > > `QString::QString(const char*)'
> > >make: *** [metaiomp4.o] Error 1
> >
> > The Metadata object's constructor requires an lcompilation_artist argument
> > that is not being passed in metaiomp4.cpp. Metadata constructor:
> >     Metadata(QString lfilename = "", QString lartist = "", QString
> > lcompilation_artist = "", QString lalbum = "", QString ltitle = "", QString
> > lgenre = "", int lyear = 0, int ltracknum = 0, int llength = 0, int lid =
> > 0, int lrating = 0, int lplaycount = 0, QString llastplay = "", bool
> > lcompilation = false)
> >
> > Code in metaiomp4.cpp:
> >     Metadata *retdata = new Metadata(filename,
> >                                      artist,
> >                                      album,
> >                                      title,
> >                                      genre,
> >                                      year,
> >                                      tracknum,
> >                                      length);
> >
> > The error is coming from the attempt to use year as the lgenre argument.
> >
> > Unfortunately, I'm not the person to fix it, as I don't really have a clue
> > as to what it is actually doing.
> 
> thanks for that
> i thought i had counted the args - i missed the compilation_artist one
> seems like the code is borked
> --
> simon
> 



More information about the mythtv-dev mailing list