우분투에서 노키아 5800XM 동영상 인코딩하기

전 현재 데스크탑은 윈도와 우분투를 멀티 부팅하고 있는 상태입니다.(노트북은 우분투 하나) 물론 처음에 윈도를 설치했던 이유는 오로지 게임 때문인지라(…) 윈도에는 게임 외에는 아무것도 설치되어있지 않습니다. 압축 프로그램도 없고, 동영상 플레이어, 음악 재생기 같은 프로그램도 없습니다.요즘은 게임도 잘 안해서 주로 우분투로만 부팅해서 쓰는 중인데, 간혹 윈도우즈를 켜야할 때가 여전히 있습니다. 그 중 한가지가 바로 핸드폰에 넣을 동영상을 인코딩하는 작업이었습니다. 물론 리눅스에도 뛰어난 동영상 인코더인 mencoder가 있지만, 커맨드 라인 기반으로 그 괴악스러운 옵션을 터미널에서 일일이 써가면서 인코딩하고 싶지는 않더군요. GUI 기반의 gmencoder나 winff 같은 툴도 있지만, gmencoder는 gmplayer를 닮았는지 GUI가 콘솔보다 더 어렵고-_- winff는 사용이 상당히 제한적이었습니다. 그래서 동영상 인코딩만큼은 여전히 윈도의 다음팟 인코더에서 하고 있었습니다.그러다가 포럼에서

이 글

을 보게 되었습니다. 우분투의 노틸러스 스크립트 기능을 이용한 동영상 인코딩 스크립트입니다. 이 스크립트를 이용하면 파일에서 오른클릭을 통해 쉽게 동영상을 변환할 수 있습니다. 그런데 이 스크립트는 가장 중요한 자막 인코딩이 안되더군요. 그래서 이 스크립트를 기반으로 자막 지원을 하도록 개선시켜보았습니다. 아래는 현재 제가 쓰고 있는 설정에 기반하여 작업한 스크립트입니다. mencoder를 이용하는 스크립트이므로 먼저 mencoder가 설치되어있어야합니다. 시냅틱 패키지 관리자에서 mencoder를 먼저 설치해주시기 바랍니다^^현재 기본 설정비디오 코덱 : MPEG4오디오 코덱 : mp3(lame 사용);우분투 10.04에서 libaac가 저작권 문제 우려로 빠짐에 따라 lame 코덱으로 대체하였습니다.비디오 비트레이트 : 1000Kbps오디오 비트레이트 : 128Kbps해상도 : 640 * -3(가로 길이는 640, 세로는 화면 비율에 따라 가변)

#!/bin/bash# Nokia 5800 영상변환 + 자막exec 3> >(zenity –notification –listen)while read -r FILEdoif [[ -f $FILE ]]thenecho “tooltip: ${FILE} 이 영상변환 됩니다.” >&3#NAME=`echo “$FILE” | cut -d’.’ -f1`NAME=`basename “$FILE” .avi`mencoder -of lavf -lavfopts format=mp4 -oac mp3lame -ovc lavc -lavcopts threads=3:aglobal=1:vglobal=1:acodec=libmp3lame:abitrate=128:vcodec=mpeg4:vbitrate=1000:keyint=25:trell -af lavcresample=44100 -vf harddup,scale=640:-3 -mc 0 “$FILE” -o “[5800]${NAME}.mp4” -font “/usr/share/fonts/truetype/unfonts/UnDotum.ttf” -sub “${NAME}.smi” -utf8 -subcp cp949 -subpos 95fidone <<< "$NAUTILUS_SCRIPT_SELECTED_FILE_PATHS"echo "message:변환이 완료됐습니다." >&3exec 3>&-

이 내용을 텍스트 에디터에 붙여넣으신 뒤 실행 권한을 주시거나, 아니면 아래 스크립트 파일을 다운 받으시면 됩니다.

scripts

스크립트 파일이 만들어졌으면 홈폴더에서 Ctrl + H 한 다음 .gnome/nautilus-scripts 에 파일을 넣어주세요.그런 다음 동영상 파일에서 오른 클릭해서 스크립트를 실행하면 동영상을 손쉽게 변환할 수 있습니다^^

단 변환되는 과정이 나타나질 않아서 얼마나 변환되는지 알 수 없다는 단점이 있습니다만=_=;; 대신 트레이에 변환 작업을 하고 있다는 것을 알려주는 아이콘이 나타납니다^^