If the server supports embedded cover art, all we need to do now is
pass --embedded to the thumbnailer and everything will Just Workâ˘
my $SELF = "$FindBin::Bin/$FindBin::Script";
my $MUSIC = $ENV{MUSIC} // "/srv/music";
my $SELF = "$FindBin::Bin/$FindBin::Script";
my $MUSIC = $ENV{MUSIC} // "/srv/music";
+my ($sock, $mpd_have_binarylimit);
my ($albumid, $albumname, $trackid, $recordingid);
my ($topmenu, $menu);
my ($albumid, $albumname, $trackid, $recordingid);
my ($topmenu, $menu);
+ if ($mpd_have_binarylimit) {
+ # --embedded implies and requires binarylimit support
+ push @opts, "--embedded";
+ } else {
+ push @opts, "--no-binarylimit";
+ }
+
open THUMB, "-|", "$FindBin::Bin/mpdthumb.sh", @opts, "--", @_;
foreach (@_) {
my $thumb = <THUMB>;
open THUMB, "-|", "$FindBin::Bin/mpdthumb.sh", @opts, "--", @_;
foreach (@_) {
my $thumb = <THUMB>;
die("MPD version $MPD::major.$MPD::minor.$MPD::revision insufficient.")
unless MPD::min_version(MPD_MJR_MIN, MPD_MNR_MIN, MPD_REV_MIN);
die("MPD version $MPD::major.$MPD::minor.$MPD::revision insufficient.")
unless MPD::min_version(MPD_MJR_MIN, MPD_MNR_MIN, MPD_REV_MIN);
+MPD::exec("binarylimit", 64);
+while (<$sock>) {
+ $mpd_have_binarylimit = 1 if /^OK/;
+ last if /^OK/ or /^ACK/;
+}
+
if ($mode eq "top") {
my %current;
my %state;
if ($mode eq "top") {
my %current;
my %state;