Android MediaMetadataRetriever получить кадр с помощью FFmpegMediaMetadataRetriever

Может кто-нибудь, пожалуйста, помогите мне о моей проблеме относительно получения текущего кадра из videoview, используя источник данных RTSP. Я следовал этому руководству из этого блога. В этом коде, где растровое изображение будет отображаться, когда пользователь решает захватить текущий кадр из видеовидения:

Bitmap bmFrame = mediaMetadataRetriever
  .getFrameAtTime(currentPosition * 1000); //unit in microsecond

if(bmFrame == null){
 Toast.makeText(MainActivity.this, 
   "bmFrame == null!", 
   Toast.LENGTH_LONG).show();
}else{
 AlertDialog.Builder myCaptureDialog = 
   new AlertDialog.Builder(MainActivity.this);
 ImageView capturedImageView = new ImageView(MainActivity.this);
 capturedImageView.setImageBitmap(bmFrame);
 LayoutParams capturedImageViewLayoutParams = 
   new LayoutParams(LayoutParams.WRAP_CONTENT, 
     LayoutParams.WRAP_CONTENT);
 capturedImageView.setLayoutParams(capturedImageViewLayoutParams);

 myCaptureDialog.setView(capturedImageView);
 myCaptureDialog.show();
}

Я получаю нулевое значение. После многих часов исследований многие говорили, что библиотека FFmpegMediaMetadataRetriever по этой ссылке может обрабатывать протокол rtsp. Как бы я применил эту библиотеку? Я уже загрузил его, импортировал в Eclipse и добавил в качестве библиотеки. Кажется, что когда я вызываю эту библиотеку классов:

FFmpegMediaMetadataRetriever mMediaMetadataRetriever = new FFmpegMediaMetadataRetriever();

Я получаю ошибку, которая является java.lang.ExceptionInInitializeError. Я на правильном пути? Может кто-нибудь направить меня по этому вопросу, пожалуйста.

0 ответов

Другие вопросы по тегам