2015년 3월 23일 월요일

smi2srt 변환방법 정리

안녕하세요. Nacle입니다.
예전에 올린 글을 보니 너무 어렵게 되어 있는 것 같아 다시 정리해서 올립니다.
첨부파일은 예전글에서 다운받으세요(링크)
큐냅 TS-251 기준으로 작성하였으며 큐냅의 경우는 대부분 그대로 적용이 가능하며 시놀로지의 경우는 iconv를 제외하면 동일하게 적용이 가능합니다.



  • 첨부파일 설명
    • smi2srt.sh : 스크립트 파일.
    • smi2srt_ds110j : 시놀로지 110j에서 컴파일한 ARM용 실행파일. 110j, 210j, 211j, LG N1A1 등에서 실행됨을 확인 함.
    • smi2srt_ts251 : 큐냅 TS-251에서 컴파일한 Atom용 실행파일. TS-251외에는 테스트 해보지 않았음.
  • 설치방법
    • smi2srt_xxxxxx 형태의 이름 변경. 자신의 nas에 맞는 파일을 찾아 이름을 sm2srt로 변경
      • smi2srt.sh의 내용을 수정
    • smi2srt와 smi2srt.sh를 나스에 업로드
  • 스크립트 내용
    • smi2srt.sh의 내용을 간략화 하면 아래와 같습니다.
    • #!/bin/sh
      targetdir=’/share/Multimedia/’
      smidir=’/share/Dev’
      find $targetdir -name “*.smi” | grep -v @eaDir | while read oldfile
      do
       newfile=${oldfile%smi}srt
              if [ -f “$newfile” ]
       then
               echo “$oldfile” “Skip!!”
       else
               echo “$oldfile => $newfile” converted
               $smidir/smi2srt “$oldfile” “$newfile” -d1
       fi
      done
      
   여기서 중요한 부분은 targetdir 과 smidir입니다.
   targetdir은 smi 파일이 위치하게 되는 디렉토리 위치입니다.
   Multimedia라는 이름의 공유폴더 안에 smi 파일이 존재한다면
   큐냅의 경우 /share/Multimedia/
   시놀로지의 경우 /volume1/Multimedia/ 가됩니다.

   smidir은 smi2srt 실행파일이 있는 위치입니다.
   경로는 targetdir과 같은 형태로 수정하면 되고 이때 경로 마지막에 /를 붙여야 합니다.

   * 첨부한 smi2srt.sh는 iconv까지 적용을 하였기 때문에 예시로 든 스크립트와는 차이가 있습니다.
     첨부한 파일에는 targetdir이 두개가 지정이 되어있습니다.
      iconv를 이용하여 캐릭터셋 변경을 하지 않는다면 위의 스크립트를 사용하시면 됩니다.

이제 smi2srt.sh를 실행하면 지정된 targetdir 디렉토리 하위의 모든 smi 파일이 srt로 변환이 됩니다.
시놀로지의 작업스케줄러에 등록하거나 crontab에 직접 등록을 하게 되면 지정된 시간마다 smi2srt 변환을 하게됩니다.
* Serviio를 사용시 iconv로 UTF-8 캐릭터셋으로 변환하면 한글이 깨져보이는 현상이 있습니다.
  아래 링크에서 해결법 참고 하세요.

제 블로그에 썼던 관련글들 링크입니다.
smi2srt 변환 : http://naclepark.blogspot.kr/2015/03/smi2srt-converter-for-nas.html
iconv 캐릭터셋 변경(큐냅) : http://naclepark.blogspot.kr/2015/03/iconv.html
serviio사용시 한글깨짐 (UTF8) : http://naclepark.blogspot.kr/2015/03/utf-8-with-bom-for-serviio.html
crontab등록(큐냅) : http://naclepark.blogspot.kr/2015/03/iconv.html

댓글 없음:

댓글 쓰기