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
 | |
| 
 |