videos ver studio programacion móviles jdownloader downloader desarrollo curso aplicaciones android video-streaming videoview

android - ver - cómo reproducir video desde url



manual de programacion android pdf (8)

¿Tiene los permisos agregados para el acceso a internet?

Soy principiante en el desarrollo de Android e intento reproducir video desde el enlace. Pero está dando el error "sorry,we can''t play this video" . Intenté tantos enlaces, pero para todos los enlaces, muestra el mismo error.

Mi código es el siguiente

public class VideoDemo extends Activity { private static final String path ="http://demo.digi-corp.com/S2LWebservice/Resources/SampleVideo.mp4"; private VideoView video; private MediaController ctlr; @Override public void onCreate(Bundle icicle) { super.onCreate(icicle); getWindow().setFormat(PixelFormat.TRANSLUCENT); setContentView(R.layout.videoview); video = (VideoView) findViewById(R.id.video); video.setVideoPath(path); ctlr = new MediaController(this); ctlr.setMediaPlayer(video); video.setMediaController(ctlr); video.requestFocus(); } }

Logcat muestra el siguiente mensaje de error:

04-12 15:04:54.245: ERROR/PlayerDriver(554): HandleErrorEvent: PVMFErrTimeout


Comprueba si tu teléfono es compatible o no con el formato de video. Incluso tuve el problema al reproducir un archivo de 3gp pero reproducía perfectamente un archivo mp4.


Prueba esto:

String LINK = "type_here_the_link"; setContentView(R.layout.mediaplayer); VideoView videoView = (VideoView) findViewById(R.id.video); MediaController mc = new MediaController(this); mc.setAnchorView(videoView); mc.setMediaPlayer(videoView); Uri video = Uri.parse(LINK); videoView.setMediaController(mc); videoView.setVideoURI(video); videoView.start();


Puedes hacerlo usando la clase FullscreenVideoView . Es un pequeño proyecto de biblioteca. Su diálogo de progreso de video está incorporado. Es gradle es:

compile ''com.github.rtoshiro.fullscreenvideoview:fullscreenvideoview:1.1.0''

su VideoView xml es así

<com.github.rtoshiro.view.video.FullscreenVideoLayout android:id="@+id/videoview" android:layout_width="match_parent" android:layout_height="match_parent" />

En tu actividad, inicialízalo usando esta forma:

FullscreenVideoLayout videoLayout; videoLayout = (FullscreenVideoLayout) findViewById(R.id.videoview); videoLayout.setActivity(this); Uri videoUri = Uri.parse("YOUR_VIDEO_URL"); try { videoLayout.setVideoURI(videoUri); } catch (IOException e) { e.printStackTrace(); }

Eso es. Feliz codificación :)

Si quieres saber más, visita here

Editar: la ruta gradle se ha actualizado. compilarlo ahora

compile ''com.github.rtoshiro.fullscreenvideoview:fullscreenvideoview:1.1.2''


También me quedé atascado con este problema. Recibí la respuesta correcta del servidor, pero no pude reproducir el video. Después de mucho tiempo encontré una solución here . Tal vez, en el futuro, este enlace no sea válido. Entonces, aquí está mi código correcto

Uri video = Uri.parse("Your link should be in this place "); mVideoView.setVideoURI(video); mVideoView.setZOrderOnTop(true); //Very important line, add it to Your code mVideoView.setOnPreparedListener(new MediaPlayer.OnPreparedListener() { @Override public void onPrepared(MediaPlayer mediaPlayer) { // here write another part of code, which provides starting the video }}


Tiene algo que ver con tu enlace y contenido. Pruebe los siguientes dos enlaces:

String path="http://www.ted.com/talks/download/video/8584/talk/761"; String path1="http://commonsware.com/misc/test2.3gp"; Uri uri=Uri.parse(path1); VideoView video=(VideoView)findViewById(R.id.VideoView01); video.setVideoURI(uri); video.start();

Comience con "path1", es una transmisión de video pequeña y liviana y luego pruebe la "ruta", es una resolución más alta que "path1", una alta resolución perfecta para el teléfono móvil.



pDialog = new ProgressDialog(this); // Set progressbar message pDialog.setMessage("Buffering..."); pDialog.setIndeterminate(false); pDialog.setCancelable(false); // Show progressbar pDialog.show(); try { // Start the MediaController MediaController mediacontroller = new MediaController(this); mediacontroller.setAnchorView(mVideoView); Uri videoUri = Uri.parse(videoUrl); mVideoView.setMediaController(mediacontroller); mVideoView.setVideoURI(videoUri); } catch (Exception e) { e.printStackTrace(); } mVideoView.requestFocus(); mVideoView.setOnPreparedListener(new OnPreparedListener() { // Close the progress bar and play the video public void onPrepared(MediaPlayer mp) { pDialog.dismiss(); mVideoView.start(); } }); mVideoView.setOnCompletionListener(new OnCompletionListener() { public void onCompletion(MediaPlayer mp) { if (pDialog.isShowing()) { pDialog.dismiss(); } finish(); } });