사실 만나기 좀 힘든 편인 소스인데 인코딩 하다 보니 만나게 됬군요.
기존의 작성한 글에 명백한 오류가 있어서 수정합니다.
암튼 NTSC 29.970 으로 변환된 PAL 25f 영상의 패턴은 이렇습니다.
i > i > i > i > p
이걸 Bob 해서 60f 으로 만들면 진행이 2:2:2:4가 됩니다.
2:2:2:4 풀다운과 패턴이 동일하죠. 대신 다른 점이 있는데 2:2:2:4 풀다운이 일반적인 디인터레이스 방법으로
그냥 디인터레이스와 역텔레시네가 가능한 것과 달리
NTSC로 변환된 PAL 영상의 경우 역텔레시네를 일반 NTSC 24f 처럼 처리하면 문제가 발생합니다.
변환된 PAL영상을 디인터레이스하면 프레임 패턴이
p1 > p2 > p3 > p4 > p5 > p5 가 되기 때문이죠.
따라서 decimate 의 옵션 중에서 cycle옵션값을 바꿔줘야 되는데 기본값인 5에서 6으로 바꿔주시면 됩니다.
tfm().tdecimate(cycle=6) 혹은 tfm().tdecimate(mode=7,rate=25.000) 으로 처리하시면
전자는 24.975f 후자는 25.000f의 PAL 형식 프로그래시브 영상이 나오게 됩니다.
(차이는 전자쪽이 약간 느려지는 모양입니다.)
이걸 NTSC 영상으로 만들고 싶다면 아래 링크를 참조시면 됩니다..
http://snoopybox.co.kr/1385
오류 지적해주신 Suleim님께 감사드립니다.
=====================================================================
살다보니 강좌 게시판에 글도 남겨보네요 ^^; 질게에 추가 답변이 안달려 남깁니다.
인코딩하다 보니 2:2:2:4 패턴 영상 가진게 있어서 디인터레이스 해봤습니다.
2:2:2:4 풀다운NTSC 30f으로 변환된 PAL영상은 영상이 i > i > i > i > p 형태로 진행됩니다.
이걸 디인터레이스하면 p1 > p2 > p3 > p4 > p5 > p5 패턴이 되는데
보시면 알겠지만 3:2 풀다운과 프레임 형식이 다릅니다
(3:2/2:3 풀다운은 보통 p1 > p2 > p3 > p4 > p4가 되지요)
이걸 보통의 Decimate 옵션으로 밀 경우에 처음엔 겹쳐지는 p5 프레임이 제거되면서 멀쩡해보이지만
p1 > p2 > p3 > p4 > p5 > p1 > p2 > p4 > p5
위처럼 중간에 엉뚱한 프레임이 잘려나가 영상이 부자연스러워집니다.
때문에 decimate의 cycle 기본값 5 대신 6을 입력해 겹치는 프레임(p5)을 제거해야됩니다.
(아시는 것처럼 cycle 기본값은 5이고 다섯번째 프레임을 제거한다는 의미입니다.)
이걸 처리하실 땐 tdecimate 옵션에서 'cycle=6' 통해 겹치는 26번째 프레임을 잘라내 주면 됩니다.
혹은
대신 프레임율은 NTSC 형식의 24프레임인 23.976이 아닌 24.975가 나오게 됩니다.
그러니 yadif / tfm / tdeint 등 소스에 맞는 디인터레이스 필터를 사용해주시고 대신 decimate하실 땐 신경 써주시면 될 것 같습니다.
꼭 23.976 영상으로 만들고 싶으시면 decimate 구문이후에 AssumeFPS(23.976) 구문을 추가해주시면 될 것 같네요.
혹시 디인터레이스와 역텔레시네에 대해 알기쉽게 정리된 글이나 사이트 아시면 추천좀 해주세요
디인터레이스와 역텔레시네의 개념을 못잡겠습니다...
첫번째 가장 개념을 못잡고 있는부분이 바로 본문에
[2:2:2:4 풀다운은 영상이 i > i > i > i > p 형태로 진행됩니다.
이걸 디인터레이스하면 p1 > p2 > p3 > p4 > p5 > p5 패턴이 되는데
보시면 알겠지만 3:2 풀다운과 프레임 형식이 다릅니다
(3:2/2:3 풀다운은 보통 p1 > p2 > p3 > p4 > p4가 되지요)]
요부분입니다...
두번째는 검색하다보면 tivtc옵션을 어떻게 줬더니 중복프레임이 제거가 잘됐더라 남았더라 하는데
중복프레임을 뭘보고 판단하는겁니까?
이걸 이해를 못하니 2:2:2:4를 처리하는 것도 전혀 이해가 안되고 있어서요.
http://hruj.tistory.com/entry/m3
디인터레이스 / 텔레시네 / 역텔레시네에 대한 포스트가 있습니다.
그리고 겹치는 프레임 판단은 Bob 상태가 아니라 그냥 인터레이스 상태에서 디인터레이스 필터를 적용한 뒤에 판단하는 겁니다. AVSP를 통해 쉽게 하실 수 있어요.
24f 영상을 인터레이스해서 30f으로 만들면 2개의 프레임이 인터레이스 프레임이 됩니다.
Progressive 1 > Progressive 2 > Progressive 3 > Interlaced 4 > Interlaced 5
디인터레이스는 이걸 겹쳐서 프로그래시브 프레임으로 만들어 주는 거구요
Progressive 1 > Progressive 2 > Progressive 3 > Progressive 4 > Progressive 4
그럼 2개의 겹치는 프로그래시프 프레임이 생기게 되죠.
역텔레시네는 이 겹치는 프레임을 제거해 줘서 본래의 24f으로 돌아가게 해주는 걸 말합니다.
인터레이스 프레임 두개가 합쳐져야 프로그레시브 한프레임이 되는걸로 알고 있는데 디인터레이스후에 인터레이스 4번과 5번이 합쳐져서 프로그레시브 프레임을 4번만 만든게 아니라 4번과 5번 두개를 만들었다는건가요? 즉 디인터레이스 필터가 합치는과정에서 인터레이스 프레임 두개를 합치면 프로그레시브 프레임 두개를 만드는건가요?
아니면 인터레이스 4라는 프레임안에 홀수와 짝수필드가 동시에 존재하는 건가요?
아하 그러니까 디인터레이스의 필드매칭방식에 의한 선택의 개념으로 봐야겠군요? 일반적으로 쓰고 있는 디인터레이스 필터들이 even방식을 사용한다는 말도 되겠군요 아 이제 좀 감이 잡히는것 같습니다 근데 제가 이해를 잘 못했던 이유를 이제야 알것같네요 위 티스토리에서는 현재 3:2라고 불리우는 풀다운때문에 첫번째 프레임이 3개로 나누어지고 다음것이 2개로 나뉘던데 그래서 제가 이해를 못한것 같습니다 보여주신 그림은 엄밀히 말해선 2:3풀다운이라고 해야겠군요 이렇게 생각하니까 이제 이해가 되네요
어차피 이것도 어디프레임을 시작으로 하냐의 문제겠지만 2:3으로 바뀌니까 이제 알겠네요...
그런데 여전히 궁금한건 소스의 시작부분(누군가가 편집툴로 잘랐겠죠)이 항상 패턴이 같지 않을텐데
예를들면 abcd중에 소스가 c부분부터 시작될수도 있고 할텐데 어째서 tivtc의 cycle=5 기본값이 3:2풀다운소스의
역텔레시네에 항상 제대로 작동되는건가요? 해당 필터가 주기의 첫부분을 자동으로 감지하는 기능이라도
있는건가요?
음 근데 이걸 2:2:2:4에 대입하면 여전히 결과를 못찾겠습니다 포이즌님의 그림을 인용해서 2:2:2:4를 꾸며보면
A A
B B
C C
D D
D D
인데 이러면 전부다 프로그레시브 프레임이 되니 HWi님의 i,i,i,i,p라는 형식에 맞지 않게 됩니다...그래서 생각해보니 2:2:2:4의 경우는 주기안에서 3:2처럼 되는게 아닌 엇박자로 해서
A(i)
A B(i)
B C(i)
C D(i)
D D(p)
D E(i)
E F(i)
F G(i)
G H(i)
H H(p)
H I (i)
이렇게 되어야 성립이 되는데 보다시피 even값을 봣을때 ABCDDEFGHH로 3:2 풀다운과 차이가 없습니다...
그럼 cycle=5값이 성립되지 않나요? 왜 cycle=6이 되어야하는지 모르겠습니다...
음 이해를 잘하고 있다가 또 의문이 생기는데 본문에 2:2:2:4의 경우 i,i,i,i,p순으로 진행된다고 하면 5장이 되는데 이건 30프레임소스여야 맞는것 아닌가요? 그림처럼 abcd를 필드분해 해서 생각해보면 2:2:2:4는 aa bb cc dddd 이렇게 나누어질테고 디인터레이스 하게되면 abcdd로 2:3풀다운과 같은결과가 나와야 되지 않나요?
만약 i,i,i,i,p로 5장이 주기라면 원본소스가 30프레임이라는것 아닌가요?
30p의 경우엔 p > p > p > p > p로 진행됩니다. 이걸 Bob 하면 p1 > p1 > p2 > p2 > p3 > p3 > p4 > p4 > p5 > p5가 됩니다.
30i의 경우엔 i > i > i > i > i로 진행됩니다 이걸 BoB 하면 p1 > p2 > p3 > p4 > p5 > p6 > p7 > p8 > p9 > p10이 됩니다.
2:2:2:4 풀다운은 앞뒤 프레임 정보를 담은 i 프레임이 네 개입니다. 이게 뭘 의미하냐면 홀짝 필드가 앞뒤로 섞여 있다는 말입니다. Bobbing 해봐야 같은 프레임이 2프레임 밖에 안나온 다는 얘기죠. 반면 p 프레임은 홀짝필드가 모두 같고 덤으로 인터레이스 프레임이 앞뒤로 위치하므로 Bobbing하면 같은 프로그래시브 프레임이 4개가 되게 되죠.
결국 60f Bobbing 하면 2:2:2:4로 진행됩니다.
3:2/2:3 풀다운의 진행은 다음과 같습니다. 헷갈려하시니 순서를 섞어보죠.
p1 > i2 > i3 > p4 > p5
이걸 홀짝 필드로 나눠 Bobbing (60f) 하게 되면 프로그래시프 프레임들은 각각 2개의 같은 프레임을 생성합니다. 근데 인터레이스 프레임은 앞 혹은 뒤 프레임의 홀/짝 필드를 포함하고 있죠? 따라서 Bobbing 하면 인터레이스 프레임의 앞/뒤 프로그래시브 필드 부분이 Bob되서 총 세개의 같은 프레임을 갖게 되죠. 반면 인터레이스 프레임은 반쪽 짜리의 필드 정보 밖에 없기 때문에 앞뒤의 프레임을 합쳐야 하나의 프레임이됩니다. 필드 역시 마찬가지니 2개의 프레임 밖에 생성되지 않지요. 남은 하나의 프로그래시브 프레임은 앞 뒤에 인터레이스 프레임이 없으므로 똑같은 프레임이 2프레임밖에 되지 않습니다. 결국
2:3:2:3 혹은 3:2:3:2로 진행되게 되는 거죠. 이해가 되셨기를 바라고. 정 안되시겠으면 자게에 있는 분석 자료 링크 타고 들어가서 정독해보세요.
와 HWi님 설명 드뎌 이해 한것 같습니다 인터레이스개념이 무지하게 어렵네요 보기보다
그러니까
. A B C D -24프레임소스
. A A A : B B : C C C : D D -3:2 필드분해
. A프 : B(AB)인 : B(BC)인 : C프 : D프 -30프레임
. A A : A B : B C : C C : D D -BOB
요렇게 된다는거죠?
저기서 B(AB)라는 인터레이스 프레임을 BOB하면 (BOB이 반쪽필드를 확장해서 프레임을 만드는 방식이라고 하니) 섞여있는 A와 B의 반쪽 필드들이 확장되서 A 와 B라는 프로그레시브 프레임으로 나온다는 것이 맞죠?
A프로그레시브 프레임은 반쪼개져봤자 둘다 반쪽짜리 A니까 확장되서 A두개로 나오는것이구요?


