기타 자막파일 이름 일괄변환기
2013.12.03 03:37
나디아 BD립 보려다가 영상이랑 자막 파일 이름 맞추는게 귀찮아서 만들어봤다.
이미 훌륭한 일괄변환 소프트웨어가 많지만 그조차도 셋팅하기 귀찮은 사람들만 쓰면 될듯
예제
영상 파일들과 자막 파일들의 이름이 다르다.
같은 폴더에 renamer.exe를 넣고 실행하면...
모두 변경됐다. 참 쉽죠잉?
발로 만들었기 때문에 제약사항이 굉장히 많은데...
0. Windows만 지원. DOS 커널 기반의 OS(XP 이전)에서도 정상 작동 안됨.
1. 영상은 avi, mp4, mkv, wmv 확장자만 지원하고, 자막은 smi, srt, ass 확장자만 지원.
2. 확장자가 일치해야 한다. 예를들어 1~5화는 avi인데 6화는 mkv, 10~20화는 mp4 이럼 안 된다. 자막 파일도 마찬가지.
3. 본 영상, 본 자막 외에 쓰잘데기 없는 영상이나 자막 파일이 같은 폴더에 껴있으면 안 된다. 그런 것들은 다른 폴더에 격리해놓자.
4. 영상 파일과 자막 파일이 같은 개수 존재해야한다. 영상은 24개인데 자막은 23개... 이런 거 용납 못해!
5. 영상이든 자막이든 화수 표기가 반드시 01, 02 ... 또는 001화, 002화 ... 0을 통한 자릿수 맞춤이 되어 있어야 한다. 1 2 3 요러면 작동 안함.
6. 파일 이름 앞부분도 반드시 일정해야 한다. 1화는 [zero-raws], 2화는 [leopard-raws], 10화는 신비로_ 뭐 이러면 안 됨.
하지만 ふしぎの海のナディア 第04話 「万能潜水艦ノーチラス号」, ふしぎの海のナディア 第08話 「ナディア救出作戦」 처럼 부제목이나 뒷부분 표기는 달라도 상관 없다.
7. 거의 없겠지만 256편 이상의 영상은 지원 안함.
본래 제약이 전혀 없는 훌륭한 프로그램을 만들자는 취지였으나 아무리 생각해도 시간낭비라 걍 대충 만들었다.
내 컴퓨터 외엔 안돌려봐서 니들 컴에서 정상 작동할지 보장도 못함. 버그 제보받아도 안 고칠거.
그냥 쓰지마라.
#include <Windows.h>
#include <algorithm>
using namespace std;
int main()
{
WIN32_FIND_DATA find_data;
HANDLE hFind;
wstring extension[4] = {L"*.avi", L"*.mp4", L"*.mkv", L"*.wmv"};
wstring subex[3] = {L".smi", L".srt", L".ass"};
wstring files[256], subs[256];
int file_cnt = 0, sub_cnt = 0;
for(int i=0; i<4; ++i)
{
if((hFind = FindFirstFile(extension[i].c_str(), &find_data)) != INVALID_HANDLE_VALUE)
{
files[file_cnt++] = find_data.cFileName;
while(FindNextFile(hFind, &find_data))
files[file_cnt++] = find_data.cFileName;
break;
}
}
FindClose(hFind);
sort(&files[0], &files[file_cnt-1]);
int subtype = 0;
for(; subtype<3; ++subtype)
{
wstring temp = L"*" + subex[subtype];
if((hFind = FindFirstFile(temp.c_str(), &find_data)) != INVALID_HANDLE_VALUE)
{
subs[sub_cnt++] = find_data.cFileName;
while(FindNextFile(hFind, &find_data))
subs[sub_cnt++] = find_data.cFileName;
break;
}
}
FindClose(hFind);
sort(&subs[0], &subs[file_cnt-1]);
for(int i=0; i<file_cnt; ++i)
{
wstring temp = files[i].substr(0, files[i].rfind('.')) + subex[subtype];
MoveFile(subs[i].c_str(), temp.c_str());
}
return 0;
}
완벽한 오픈 쏘-쓰이므로 전산학 관련 학부생 나갈러가 있다면 이거 개조해서 과제로 제출해도 좋습니다. ^오^
댓글 15
-
오쩐다 이거개귀찮았는데
-
존나 쩐다
-
엔이
2013.12.03 09:34
ㅁㅊㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋ -
터메릭
2013.12.03 09:58
와 이거 ㅈㄴ편하겠다 ㅋㅋㅋㅋ ㄳ 나중에 BD 받으면 써먹어야지
-
수은중독
2013.12.03 12:07
자막을 안보면 되지
-
캬 없으면 만들어 쓰는 전산 클라슼ㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋ
-
사람사는곳
2013.12.03 13:26
혹시 짤방명 일괄 수정하기 같은건 어찌하는지 아시는분?ㅎ
-
사람사는곳
2013.12.03 15:04
오 ㄳㄳ
-
기본적으로 파일이름 일괄 수정은 Darknamer를 쓰고
이미지 포맷이나 크기 일괄변환은 옛날엔 알씨 썼고 요즘엔 그냥 포토샵으로 함 이스트소프트는 절대 설치하지 말자가 모토라...
-
Twolf
2013.12.03 15:31
오 시발 능력자 클라스 ㄷㄷ해 굿 -
오보에
2013.12.03 16:48
와아 시발 능력자 쩌네. 감사감사.
-
개멋있다ㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㄳㄳ
-
와 존나 굿굿ㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋ
-
간길
2013.12.14 14:30
ㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋ 쩐다
-
햐 필요했는데 ㅋㅋㅋ 잘쓰겠습니다
번호 | 제목 | 글쓴이 | 날짜 | 조회 수 |
---|---|---|---|---|
공지 | 창작게시판 사용안내 [12] | 하레 | 2011.04.26 | 14861 |
65 |
십년 넘은 모니터 고친게 자랑. ..은 결과적으로 #fail
[6] ![]() | 네버엔딩 | 2016.01.22 | 845 |
64 |
HG 건담 발바토스
[2] ![]() | TrollMage | 2015.10.11 | 804 |
63 |
배박질 신임무 실장되는 만화
![]() | 리카아메 | 2015.06.26 | 682 |
62 |
상반신 완성
[3] ![]() | 리카아메 | 2015.06.05 | 45 |
61 |
에바는 역시 어깨뽕이야
[2] ![]() | 리카아메 | 2015.06.03 | 45 |
60 | 에바 초호기 진척상황 [2] | 리카아메 | 2015.06.01 | 46 |
59 |
10년만에 만드는 에바
[4] ![]() | 리카아메 | 2015.05.28 | 49 |
58 |
나도 곧 따라갈테니까......
[3] ![]() | 수은중독 | 2015.03.22 | 122 |
57 | 단체 후드티 하나 만드려고 하는데 [10] | Foodnana | 2014.05.22 | 865 |
56 | 근로자라 못살겠습니다. [5] | 오보에 | 2014.05.13 | 482 |
55 |
[프로그램] 음방할때 편리하게 쓸수있는 웹서버
[3] ![]() | TrollMage | 2014.05.02 | 532 |
54 | 하츠네미쿠 퍼즐을 한국어로 개사해 보았다 [2] | 간길 | 2014.04.03 | 781 |
53 | 마계 떡볶이 [5] | 쿠로누마사와코 | 2014.04.03 | 709 |
52 | 건프라 조립 [5] | 간길 | 2014.03.26 | 701 |
51 | 유키미쿠짱과 함께하는 Magical 베이킹~★ '도너츠' [2] | 앙리에타™ | 2014.03.18 | 838 |
50 | 국내 동인 키네틱노벨 <억새밭 사잇길로>가 절찬리 배포중입니다! >< [8] | 月主 | 2014.02.25 | 966 |
» |
자막파일 이름 일괄변환기
[15] ![]() | 뀨뀨함폭 | 2013.12.03 | 1537 |
48 | 중2병이라도 사랑이 하고 싶어 극장판 한글화 [5] | b_y_s_l | 2013.11.18 | 1257 |
47 | 사천짜장 [5] | Libra | 2013.10.24 | 1141 |
46 | 엄마가 저녁에 없어서 [5] | 갓마미갓루카 | 2013.10.10 | 1080 |
