WIP. Scale cover art option. Seems to work
This commit is contained in:
@@ -251,8 +251,6 @@ AudioCollectionRequestHandler::processGetTracks(const AudioCollectionRequest::Ge
|
||||
BOOST_FOREACH(Genre::pointer genre, (*it)->getGenres())
|
||||
track->add_genre_id( genre.id() );
|
||||
|
||||
// if (!(*it)->getCoverArt().empty)
|
||||
// track->set_coverart( (*it)->getCoverArt() );
|
||||
}
|
||||
|
||||
return true;
|
||||
@@ -278,10 +276,13 @@ AudioCollectionRequestHandler::processGetCoverArt(const AudioCollectionRequest::
|
||||
|
||||
std::vector<CoverArt::CoverArt> coverArts = CoverArt::Grabber::getFromRelease(release);
|
||||
|
||||
BOOST_FOREACH(const CoverArt::CoverArt& coverArt, coverArts)
|
||||
BOOST_FOREACH(CoverArt::CoverArt& coverArt, coverArts)
|
||||
{
|
||||
AudioCollectionResponse_CoverArt* cover_art = response.add_cover_art();
|
||||
|
||||
if (request.has_size())
|
||||
coverArt.scale(request.size());
|
||||
|
||||
cover_art->set_mime_type(coverArt.getMimeType());
|
||||
cover_art->set_data( std::string( coverArt.getData().begin(), coverArt.getData().end()) );
|
||||
}
|
||||
@@ -299,10 +300,21 @@ AudioCollectionRequestHandler::processGetCoverArt(const AudioCollectionRequest::
|
||||
|
||||
std::vector<CoverArt::CoverArt> coverArts = CoverArt::Grabber::getFromTrack(track);
|
||||
|
||||
BOOST_FOREACH(const CoverArt::CoverArt& coverArt, coverArts)
|
||||
BOOST_FOREACH(CoverArt::CoverArt& coverArt, coverArts)
|
||||
{
|
||||
AudioCollectionResponse_CoverArt* cover_art = response.add_cover_art();
|
||||
|
||||
if (request.has_size())
|
||||
{
|
||||
std::size_t size = request.size();
|
||||
if (size > _maxCoverArtSize || size == 0)
|
||||
size = _maxCoverArtSize;
|
||||
if (size < _minCoverArtSize)
|
||||
size = _minCoverArtSize;
|
||||
|
||||
coverArt.scale(size);
|
||||
}
|
||||
|
||||
cover_art->set_mime_type(coverArt.getMimeType());
|
||||
cover_art->set_data( std::string( coverArt.getData().begin(), coverArt.getData().end()) );
|
||||
}
|
||||
|
||||
@@ -29,6 +29,9 @@ class AudioCollectionRequestHandler
|
||||
static const std::size_t _maxListGenres = 256;
|
||||
static const std::size_t _maxListReleases = 128;
|
||||
static const std::size_t _maxListTracks = 128;
|
||||
|
||||
static const std::size_t _minCoverArtSize = 64; // in pixels, square
|
||||
static const std::size_t _maxCoverArtSize = 512; // in pixels, square
|
||||
};
|
||||
|
||||
} // namespace Remote
|
||||
|
||||
Reference in New Issue
Block a user