2013-07-19 16 views
5

Özür Özür yüzden böyle MediaMetadataRetriever.getFrameAtTime() kullanarak, bir videonun bir çerçeve almaya çalışırken:MediaMetadataRetriever getFrameAtTime: videoframe bir boş gösterici ise

Uri directorio = Uri.parse("android.resource://com.extremeye/" + R.raw.video); 
    media = new MediaMetadataRetriever(); 
    media.setDataSource(this, directorio); 

    frame = (ImageView)findViewById(R.id.frame); 
    Bitmap bmFrame = media.getFrameAtTime(); 
    frame.setImageBitmap(bmFrame); 

Ama sorun olsun ki :

MediaMetadataRetriever getFrameAtTime: videoframe logCat bir boş gösterici

olup.

Videonun Android işletim sistemi ile uyumlu olduğundan ve MediaMetadataRetriever'in yüklediğinden emin olabilirim çünkü meta işletim açıklamasını 2.3.3 işletim sistemi sürümünde sorunsuz olarak alabiliyorum.

Çerçeveyi neden elde edemediğimi bilmiyorum, ancak 4.2 işletim sistemi sürümü kullanırsam, mükemmel çalışır. Ben codec ve video formatını değiştirmeye çalıştım ama işe yaramıyor ... Sanırım bu format uyumluluk problemi ama ne yapabileceğimi bilmiyorum ...

Teşekkürler! !

+1

aynı kaba şey. Bir video dönüştürücü indirdim ve videonun H.246 kodek tarafından uyumlu olduğundan emin oldum ama hala boş göstericiyim. – Xenione

+1

(Veo que eres español ve daha fazlası için tıklayınız) esta clase funciona realmente mal, creo que el fallo ocurre dependiendo del punto exacto del vídeo del cual quieres ekstra el çerçeve. A parte de este fallo tambien de uyumsuzluk con formatos, hayır eğlenceli 10 yıl önce ... En son kodlama ve yayınlama hakkında bilgi: https://github.com/wseemann/FFmpegMediaMetadataRetriever. Ben bir poop añadirla bir mi proyecto pero creo que ya está solucionado. Pruébala porque a mi me ha salvado ... Ya da sen bana ne dersin! –

+0

gracias Gonzalo !! Bu kütüphaneyi eklemeyi deneyeceğim. – Xenione

cevap

2

Aslında this external library'dan FFmpegMediaMetadataRetriever sınıfını kullanıyorum ve harika çalışıyor!

+0

Kütüphane çok büyük! Ben paket halinde derlediğimde .. benim apk boyutu 2 MB den 16 MB atladı .... Bu sorunu çözmek için bir yol var mı? – boudi

İlgili konular