Trợ giúp:Mpeg2dv.sh

From Wikimedia Commons, the free media repository
Jump to navigation Jump to search
This page is a translated version of a page Help:Mpeg2dv.sh and the translation is 88% complete. Changes to the translation template, respectively the source language can be submitted through Help:Mpeg2dv.sh and have to be approved by a translation administrator.

If your movie editing software does not directly import mpeg files from your digital camera, you might need to convert them to dv in order to import in for example into iMovie.

Hướng dẫn

  1. Sao chép mã này xuống Desktop của bản; nên chú ý là tệp có định dạng .sh chứ không phải .sh.txt.
  2. Đặt tập lệnh vào một nơi thích hợp như /usr/local/bin/mpeg2dv.sh trên Mac OS X hoặc ví dụ ~/bin/mpeg2dv.sh trên Linux có trong biến môi trường $PATH và chạy nó nếu cần thiết.
  3. Mở terminal (Terminal.app trên Mac OS X; mở Finder từ Dock, sau đó chọn Application từ mục Favorites ở khung bên trái cửa sổ. Tìm và truy cập thư mục Utilities) vã gõ:
mpeg2dv.sh anMpgFile.mpg anotherMpgFile.mpg

Kết quả sẽ là các tệp có định dạng .dv ở thư mục con đã nêu.

#!/bin/sh

# This script converts mpeg files from a digital camera 
# into the DV format using the ffmpeg tool.
#
# Eric Kow
# Public domain - do whatever you want with this

FFMPEG_FLAGS="-ac 2 -ar 48000 -hq -s 720x480"
TYPE_1=
TYPE_2='-map 0:1 -map 0:0' 
TYPE_3='-map 0:2 -map 0:1'

try_ffmpeg() {
  IN_FILE=${1}
  OUT_FILE=${2}
  while [ "$#" -gt "2" ]
  do
    TYPE=${3}
    ffmpeg -i "${IN_FILE}" ${TYPE} ${FFMPEG_FLAGS} "${OUT_FILE}" || :
    if [ -s ${OUT_FILE} ]; then
      return 0
    else
      rm ${OUT_FILE}
    fi
    shift
  done
}

# for each file...
while [ "$#" -gt "0" ]
do
  # what file are we working on now?
  in_file=$1
  in_file_uscore=`echo ${in_file} | sed -e 's/ /_/g'`
  out_file_stem=`basename ${in_file_uscore} .mpg`
  out_file=${out_file_stem}.dv
  shift

  try_ffmpeg "${in_file}" "${out_file}"\
    "${TYPE_1}" "${TYPE_2}" "${TYPE_3}"
done