무려 2일만에 알아낸 방법이다..
이제.. 속 쓰림이 덜 할 꺼 같다. -_-;;
1. ulimit -a 하여 coredump size의 크기를 본다.
2. system call prctl(PR_SET_DUMPABLE, 1)을 추가한다.
요 몇일 저것 때문에 무지장 고생을 했다.
D1 영상을 NTSC에서는 잘 나오는데, PAL영상에서는 even, odd가 섞여서 나오는 문제를 해결하기 위해
Encoder 관련 칩 2개에 대한 Data sheet를 마구 훝었다..
결론은 참패.. -_-;;
결국 알아낸 것은
- NTSC에서는 even, odd field로 영상을 보여준다.
- 반면, PAL에서는 odd, even field로 영상을 보여준다.
그리고.. 칩 버그..
알만한 사람들은 알겠지만..
Embedded 장비에서 칩 버그는 묻어야 하는 것...
역시 펌웨어를 수정하여 대책을 새우다가.. 다른 꽁수로 문제를 무사히 덮을 수 있었다.
문제의 시작은 이탈리아에서 들어온 새로운 OEM 추가 건 및 프로젝트 건에서 시작되었다.
자사에서 만든 장비의 D1영상이 Even Field와 Odd Field가 섞여 보인다는 것
달리 말하면, 이전 frame의 even(or odd) field와 이후 frame의 odd(or even) field가 한 frame에 보인다는 것이었다.
우선 확인에 들어갔다.
(NTSC 정상 테스트 결과 얻은 후)
- 잘 돌아가는데요?...
- 이탈리아는 PAL을 쓸 것이야.
(PAL 테스트 후... ) ToT
영상이 섞이고 있었다..
영상이 섞이는 문제는 일반 camera에서는 확인 할 수 없는 문제이며, 테스트를 위해 특별히 제작된 DVD를 이용하여야만 확인 할 수 있다.
전에도 한번 해 봤던 일인지라 우선 video spliter와 encoder 관련 chip들의 data sheet를 뒤지기 시작했다.
그리고...
even/odd field inverse, vertical priority 변경, signal high/low 변경 등등...
다양한 조합을 했는데.. 결과는 딱 2가지..
- 결과 1 : 서로 다른 frame의 even, odd field과 섞여서 하나의 frame을 만든다
- 결과 2 : 동일한 frame의 even, odd field과 섞이나, vertical 시작 field가 뒤밖여서 영상이 위 아래로 흔들린다.
결국 원하는 결과 영상을 설정해 낼 순 없었다.( ToT )
하루가 지나서 칩 회사 소환하고..
회의 결과..
NTSC는 한 frame은 even, odd field 순으로 구성되고
PAL의 한 frame은 odd, even field 순으로 구성된다.
하지만..... encoder chip은 무조건 even, odd field 순으로 encoding하고 field 순서를 뒤집거나 clock을 shift하는 루틴은 지원하지 않는다. ( +0+ --{>>>>> )
칩 버 그 다.....
그리고... 날라오는 화살은 firmware 개발자..
firmware에서 수정해야 할 사항...
삽질 삽질....