2012-09-19 8 views
0

vsh8과 vorbis를 muxing하기 위해 directshow 필터를 사용하고 있습니다. 그리고 가장 중요한 것은 webm 파일을 실시간으로 보내려고합니다. 따라서 생성되는 파일이 없습니다. 인코더가 된 후 데이터가 webm으로 압축되므로 소켓으로 데이터를 보냅니다.webmmux directshow IStream

filesinker 필터는 IStream을 사용하여 파일 IO를 수행합니다. 그리고 heavely는 탐색 작업을 사용합니다. 나는 사용할 수 없다. 소켓을 찾을 수 없기 때문에.

이 muxer를 사용하는 방법을 알고 있거나 구현 한 사람이 없으므로 탐색 작업이 호출되지 않습니다. 멀티플렉서에서 대기열이있는 버전을 사용하여 조각화를 지원할 수도 있습니다.

감사

나는 작가에 IStream

답변

1

구현이 기록 된 스트림/파일에 멀티플렉서 업데이트 상호 참조를 허용 www.webmproject.org하여 DirectShow를 필터 providede을 사용하고 있습니다. 그래서 그들은 거대한 버퍼 나 임시 파일을 만들지 않고 대부분의 컨테이너 형식에서는 불가능한 순차적 쓰기 작업을 수행 할 필요가 없습니다.

이제는 달성하려고 시도하는 네트워크를 통해 점진적으로 전송할 때 런타임에 파일을 만드는 경우 멀티플렉서가 파일을 닫으려는시기와 장소 및시기를 알 수 없습니다. 파일 시작 부분의 데이터를 다시 방문하여 참조, 헤더 등을 업데이트할지 여부.

먼저 전체 파일을 만든 다음 제공해야합니다. 또는 기존의 데이터 덮어 쓰기를 포함하여 전체 작성자를 소켓으로 대체하고 모든 쓰기 작업을 수행해야합니다. 그러나 네트워크를 통해 실시간 데이터를 전달하는 가장 적합한 방법은 파일을 전혀 전송하지 않는 것입니다. 송신자는 개별 스트림과 수신자를 그대로 보내거나 수신 한 후 파일로 다중 전송하는 것이 필요합니다.

+0

고마워요. 그래, 나는 이것을 들여다 보았다. 불행하게도 아키텍처는 앞에서 언급 한대로 구현되어야하며 특정 섹션을 덮어 쓸 클라이언트 측을 제어 할 권한이 없습니다. 그러나 OGG muxer는 "페이지"를 씁니다. 그리고 절대로 추구하지 않습니다. 다시 도움에 감사드립니다. 기본적으로 저는 사람들이 다른 HTML 브라우저에서 수동으로 파일을 변환 할 필요가 없도록 일종의 비디오 프록시를 작성하고 싶었습니다. 파일 a 및 브라우저 파일 변환에 따라 ogg/webm/mp4가 필요합니다. 실시간으로이 작업을 수행 할 수있는 사람은 단 한 명뿐입니다 (제공되는 먹스가 제공됨). thanks –

+0

잘 작동하는 프록시에 대해서는 스트리밍 바이트를 시작하기 전에 서버의 전체 파일을 변환해야한다고 생각합니다. –