Шукати в цьому блозі

понеділок, 9 листопада 2009 р.

Мои изыскания по конвертированию avi в mp4 для проигрывания фильма на HTC Android G1 (гуглофоне) - 3 серия (заключительная)

Ура! Ура! Ура! Я его таки сделал! Вот что значит - хорошенько отдохнуть и уже на свежую голову перечитать весь материал заново.
Собственно я не знаю, будет ли работать это решение если не проделать все предыдущие "махинации" (1, 2), но факт остаётся фактом - я конвертанул видео в нужные андроиду формат и теперь есть и видео, и звук.
Для этого потребовалось всего лишь внимательней прочитать статью "Converting Videos For The Android T-Mobile G1 Phone With Linux", а если быть более точным то комментарии к ней. Там есть ссылка на уже готовый и вполне работоспособный код. У себя я его обозвал android_ffmpeg_converter, сказал ему chmod +x и вуаля! Вот, собственно, содержимое скрипта:
#!/bin/bash
# AUTHOR: M@sprackle.org
# PURPOSE: To convert one file or many files to Android format and size.
# LIMITATIONS: Get the Cancel button working in Zenity pop-up
# INSTALL: Place this script in "~/.gnome2/nautilus-scripts/Android"
# and set to execute `chmod +x ~/.gnome2/nautilus-scripts/Android`
# USE: Just right click on a file or folder that contains files you
# would like to convert to an Android format.  This was converted from
# my already used iPhone script.
#
# Where do you want all of these files to be saved?
# You should NOT have to edit below this line
SAVESPOT="~username/tmp/movie"
#
# Same as above I just wanted a single place to find my files
if [ ! -d $SAVESPOT ]; then
mkdir $SAVESPOT
fi
# Lets see if this was a single file or a Directory
if [ -f "$1" ]; then
#
# Let's cut up the name so it's not example.avi.mp4
NEWNAME=`echo "$1" | awk -F. '{print $1}'`
#
# Run the command - I found all these flags on some website.
# So far they're good.
ffmpeg -i "$1" -s 480x256 -vcodec mpeg4 -acodec libfaac -ac 1 -ar 16000 -r 13 -ab 32000 -aspect 3:2 -padtop 32 -padbottom 32 $SAVESPOT/"$NEWNAME".mp4 </dev/null
#
# Ta-Da
else
#
# I placed the files in a new Directory to make them easy to find
cd "$1"
#
# Lets find the files we want to work with.
find . -type f -print0 | while read -d $'\0' file; do
#
# Lets check to see that this is a video file first
file "$file" | egrep "video:"
#
# If the egrep returns a "0" it found the phrase "video:" then continue
if [ $? != "0" ]; then
exit 1
fi
# Let's cut up the name so it's not example.avi.mp4
NEWNAME=`echo "$file" | cut -c 3- | awk -F. '{print $1}'`
#
zenity --text "Processing $NEWNAME" --info &
# Run the command - I found all these flags on some website.
#  So far they're good.
ffmpeg -i "$file" -s 480x256 -vcodec mpeg4 -acodec libfaac -ac 1 -ar 16000 -r 13 -ab 32000 -aspect 3:2 -padtop 32 -padbottom 32 $SAVESPOT/"$NEWNAME".mp4 </dev/null
#
zenity --text "$NEWNAME Complete" --info &
#
# Ta Da
done
#
fi
и всё! Как говориться, приятного просмотра :)
Возможно, и даже наверняка, потребуется внести изменения в переменную SAVESPOT и указать в ней директорию куда надо сохранять итоговое сконвертированное видео. Параметры-же у этого скрипта более чем простые. Параметр один - имя конвертируемого файла.
Счастливого просмотра :)

Немає коментарів: