비디오 파일의 매 초 이미지들을 가져오는 방법이 궁금합니다.

비디오에서 매 초의 이미지 컷들을 가져오는 방법이 궁금합니다.

Vine 앱에서 업로드 하는 기능을 보면

비디오 파일을 선택하면 해당 비디오 파일의 이미지컷들이 보여지게 되는데

어떻게 하면 되는건지 궁금하네요.

alt text

1답변

  • 좋아요

    1

    싫어요
    채택취소하기

    동영상의 썸네일을 추출하는 것을 말하는것 같은데 ThumbnailUtils를 쓰시면 간단히 추출할수있습니다.

    Bitmap bitmap = ThumbnailUtils.createVideoThumbnail(동영상 경로, Thumbnails.FULL_SCREEN_KIND);`

    //  FULL_SCREEN_KIND = 썸네일 사이즈
    //  MICRO_KIND[작은 이미지 사이즈]
    //  MINI_KIND    [중간 이미지 사이즈]
    
    ImageView imageView = (ImageView) findViewById(R.id.imageView);
    imageView.setImageBitmap(bitmap);
    

    다른 방법으로는 MediaMetadataRetriever라는 클래스를 이용하는 방법인데

    MediaMetadataRetriever mediaMetadataRetriever = new MediaMetadataRetriever();
    mediaMetadataRetriever.setDataSource( SAMPLE_PATH );
    
    Bitmap bitmap = mediaMetadataRetriever.getFrameAtTime(1000000);//1초 영상 추출
    

    위와 같이 MediaMetadataRetriever 객체를 사용해서 setDataSource()를 통해 동영상을 설정한뒤 getFrameAtTime()을 통해서 이미지를 불러올수있습니다.

    이때 시간단위는 MS가아니라 US기준입니다.

ᕕ( ᐛ )ᕗ
로그인이 필요합니다

작성한 답변에 다른 개발자들이 댓글을 작성하거나 댓글에 좋아요/싫어요를 할 수 있기 때문에 계정을 필요로 합니다.