• java获取视频缩略图


    近期由于在做一个关于视频播放的项目,需要使用程序自动获取视频文件的缩略图,特写此文供其他人参考,有不清楚之楚可以给我留言。

    1、使用工具:ffmpeg,

    官网下载地址:http://ffmpeg.org/download.html

    我的电脑使用的是mac,安装也比较简单,参考下面的文章:

    http://webmedia.blog.163.com/blog/static/416695020123261226695/

    http://blog.chinaunix.net/uid-16974460-id-295979.html

    下面给出linux系统安装示例:

     

    yum -y install yasm
    tar -jxvf ffmpeg-2.7.2.tar.bz2
    cd ffmpeg-2.7.2
    ./configure --enable-shared --prefix=/usr/local/ffmpeg
    make
    make install
    cd /usr/local/ffmpeg

    vi /etc/ld.so.conf.d/ffmpeg.conf(写入:/usr/local/ffmpeg/lib)

    ldconfig
    ln -s /usr/local/ffmpeg/bin/ffmpeg /usr/local/bin/

     

     

    测试:

    [java] view plain copy
     
    1. ffmpeg -i xxx.mp4 -y -f image2 -t 0.001 -s 125x125 xxx.jpg  

    2、配置环境变量

    如果是windows,将ffmpeg命令加入到path环境变量中

    如果是linux系统,则执行如下命令,

    cd /usr/local/bin

    ln -s /usr/local/ffmpeg/bin/ffmpeg ffmpeg

    3、JAVA代码

    注意:需要使用如下方式将每个参数分别添加到列表中,不能将参数与命令合在一起,不然会报命令找不到路径,我在mac上是这样的,不知道在window下会不会出现。

    [java] view plain copy
     
      1. /** 
      2.      * 保存视频缩略图 
      3.      * @throws IOException  
      4.      */  
      5.     public static void saveVideoThumbnail(String videoPath, String imagePath) throws IOException {  
      6.         //ffmpeg -i xxx.mp4 -y -f image2 -t 0.001 -s 125x125 xxx.jpg  
      7.         List<String> cmd = new java.util.ArrayList<String>();  
      8.         cmd.add("ffmpeg");// 视频提取工具的位置  
      9.         cmd.add("-i");  
      10.         cmd.add(videoPath);  
      11.         cmd.add("-y");  
      12.         cmd.add("-f");  
      13.         cmd.add("image2");  
      14.         cmd.add("-t");  
      15.         cmd.add("0.001");  
      16.         cmd.add("-s");  
      17.         cmd.add("125x125");  
      18.         cmd.add(imagePath);  
      19.         ProcessBuilder builder = new ProcessBuilder();  
      20.         builder.command(cmd);  
      21.         builder.start();  
      22.     }  
      23.       
  • 相关阅读:
    OD 实验(十三)
    第一个 Windows 界面程序
    C 语言
    C 语言
    OD 实验(十二)
    PowerShell 常用命令
    OD 实验(十一)
    OD 实验(十)
    redis
    memcached缓存系统
  • 原文地址:https://www.cnblogs.com/shijiaoyun/p/8962642.html
Copyright © 2020-2023  润新知