搜尋

首頁  >  問答  >  主體

java - Android如何快速取得影片每秒縮圖

  1. 最近項目想要像新版微信那樣隻能分享10s以內的視頻,需要對超過10s的視頻進行裁剪和獲取視頻每秒的縮略圖,
    裁剪壓縮功能都已經實現,主要是獲取視頻每秒的縮略圖功能,利用ffmpeg獲取比較慢,需要等待很長時間,無法像微信那樣進入視頻編輯頁麵就可以直接瀏覽視頻每秒的縮略圖

  2. 利用ffmpeg獲取視頻每秒縮略圖(每秒輸出一個圖像)

    ffmpeg -i input.flv -vf fps=1 out%d.png
  3. 獲取的時間較長,反編譯微信發現微信裏麵也是利用ffmpeg,是否有更快速的命令獲取?

  4. 也嚐試過使用MediaMetadataRetriever.getFrameAtTime獲取,獲取時間更加漫長

  5. 大佬求教!!!

黄舟黄舟2805 天前677

全部回覆(1)我來回復

  • 伊谢尔伦

    伊谢尔伦2017-04-18 10:57:42

    ffmpeg支援同時輸出多種格式,可以一邊錄影一邊輸出截圖,例如 ffmpeg -i /path/to/stream/file -f rawvideo -pix_fmt nv21 -s 640x480 -r 15 video.mp4 -vf fps=1 out%d.png,其中 /path/to/stream/file 是Java方面创建的文件,把从摄像机获取的视频数据写进这个文件让ffmpeg读取。-f rawvideo -pix_fmt nv21 -s 640x480 -r 15都是配置影片的參數。

    回覆
    0
  • 取消回覆