Disel | Дата: Пт, 17.06.2011, 07:31 | Сообщение # 1 |
Генерал-лейтенант
Группа: Бывалый
Сообщений: 489
| Простой скрипт для нарезки видео для Youtube. Использует mplayer и ffmpeg, так что эти пакеты должны быть установлены, желательно из debian-multimedia. По умолчанию режет видео на куски по 14 минут 50 секунд, это значение можно поменять. Например
./video_split.sh film.avi порежет видео на три части с именами part000-film.avi, part001-film.avi, part002-film.avi, длительностью 14:50 каждая (890 секунд), а
./video_split.sh 445 film.avi порежет видео на шесть частей длительностью 7:25 (445 секунд) каждая.
Скрипт video_split.sh:
#!/bin/sh
usage() { echo "Usage:" echo " $0 [time frame in seconds] " }
set -e
# part length in seconds by default part=890
# check parameters if [ $# -eq 2 ]; then part="$1" file="$2" elif [ $# -eq 1 ]; then file="$1" else usage exit 1 fi if [ -z "$file" ]; then usage exit 1 fi
# counters i=0 secs=0
# video length in seconds len=`mplayer -identify -frames 0 "$file" 2>/dev/null | grep '^ID_LENGTH=' | sed 's/ID_LENGTH=//;s/\..*//'`
echo "Video length: $len"
# split while [ $secs -lt $len ]; do suffix=`printf '%03d' $i` ffmpeg -vcodec copy -acodec copy -ss $secs -t $part -i "$file" "part${suffix}-${file}" i=`expr $i + 1` secs=`expr $secs + $part` done
|
|
| |