flv2mp3
C
code posted
by
Oliver Heins
created at 14 Jul 23:28
Edit
|
Back
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 |
#!/bin/bash # # flv2mp3.sh -- converts flv and mp4 to mp3. # # Copyright (c) 2010 Oliver Heins <heins@sopos.org> # # Permission is hereby granted, free of charge, to any person # obtaining a copy of this software and associated documentation files # (the "Software"), to deal in the Software without restriction, # including without limitation the rights to use, copy, modify, merge, # publish, distribute, sublicense, and/or sell copies of the Software, # and to permit persons to whom the Software is furnished to do so, # subject to the following conditions: # # The above copyright notice and this permission notice shall be # included in all copies or substantial portions of the Software. # # THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, # EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF # MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND # NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS # BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN # ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN # CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE # SOFTWARE. a=0 b=0 progname="flv2mp3" workingdir=~/dwhelper [ -d "$workingdir/mp3" ] || mkdir -p "$workingdir/mp3" [ -d "$workingdir/flv" ] || mkdir -p "$workingdir/flv" for i in $workingdir/*; do type=$(file -b "$i") if [ "$type" = 'Macromedia Flash Video' -o "$type" = 'ISO Media, MPEG v4 system, version 2' ]; then b=$(($b+1)) titel=$(basename "$i") titel=${titel%%.flv} titel=${titel%%.mp4} zenity --info --title="$progname" --text="Rippe $titel" & pid=$! sleep 1 mplayer -quiet -osdlevel 3 -ao pcm:file=$workingdir/out.wav "$i" exitstatus=$? kill $pid if [ $exitstatus -eq 0 ]; then a=$(($a+1)) zenity --info --title="$progname" --text="Konvertiere $titel nach Mp3" & pid=$! lame $workingdir/out.wav "$workingdir/mp3/$titel.mp3" mv "$i" $workingdir/flv/ kill $pid else zenity --error --title="$progname" --text="Fehler beim Konvertieren von $titel" fi rm $workingdir/out.wav fi done echo "a=$a b=$b" if [ $b -gt 0 ]; then zenity --info --title="$progname" --text="$a von $b Dateien wurden konvertiert." else zenity --error --title="$progname" --text="Es sind keine Dateien zum Konvertieren vorhanden." fi |
2.35 KB in 5 ms with coderay