지금까지 내가 주력으로 지원하던 자막 포맷은 SAMI였는데, 이걸 SRT로 변경하기로 했다.
이에 따라 여러 부분을 수정했으며, 이 과정에서 굉장히 많은 버그를 잡고 v7.4로 업데이트.
여전히 큰 틀에서는 변화 없는 인터페이스
VCi의 기능 및 특징은 아래와 같다.
#일반
1. 대상 비디오 파일을 목록에 드롭한 뒤 변환 버튼을 클릭하면 알아서 변환함
지원 포맷:AVI,MKV,MP4(mov),MOV(qt),OGM,FLV,MPG(mpeg/dat/vob),WMV(asf),SWF,WebM
2. 저장 위치는 기본적으로 원본 폴더이며, 저장할 폴더를 지정 가능
3. 결과 파일은 원본 파일명 앞에 i]를 붙임
필요시 추가로 싱크를 보정하며, 결과물은 원본 파일명 앞에 iD]를 붙임
4. 파일 변환시 바탕화면에 마크다운 형식의 로그 파일(VCi_Log.md)을 기록할 수 있음
#비디오
5. raw 비디오가 mpeg4/H.264인 경우는 상세한 압축 옵션 확인후, 재생 가능하면 추출하고,
재생 불가능한 옵션이거나, 그 이외의 포맷인 경우는 H.264로 재인코딩함
재생 가능 여부는 iOS 5.x에서 수정된 규칙에 따라 확인함
또한, 사용자 선택시 무조건 H.264로 재인코딩할 수 있음
6. 비디오 재인코딩시 디인터레이스 및 영상을 회전시킬 수 있음
7. 비디오 스트림은 원본에서 추출하며, 오디오 스트림은 추출한 뒤 AAC-LC로 변환후 합침
오디오가 AAC-LC일 경우 재인코딩은 옵션 선택에 따라 안할 수도 있음
8. 아이폰3/4/4s/5에서 재생 가능 비디오 확인 여부를 선택하는 드롭다운리스트가 있음
- H.264/MPEG4만 강제 변환: MPEG4/H.264는 무조건 추출. 그 외는 무시함 (재인코딩 없음)
- 재생 가능 비디오만 변환: iOS 5.x에서 수정된 규칙에 맞는 비디오만 추출 (재인코딩 없음)
- 필요시 비디오 재인코딩: iOS 5.x에서 재생가능한 비디오는 추출, 그 외는 H.264로 재인코딩
(지원 프로파일은 slow, fast, very fast, super fast, ultra fast의 5종류임)
- 비디오 강제 재인코딩: 무조건 H.264로 재인코딩
9. 플래쉬 비디오(FLV, SWF)도 일반적인 포맷과 같이 처리함
MKV, AVI 등과 같은 과정으로 처리하며, 필요시 재인코딩도 실시함
(즉, SWF 비디오를 MP4로 변환할 수 있음)
10. PAR/SAR를 확인하고 수정할 수 있음
- PAR 유지: PAR를 그대로 사용함
- PAR=1:1 : PAR를 강제로 1:1로 수정함
- PAR<1.5(2.0): PAR이 일정 범위 이내면 그대로 사용, 범위를 벗어나면 1:1로 수정 (추천)
- SAR=3:2 : SAR를 3:2로 강제 설정. 아이폰에서 무조건 꽉찬 화면으로 재생됨 (화면왜곡)
- SAR=4:3 : SAR를 4:3으로 강제 설정. 아이패드에서 무조건 꽉찬 화면으로 재생됨 (화면왜곡)
11. 원본 파일과 같은 이름의 오디오/자막 파일이 같은 폴더에 있으면 그 파일을 사용함
#오디오
12. 외부 오디오 파일명이 비디오와 같고 뒤에 DELAY 000ms의 문자열이 있으면 delay 적용함
ex) 비디오: TEST.avi, 오디오: TEST T80 2_0ch 48KHz DELAY 125ms.ac3
13. 외부 오디오/자막 파일명이 비디오와 같고 뒤에 언어ID[각주:1]가 있으면 그 언어로 인식함
ex) 비디오: TEST.avi, 오디오: TEST ko.ac3, 자막: TEST en.srt
14. 내부 오디오가 여러개일 때는 사용할 오디오의 우선순위를 국가코드 및 내부 순서로 지정가능
- 언어는 한국어, 영어, 일본어, 독일어, 프랑스어, 러시아어 를 1순위로 선택 가능
- 순서는 #1 ~ #9 중 하나를 1순위로 선택 가능
- 원본 비디오의 모든 오디오를 변환할 수 있음
(옵션에서 선택 가능, MKV/MP4/OGG 비디오에 한함)
15. 내부/외부 오디오가 여러 개이며, 우선순위를 미지정시 다음 순서로 하나를 선택함
AAC → WAV → FLAC → DTS → AC3 → MP3 → MP2 → OGG → WMA
(합치기만 하면 되는 오디오 → raw 오디오 → 음질 순)
16. 오디오/자막의 언어는 최대한 인식하며, 인식이 안된 경우 적용할 수 있는 기본언어 지정 가능함
#자막
17. 내부 자막은 SRT, ASS/SSA를 인식, 외부 자막은 SRT→SMI→ASS→SSA 순으로 인식
다중 언어 SMI는 모든 자막을 변환후 사용하며, KRCC/ENCC/EGCC/JNCC를 각국어로 인식
원본 자막 형식은 ANSI, 유니코드-BOM, 유니코드 UTF-8를 지원, 알아서 인식해 완벽히 변환
※ 내부적으로 유니코드만 사용하기 때문에 모든 글자를 변환하며, 최대한 오류를 보정함
18. 외부 자막이 ANSI 형식의 SRT인 경우 언어를 지정 가능: 한글/중국간체/일본어/서유럽/중앙유럽
19. 원본의 내부 자막이 여러 개이거나 SMI가 다중언어인 경우는 모든 국가의 자막을 변환함
외부자막이 SRT, ASS/SSA인 경우는 13번의 규칙에 따라 다중언어 지원함
20. 출력되는 자막의 크기는 18/24/36/48포인트를 사용가능한데, 이는 아이패드를 위한 것임
하지만, 아이폰/아이패드의 퀵타임이 자막의 크기를 인식하지 않기 때문에 사실상 의미 없음
#기타
21. 원본 비디오의 delay 값을 인식하고, 이를 적용해서 오디오/비디오 싱크를 맞춤.
또한, 추가적으로 원본과 생성본의 비디오 길이를 비교해서 필요시 싱크를 한번 더 맞춤.
22. 아이폰4/5 계열 뿐 아니라, 아이폰 3 계열, 아이패드 모두 사용 가능함
23. 선택한 옵션은 모두 레지스트리에 저장됨. 저장 시점은 변환 시작시와 저장 버튼 클릭시임.
즉, 옵션을 선택하고 프로그램을 종료하는 경우는 저장하지 않음
저장위치는 \\HKEY_CURRENT_USER\Software\BLUEnLIVE\Video Converter for iOS 임
24. VCi는 다양한 미디어 관련 프리웨어의 프론트엔드이며, 직접 변환에 개입하는 것은 자막뿐임
VCi에서 사용하는 프리웨어 8종은 다음과 같음
ffmpeg, MKV Extract, Media Info, MP4Box, Nero AAC Encoder, OGM Demuxer, normalize, tc2mp4[각주:2]
이 프로그램은 아래 링크에서 다운받을 수 있다.
Video_Converter_for_iOS_v7.4d.7z
2012.9.30: 7.4 업데이트
- 버그 수정: 언어가 표시되지 않은 자막은 무조건 한글 자막으로 인식하는 버그 수정
- 버그 수정: DC 생성시 자막 처리 문제로 인한 프로그램이 멈추는 버그 수정
- 오디오 싱크 자동 보정시 정확도가 향상됨
- 로그 파일을 markdown 포맷[각주:3]으로 변경
- 오디오/자막 파일명에 언어를 명시 가능하도록 수정
단, 외부 오디오는 언어가 명시된 파일이 많아도 하나만 인식함
자막은 srt/ssa/ass만 다중 언어 인식
- 오디오/자막 언어ID의 기본값 지정 가능하도록 수정
- srt가 sami보다 우선순위가 높도록 수정
- 생성할 파일명에서 [VCi]를 i]로, [VCi-DC]를 iD]로 변경
- 작업 정상 종료시 및 about 창 띄울시 Taskbar 반짝이도록 수정
- Taskbar의 progress를 세분화
- OS 정보에 Windows 8 / Server 2012 추가
2012.11.3: 7.4c 업데이트
- 버그 수정: 블로그 모드에서 아주 가끔 해상도를 잘못 계산하는 문제 수정
- 버그 수정: ffmpeg의 임시파일 중 일부를 삭제하지 않던 문제 수정
- 버그 수정: 임시 폴더명에 dot(.)가 있을 때 AVI/H.264 비디오를 추출하지 못하던 문제 수정
- 버그 수정: AVI/H.264 비디오 추출시 progress를 출력하지 않던 문제 수정
- 자막 처리 일부 수정
2012.11.10: 7.4d 업데이트
- 버그 수정: 영상 회전 정보를 잘못 인식하던 문제 수정
- 버그 수정: MKV 파일의 내부 자막을 가끔 변환하지 못하던 문제 수정
- 자막 변환을 실패했을 때 파일 생성을 억지로 실행하다 실패하던 문제 수정
가장 빠른 iOS용 동영상 변환기 v8.3 업데이트 (90) | 2013.01.20 |
---|---|
뭔가 다소 이상한 iOS 비디오 재생기의 챕터 기능 (1) | 2012.12.13 |
아이폰5 갈아타기 완료! (9) | 2012.12.08 |
iOS용 동영상 변환기 v7.3 업데이트 (50) | 2012.09.18 |
VCi 업데이트 중 발견한 문제점들… (0) | 2012.09.12 |