H.264 CRF 默认23
H.265 CRF 默认28
选项 | 参数 | 解释 |
---|---|---|
-hls_time | 数字 | 每隔一段时间切片 |
-hls_list_size | 数字 | 0 则为不限制播放列表长度 |
-hls_segment_type | fmp4 片段类型名 | h.265值fmp4 使用fmp4时m3u8会出现一个#EXT-X-MAP:URI=”init.mp4″ |
-i | 文件名 | 输入文件名 |
-f | 输出类型 hls | 输出类型 |
-hls_playlist_type | 值vod | 设置hls播放类型为点播放,该选项回将hls_list_size 设置为0 |
-crf | 数值 | 压缩值 0为无损,23最好 ,30以上不建议选择 |
-c:a | aac | 设置音频编码aac 复制为copy参数 |
-c:v | libx264 | 设置视频编码为h.264 复制为copy参数 |
-c:v | libx265 | 设置视频编码为h.265 |
-hls_flags | independent_segments | 当确保播放列表中所有切片都以一个关键帧开始时,将#EXT-X-INDEPENDENT-SEGMENTS添加到播放列表中。 |
-hls_flags | delete_segments | 用于直播 自动删除旧的ts,只保留最新的几个 |
-hls_flags | append_list | 广告添加/HLS拼接 告诉 ffmpeg 添加到最后,而不是替换原文件。 |
-hls_flags | split_by_time | 告诉 ffmpeg 将切片时长尽量保证一至。(因为关键帧的存在) 可以使用+ 联合使用 |
-hls_segment_filename | ac%6d.ts | 用于在打包过程中为所创建的视频切片命名ac00000.ts ac00001.ts |
-s | 1920×1080 | 设置分辨率1920×1080 |
-r | 30 | 设置fps为30 默认25 |
-b:a | 128k | 设置音频码率128k 与同类的copy不可以用 |
-b:v | 2500k | 设置视频码率平均2500k 与同类的copy不可以用 |
-maxrate | 2675k | 设置最大码率2675k |
-maxrate | 3000k | 设置 bufsize 是为了让码率分布更均匀,设置的越小检查的频率越高,画质越差。一般设置 maxrate 的一到两倍之间 |
-ar | 44100 | 音频采样频率 44100 |
-ac | 2 | 音频通道数,2通道 |
-threads | 0 | 自动根据计算机核心启用多线程 |
-g | 60 | 关键帧最大间隔数 若30fps 2秒一切 则建议为60 |
-keyint_min | 60 | 关键帧的最小间隔数正好关键帧的最小和最大间隔数 |
-sc_threshold | 0 | 转换场景时不自动生成关键帧 |
-max_muxing_queue_size | 1024 | 增大容器封装队列大小,用于处理 转码报错 Too many packets buffered for output stream 0:1. |
-vf | “scale=1280:-2” | 转码视频保持1280的宽度,防止出现不被2整除的高度 |
-hls_key_info_file | enc.keyinfo | enc.keyinfo为key文件 |
hls_fmp4_init_filename | init.mp4 | 设置fmp4下头文件 默认init.mp4 |