You can not select more than 25 topics
			Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
		
		
		
		
		
			
		
			
				
					
					
						
							68 lines
						
					
					
						
							1.6 KiB
						
					
					
				
			
		
		
	
	
							68 lines
						
					
					
						
							1.6 KiB
						
					
					
				#!/bin/bash | 
						|
# | 
						|
# A simple cover fetcher script for current playing song on mpd. | 
						|
# | 
						|
# Original author: Wolfgang Mueller | 
						|
# | 
						|
# Adapted for Lain internal use. | 
						|
# https://github.com/copycat-killer/lain | 
						|
# | 
						|
# You can use, edit and redistribute this script in any way you like. | 
						|
# | 
						|
# Dependencies: imagemagick. | 
						|
# | 
						|
# Usage: mpdcover <music_directory> <song_file> <cover_resize> <default_art> | 
						|
 | 
						|
# Configuration------------------------------------------------------- | 
						|
 | 
						|
# Music directory | 
						|
MUSIC_DIR=$1 | 
						|
 | 
						|
# Song file | 
						|
file=$2 | 
						|
 | 
						|
# Regex expression used for image search | 
						|
IMG_REG="(Front|front|Cover|cover|Art|art|Folder|folder)\.(jpg|jpeg|png|gif)$" | 
						|
 | 
						|
# Path of temporary resized cover | 
						|
TEMP_PATH="/tmp/mpdcover.png" | 
						|
 | 
						|
# Resize cover | 
						|
COVER_RESIZE="$3x$3" | 
						|
 | 
						|
if [ $COVER_RESIZE == "x" ]; then | 
						|
    COVER_RESIZE="100x100" | 
						|
fi | 
						|
 | 
						|
# The default cover to use (optional) | 
						|
DEFAULT_ART=$4 | 
						|
 | 
						|
# Thumbnail background (transparent) | 
						|
COVER_BACKGROUND="none" | 
						|
 | 
						|
#-------------------------------------------------------------------- | 
						|
 | 
						|
# check if anything is playing at all | 
						|
[[ -z $file ]] && exit 1 | 
						|
 | 
						|
# Art directory | 
						|
art="$MUSIC_DIR/${file%/*}" | 
						|
 | 
						|
# find every file that matches IMG_REG set the first matching file to be the | 
						|
# cover. | 
						|
cover="$(find "$art/" -maxdepth 1 -type f | egrep -i -m1 "$IMG_REG")" | 
						|
 | 
						|
# when no cover is found, use DEFAULT_ART as cover | 
						|
cover="${cover:=$DEFAULT_ART}" | 
						|
 | 
						|
# check if art is available | 
						|
if [[ -n $cover ]]; then | 
						|
   if [[ -n $COVER_RESIZE ]]; then | 
						|
        convert "$cover" -scale $COVER_RESIZE -gravity "center" -background "$COVER_BACKGROUND" "$TEMP_PATH" | 
						|
        cover="$TEMP_PATH" | 
						|
   fi | 
						|
else | 
						|
   rm $TEMP_PATH | 
						|
fi | 
						|
 | 
						|
exit 0
 | 
						|
 |