باستخدام VideoView لتدفق أو تقدمية تحميل الفيديو

StackOverflow https://stackoverflow.com/questions/2058945

  •  20-09-2019
  •  | 
  •  

سؤال

وأنا الخلط حول كيفية استخدام VideoView لتشغيل الفيديو: من ملف محلي، والتنزيل التدريجي وتدفق

هذا المثال العمل بالنسبة لي (على 1.5 و 2.0 على الأقل) عن طريق تحميل الملف وتشغيله محليا.

ولكن هل من الضروري لتحميل الفيديو قبل اللعب: هل من الممكن للعب الفيديو وتحميل التدريجي، أو الجري، ببساطة عن طريق استخدام setVideoPath أو setVideoURI، كما هو الحال في VideoViewDemo في العينات API

والرمز VideoViewDemo يوحي باستخدام setVideoURI لتدفق، ولكن أنا ليس من الواضح ما هو نوع من URL أرجو أن تستخدم. هل هناك شخص ما URL سبيل المثال لالفيديو التي يمكن المتدفقة إلى الروبوت المحاكي باستخدام رمز VideoViewDemo؟

ويمكن أن تستخدم التنزيل التدريجي مع VideoViewDemo؟ أحصل على رسالة "آسف، هذا الفيديو لا يمكن أن تقوم" باستخدام setVideoPath مع عناوين URL التي تعمل بشكل جيد مع المثال بلوق مرتبطة أعلاه. (هل هذه مشكلة في المحاكي؟ لقد حاولت 1.5 و 2.0).

ولقد وجدت الكثير من الأمثلة والوثائق على الانترنت ولكن، حتى الآن، لا شيء أن يجيب على هذا السؤال حقا.

هل كانت مفيدة؟

المحلول

<اقتباس فقرة>   

هل من الممكن لتشغيل الفيديو كما   التحميل التصاعدي، أو الجري،   ببساطة عن طريق استخدام setVideoPath أو   setVideoURI، كما هو الحال في VideoViewDemo في   العينات API؟

ووينبغي. وهو يعمل بالتأكيد مع MediaPlayer، وVideoView هو مجرد غلاف ~ 200 خط حول MediaPlayer وSurfaceView.

<اقتباس فقرة>   

والرمز VideoViewDemo يوحي باستخدام   setVideoURI لتدفق، ولكن أنا لا   مسح أي نوع من URL يجب أن أكون   استخدام.

وhttp:// وrtsp:// يمكن أن تنجح، إذا تم ترميز الفيديو بشكل صحيح.

<اقتباس فقرة>   

هل شخص لديهم URL سبيل المثال ل   الفيديو التي يمكن المتدفقة إلى   محاكي الروبوت باستخدام   كود VideoViewDemo؟

هذا الفيديو يعمل مع MediaPlayer، إلا على نيكزس واحد.

تعديل : ل. في الواقع، التي تصل يعمل مع نيكزس واحد، وكذلك

نصائح أخرى

وكان يعمل لحالات بسيطة، ولكن فقط عندما لا تكون هناك حاجة لإجراء بعض الاستعدادات مخصص لطلبات للحصول على تيار.

وهذا يظهر البرنامج التعليمي مثال على تدفق مضاهاة اليدوي لصوتي ولكنه يمكن أن يكون قليلا بتعميل الترميز لتشغيل الفيديو:

HTTP: // بلوق .pocketjourney.com / 2008/04/04 / تعليمي العرف وسائل الإعلام، تدفق مقابل في androids-الوسائط الإعلامية /

و(تأكد من استخدام FileDescriptor عند وضع dataSource، تم تغيير API قليلا من تلك الأوقات).

وVideoView لا يمكن إلا أن أشرطة الفيديو ستريم 3GP لكن أوصي هذا الرمز إلى دفق الفيديو الخاص بك

public void onCreate(Bundle savedInstanceState){
setContentView(R.layout.main);
String videourl = "http://something.com/blah.mp4";
Uri uri = Uri.parse(videourl);
Intent intent = new Intent(Intent.ACTION_VIEW, uri);
intent.setDataAndType(uri, "video/mp4");
startActivity(intent);
}

اضغط هنا لمشاهدة لقطات فيديو الروبوت التعليمي .

مرخصة بموجب: CC-BY-SA مع الإسناد
لا تنتمي إلى StackOverflow
scroll top