मैं एंड्रॉइड स्टूडियो पर जावा एप्लिकेशन पर काम कर रहा हूं। मुझे कोई भी कोड चाहिए था जहां हम वीडियो से बिटमैप प्राप्त कर सकें। मैं निरपेक्ष पथ का उपयोग करके वीडियो लेता हूं। वीडियो से इनपुट 8 एफपीएस है।

MediaMetadataRetriever retriever = new MediaMetadataRetriever();
retriever.setDataSource(absolutePath);

बस वीडियो से बिटमैप लेना चाहता था। किसी भी सहायता की सराहना की जाएगी।

0
ambika gowda 16 मार्च 2020, 14:03
क्या आपका मतलब थंबनेल है? यदि हाँ तो उपयोग करें - ThumbnailUtils.createVideoThumbnail(absolutePath, MediaStore.Images.Thumbnails.MINI_KIND);
 – 
Gautam
16 मार्च 2020, 14:27

2 जवाब

मैंने निम्नलिखित कोड की कोशिश की और यह काम किया:

 MediaMetadataRetriever retriever = new MediaMetadataRetriever();
   try {
        //path of the video of which you want frames
        retriever.setDataSource(absolutePath);
    }catch (Exception e) {

    }

    String duration = retriever.extractMetadata(MediaMetadataRetriever.METADATA_KEY_DURATION);
    int duration_millisec = Integer.parseInt(duration); //duration in millisec
    int duration_second = duration_millisec / 1000;  //millisec to sec.
    int frames_per_second = 30;  //no. of frames want to retrieve per second
    int numeroFrameCaptured = frames_per_second * duration_second;
    long frame_us=1000000/30;
    capture=="+numeroFrameCaptured);

    for (int i = 0; i < numeroFrameCaptured; i++)
    {
        //setting time position at which you want to retrieve frames

        MEventsManager.getInstance().inject(MEventsManager.IMAGE,retriever.getFrameAtTime(frame_us*i,MediaMetadataRetriever.OPTION_CLOSEST));
    }

    retriever.release();
0
ambika gowda 16 मार्च 2020, 14:48

यदि आप वीडियो से छवि चाहते हैं तो आप FFMPEG नामक लाइब्रेरी का उपयोग इसके साथ धीरे-धीरे लागू करके कर सकते हैं:

 implementation 'com.arthenica:mobile-ffmpeg-min:4.3.1.LTS'

कई कमांड का उपयोग करके आप वीडियो के सभी फ्रेम को इमेज में बदल सकते हैं या आप सिंगल फ्रेम भी प्राप्त कर सकते हैं

और अधिक जानकारी के लिए कृपया विजिट करें:-

 https://github.com/tanersener/mobile-ffmpeg

यदि आप केवल छविदृश्य में प्रदर्शित करने के लिए फ्रेम चाहते हैं तो आप ग्लाइड/पिकासो लाइब्रेरी का उपयोग कर सकते हैं।

आशा है कि यह आपकी मदद करेगा..!!!

0
Kashyap Rathod 16 मार्च 2020, 15:14