n021102, JO-SOO-IN


0. 들어가기


Apple TV (2g)를 잘 이용하고 있었는데 avi 컨테이너의 국내 릴 영상들은 고작 720p인데도 애플 티비의 XBMC에서 끊기는 현상이 있었다.  
펌웨어를 4.4.4로 업데이트하고 XBMC도 11 Eden Beta로 새로 설치했으나 증상은 전과 동일하였다.
그래서 여러 방면에서 해결방안을 모색하던 중 간단한 스크립트를 이용하여 h.264 or x.264로 인코딩한 동일 폴더 내의 모든 avi 컨테이너를 mkv로 변경하도록 하였다.

(업데이트) AVI TO MKV에서 AVI, MKV, MP4 간의 자유로운 변환을 추가하였다.


이 스크립트는 mkvmerge가 필요한데 OS에 따라 여러 다른 설치본이 있다.

mkvmerge 다운로드 가기 (클릭)


1. 스크립트


1) AVI -> MKV


아래의 스크립트를 vi와 같은 편집기를 이용하여 작성하고 filename.sh로 저장한다.

#!/bin/bash

# name of this script: avi_to_mkv.sh

# convert : .avi -> .mkv

# dependency : mkvmerge 

 

for i in *.avi; do

  if [ -e "$i" ]; then

    file=`basename "$i" .avi`

    mkvmerge -v -o "$file.mkv" "$i"

  fi

done


2) MKV -> MP4

#!/bin/bash

# name of this script: mkv_to_mp4.sh

# convert : .mkv -> .mp4

# dependency : mkvmerge 

 

for i in *.mkv; do

  if [ -e "$i" ]; then

    file=`basename "$i" .mkv`

    mkvmerge -v -o "$file.mp4" "$i"

  fi

done


3) AVI -> MP4

#!/bin/bash

# name of this script: avi_to_mp4.sh

# convert : .avi -> .mp4

# dependency : mkvmerge 

 

for i in *.avi; do

  if [ -e "$i" ]; then

    file=`basename "$i" .avi`

    mkvmerge -v -o "$file.mp4" "$i"

  fi

done


2. 실행하기


스크립트와 동일한 폴더 내에 컨테이너를 변경할 국내릴 avi들을 복사하고 아래의 명령어를 실행한다.


sh filename.sh