视频分片

  1. 作者QQ:67065435 QQ群:821635552

  2. 本站内容全部为作者原创,转载请注明出处!

  3. 安装前的准备

    yum install bzip2 -y
    
  4. 安装yasm

    cd /root
    wget https://note.so1234.top/network/yasm-1.3.0.tar.gz
    tar -zxvf yasm-1.3.0.tar.gz
    cd yasm-1.3.0
    ./configure
    make
    make install
    
  5. 安装ffmpeg

    cd /root
    wget https://note.so1234.top/network/ffmpeg-snapshot.tar.bz2
    tar jxvf ffmpeg-snapshot.tar.bz2
    cd ffmpeg
    ./configure --prefix=/usr/local/ffmpeg
    make
    make install
    useradd www
    chown -R www:www /usr/local/ffmpeg
    
  6. 配置环境变量

    vim /etc/profile
    
    export PATH=$PATH:/usr/local/ffmpeg/bin
    
    ESC
    :wq
    
    source /etc/profile
    
  7. 使用示例1:裁切视频指定片段

    # 从00:03:00开始截取长度为10分钟的视频
    ffmpeg -ss 00:03:00 -i xxxxxx.mp4 -vcodec copy -acodec copy -t 00:10:00 output.mp4
    
  8. 使用示例2:视频分片还原视频

    # 从m3u8还原为mp4视频
    ffmpeg -i https://domain/input.m3u8 -c copy -bsf:a aac_adtstoasc output.mp4
    
  9. 使用示例3:视频分为多个文件

    #!/bin/bash
    
    pwd=`pwd`
    
    if [ "x${1}" = "x" ]
    then
        echo '参数错误'
        exit
    fi
    
    if [ ! -f "${pwd}/${1}.mp4" ]
    then
        echo '没有文件'
        exit
    fi
    
    if [ ! -d "${pwd}/${1}.tv" ]
    then
        mkdir "${pwd}/${1}.tv"
    fi
    
    ffmpeg -i ${pwd}/${1}.mp4 -c copy -f segment -segment_time 5 -segment_format mpegts -segment_list_type m3u8 -segment_list ${pwd}/${1}.tv/0000.m3u8 ${pwd}/${1}.tv/%04d.ts
    
  10. 脚本/usr/bin/tvcut的作用

    # tvcut可以将工作目录的(???.mp4)切分为(时长5秒的多个ts文件)+(充当索引的一个m3u8文件),保存到(???.tv)目录下
    
  11. 脚本示例

    # 假设工作目录有xxx.mp4,则执行
    tvcut xxx
    # 则会在工作目录创建xxx.tv目录
    # xxx.tv目录包含一个0000.m3u8文件
    # xxx.tv目录里还有多个%04d.ts文件
    
Copyright © 豆包嘿嘿~ 2012-∞ 冀ICP备17033181号 all right reserved,powered by Gitbook修订: 2020-08-19 14:05:41

results matching ""

    No results matching ""