2012-08-09 4 views
1

저는 h264 directshow 필터를 개발 중입니다.H264 DirectShow 필터를 디버깅하는 방법은 무엇입니까?

NAL 장치를 올바르게 출력하는 유효한 하드웨어 소스가 있습니다. 나는 h264를 광고하고 기본 창 7 디코더 microsoft dtv-dvd 비디오 디코더에 성공적으로 연결하는 DirectShow 필터를 가지고 있습니다.

렌더러를 디코더에 연결할 때 렌더러에서 패킷을 얻지 못하므로 디코더가 내 패킷을 제대로 디코딩하지 못한다고 가정합니다.

[H264 자료] -> [DTV-DVD 디코더] -> [향상된 비디오 렌더러]

는 마이크로 소프트 디코더 실패 여기서 저 확인할 수있는 방법이 있는가?

다른 정보는 당신이 가진 어려움은 당신의 DTV-DVD 디코더의 코드를 가지고있는 파이프 라인의 블랙 박스의 다소를 만드는 없다는 것입니다

+0

더 많은 경우에는 디코더 입력이 유효하지 않으며 출력 핀에서 제공하는 것을 검토해야합니다. –

답변

3

도움이 될 수 있습니다. h264 소스가 dtv-dvd 디코더에 연결할 수 있다는 사실은 미디어 형식 협상과 관련하여 좋은 출발을 의미합니다. 무엇이 잘못되고 있는지 더 잘 볼 수 있도록 dtv-dvd 디코더를 소스 코드가있는 것으로 교체 한 다음 GraphEdit 또는 유사한 도구 중 하나를 사용하여 파이프 라인을 디버깅하는 것이 좋습니다. 나는 같은 종류의 개발을 해왔고, 일단 h264 파이프 라인이 하나의 디코더 필터로 제대로 작동하게되면 일반적으로 다른 h264 디코더와 제대로 작동한다는 것을 알게되었습니다.

  • Intel Media SDK 2012는 샘플 H264 디코더 필터를 포함한다 : 여기

    소스 코드를 포함하는 몇 가지 옵션이있다.

  • 당신은 엔비디아 GPU가있는 경우, 당신은이 오픈 소스 또한 CUDA Decode Filter

을 시도 할 수 있습니다, 좀 까다로운 일하기 위해 DTV-DVD 필터를 발견했다. 바이너리 형식에서 사용할 수있는 다음과 같은 디코더 필터 중 하나를 사용하여 테스트하는 것이 도움이 될 수 있습니다

  • Nanocosmos는 DirectShow를 기반으로 "AVC/h264 decoder Decoder SDK"아주 좋은있다. (무료 평가는)

  • "CoreCodec's CoreAVC는"CUDA와 DXVA를 지원하는 가장 빠른 H264 디코더의 하나를 포함 (상업 - 비용 $ 12.95)

  • MainConcept의 H264 디코더 필터는 "MainConcept Showcase"(무료 평가의 일환으로 볼 수 있습니다)

+0

나는 또한 이것을 오늘날의 훌륭한 LAV Filters 패키지에 추가하고 싶습니다. 이것은 DirectShow 필터가 libavformat 및 libavcodec과 관련되어 있고 전통적으로 FFMpeg 제휴 된 ffdshow 필터 프로젝트의 지속성 또는 오히려 다시 상상력입니다. 라이브러리. H.264 스플리터 및 디코더 (필터의 이름은 "LAV 비디오 디코더")는 H.264 캡처 핀에 적합합니다. 미디어 소스 필터. – amn