• ffmpeg把ts文件转m3u8并切片


    Linux_x86_64流媒体环境:nginx + EasyDarwin-master

    客户端播放器:VLC media player

    下载windows下的ffmepg二进制版本,请进网站http://ffmpeg.zeranoe.com/builds/win32/shared|static 最新版本,无需自己编译。

    下载完解压后,需要配置ffmepg的path环境变量。Path=%Path%;E:ffmpeg-20151117-git-e9aea6d-win64-staticffmpeg-20151117-git-e9aea6d-win64-staticin

    下面流转换和切片的方式:

    ffmpeg -ss 01:00:00 -i input_file_h264.mp4 -vcodec copy -acodec copy -t 00:06:00 output_file.mp4

    ------------------------------

    利用ffmpeg将已有的视频文件转换成ts文件

      ffmpeg -y -i <in file> -vcodec copy -acodec copy -vbsf h264_mp4toannexb <output file>

    其中in file为待转换的视频文件,比如input.mov,output file为转换后的文件,要命名为output.ts

    利用segmenter将转换好的ts文件切割成多个ts片,并生成.m3u8的索引文件

      ./segmenter -i out.ts -n 10 -p segmenter_test -m test.m3u8 -u #需要安装segmenter包

    i表示输入文件,n表示切割10秒,p表示切割文件的前缀。m表示生成的m3u8文件名,u表示这些切割后的文件处于web server的哪个目录下

    PS:实践过程中发现一个问题,就是切片之后,最后一段ts不管是不是10s,同样会按10s去切,导致切好后的视频最后一段会加上去几秒的黑段来补足10s,原因是segmenter.c中的程序写的还有缺陷,修正方法如下:

    ---------------------------
    ffmepg把ts文件转m3u8并切片:
    ffmpeg -i xx.ts -c copy -map 0 -f segment -segment_list playlist.m3u8 -segment_time 10 output%03d.ts

    大家都说HLS代表future,rtsp已经是过去式了。

    怎么分割并转换为h264编码呢?
    先把ts流中的格式转换对,可以用以下命令试试:
    ffmpeg -i your.ts -acodec copy -vcodec libx264 new.h264.ts

    -----------------------------

    ffmpeg -i xxxxx.ts -hls_time 10 -hls_list_size 10 -f hls xxxx.m3u8

    -----------------------------

    以下是笔者的方法:

    ffmpeg -y -i bs.mp4 -vcodec copy -acodec copy -vbsf h264_mp4toannexb bs2.ts

    ffmpeg -i bs2.ts -c copy -map 0 -f segment -segment_list playlist.m3u8 -segment_time 3 output%03d.ts

  • 相关阅读:
    【Java Web】使用URLRewrite实现网站伪静态
    Jsp的include指令静态导入和动态导入的区别
    JSP中使用cookie存储中文
    【转】android加载大量图片内存溢出的三种解决办法
    Android调整TimePicker和DatePicker大小
    使用WebClient实现通讯(Silverlight学习笔记)
    Silverlight 用户控件与自定义控件详解
    利用WebClient和WebRequest类获得网页源代码
    Silverlight中的对象序列化/反序列化
    Flex与FLASH区别及Flex动画效果学习
  • 原文地址:https://www.cnblogs.com/shengs/p/4977662.html
Copyright © 2020-2023  润新知