见范例

ffmpeg -i "concat:file001.ts|file002.ts|file003.ts|file004.ts......n.ts" -acodec copy -vcodec copy -absf aac_adtstoasc out.mp4
ffmpeg -i https://ip182.com/media=hlsA/ssd2/21/8/184547828.m3u8 -acodec copy -vcodec copy -absf aac_adtstoasc output.mp4
ffmpeg -i https://ip182.com/media=hlsA/ssd2/21/8/184547828.m3u8 -acodec copy -vcodec copy output.mp4

切割mp4为m3u8格式,推荐用以下第一行的命令就行了

ffmpeg -i raw_video.mp4 -c copy -map 0 -f segment -segment_list hls/video.m3u8 hls/video%d.ts
ffmpeg -i Video.mp4 -c copy -map  -f segment -segment_list video_playlist.m3u8 -segment_time 2 video%03d.ts
ffmpeg -i Video.mp4 -c copy -bsf:v h264_mp4toannexb -map  -f segment -segment_time  -segment_format mpegts  -segment_list video_playlist.m3u8  video%03d.ts

这个命令也可以切片 mp4 为m3u8列表,还没有仔细看

ffmpeg -i Video.mp4 -c copy -hls_time  -hls_list_size  video_playlist.m3u8

segment_time参数指定切片的时间(大小),效果上感觉不加这个参数,使用系统默认的时间大小就挺好

还没有仔细研究,估计只是把mp4切片为m3u8列表,不需要用 -bsf:v h264_mp4toannexb 这个选项吧

有时间可以研究一下官方文档:https://www.ffmpeg.org/ffmpeg-formats.html#segment_002c-stream_005fsegment_002c-ssegment/

##########################################################################################

以下是网上抄的一段,没仔细研究,网址是https://www.cnblogs.com/saysmy/p/5629019.html

## ffmpeg转视频格式为m3u8

ffmpeg -i test.mp4 -codec:v libx264 -codec:a mp3 -map  -f ssegment -segment_format mpegts -segment_list playlist.m3u8 -segment_time  out%03d.ts

-i : 引入视频源

-codec:v : 视频格式
-codec:a : 音频格式
segment_format: 来指定输出格式为mpegts
segment_list: 用来配置输出的列表文件名
segment_time: 切片的时长

Linux 下使用 ffmpeg 大批量合并 ts 文件, mp4切割文件为m3u8的更多相关文章

  1. linux下编译ffmpeg 引入外部库x264

    Found no assembler Minimum version is nasm-2.13 If you really want to compile without asm, configure ...

  2. Linux下如何查看tomcat是否安装、启动、文件路径、进程ID

    Linux下如何查看tomcat是否安装.启动.文件路径.进程ID 在Linux系统下,Tomcat使用命令的操作! 检测是否有安装了Tomcat: rpm -qa|grep tomcat 查看Tom ...

  3. linux下保存下位机输出的串口信息为文件

    linux下保存下位机输出的串口信息为文件 1.stty -F /dev/ttyUSB0 raw (转换成raw模式) 2.stty -F /dev/ttyUSB0 speed 115200 (设置波 ...

  4. Linux下用FFMPEG采集usb摄像头到RTMP

    Linux下用 FFMPEG 采集 usb摄像头视频 和 摄像头内置麦克风音频 到RTMP服务   ffmpeg -f video4linux2 -qscale 10 -r 12 -s 640x480 ...

  5. Linux下使用matlab在后台默默的运行.m文件(无界面形式)

    Linux下使用matlab在后台默默的运行.m文件(无界面形式)本主在Ubuntu18.04LTS上已经安装了matlab直接运行Matlab$ matlab会启动 matlab,出现启动界面但想要 ...

  6. Linux下find一次查找多个指定类型文件,指定文件或者排除某类文件,在 GREP 中匹配多个关键 批量修改文件名等

    http://blog.sina.com.cn/s/blog_62e7fe670101dg9d.html linux下二进制文件查找: strings 0000.ts | grep -o " ...

  7. Linux下编译ffmpeg并用GDB调试

    1.在Ubuntu界面上调处命令行界面,最方便的方式是使用快捷键Ctrl+Alt+T. 2.安装SDL SDL是一个开源的多媒体开发库,可以设置图像和视频的绘制等操作.如果不安装SDL,FFMPEG将 ...

  8. linux下分卷压缩,合并解压的3种方法

    我们上传东西的时候,由于文件过大而不能上传,或者不给上传,最明显的就是发邮件了,附件最大5M,有的10M.如果超过了就郁闷了.这个时候,如果能把压缩的东西,分割开来就比较爽了,windows下面我想大 ...

  9. Linux下搭建FFmpeg开发调试环境

    背景 如果你是一个FFmpeg的使用者,那么绝大部分情况下只需要在你的程序中引用FFmpeg的libav*相关的头文件,然后在编译阶段链接相关的库即可.但是如果你想调试FFmpeg内部相关的逻辑,或者 ...

随机推荐

  1. SpringBoot整合WEB开发--(五)自定义错误页

    目的与原理: 处理异常时,若我们想根据实际情况返回不同的页面,@ControllerAdvice与@ExceptionHandler,一般用于处理应用级别的异常,一些容器级别的错误就处理不了,例如Fi ...

  2. 颜色color转为rgb格式

    function convertHexToRGB(color) {       if (color.length === 4) {             let extendedColor = &q ...

  3. python之路函数

    1.函数参数,引用 2.lambda表达式 lambda表达式 f1 = lambda a1,a2: a1+a2 3.python的内置函数 abs(),绝对值 all(),循环参数,如果每个元素都为 ...

  4. soundtouch change pitch matlab implementation

    function output = changePitch(input, pitchInSemitones) % one octave is 12 semitones octave = pitchIn ...

  5. Oracle tnsnames.ora

    安装过ORACLE的都知道,oracle安装时需要进行配置,这个配置可以在客户端的企业管理器一步一步进行,或者直接拷贝一个tnsnames.ora文件到安装目录下(c:\app\Administrat ...

  6. Allegro 反射仿真--仿真设置

    一.打开BRD文件 打开PCB SI,启动Cadence Product Choices界面,如图1-1所示,一般我们选择Allegro PCB SI 630(SPECCTRAQuest),具体如下图 ...

  7. C语言-条件编译使用分析

    1.基本概念 条件编译的行为类似于C语言中的if…else… 条件编译是预编译指示命令,用于控制是否编译某段代码 2.实例分析 条件编译初探     22-1.c #include <stdio ...

  8. 后台异常 - org/apache/oro/text/regex/MalformedPatternException

    解决办法 1.将JDK换成1.6.023或者以上的,如果不行进行下面的办法操作 2.缺少了jakarta-oro-2.0.8.jar文件,将此包放入工程中

  9. 基于Android的在线播放器系统的设计与实现

    文章结构: 1 引言 1.1系统的研究背景 现在的时代是互联网的时代,互联网高速发展的同时,无线网络也接入了互联网.社会的各个领域都已经被无线网络渗透.小的比如手机,电脑,电视.大的比如灯光系统,智能 ...

  10. Vue开发重点基础知识

    1.Vuejs组件 vuejs构建组件使用 Vue.component('componentName',{ /*component*/ }): 这里注意一点,组件要先注册再使用,也就是说: Vue.c ...