37 lines
		
	
	
		
			864 B
		
	
	
	
		
			Bash
		
	
	
		
			Executable File
		
	
	
			
		
		
	
	
			37 lines
		
	
	
		
			864 B
		
	
	
	
		
			Bash
		
	
	
		
			Executable File
		
	
	
| #!/bin/bash
 | |
| 
 | |
| ALBUM_NAME="${1}"
 | |
| OLD_FORMAT="flac"
 | |
| NEW_FORMAT="mp3"
 | |
| NEW_ALBUM_NAME="${ALBUM_NAME}_${NEW_FORMAT}"
 | |
| BITRATE="128k"
 | |
| LOG_LEVEL="error"
 | |
| 
 | |
| ## If it's an album
 | |
| if [ -d "${ALBUM_NAME}" ]; then
 | |
|   printf 'Convert %s to %s\n' "${ALBUM_NAME}" "${NEW_ALBUM_NAME}"
 | |
| 
 | |
|   ## Create the new directory
 | |
|   mkdir -p "${NEW_ALBUM_NAME}"
 | |
| 
 | |
|   ## Go to the album directory
 | |
|   pushd "${ALBUM_NAME}"
 | |
| 
 | |
|   ## For all files with the old format in the album directory
 | |
|   for FILE in *.${OLD_FORMAT}
 | |
|   do
 | |
|     # -v error: display only if error
 | |
|     avconv -v "${LOG_LEVEL}" -i "${FILE}" -b "${BITRATE}" "${NEW_ALBUM_NAME}/${FILE%${OLD_FORMAT}}${NEW_FORMAT}"
 | |
|   done
 | |
| 
 | |
|   popd
 | |
| 
 | |
| else
 | |
|   FILE="${ALBUM_NAME}"
 | |
|   if [ -f "${FILE}" ]; then
 | |
|     printf 'Convert %s to %s\n' "${FILE}" "${NEW_FORMAT}"
 | |
|     avconv -v "${LOG_LEVEL}" -i "${FILE}" -b "${BITRATE}" "${FILE%${OLD_FORMAT}}${NEW_FORMAT}"
 | |
|   fi
 | |
| 
 | |
| fi
 |