2011-02-01 3 views
8

안드로이드의 바이트 스트림에서 비디오를 재생하기 위해 어떤 방법이 있나요에서 안드로이드에서 비디오를 재생? http/rtsp 링크를 MediaPlayer 객체에 전달할 수 없도록 특정 통신 미들웨어를 사용하고 있습니다. 내가 대신 파일을 재생할 다운로드 할 때까지 기다리는 스트림을 재생할 수 있도록 내가 로컬 HTTP/RTSP 링크 내 스트림을 포장 할 수있는 경우바이트 스트림

궁금 해서요.

내 미들웨어는 TCP를 통해 작동하므로 TCP 헤더를 제거한 후에 내 rtsp 데이터 그램을 tcp 데이터 그램으로 랩핑하고 클라이언트에서 해석 할 수 있다고 생각했습니다.

나는 난 그냥 MediaPlayer를에 바이트 스트림을 전달할 수 없습니다 정말 놀랍군요. 미리 감사드립니다. 안드로이드

+0

이 흥미로운 주제에 ... 내가 응용 프로그램 디렉토리에 임시 파일을 만드는 생각할 수있는 가장 좋은 방법은, 버퍼의 어떤 종류를 구현하는 방법으로한다. – mdelolmo

+4

당신은 디코더에 몇 바이트를 통과하고 MPEG4 스트림하지 않는 한 당신이 어떤 일을 할 수있는 것보다 ... .. 사진을 디코딩 할 기운 다. 어떤 종류의 비디오 스트림인지 알려주실 수 있습니까? 그것이 h264라면 프로파일 레벨은 무엇입니까? SDP가 있습니까? – Cipi

+0

나는 전화로 녹음 된 3gp 파일로 그걸 시도하고 있었다. 먼저, 최소 (약 2000KB)를 얻은 다음 파일로 버퍼 복사를 시도한 다음 MediaPlayer를 만들었지 만 prepare()를 수행하면 충돌이 발생합니다. SPD 세션을 만드는 방법을 모르겠습니다. 진실은 내가 디코딩에 대해 많이 모른다는 것이다. 튜토리얼에 대한 링크를 주시면 감사하겠습니다. 답장을 보내 주셔서 감사합니다 – Pedriyoo

답변

1

사용자 정의 스트리밍은 생각만큼 쉽지 않다. 나는 그럭저럭 할 수 있었다. 그러나 매우 특정한 비디오와 더불어. MPEG4 인터리빙이 제대로 이루어지지 않은 비디오는 스트리밍 가능합니다. 내가 왔 farest이 비디오를 스트리밍 : Cipi 내게 대답으로

http://www.pocketjourney.com/downloads/pj/video/famous.3gp

, 대부분의 형식은 단지 바이트 버퍼에 포장 및 MediaPlayer를에 전달할 수 없습니다. 헤더, 꼬리 등이 필요합니다. 위의 파일에 어떤 형식이 포함되어 있는지 모르겠지만 MPEG4라고 생각합니다.

+10

몇 가지 코드를 보여 주시겠습니까? 나는 또한 똑같은 일을하려고 노력하고있다. –

+0

@Pedriyoo 예. 어떻게했는지 공유해주십시오. – AFgone

+0

16kbps는 android에서 미디어 플레이어 클래스를 통해 재생할 수 없습니다. –

관련 문제