반응형



3년쯤 전에 모든 미디어를 mp3/m4a로 변환하는 프로그램을 간단히 만들었었다.

물론 iTrans와 유사하게 ffmpeg 등의 프론트엔드.


당시엔 단순히 오디오로 변환하는 것만 집중해서 간단히 만들었었는데, 그간 iTrans에 적용했던 기술들을 좀 추가하기로 했다.

임시파일 생성을 최소화하고 태그 정보를 복제하는 등의 업데이트를 적용했다.


이 프로그램에서 지원하는 미디어 파일의 종류는 다음과 같다.


- 비디오: avi, mkv, flv, ogm, mp4(m4a, m4r), mov, swf, wmv, asf, mpeg(mpg, dat, vob, m2ts, ts, ps), webm, rm(rmvb)
- 오디오: mp2, mp3, ac3, dts, wma, aac, wav, flac, ra, amr


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


- 비디오/오디오 파일에서 오디오를 mp3/wav/m4a로 변환

- 원본의 작곡가/트랙 등 태그 정보를 복제[각주:1]

- 원본의 커버 아트를 복제[각주:2]

- 오디오 음량 정규화


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

Any2MP3_210a.part1.rar

Any2MP3_210a.part2.rar




▲ 버전 히스토리


2014. 9. 10: 2.0

- 2.x대 첫 릴리즈

- VBR로 mp3를 인코딩할 때 비트레이트에 맞는 레벨 적용

- 정규화 정도를 dB 단위로 지정

- ffmpeg을 1.2로 업데이트

- MediaInfo를 0.7.70으로 업데이트

- lame.exe 제거

- AtomicParsley 적용


2014. 9. 13: 2.1

- mp3의 태그가 ANSI 포맷인 경우에도 정상적으로 읽고 쓰도록 수정

- mp3/m4a 파일의 태그만 다시 쓸 수 있는 as-is 모드 추가

- ffmpeg을 2.2.1로 업데이트[각주:3]


2014. 9. 14: 2.2

- wav 파일에도 태그 정보를 제대로 기록하도록 수정[각주:4]


2014. 9. 15: 2.2a

- tools 폴더가 없을 때 오류 발생하던 문제 수정


2014. 9. 21: 2.4

- 비스타 이상에서 변환시 UTF-8 포맷으로 배치파일 생성하도록 수정
- 비스타 이상에서 변환시 8.3 포맷이 아닌 긴 이름을 사용하도록 수정[각주:5]
- 전체적으로 소스 코드 정비


2014. 9. 21: 2.5

- as-is 모드 동작 방식 변경: mp3/AAC 오디오가 있을 때만 추출하도록 수정(기존엔 원본 자체가 mp3/M4A일 때만 동작)

- 버그 수정: XP를 비스타로 인식하는 오류 수정


2014. 10. 6: 2.5b

- 비스타 이상에서도 변환시 8.3 포맷을 사용하도록 수정 (2.4의 수정 내용 취소)

- 화면 배치를 iTrans와 유사하도록 미세 조정


2014. 11. 16: 2.6

- 원본 파일이 너무 큰 경우 가끔 변환에 실패하는 문제 수정

- 오디오 변환 시간을 조금 빠르게 수정

- mediainfo를 0.7.71로 업데이트

- 컴파일러를 Visual Studio 2013 Update4로 교체


2014. 12. 4: 2.6a

- 버그 수정: ts/tp/rm 파일을 드래그 앤 드롭하지 못하던 문제 수정


2015. 1. 2: 2.6b

- 구글 드라이브로 배포하도록 수정

- UI 수정(아이콘 변경, 연도 수정 등)

- ffmpeg을 2.5.2로 업데이트


2015. 2. 11: 2.7

- 버그 수정: FLAC 변환시 아티스트/앨범아티스트 태그를 잘못 처리하던 문제 수정

- 버그 수정: mp3로 변환시 연도 포맷이 이상하게 기록되던 문제 수정

- ffmpeg을 2.4.5로 다운그레이드 (mp3 변환 오류 원인이 ffmpeg 2.5.2의 버그임)

- 7-zip 대신 rar로 압축하여 배포하는 것으로 변경

2015. 9. 26: 2.8

- 버그 수정: 가끔 2CH 이상을 2CH로 잘못 인식하는 경우 정상처리하도록 수정

- 변환 가능 포맷에 amr(Adaptive Multi-Rate) 추가

- 컴파일러를 Visual Studio 2015로 교체

- ffmpeg을 2.7로 업데이트

- mediainfo를 0.7.77로 업데이트


2015. 12. 20: 2.9a

- 아이콘 색상 변경

- 샘플링 레이트가 48k를 초과하는 경우 48k로 변환하도록 수정

- 컴파일러를 Visual Studio 2015 Update 1로 교체

- ffmpeg을 2.8.3으로 업데이트

- mediainfo를 0.7.80으로 업데이트


2016. 2. 22: 2.9b

- ffmpeg을 3.0.0으로 업데이트

- mediainfo를 0.7.82로 업데이트

- 미디어 포맷 인식 기능 보강(iTrans의 최신화 내용 반영)

- UI 수정: About Dialogbox를 변환중이 아닐 때만 띄우도록 수정

- 구글 드라이브에서 배포하지 않는 것으로 변경


2016. 6. 6: 2.10a

- ffmpeg3.0.1으로 업데이트

- mediainfo0.7.86로 업데이트

- UI에 스핀 컨트롤 추가

- 최대 음량에 tool tip 추가

- as-is 모드에서는 변환 버튼이 추출로 표시되도록 수정



  1. 즉, FLAC 등을 변환해서 그대로 아이폰에 넣으면 됨 [본문으로]
  2. 마찬가지. 음원을 그대로 변환해서 아이폰에 넣으면 커버 아트까지 그대로 나옴 [본문으로]
  3. 현재 2.2.3까지 나왔지만, 용량을 줄이기 위해 2.2.1 적용 [본문으로]
  4. ffmpeg은 기록은 하지만, 적절한 텍스트 포맷을 사용하지 않아 표시가 안 됨 [본문으로]
  5. 비스타 이상에서는 "비 ASCII 문자 포함" 메시지는 나오지 않는다는 뜻 [본문으로]
반응형

공유하기

facebook twitter kakaoTalk kakaostory naver band