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-static\ffmpeg-20151117-git-e9aea6d-win64-static\bin
下面流转换和切片的方式:
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
ffmpeg把ts文件转m3u8并切片的更多相关文章
- ffmpeg转MP4文件为m3u8格式
第一种转换命令 #转mp4为ts ffmpeg -y -i D:\videos\BgFCWkn00qPBmWVzIEf0eQjaekx0oRjlk9VY2PcR.mp4 -vcodec copy -a ...
- 网络视频m3u8解密及ts文件合并
网络视频m3u8解密及ts文件合并 参考了两篇博客: https://blog.csdn.net/weixin_41624645/article/details/95939510 https://bl ...
- ffmpeg文件生成m3u8文件及ts切片程序(一)
ffmpeg文件生成m3u8文件及ts切片程序(一) 实现目标:输入本地文件,实现m3u8切片,功能点请看注释,注意:注释很重要. 参考: http://www.cnblogs.com/mystory ...
- ffmpeg 视频ts切片生成m3u8
下面几种转换方式是不同版本和方法 新版本ffmpeg转视频直接可以切边并生成 m3u8(目前用的方式,也可以用选项 segment ): ffmpeg -i '源文件.mp4' -c:v h264 - ...
- Linux 下使用 ffmpeg 大批量合并 ts 文件, mp4切割文件为m3u8
见范例 ffmpeg -i "concat:file001.ts|file002.ts|file003.ts|file004.ts......n.ts" -acodec copy ...
- 加密的m3u8、ts文件合并
加密后的ts文件不能直接合并或播放,需要使用key对每个ts文件进行解密. 分为两种情况: (1).如果ts文件已经全部下载好,则可以直接在本地通过ffmpeg快速解密合并. (2).如果ts文件没有 ...
- 关于m3u8文件, ts文件解密, hls 解密. 一些记录
使用openssl 解密 openssl aes-128-cbc -d -in 原.ts -out 解密后.ts -nosalt -iv 偏移量 -K key16进制 其中 iv 偏移量和 key 一 ...
- 指定一个M3U8文件,判断它包含的TS文件是不是都存在。指定一个Office生成的Swf文件,判断它包含的Swf文件是不是完整都存在。
static void Main(string[] args) { //检查M3u8文件 var fiPath = @"D:\Work\CloudPlatformUtil\CloudPlat ...
- Python3 根据m3u8下载视频,批量下载ts文件并且合并
Python3 根据m3u8下载视频,批量下载ts文件并且合并 m3u8是苹果公司推出一种视频播放标准,是一种文件检索格式,将视频切割成一小段一小段的ts格式的视频文件,然后存在服务器中(现在为了减少 ...
随机推荐
- PHP文件常用函数
feof() 判断文件是否超出了文件末尾. <?php $files = fopen("1.txt","r+"); fread($files,filesi ...
- js实现完美身份证号有效性验证(转)
转载自:http://www.cnblogs.com/lzrabbit/archive/2011/10/23/2221643.html 最近需要对身份证合法性进行验证,实名验证是不指望了,不过原来的验 ...
- 01_MUI之Boilerplate中:HTML5演示样例,动态组件,自己定义字体演示样例,自己定义字体演示样例,图标字体演示样例
1安装HBuilder5.0.0,安装后的界面截图例如以下: 2 依照https://www.muicss.com/docs/v1/css-js/boilerplate-html中的说明,创建上 ...
- SpringMVC @SessionAttributes 使用详解以及源码分析
@sessionattributes @Target({ElementType.TYPE}) @Retention(RetentionPolicy.RUNTIME) @Inherited @Docum ...
- ios开发,app调用资源文件到C++的方法
为了读取资源文件到cpp.供opencv处理,采取的方式是把之前的cpp文件的后缀改成:.mm 然后会出现各种报错,原因是因为命名冲突,前面加上cv::就行. const char* imagePat ...
- win7系统损坏无法进入系统(dsark.sys文件损坏)(未测试过)
原文:http://blog.csdn.net/foreverhuylee/article/details/37913837 电脑今天突然开不了机,出现一下画面 即提示d:\Windows\syste ...
- 【异常】IOException parsing XML document from class path resource [xxx.xml]
1.IDEA导入项目运行出现异常 org.springframework.beans.factory.BeanDefinitionStoreException: IOException parsing ...
- 从PCD文件写入和读取点云数据
(1)学习向PCD文件写入点云数据 建立工程文件ch2,然后新建write_pcd.cpp CMakeLists.txt两个文件 write_pcd.cpp : #include <iostr ...
- 再谈git的http服务
因为git服务器搬迁,需要重新安装git服务器,在网上搜索了下,发现之前的方法太复杂,复杂到自己都没彻底弄明白.其实通过git自带的git-http-backend脚本配合apache2的http服务 ...
- Navi.Soft31.WinForm框架(含下载地址)
1概述 1.1应用场景 尽管互联网高速发展,互联网软件也随之越来越多,但桌面应用程序在某些领域中还是不可替代,如MIS,ERP,CRM等软件产品,同时,这类软件均包括一些通用的功能,如:与数据库操作, ...