Götz Waschk | 23 Nov 2007 08:04
Picon

Re: Bugfix, changed signature of MP4GetMetadataCoverArt() in libmp4v2-1.6.1

On Nov 23, 2007 12:45 AM, Jérôme COUDERC <easytag <at> gmail.com> wrote:
> I've tried the attached patch. It detects correctly the version of the
> library, but I've noted that now it doesn't add "-lmp4v2" to the
> compilator flags....
Hi Jérôme,

oh right, autoheader didn't pick up the mp4v2 definition, don't ask me
why. But it is working fine if you rearrange it a bit, see the
attached patch.

Regards, Götz

--

-- 
AL I:40: Do what thou wilt shall be the whole of the Law.
-------------------------------------------------------------------------
This SF.net email is sponsored by: Microsoft
Defy all challenges. Microsoft(R) Visual Studio 2005.
http://clk.atdmt.com/MRT/go/vse0120000070mrt/direct/01/
_______________________________________________
Easytag-mailing mailing list
Easytag-mailing <at> lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/easytag-mailing
Götz Waschk | 23 Nov 2007 09:01
Picon

Re: Bugfix, changed signature of MP4GetMetadataCoverArt() in libmp4v2-1.6.1

Hi,

a much simpler solution is to just check for the mpeg4ip version, then
you don't need my configure hack at all:

#if MPEG4IP_HEX_VERSION >= 0x10601
    if ( MP4GetMetadataCoverArt( mp4file, &coverArt, &coverSize,0 ) )
#else
    if ( MP4GetMetadataCoverArt( mp4file, &coverArt, &coverSize ) )
#endif

Regards, Götz

--

-- 
AL I:40: Do what thou wilt shall be the whole of the Law.

-------------------------------------------------------------------------
This SF.net email is sponsored by: Microsoft
Defy all challenges. Microsoft(R) Visual Studio 2005.
http://clk.atdmt.com/MRT/go/vse0120000070mrt/direct/01/
EasyTAG | 23 Nov 2007 12:48
Picon

Re: Bugfix, changed signature of MP4GetMetadataCoverArt() in libmp4v2-1.6.1

But this shouldn't work if you install only libmp4v2, and not mpeg4ip...

Personally, the first solution seems good for me...

About the version 1.6.1 : the new API allow to read multiple images but you can save only one picture when writing the tag. Isn't it?

Jerome


2007/11/23, Götz Waschk <goetz.waschk <at> gmail.com >:
Hi,

a much simpler solution is to just check for the mpeg4ip version, then
you don't need my configure hack at all:

#if MPEG4IP_HEX_VERSION >= 0x10601
    if ( MP4GetMetadataCoverArt( mp4file, &coverArt, &coverSize,0 ) )
#else
    if ( MP4GetMetadataCoverArt( mp4file, &coverArt, &coverSize ) )
#endif

Regards, Götz

--
AL I:40: Do what thou wilt shall be the whole of the Law.

-------------------------------------------------------------------------
This SF.net email is sponsored by: Microsoft
Defy all challenges. Microsoft(R) Visual Studio 2005.
http://clk.atdmt.com/MRT/go/vse0120000070mrt/direct/01/
_______________________________________________
Easytag-mailing mailing list
Easytag-mailing <at> lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/easytag-mailing

-------------------------------------------------------------------------
This SF.net email is sponsored by: Microsoft
Defy all challenges. Microsoft(R) Visual Studio 2005.
http://clk.atdmt.com/MRT/go/vse0120000070mrt/direct/01/
_______________________________________________
Easytag-mailing mailing list
Easytag-mailing <at> lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/easytag-mailing
Götz Waschk | 23 Nov 2007 12:52
Picon

Re: Bugfix, changed signature of MP4GetMetadataCoverArt() in libmp4v2-1.6.1

On Nov 23, 2007 12:48 PM, EasyTAG <easytag <at> gmail.com> wrote:
> But this shouldn't work if you install only libmp4v2, and not mpeg4ip...

Is that even possible? Here, mp4.h includes mpeg4ip.h.

> About the version 1.6.1 : the new API allow to read multiple images but you
> can save only one picture when writing the tag. Isn't it?

I don't think so. Maybe you should try to call
MP4SetMetadataCoverArt() several times?

Regards, Götz

--

-- 
AL I:40: Do what thou wilt shall be the whole of the Law.

-------------------------------------------------------------------------
This SF.net email is sponsored by: Microsoft
Defy all challenges. Microsoft(R) Visual Studio 2005.
http://clk.atdmt.com/MRT/go/vse0120000070mrt/direct/01/
EasyTAG | 23 Nov 2007 14:22
Picon

Re: Bugfix, changed signature of MP4GetMetadataCoverArt() in libmp4v2-1.6.1



2007/11/23, Götz Waschk <goetz.waschk <at> gmail.com>:
On Nov 23, 2007 12:48 PM, EasyTAG <easytag <at> gmail.com> wrote:
> But this shouldn't work if you install only libmp4v2, and not mpeg4ip...

Is that even possible? Here, mp4.h includes mpeg4ip.h.


Some distributions as Fedora use the package from http://resare.com/libmp4v2/
It was build by keeping only the library mp4v2 from mpeg4ip
 

> About the version 1.6.1 : the new API allow to read multiple images but you
> can save only one picture when writing the tag. Isn't it?

I don't think so. Maybe you should try to call
MP4SetMetadataCoverArt() several times?


Already tested... it fails :-(
 

Regards, Götz

-------------------------------------------------------------------------
This SF.net email is sponsored by: Microsoft
Defy all challenges. Microsoft(R) Visual Studio 2005.
http://clk.atdmt.com/MRT/go/vse0120000070mrt/direct/01/
_______________________________________________
Easytag-mailing mailing list
Easytag-mailing <at> lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/easytag-mailing
Doruk Fisek | 23 Nov 2007 15:16
Picon
Gravatar

Re: Bugfix, changed signature of MP4GetMetadataCoverArt() in libmp4v2-1.6.1

Fri, 23 Nov 2007 14:22:29 +0100, EasyTAG <easytag <at> gmail.com> :

> Some distributions as Fedora use the package from
> http://resare.com/libmp4v2/
> It was build by keeping only the library mp4v2 from mpeg4ip
The same is true for Pardus too.

http://svn.pardus.org.tr/pardus/2007/programming/libs/libmp4v2/

                   Doruk

--
FISEK INSTITUTE - http://www.fisek.org.tr

-------------------------------------------------------------------------
This SF.net email is sponsored by: Microsoft
Defy all challenges. Microsoft(R) Visual Studio 2005.
http://clk.atdmt.com/MRT/go/vse0120000070mrt/direct/01/
Götz Waschk | 23 Nov 2007 14:43
Picon

Re: Bugfix, changed signature of MP4GetMetadataCoverArt() in libmp4v2-1.6.1

On Nov 23, 2007 2:22 PM, EasyTAG <easytag <at> gmail.com> wrote:
> Some distributions as Fedora use the package from
> http://resare.com/libmp4v2/
> It was build by keeping only the library mp4v2 from mpeg4ip

I see, so that's why Fedora has mp4v2 while Mandriva has it in an
unofficial repository only.

> > > About the version 1.6.1 : the new API allow to read multiple images but
> you
> > > can save only one picture when writing the tag. Isn't it?
> > I don't think so. Maybe you should try to call
> > MP4SetMetadataCoverArt() several times?
> Already tested... it fails :-(
OK, after looking at the implementation, it seems you are right:

MP4File::GetMetadataCoverArt extracts an image from the property
moov.udta.meta.ilst.covr.data[index].metadata, while
MP4File::SetMetadataCoverArt writes to
moov.udta.meta.ilst.covr.data.metadata only.

So there's room for improvement in the mp4v2 library.

Regards, Götz

--

-- 
AL I:40: Do what thou wilt shall be the whole of the Law.

-------------------------------------------------------------------------
This SF.net email is sponsored by: Microsoft
Defy all challenges. Microsoft(R) Visual Studio 2005.
http://clk.atdmt.com/MRT/go/vse0120000070mrt/direct/01/

Gmane