프로그램 사용용도 및 목적
필자가 생각하기에 1번은 각 디바이스들이 제대로 세팅이 되었는지 테스트하고, 세팅된 디바이스들을 이용해서 간단히 스트림을 읽어 들이는 프로그램이다.
고쳐야 할 부분
우선 기본적인 5517ref 소스를 가지고 컴파일해서 실행해보면, 제대로 실행이 되지 않을 것이다. 소스코드 중에서 수정해주어야 할 부분이 있는데, 그 것들을 하나씩 살펴 볼 것이다.
tsmux.c 파일 수정
STTSMUX_TSIN_2 -> STTSMUX_TSIN_1 으로 수정한다. 약 3곳이 된다.
testapp1.c 파일 수정
SERVICE_Display = SERVICE_DISPLAY_NTSC; /* Start Video */ ST_ErrorCode = Decode_StartStream( 0x1022, MP1V, SERVICE_DISPLAY_NTSC, SERVICE_Mode ); if (ST_ErrorCode != ST_NO_ERROR) return( ST_ErrorCode ); /* Start Audio */ ST_ErrorCode = Decode_StartStream( 0x1023, LISTS_ChannelList[channel].AudioType, SERVICE_DISPLAY_NTSC, SERVICE_Mode ); if (ST_ErrorCode != ST_NO_ERROR) return( ST_ErrorCode ); ST_ErrorCode = Decode_StartStream( 0x1022, PCR, SERVICE_DISPLAY_NTSC, SERVICE_Mode ); if (ST_ErrorCode == ST_NO_ERROR) Forever( 0x1022, 0x1023, transponder, SERVICE_Mode); *((U32*)(0x20010000+0x08)) = 0x0cffd010;
실행 결과
Video 와 Audio 스트림이 동시에 나온다.
결과 출력을 아래와 같다.
Entering debug loop... Wed Jan 7 08:01:45 2004 Packets/Errs VSlot ASlot VidFrmCnt AudFrmCnt VidErr AudErr PtiErr ============ ===== ===== ========= ========= ====== ====== ====== 7959 0 4845 416 32 79 0 0 0 [ IIF count : 0x20022000 -> 0x00000000 ] STVID_FRAME_RATE_CHANGE_EVT STAUD_NEW_FREQUENCY_EVT
주의 깊게 보아야 할 것들
Video 와 Audio 스트림을 읽기 위해 하드웨어를 초기화 해주는 과정을 주의 깊게 볼 필요가 있다.