Amarok/Community/ConvertToMpeg4

Jump to: navigation, search

Description

As an user of the cell phone SonyEricsson K750i, I really like listening to music while I can't use Amarok. To save a few megabytes on my memory stick, I created a shell script which converts the current song automatically to MPEG4-AAC.

Prerequisites

You need the MP3-encoder lame to convert your MP3s to wave files, the [faac encoder with MPEG4 support and, of course, Amarok.

Was true. Now you need only ffmpeg [1].

The script

Save this file as convertcurrent.sh and chmod +x it.

#!/bin/bash
file=`dcop amarok player path`
filename=${file##*/}
dirname=${file%/*}

if [ -f "$file" ]; then cp "$file" /tmp
fi

INPUT="/tmp/$filename"

if [ -f $INPUT ]; then
        chmod +w $INPUT
        OUTPUT="/tmp/${filename%.*}.m4a"
        ffmpeg -i "/tmp/$filename" $OUTPUT
        mv $OUTPUT $dirname/
        exit 0
fi

Limitations

  • due to a bug in faac, quality under 100 is not possible (faac crashes sometimes then); this valid for previous version -- the current one doesn't use faac, but ffmpeg and it does not set any parameters.
  • meta tags aren't included in the converted file; again -- valid for previous version, now they are included, because conversion is direct.

Usage

Just type in "./convertcurrent.sh". Then your currently playing file will be converted and put into the same directory as the original file, but with the extension .m4a.


This page was last edited on 12 December 2012, at 11:44. Content is available under Creative Commons License SA 4.0 unless otherwise noted.