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

조회수 3040회

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

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

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

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

alt text

  • (•́ ✖ •̀)
    알 수 없는 사용자

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기준입니다.

답변을 하려면 로그인이 필요합니다.

프로그래머스 커뮤니티는 개발자들을 위한 Q&A 서비스입니다. 로그인해야 답변을 작성하실 수 있습니다.

(ಠ_ಠ)
(ಠ‿ಠ)