Age | Commit message (Collapse) | Author | Files | Lines |
|
To disambiguate between albums with the same disc ID it would be
useful to display the recording label. Parse the list of recording
labels provided by musicbrainz and store them in AlbumDetails.
https://bugzilla.gnome.org/show_bug.cgi?id=674926
|
|
To disambiguate between albums with the same disc ID it would be
useful to display the recording label. NB musicbrainz provides a list
of recording labels for each release.
https://bugzilla.gnome.org/show_bug.cgi?id=674926
|
|
Helps to tell multiple releases apart where one is a normal release
and the other is a special release with a bonus disc.
https://bugzilla.gnome.org/show_bug.cgi?id=674926
|
|
Helps to tell multiple releases apart where one is a normal release
and the other is a special release with a bonus disc.
https://bugzilla.gnome.org/show_bug.cgi?id=674926
|
|
Musicbrainz returns the country as a 2 letter ISO country code. Add
functions based on totem's language code handling to convert that code
to the country name and store the name, rather than the code in
AlbumDetails::country.
Adds a dependency on iso-codes.
https://bugzilla.gnome.org/show_bug.cgi?id=674926
|
|
Quoting Calvin Walton from
https://bugzilla.gnome.org/show_bug.cgi?id=690903#c8:
"The fallback order for the sound-juicer track artist should be as follows:
- Use the track/artist-credit if present
- Otherwise use the recording/artist-credit if present
- As a final fallback, use the release/artist-credit
The fallback order for the sound-juicer track name should be as follows:
- Use the track/title if present
- Otherwise use the recording/title"
|
|
utility function to test if string is NULL, NUL or just ascii space.
https://bugzilla.gnome.org/show_bug.cgi?id=661646
|
|
https://bugzilla.gnome.org/show_bug.cgi?id=661646
|
|
https://bugzilla.gnome.org/show_bug.cgi?id=661646
|
|
|
|
https://bugzilla.gnome.org/show_bug.cgi?id=676748
|
|
Issue found with valgrind
|
|
Update sound-juicer to use version 5 of musicbrainz. This is
mostly a straight substitution (MUSICBRAINZ4→MUSICBRAINZ5,
Mb4→Mb5, and so on).
routines:
Drop conditional support for version 3 of the API, leaving 5
only.
https://bugzilla.gnome.org/show_bug.cgi?id=676749
|
|
Libmusicbrainz 4.0.3 deprecates this in favor of
mb4_releasegroup_get_primarytype
https://bugzilla.gnome.org/show_bug.cgi?id=661646
|
|
Now that we have a helper to iterate over all relations, better
to use it as much as possible. It would probably be more efficient
to have a relationlist_list_foreach helper iterating over RelationList
items contained in a RelationListList, and a relationlist_foreach helper
iterating over Relation items contained in a RelationList.
This would allow fill_relations to avoid iterating over and over
on the RelationListList while it's always only interested in the
'url' RelationLists.
https://bugzilla.gnome.org/show_bug.cgi?id=661646
|
|
libmusicbrainz 4.0.1 deprecates the mb4_xxx_get_relationlist methods in
favor of mb4_xxx_get_relationlistlist methods to enable access to all
the relationlists associated with an object. Loop over all lists instead
of just the one that was returned with mb4_xxx_get_relationlist.
https://bugzilla.gnome.org/show_bug.cgi?id=661646
|
|
Musicbrainz relations do not provide an album composer. If all the
tracks have the same or have no composer use the composer and
composer_sortname from the first track, if they have
differing composers set the album composer and composer_sortname to
"Various Composers".
https://bugzilla.gnome.org/show_bug.cgi?id=661646
|
|
fill_work_relations and fill_recording_relations are using the
same code to iterate over the relations contained in a
RelationListList. This commit moves the common code in a helper
function and changes these 2 functions to use it.
https://bugzilla.gnome.org/show_bug.cgi?id=661646
|
|
In Musicbrainz composers are related to works via composer relationships
and works are in turn related to recordings via performance
relationships. Use these to fill the composer metadata. This could
easily be extended to arrangers and lyricists.
Musicbrainz allows more than one relationship list to be associated with
any given object, however libmusicbrainz 4.0.0 only supported retrieving
one of them. This lead to problems getting the composer data for some
albums. Thanks go Andy Hawkins, the libmusicbrainz maintainer for
extending the API in version 4.0.1 to support retrieving all
relationship lists for an object.
Get track duration data from Mb4Track instead of Mb4Recording as the
track data is more accurate. (During testing several albums had no
duration data in their recording objects and some had incorrect data.)
This is how we got the track duration when we used libmusicbrainz3 and
it was reliable then.
https://bugzilla.gnome.org/show_bug.cgi?id=661646
|
|
https://bugzilla.gnome.org/show_bug.cgi?id=661646
|
|
https://bugzilla.gnome.org/show_bug.cgi?id=661646
|
|
https://bugzilla.gnome.org/show_bug.cgi?id=661646
|
|
https://bugzilla.gnome.org/show_bug.cgi?id=661646
|
|
Editors that strip trailing whitespace litter code changes with extra
changes from striping the whitespace. Prevent this by stripping all
trailing whitespace with
sed -i 's/ *$//' {src/libjuicer}/*.[ch]
https://bugzilla.gnome.org/show_bug.cgi?id=661646
|
|
https://bugzilla.gnome.org/show_bug.cgi?id=676000
|
|
The only addition to TrackDetails was the artist list, which this
commit adds to TrackDetails.
|
|
Move the useful bits to AlbumDetails, and remove the other
attributes which were added for completeness but are not really
useful to CD ripping.
|
|
Artist details will only be set by the musicbrainz4 backend, but
since it's easy to make it optional, it doesn't hurt to expose it
to the library users.
|
|
In libmusicbrainz 4.0beta2, memory handling has changed, now the
memory for list items no longer need to be freed.
|
|
Support for this has been removed from libmusicbrainz4 beta2
|
|
Now that the libmusicbrainz4 is on par feature-wise with
the libmusicbrainz3 code, we can enable it in configure.in. It also
adds it to the list of metadata backends known to sound-juicer
so that it can be used for metadata retrieval.
|
|
Extract the various URLs associated with an album when extracting
its metadata from musicbrainz.
|
|
It's stored in ReleaseGroup::type so we can now detect if
an album is some kind of audiobook when using libmusicbrainz4
|
|
|
|
In libmusicbrainz4, there are regular accessors for the ID every time
there is one available, so we can just use GET to get the various IDs
we need.
|
|
libmusicbrainz4 no longer provides an API to get the discid of
a physical CD, libdiscid has to be used for that.
|
|
This code should be able to retrieve at least as much information
from musicbrainz as the libmusicbrainz3 code, with the added
advantage that multi-disc CDs are working as expected. However,
extraction of the discid of a physical CD is no longer done by
libmusicbrainz4 and will have to be done using libdiscid
|
|
|
|
The 2 added sj-metadata-musicbrainz4.[ch] source files are copies
of the musicbrainz3 code which will be used as a base for
libmusicbrainz4 support.
It's disabled for now so that building of non-compilable code
isn't attempted.
|
|
|
|
We create a SjMetadata object in lookup_cd, and when we decide to
emit a signal, we don't unref it, so we don't need to add an
additional reference to it, otherwise we'll be leaking the object.
|
|
|
|
|
|
|
|
Signed-off-by: Ross Burton <ross@linux.intel.com>
|
|
Solaris is unique that it separates /dev/dsk and /dev/rdsk where /dev/dsk is
the logical name for the drive and /dev/rdsk is the raw device name. You need
to use the raw device name to acutally access the device. For example, you can
refer here for more information:
http://docs.sun.com/app/docs/doc/801-7038/6i1cfovsu?a=view
Note that the sound-juicer code already has some code to manage this in the
function sj_metadata_getter_set_cdrom() in libjuicer/sj-metadata-getter.c.
The attached patch adds 3 more places in the code where "/dev/rdsk" is needed
for sound-juicer to work well on Solaris. It also fixes the one place in
libjuicer/sj-metadata-getter.c which already references "/dev/rdsk" so the
#ifdef matches the others. THere is no need to also check for "__SVR4".
Signed-off-by: Ross Burton <ross@linux.intel.com>
|
|
It's been a while we've needed those in sound-juicer actually
(since we moved to using HAL for disc detection, a few year ago...)
|
|
|
|
|
|
|