Apa perbedaan antara MediaPlayer dan VideoView di Android


95

Saya bertanya-tanya apakah ada perbedaan di antara mereka dalam hal streaming video.

Saya tahu VideoViewbisa digunakan untuk streaming dan untuk apa Mediaplayer? Sejauh yang saya tahu, MediaPlayerbisakah melakukan hal yang sama dengan VideoViewbenar?

Adakah yang bisa memberi saya jawabannya?

Dan jika saya ingin melakukan streaming video dari server dengan menggunakan RTSP ke Android, yang mana yang harus saya mulai? VideoViewatau MediaPlayer?

Ada saran?


Bukankah ini seharusnya di superuser?
Quamis

13
Saya pikir itu milik di sini. Bukankah ini pertanyaan pemrograman Android?
juell

Jawaban:


40

Mengajukan pertanyaan yang sama dan seperti yang saya pahami dari apa yang disarankan Mark (CommonsWare) pada banyak utas di sini, VideoView adalah pembungkus (200 ratus baris kode) untuk MediaPlayer dan SurfaceView untuk menyediakan kontrol yang disematkan.

Dia juga dengan ramah membagikan beberapa contoh:

https://github.com/commonsguy/cw-advandroid/blob/master/Media/Video/src/com/commonsware/android/video/VideoDemo.java

https://github.com/commonsguy/vidtry/blob/master/src/com/commonsware/android/vidtry/Player.java

dan contoh dari android sdk http://developer.android.com/resources/samples/ApiDemos/src/com/example/android/apis/media/MediaPlayerDemo.html

Juga beberapa orang mengalami masalah saat memutar video di emulator, jadi pastikan untuk mengujinya di perangkat sebenarnya jika Anda mengalami masalah


17

VideoView pada dasarnya adalah Tampilan yang dikaitkan dengan MediaPlayer agar lebih mudah menerapkan video di aplikasi Anda. Jika Anda tidak melakukan banyak pekerjaan kustom, VideoView adalah cara yang tepat.

Meskipun demikian, Anda juga dapat meneruskan tautan RTSP ke sistem untuk menggunakan aplikasi yang paling sesuai untuk memutar video, yang bahkan lebih mudah dilakukan:

String url = "rtsp://yourrtsplink.com/blah";
Uri uri = Uri.parse(url);
startActivity(new Intent(Intent.ACTION_VIEW, uri));

Video harus diuji pada perangkat, karena pemutaran emulator buruk, dan Anda juga harus menyadari bahwa RTSP memerlukan port tambahan untuk dibuka, yang diblokir oleh beberapa firewall.


mana yang lebih cepat?
Albert Chen


0

VideoPlayer adalah pembungkus untuk MediaPlayer dan SurfaceView, lebih mudah mengimplementasikan pemutar video dengan VideoView daripada dengan MediaPlayer, jika file video disimpan di penyimpanan internal aplikasi menggunakan penyedia konten atau menyimpannya sebagai dapat dibaca dunia, jika tidak maka akan tidak bekerja

Dengan menggunakan situs kami, Anda mengakui telah membaca dan memahami Kebijakan Cookie dan Kebijakan Privasi kami.
Licensed under cc by-sa 3.0 with attribution required.