2015-08-16 11 views

Odpowiedz

6

Nie ma sposobu, aby uzyskać online bez pobierania miniaturę filmu wideo przy użyciu całkowicie wbudowany Android API, ale stosując ffmpeg

Możemy wyodrębnić miniaturkę z pobranego filmu za pomocą poniższego sposobu.

ThumbnailUtils.createVideoThumbnail (String filePath, int kind) 

gdzie

filePath ścieżka pliku wideo

kind może być MINI_KIND lub MICRO_KIND

Zwracana wartość

May return null if the video is corrupt or the format is not supported. 

Stworzyłem aplikację demo dla Ciebie. Proszę znaleźć ścieżkę android projektu, który jest przekazany na github AndroidFFmpeg

Wykonaj poniżej polecenia, aby wyodrębnić pierwszą klatkę z internetowego adresu URL wideo:

składnię:

-itsoffset -4 -i [Url of online video] -vcodec mjpeg -vframes 1 -an -f rawvideo -s 320x240 [Path of image where thumbnail to be stored] 

na przykład:

-itsoffset -4 -i http://www.sample-videos.com/video/mp4/720/big_buck_bunny_720p_1mb.mp4 -vcodec mjpeg -vframes 1 -an -f rawvideo -s 320x240 /sdcard/thumb.jpg

To wygeneruje obraz miniatury na SDCard z rozdzielczością 320x240 z nazwą thumb.jpg

+0

Min-SDK: 10, więc muszę pobrać pierwszą klatkę wideo ?! w jaki sposób ? – AndroSco

+0

@HK spójrz na moją zaktualizowaną odpowiedź i podziel się z nami swoją opinią. –

1

przypuszczam, nie ma łatwy sposób zbudować miniaturę bez faktycznie pobieranie wideo lokalnie.

Jeśli więc masz pytanie "Czy mogę uzyskać miniaturę bez pobierania pełnego pliku wideo?", Powiedziałbym ... nie.

W przeciwnym razie, po pobraniu pliku wideo lokalnie, domyślam się, że można doskonale użyć ThumbnailUtils.createVideoThumbnail(...), podając ścieżkę do pobranego pliku.

i inna opcja tworzenia kciuk wideo:

Bitmap thumbnail = ThumbnailUtils.createVideoThumbnail(videoUrl, MediaStore.Video.Thumbnails.MINI_KIND); 

cieszyć kod :)

Powiązane problemy