2011-03-17 23 views
20

Quiero implementar la transmisión de video en mi proyecto. Entonces, ¿hay algún tutorial que funcione? Los videos se almacenan en el lado del servidor. Por lo tanto, para buscar video usando URL y reproducirlo en Android. Probé algunos ejemplos, pero obtuve el error "Lo siento, este video no se puede reproducir". Estoy tratando de usar MP4.Ejemplo de transmisión de video de Android

Respuesta

6

Su problema es muy probable con el archivo de video, no el código. Su video probablemente no sea "seguro para la transmisión". Ver where to place videos to stream android para más.

+1

cuando ejecuto el ejemplo, un cuadro de diálogo genera la visualización de "Lo siento, este video no se puede jugar" – user609239

10

Estaba enfrentando el mismo problema y encontré una solución para hacer que el código funcione.

El código proporcionado en android-Sdk/samples/android-?/ApiDemos funciona bien. Copie y pegue cada carpeta en el proyecto de Android y luego en MediaPlayerDemo_Video.java ponga la ruta del video que desea transmitir en la variable de ruta. Se deja en blanco en el código.

La siguiente secuencia de vídeo trabajó para mí: http://www.pocketjourney.com/downloads/pj/video/famous.3gp

sé que protocolo RTSP se va a utilizar para la transmisión, pero la clase MediaPlayer es compatible con HTTP para la transmisión como se menciona en el código.

Busqué en Google el formato del video y encontré que el video si se convierte a mp4 o 3gp usando Quicktime Pro funciona bien para la transmisión.

Probé la apk final en android 2.1. La aplicación dosent funciona bien en emuladores. Pruébalo en dispositivos.

Espero que esto ayude ..

20

he tenido el mismo problema, pero finalmente encontré el camino.

Aquí es el paseo por:

1- Instalar VLC en su ordenador (servidor) y van a Medios-> Transmisión (Ctrl + S)

2- Seleccione un archivo para transmitir o si desea transmitir su cámara web o ... haga clic en la pestaña "Dispositivo de captura" y realice la configuración y finalmente haga clic en el botón "Transmitir".

3- Aquí se debe hacer la configuración del servidor de streaming, sólo tiene que ir a la pestaña "Opciones" y pegue el siguiente comando:

:sout=#transcode{vcodec=mp4v,vb=400,fps=10,width=176,height=144,acodec=mp4a,ab=32,channels=1,samplerate=22050}:rtp{sdp=rtsp://YOURCOMPUTER_SERVER_IP_ADDR:5544/} 

NOTA: Reemplazar YOURCOMPUTER_SERVER_IP_ADDR con su dirección IP del ordenador o cualquier servidor de la cual está ejecutando VLC ...

NOTA: Usted puede ver, el códec de video es MP4V que es compatible con Android.

4- ve a eclipse y crea un nuevo proyecto para playbak multimedia. crear un objeto VideoView y en la función OnCreate() escribir algo de código como este:

mVideoView = (VideoView) findViewById(R.id.surface_view); 

mVideoView.setVideoPath("rtsp://YOURCOMPUTER_SERVER_IP_ADDR:5544/"); 
mVideoView.setMediaController(new MediaController(this)); 

5- ejecución del apk en el dispositivo (no Simulator, no hemos comprobado que) y esperar a que la reproducción sea empezado. tenga en cuenta que el proceso de almacenamiento en memoria intermedia llevará unos 10 segundos ...

Pregunta: ¿Alguien sabe cómo reducir el tiempo de almacenamiento en búfer y reproducir video casi en directo?

+0

Perfecto. Esto funciona brillantemente! Suponiendo que la transmisión de VLC se crea usando ffmpeg, ahora solo necesito encontrar una manera de hacerlo yo mismo usando esa biblioteca. – Johncl

+0

Pregunta de Gud .. ¿Alguien puede responder a esta pregunta 'Pregunta: ¿Alguien sabe cómo reducir el tiempo de almacenamiento en memoria intermedia y reproducir video casi en vivo?' –

+1

@sonuthomas Si tiene una nueva pregunta, hágalo haciendo clic en [Preguntar pregunta] (http : //stackoverflow.com/questions/ask) botón. –

Cuestiones relacionadas