2010년 12월 13일 월요일

아이폰용 동영상 변환기 v2.x 대대적 업데이트

by BLUEnLIVE | 2010/12/02 00:24

아이폰 동영상 한방에 변환하는 툴: 완벽 버전 by BLUEnLIVE | 2010/11/15 01:21 아이폰(아이패드, 아이팟 터치)의 단점 중 하나는 동영상을...


아이폰용 동영상 변환기(이하 VCi로 칭함)에 대해 정말 많은 분들께서 피드백을 보내주셨다.
개인적으로 혼자 쓰려고 만든 프로그램에 너무나 많은 분들께서 관심을 보여주신 게 당황스러우면서 고마웠다.

그동안 받은 요청을 포함하며 상당히 많은 부분에 대해 대대적인 업데이트를 단행했다.

아무리 업데이트 되어도, 인터페이스는 언제나 불변!


지난 포스팅에 댓글을 통해 요청받고, 수정/공지한 내용 및 자체적으로 수정한 내용들을 전부 정리했다.



VCi의 기능 및 특징은 아래와 같다.

1. 변환을 원하는 파일을 비디오 파일 목록에 떨어뜨린 뒤 변환 버튼을 클릭하면 알아서 변환함
   인식하는 파일 포맷은 AVI, MKV, MP4, MOV, OGM, FLV

2. 저장 위치는 기본적으로 원본 폴더이며, 저장할 폴더를 지정할 수 있음

3. 결과 파일은 원본 파일명 앞에 [VCi]를 붙임
   필요시 추가로 싱크를 보정하며, 결과물은 원본 파일명 앞에 [VCi-DC]를 붙임

4. 비디오 스트림은 원본에서 추출하며, 오디오 스트림은 추출한 뒤 AAC-LC로 변환해서 다시 합침
   오디오가 AAC-LC일 경우 재인코딩은 옵션 선택에 따라 안할 수도 있음

5. 아이폰4 재생가능 여부 관련 체크박스가 있는데, 체크하면 스펙에 명시된 규격을 넘어설 때 처리하지 않음
   기본값은 체크이며, 체크를 권장함

6. 5번과 무관하게 비디오 포맷을 확인해서 H.264MPEG-4 Visual이 아니면 처리하지 않음

7. 플래쉬 비디오(flv)도 변환하는데, 역시 비디오 포맷이 5, 6번의 범위가 아니면 처리하지 않음
   단, flv 추출 프로그램은 .NET FW 2.0 기반으로 되어있기 때문에 flv를 변환하려면 반드시 FW을 설치해야 함

8. 원본 파일과 같은 이름의 오디오/자막 파일이 같은 폴더에 있으면 그 파일을 사용함

9. 내부 오디오가 여러개일 때는 사용할 오디오의 우선순위를 국가코드로 지정할 수 있음

10. 내부/외부 오디오가 여러 개이며, 우선순위를 지정하지 않으면 다음 순서로 하나를 선택함
   AAC → WAV → DTS → AC3 → MP3 → MP2 → OGG (합치기만 하면 되는 오디오 → raw 오디오 → 음질 순)

11. 내부 자막은 SRT, ASS(SSA)를 인식하며, 있는 그대로 사용하고, 외부 자막은 SMI → SRT 순으로 사용함
   다중 언어 SMI는 모든 자막을 다 변환해서 사용하며, KRCC/ENCC/EGCC/JNCC를 각국어로 인식함
   원본 자막 파일 형식은 ANSI, 유니코드-BOM, 유니코드 UTF-8를 지원하며 알아서 인식해서 완벽히 변환
   ※ 내부적으로 유니코드만 사용하기 때문에 변환하지 못하는 글자는 없으며 최대한 오류를 보정함

12. 원본의 내부 자막이 여러 개이거나 SMI가 다중언어로 구성된 경우는 모든 국가의 자막을 변환
   외부자막이 SRT인 경우는 다중자막 적용 불가하고, 외부자막으로는 ASS/SSA를 지원하지 않음

13. 출력되는 자막의 크기는 18/24/36/48포인트를 사용가능한데, 이는 아이패드를 위한 것임
   하지만, 아이폰/아이패드의 퀵타임 재생기가 자막의 크기를 인식하지 않기 때문에 아직은 의미 없음

14. 원본 비디오의 delay 값을 인식하고, 이를 적용해서 오디오/비디오 싱크를 맞춤.
   또한, 추가적으로 원본과 생성본의 비디오 길이를 비교해서 필요시 싱크를 한번 더 맞춤.

15. 아이폰4 뿐 아니라, 아이폰 3 계열, 아이패드 모두 사용 가능하며, 변환 후 재생이 안 되면 더 이상은 어쩔 수 없음

16. 선택한 옵션은 모두 레지스트리에 저장되며, 저장 시점은 변환을 시작했을 때와 저장 버튼을 클릭했을 때임.
   즉, 옵션을 선택하고 프로그램을 종료하는 경우는 저장하지 않음
   저장위치는 \\HKEY_CURRENT_USER\Software\BLUEnLIVE\Video Converter for iPhone

17. VCi는 다양한 미디어 관련 프리웨어의 프론트엔드이며, 직접 변환에 개입하는 것은 자막이 유일함
   VCi에서 사용하는 프리웨어 8종은 다음과 같음
   ffmpeg, MKV Extract, Media Info, MP4Box, FLV Extract, Nero AAC Encoder, OGM Demuxer, normalize

프로그램은 아래 링크에서 다운받을 수 있다.


덧1. 막상 정리하고 보니, 기능이 정말 많이 추가되었다. 처음 계획한 건 이렇게 많은 기능이 아니었는데… ㅎㅎ

덧2. 아이콘을 훨씬 평범(?)한 것으로 바꿨다. ㅋㅋ


2010.12.7: 2.0a 업데이트
 - 자막 글꼴의 크기를 18, 24, 36, 48pt로 설정 가능
 - StatusBar를 고정폭 글꼴로 변경

2010.12.11: 2.1 업데이트
 - 아이콘 또 변경
 - 동영상 정보를 조금 더 상세히 출력
 - mkv 내장 자막 변환시 자막 종류를 확인하도록 수정
 - mkv 내장 자막 중 srt 외에 ASS(SSA)도 변환하도록 수정 / 외부 ASS/SSA는 처리하지 않음

ASS 포맷의 내장 스페인어 자막도 완벽하게 변환함 v^.^v


 - baseline 지정 기능 제거 (불필요)
 - 재생가능 비디오 규격 확인을 정확하게 하고, 재생 불가능 이유 표시하도록 수정 (재생가능 비디오 규격 확인 권장함)
 - 비디오 fps가 30 이하인지 확인하는 옵션을 별도로 분리 (아이튠즈는 30fps 이상도 올릴 수 있음)
 - 버그 수정: no sub를 no audio로 표시했던 버그 수정
 - 버그 수정: 일부 H.264를 재생되지 못하게 profile을 잘못 지정했던 버그 수정

2010.12.13: 2.2 업데이트
 - AAC 자동 인코딩 옵션의 기본값을 off로 변경
 - 정보창의 글꼴 크기 줄이고, 내용 정리
 - 버그 수정: 가끔 실행 오류 발생하던 현상을 수정.
   임시 폴더 지정의 오류로 수시로 임시 폴더를 확인/수정하도록 변경

2010.12.13: 2.3 업데이트
 - 실행권한 상승으로 Windows 7에서 보다 안정적인 동작 보장
 - MPEG4 비디오 코덱 중 구형 코덱인 DIV3/DIV4/DIV5은 처리하지 않도록 수정

2010년 12월 12일 일요일

[투어리스트]: 007을 너무 의식한 거 아냐?


[투어리스트]는 알려진 대로 [안소니 짐머]의 리메이크 영화다.
어리버리한 남자 관광객이 무서운(?) 여자에게 유혹을 받았다가 제대로 관광당하는 영화...

액션 쪽에서 보면 뭔가 모자라보였지만, 로맨스 중심의 가벼운 데이트 무비로는 적당해 보였다. 로맨틱 스릴러?
(특히, 같이 가신 마누라님께선 조니 뎁 외모에 대해서 계속 극찬을...)

이 영화는 원작인 [안소니 짐머]보단 여러모로 007 시리즈를 의식한 듯 하다.


1. 베니스에서 보트타는 주인공들


이 장면 정말 멋지지 않은가?
그런데, 이 장면은 여러모로 [위기일발]의 한 장면을 생각나게 했다.


베니스에서 여유롭게 보트를 타는 주인공 커플이다. 그렇다. 베니스다!


졸리 여사님이 베니스에서 혼자 도도히 보트를 몰고 가는 장면 역시 어디선가 보던 거다.


그렇다! [카지노 로얄]에서 에바 그린이 베니스에서 도도히 보트를 몰고 다녔다!


남자 주인공이 베니스에서 위태롭게 보트를 타는 장면은?


[문레이커]에서 제임스 본드가 위태롭게 보트를 타고 다녔다.
정확히는 추진장치를 장착한 곤돌라지만...


2. 지붕 위를 열심히 뛰어다니는 주인공?



열심히 지붕 위를 뛰어다니는 주인공이라면 역시 [본 얼티메이텀]의 제이슨 본이다.
조니 뎁이 옥상 위를 느릿느릿 걸어서 도망가는 장면은 약간은 [본 얼티메이텀]을 연상시켰다.


그런데, [본 얼티메이텀]의 지붕 씬은 [리빙데이라이트]에서 상당 부분 차용한 장면들이다.
하지만, 속도감은 비교할 바가 못된다. [본 얼티메이텀]의 장면들은 현기증이 날 지경이다.

그래서, [투어리스트]의 옥상 추격씬은 [리빙데이라이트]에 훨씬 가까워보였다.


3. 배우들은?


존스 경감 역을 맡은 배우는 다름 아닌 4대 제임스 본드 티모시 달튼이다.

Tough James Bond


그런데, 중령에서 경감으로 바뀌었으면 계급이 오히려 낮아진 걸까? (뭐?)


쇼 역을 맡은 배우는 스티븐 베르코프다.

[옥토퍼시]에서 "나쁜" 소련군으로 출연해 "착한" 소련군에게 사살당함


[투어리스트]에서 쇼에 대해 러시아 인들과 엮여있어 러시아인 같지만, 영국인이라는 설명이 나온다.
이건 배우 베르코프와 영화 [옥토퍼시]에서 맡은 캐릭터 올라프 장군에 대한 설명이다.

그는 정말 영국 배우이다. 그것도 런던 출생.
하지만, 억양이 강하고 [옥토퍼시]에선 소련군으로 출연해 러시아인이라는 인상을 준는 점을 설명한 것이다.


4. 그 외...


두 주인공이 춤추는 장면은 [트루 라이즈]의 탱고 장면을 연상시킨다.
뭐, 이젠 너무 많은 영화에서 써먹은 장면이긴 하지만...

그리고...

You're a part of a plan.

이 대사 어쩐지 [다크 나이트]의

It's all part of the plan.

을 연상시킨다.

2010년 12월 9일 목요일

아이튠즈로 아이폰에 올릴 수 있는 비디오 검토 결과

iPhone4에서 재생가능한 비디오 포맷… (정말?)


애플 홈페이지에서 공식적으로 얘기하는 재생가능한 최대 비디오 포맷은 아래와 같다.

- H.264: 720p, 30fps, Main Profile level 3.1, 오디오는 AAC-LC, 160Kbps, 48kHz, 스테레오, .mp4
- MPEG-4: 2.5Mbps, 640x480, 30fps, Simple Profile, 오디오는 AAC-LC, 160Kbps, 48kHz, 스테레오, .mp4
- MJPEG: 35Mbps, 1280x720, 30fps, 오디오는 ulaw, PCM, 스테레오, .avi

그런데, 실제로 동영상을 올려보면 조건을 만족하지 않더라도 올라가고, 만족하는 것 같은데 안 올라가는 경우도 있다.
MJPEG는 좀 특이한 경우라 옆으로 빼놓고, .mp4 파일에 저장하는  H.264/MPEG-4에 대해 여러모로 확인해봤다.

오디오는 AAC-LC, 160Kbps, 48kHz, 스테레오 규칙을 지켜야 한다.
그런데, 올라가는 비디오는 좀 다르다.

- H.264: 720p, 30fps, High Profile level 3.1
- MPEG-4: 2.5Mbps, 480p, 30fps, Advanced Simple Profile

H.264의 경우 Main Profile 뿐만 아니라 High Profile까지 올라간다.
재미있는 건 진짜 프로파일이 High Profile일 필요는 없다는 것.
즉, 프로파일이 그 이상이더라도 .mp4 파일을 만들 때 옵션을 High@3.1로 지정만 해주면 업로드 및 재생이 가능하다.
게다가, fps는 확인을 하지 않는다. 무려 60fps까지도 이상 없이 올라간다.

MPEG-4는 일단 SP 뿐만 아니라 ASP까지 재생 가능[footnote]좀 웃긴 것이 대표적인 .mp4 제작도구인 mp4box에서는 SP 비디오를 ASP로 강제로 지정해버린다는 것이다[/footnote]하다.
그리고, 가로 해상도는 확인하지 않는다. 세로 해상도만 480 이하인지 확인한다.
마지막으로, (그리고 의외로) Bit Rate가 중요하다. 비디오의 BR이 2.5Mbps 이하인 경우만 올릴 수 있다.
이건 스펙에 명시되어 있는 그대로인데, 잘 신경을 쓰지 않는 경우가 많은 것 같다.

웃긴 건 이 이상 규격의 비디오를 수단과 방법을 가리지 않고 올리면 대부분 재생이 가능하다는 것이다.
OPlayer로 올려서 퀵타임으로 재생시키거나 CopyTransManager 등으로 올리기만 하면 무난한 재생이 가능하다.

2010년 12월 7일 화요일

Syntax Highlighter 3용 srt 자막 브러쉬 공개

Syntax Highlighter에서 .SMI 자막은 별도의 브러쉬가 필요하지 않다.
XML/HTML 브러쉬를 적용하면 충분히 예쁘게 보여줄 수 있다.

<SYNC Start=500><P Class=KRCC>
자막제작: BLUEnLIVE< br>
<font color=yellow>배포처: http://zoc.kr</font>
<SYNC Start=7500><P Class=KRCC>&nbsp;

하지만, (내가 선호하는) .srt는 적절한 브러쉬가 없다.
물론, XML/HTML 브러쉬를 적용하면 약간 비슷하게 보여줄 수는 있지만, 2% 부족하다.

다름아닌, 시간을 하일라이팅하지 않는다는 한계가 있다.

1
00:00:00,500 --> 00:00:07,500
자막제작: BLUEnLIVE
<font color=yellow>배포처: http://zoc.kr</font>

시간을 제대로 표시해줄 수 있는 .srt 전용 브러쉬를 만들었다.

1
00:00:00,500 --> 00:00:07,500
자막제작: BLUEnLIVE
<font color=yellow>배포처: http://zoc.kr</font>

브러쉬는 아래 링크에서 다운받을 수 있으며,


사용할 때는 아래와 같이 브러쉬를 지정하면 된다.

<pre class="brush:srt;">


2010년 12월 5일 일요일

TS/MTS → MKV 한방에 변환하기

많이 보던 인터페이스. VCi를 최대한 재활용했음.


파일 형식 중에 .ts(또는 .mts)라는 형식이 있다. (Transport Stream)
잡음이 많은 환경을 고려해서 설계된 컨테이너 포맷이다.

온라인 방송에서도 널리 쓰이고, DSLR에서도 가끔 쓰이는 포맷인데, 일반 PC에서 쓰기엔 사소한 문제가 있다.
오류를 방지하기 위해 내부적으로 계속 시간 코드를 삽입해놓았는데, 문제는 파일을 잘라붙여 편집한 경우, 이 시간 코드가 따라다닐 때가 있다는 것이다.
예컨데, 30분짜리 .ts 동영상이 있는데, 여기서 10분~20분의 10분 분량을 잘라낸다고 하자.

가운데 빨간색 영역을 잘라내면…


그러면, 새롭게 생성되는 .ts 파일은 20분짜리가 된다. (30-10 = 20)
그런데, 막상 새롭게 생성되는 .ts 파일을 재생해보면 20분짜리가 아니라 30분짜리라는 정보가 나온다.
그리고, 재생을 해보면 10분~20분이라는 영역은 없다고 나온다.

이런 식으로 나온다. 편집 도구 좀 잘 만드시지… 쩝


이런 문제(?)를 간편하게 해결하기 위해 .ts 파일을 재압축 없이 .mkv 파일로 변환해주는 툴을 하나 만들었다.
(이하 본 프로그램은 TS2MKV로 부름)

이 프로그램의 기능은 별 거 없다. mplayer를 이용해서 ts의 비디오/오디오 raw data를 추출하고 다시 합치는 것.
그리고, 이 과정에서 A/V 딜레이 정보를 확인해서 맞춰주는 것 뿐이다.

예컨데, 아래와 같이, 56분 29초짜리라고 정보가 표시되는 .ts 파일을…


TS2MKV로 변환하면 아래와 같이 16분 1초라고 정상적으로 표시된다.
또한, 아직까지는 .ts 재생필터에 비해 .mkv의 재생필터가 더 빠릿빠릿하게 동작한다는 장점도 얻을 수 있다.


이 프로그램은 아래 링크에서 다운받을 수 있다.



덧1. 이 프로그램을 만들면서 이해가 되지 않는 상황을 하나 발견했다.
H.264의 raw 데이터에 mkv/mp4 컨테이너를 씌우면 2배 느리게 재생되는 현상이 종종 발생했다.
즉, 30fps라면 강제로 60fps로 지정해야 정상재생이 되는 것이다.

그런 현상이 발생하지 않을 때도 있어 정확한 원인은 찾지 못했고, FPS에 관련된 옵션을 추가했다.
 - FPS 2배로 늘이기: FPS를 2배로 늘임. 즉, 2배 빠르게 재생됨.
 - FPS를 지능적으로 보정: 생성된 mkv 파일과 별도로 프레임 수를 강제로 조정한 mkv 파일을 하나 더 생성함.

참고로, 일부 문제 있는 파일을 DGAVCIndex로 읽어보면 정상적인 정보가 나온다. 어쩔…

덧2. 이 프로그램은 카라 팬인 친구가 카라 동영상 관련 부탁을 해서 만든 것이다.
그래서, 이 프로그램의 아이콘은 카라다. ㅋㅋㅋ

덧3. 친구야! 술 사라! 공짜가 젤 비싸다. ㅋㅋㅋ


2010년 12월 2일 목요일

멀고도 험했던 코딩용 글꼴 선택기

개발용 글꼴을 선택하는 것은 결코 쉽지가 않다.

일단, 고정폭 글꼴 중에 선택하는 것이 기본이다.
물론, 숫자 0과 알파벳 O가 쉽게 구분되는가, 대문자 I, 소문자 l, 숫자 1이 쉽게 구분되는가 등도 중요 기준이다.
게다가, 한글이 제대로 표시되는가도 확인해야 되고, 한자, 유럽어 등의 표시도 확인해야 된다.

보통 잘 만들어진 개발용 글꼴에 한글 글꼴을 fontlink 기능을 이용해서 연결하는 것이 일반적이었다.
하지만, 이 바닥에 혜성처럼 등장한 강자가 바로 (내가 굉장히 싫어하는) 네이버나눔고딕코딩이었다.

나눔고딕코딩을 사용하면 일단 fontlink라는 기능에 대해 몰라도 되는 것 같다. 얼마나 대단한가?

하지만, 나눔고딕코딩은 결코 만능이 아니다.
단지, 한글과 영문자가 나름 예쁘게 만들어져 있을 뿐 한자나 유럽어 등이 하나도 들어있지 않은 것이다.
그래놓고선, 개발용 글꼴이라니… 역시 네이버라는 생각이 들었다.

각설하고, 내가 좌충우돌 끝에 선택한 글꼴은 Consolas + 굴림체 + MS UI Gothic + PMingLiU + SimSun.

깔끔하고 예쁜 글꼴 + 한자/유럽어 칼지원


글꼴 자체가 예쁜 것은 물론이고, 필요로 하는 글꼴들이 모두 윈도우 XP에 내장되어 있다는 것이 가장 큰 장점이었다.
유일하게 추가로 설치해야 되는 Consolas는 MS 홈페이지에서 다운받을 수 있다.


차선책으로 선택한 것은 나눔고딕코딩 + Vera Sans Mono + PMingLiU + SimSun + 굴림체 + MS UI Gothic.


나눔고딕코딩에서 지원하지 못하는 예쁜 유럽언어를 Vera Sans Mono를 통해 표시하는 것이다.
나눔고딕코딩과 Vera Sans Mono를 다운받아야 하는 번거로움이 있고, 글꼴의 크기를 키우면 크기가 미묘하게 맞지 않는 단점은 있지만, 전체적으론 준수해보인다.


덧. 위에서 띄운 창을 나눔고딕코딩으로 설정하면 아래와 같다.
     이게 뭐니, 이게? 응?

유럽어를 다 날려버리는 무식한 글꼴. 결국 아스키+한글 뿐.


아이폰용 동영상 한방에 변환하는 툴: 초 완벽 버전 업뎃

새버전인 2.0으로 업데이트 했습니다. 새버전을 이용해주시기 바랍니다.

by BLUEnLIVE | 2010/11/15 01:21

아이폰(아이패드, 아이팟 터치)의 단점 중 하나는 동영상을 보기 위해서는 재압축을 해야 된다는 것이다. 이 점은 이미 없어져버린 진정한 스...


앞에 포스팅한 아이폰 용으로 한방에 변환하는 툴에서 사소한 부분을 수정하면서 새롭게 포스팅한다.
앞의 포스팅은 너무나 기능 구현에만 집중한 나머지 사용법 설명이 부족한 면이 있었다.

프로그램을 만드는 과정에서의 쓸데 없는 자랑은 최대한 배제하고, 사용법 위주로 포스팅 하겠다.

내가 만드는 프로그램의 틀은 거의 이런 식이라 이제 굉장히 식상함. ㅎㅎ


이 프로그램의 제목은 VCi: Video Converter for iPhone으로 아이폰을 전면에 내세우는 변환기이다.
하지만, 이 프로그램은 실제로 거의[footnote]거의 라는 표현을 쓴 이유는 자막은 직접 변환하기 때문이다. 자막은 정말로 거의 완벽하게 변환한다.[/footnote] 아무런 변환도 하지 않으며 각종 CLI 툴의 프론트엔드만공한다.

이 프로그램은 이미 잘 알려진 @snoopybox 님의 아이폰 4 AVI, MKV 동영상을 MP4로 한방에 변환하기에서 많은 아이디어를 빌렸으며, 구현 과정에서도 많은 참고를 했다.

이 프로그램의 기능 및 특성은 아래와 같다.

1. 변환을 원하는 파일을 비디오 파일 목록에 떨어뜨린 뒤 변환 버튼을 클릭하면 알아서 변환함

2. 저장 위치는 원본 폴더이며, 결과 파일은 원본 파일명 앞에 [VCi]를 붙임
   필요시 추가로 싱크를 보정하며, 결과물은 원본 파일명 앞에 [VCi-DC]를 붙임

3. 비디오 스트림은 원본에서 추출하며, 오디오 스트림은 추출한 뒤 AAC(LC)로 변환해서 다시 합침

4. 원본 파일과 같은 이름의 오디오/자막 파일이 같은 폴더에 있으면 그 파일을 사용함

5. 내부/외부 오디오가 여러 개일 때는 AAC → WAV → DTS → AC3 → MP3 → MP2 순으로 하나만 사용함
    이 순서의 의미는 합치기만 하면 되는 오디오raw 오디오음질 좋은 순서

6. 내부 자막은 전혀 사용하지 않으며, 외부 자막의 순서는 SMI → SRT 순임
    SMI 파일의 모든 자막을 다 변환해서 사용하며, KRCC는 한국어, EGCC/ENCC는 영어 JNCC는 일본어로 인식함
   원본 자막 파일 형식은 ANSI, 유니코드-BOM, 유니코드 UTF-8를 지원하며 알아서 인식해서 완벽히 변환함
   ※ 1.0에서는 대문자만 인식했으나, 1.1에서 소문자(krcc 등)도 인식하도록 수정

7. 저장 위치를 따로 지정하는 기능은 없음. 스누피 님 프로그램에 대한 오마쥬임

8. 아이폰4 해상도 관련된 체크박스가 있는데, 체크하면 스펙에 명시된 해상도를 넘어설 때 처리하지 않음
   디폴트 값은 언체크인데, 해상도를 넘어서도 재생하는 경우가 종종 있기 때문임

9. 7번의 체크박스와 무관하게 비디오 포맷을 확인해서 H.264와 MPEG-4 Visual이 아니면 처리하지 않음

10. 플래쉬 비디오(flv)도 변환하는데, 역시 비디오 포맷이 8번의 범위가 아니면 처리하지 않음
   단, flv 추출 프로그램은 .NET FW 2.0 기반으로 되어있기 때문에 flv를 변환하려면 반드시 FW을 설치해야 함

11. 원본 비디오의 delay 값을 인식하고, 이를 적용해서 오디오/비디오 싱크를 맞춤.
   또한, 추가적으로 원본과 생성본의 비디오 길이를 비교해서 필요시 싱크를 한번 더 맞춤.
   (뭔가 좀 어려운데, 별도로 포스팅할 예정임)

12. 아이폰4 뿐 아니라, 아이폰 3 계열, 아이패드 모두 사용 가능하며, 변환 후 재생이 안 되면 해상도 문제라 어쩔 수 없음

새 버전은 아래 링크에서 다운받을 수 있다.


덧. 아주 아주 사소한 버그가 하나 발견되어 1.1b로 패치함. ㅡ.ㅡ;



2010.11.18: 1.2 업데이트
   - AVI에 저장된 H.264 동영상 변환불가 문제 수정
   - [VCi-DC] 버전 생성시 딜레이 계산을 조금 더 정확하게 수정
   - 원본 비디오의 크기가 4GB를 넘으면 변환을 사전에 중단
   - 조금 더 안정적인 MP4Box 사용

2010.11.18: 1.2b 업데이트
   - 4GB 이상 파일의 처리를 체크박스로 선택 가능하도록 수정, 기본값은 크기 제한 없음
      ※ 확인 결과 최신 MP4Box는 4GB 이상 파일도 이상 없이 처리함
   - ffmpeg.exe를 최신버전으로 교체

2010.11.20: 1.3 업데이트
   - SMI → SRT 변환시 다중 자막에 대한 처리 보강.
     <SYNC start=00><P class=KRCC>한글<P class=ENCC>영어 구조도 정상적으로 처리

2010.11.21: 1.4 업데이트
   - 지원 확장자에 .mov 추가 (mp4 포맷의 mov 파일만 처리 가능)
   - 내부적으로 자막 처리에 UTF-8 대신 Signed UTF-8을 사용. MKV 포맷에 포함된 자막을 그대로 사용 가능
   - MKV 파일 변환시 포함된 자막을 모두 그대로 포함시킴

엄청나게 많은 자막의 위엄… ㄷㄷㄷ


   - AAC 오디오를 강제로 재인코딩하는 옵션 추가 (이전 버전은 무조건 재인코딩 없이 삽입)
   - AV 싱크 재조정 파일(VCi-DC) 생성 여부를 옵션으로 지정
   - 버그 수정: mp4에 포함된 H.264 비디오 프로파일을 High@3.1로 지정하도록 수정 (이전 버전에서는 mp4만 누락)

2010.11.22: 1.4a 업데이트
   - VCi-DC 생성이 필요 없다고 판단되면 생성하지 않음 (비디오 딜레이 값의 차이가 100ms 이하 등)
   - VCi-DC 생성시 VCi에 덮어쓰기 옵션 추가 (현실적으로 비추. 소요시간이 똑같음)

2010.11.25: 1.5 업데이트
   - 오디오 선택 기능 추가: 지정된 언어와 같은 언어의 오디오가 있으면 그 오디오 사용
   - .\tools 폴더 존재 여부 확인. 폴더가 없으면 실행되지 않음
   - 파일 목록에서 delete 키를 눌러 목록 삭제 가능 (이 기능을 왜 이제야 구현했지? OTL)

2010.11.28: 1.7 업데이트
   - iOS 4.2에서 자막의 속성이 제대로 나오도록 수정 (그렇다! 이 골치아픈 문제를 해결한 것이다!)
      : 이전 버전으로 변환해서 <font> 태그가 그냥 출력되는 동영상은 새 버전으로 재인코딩[footnote]물론, 오디오를 재인코딩할 필요는 없다. 따라서, 파일 크기에 따라 다르지만 5분 이내에 수정 가능하다.[/footnote]하면 한방에 수정해줌
   - Status Bar를 사용하도록 인터페이스 수정
   - 변환중인 파일의 비디오/오디오/자막 정보 출력

2010.11.28: 1.7a 업데이트
   - <font color="fff76a"> 처럼 #가 누락된 경우도 적절히 처리하도록 수정.
      단, HTML 포맷 중 rgb(255,247,106) 형식은 지원하지 않음. (과연 필요할까?)

2010.12.1: 1.7b 업데이트
   - <font color="#fff76a"><br>어쩌고 처럼 행에 내용은 없이 컬러코드만 있으면 엔터가 들어가지 않도록 수정