Trying to solve bug 240409
Matěj Laitl
matej at laitl.cz
Wed Feb 20 22:47:18 UTC 2013
On 19. 2. 2013 Abhinandan Ramprasath wrote:
> This is what I've got so far,
Nice research!
> 1) mp4v2-2.0.0 supports chapters in mp4 files(mentioned on comment 2). The
> format for chapter storage is specified between lines 2321 and 2375 under
> src/mp4file.cpp (
> http://code.google.com/p/mp4v2/downloads/detail?name=mp4v2-2.0.0.tar.bz2 ) .
Okay.
> 2) comment 2 in https://bugs.kde.org/show_bug.cgi?id=240409 mentions that
> the dependency was removed. Is it safe for me to add it back?
We'd prefer not to, certainly not as a mandatory dependency.
> 3) I cross checked the format of chapter storage with a simple cpp program
> I wrote and got the titles of all chapters as output. But that was just
> using a regex and I'm not too sure that would be accepted as a solution.
RegExes are used all over Amarok, so if this is not a moving target (e.g. if
the strings you match don't change with library versions), it should be fine,
but see below.
> 4) An Issue was filed for TagLib
> https://github.com/taglib/taglib/issues/81 asking
> to expand support for chapters in mp3 files, which sadly, hasn't been
> solved yet. Unfortunately, I wasn't able to find anything similar for mp4.
You fan file one, then! ;) Even better would be creating a pull request for
TagLib that would add support for reading chapters (ideally both from mp3 and
mp4 files). Given that mp4v2 is under MPL 1.1 and TagLib is under MPL 1.1 +
LGPL 2.1, it may be possible to copy & adapt code from mp4v2 to TagLib
directly, but please consult this first with TagLib developers [1]. (if both
mp4v2 and TagLib where updated to the newest MPL 2.0, it would be definitely
possible)
Let's defer the decision how to represent this in Amarok until underlying
libraries are ready, I must say that the idea to use MultiTrack may end up to
be the good way, but please let us think about this more.
[1] https://mail.kde.org/mailman/listinfo/taglib-devel
Matěj
More information about the Amarok-devel
mailing list