免费外国网站浏览器中国全案设计联盟
2026/3/25 20:13:57 网站建设 项目流程
免费外国网站浏览器,中国全案设计联盟,办网站怎么赚钱,wordpress首页调用文章数量#x1f604;作者简介#xff1a; 小曾同学.com,一个致力于测试开发的博主⛽️#xff0c;主要职责#xff1a;测试开发、CI/CD 如果文章知识点有错误的地方#xff0c;还请大家指正#xff0c;让我们一起学习#xff0c;一起进步。 #x1f60a; 座右铭#xff1a;不…作者简介 小曾同学.com,一个致力于测试开发的博主⛽️主要职责测试开发、CI/CD如果文章知识点有错误的地方还请大家指正让我们一起学习一起进步。 座右铭不想当开发的测试不是一个好测试✌️。如果感觉博主的文章还不错的话还请点赞、收藏哦文章目录协议概述架构及工作流程怎么分段成 .ts 文件协议概述HLSHTTP Live Streaming是由苹果公司于2009年推出的自适应比特率流媒体传输协议。它基于标准的 HTTP 协议通过将视频流切片成一系列小的 TS 文件并使用 M3U8 播放列表进行索引实现跨平台、可自适应的流媒体传输。架构及工作流程原始视频 → 编码器 → 分段器 → Web服务器 → 客户端播放器 (H.264/HEVC) (生成.ts .m3u8) (HTTP服务) (解析播放)使用通俗的语言介绍hls 就类似于去餐厅吃饭厨师每做完一小碟就端出来你可以边吃边等下一碟编码分段把一个大视频切成很多小片段一个片段就是一个.ts文件一个 ts 文件时长大概 2-10s 左右具体要看业务要求。生成播放列表M3U8这个列表通常展示有哪些.ts 文件以及会按照什么顺序播放CDN 分发 把所有的 .ts 文件和 .m3u8 放到CDN服务器上播放器播放根据.m3u8 列表进行顺序播放。在直播时会实时查看 m3u8 列表有没有新的 .ts 文件怎么分段成 .ts 文件我们通过一个命令来介绍ffmpeg -i input.mp4 -c copy -f hls -hls_time 5 output.m3u8点播文件http://pili-vod.devtest.qbox.net/test.m3u8-f hls: 表示为 hls 格式-hls_time 5每段5soutput.m3u8为播放列表执行命令后在当前目录下会生成很多.ts 文件随便点开几个ts文件播放ts 文件时长为5s当然也有为3s和4s的但是直接执行output.m3u8文件列表是从output122.ts开始播放这到底是为什么打开output.m3u8 文件列表简介查看因为m3u8列表中的#EXT-X-MEDIA-SEQUENCE标签指定了播放的起始序列编号同时 FFmpeg 生成 HLS 时默认会延续历史序列编号。在 HLS 规范中#EXT-X-MEDIA-SEQUENCE是一个强制标签它定义了当前m3u8列表中第一个媒体段.ts 文件的序列号。但是为什么序列编号从 122 开始FFmpeg 生成 HLS 时默认会延续历史序列编号不会自动重置为 0常见场景是你之前已经生成过同名的output.m3u8和对应的.ts文件比如之前生成到了output121.ts本次执行命令时没有删除旧的m3u8和.ts文件FFmpeg 会读取旧m3u8的最后一个序列编号自动从122开始继续生成新的片段。如何从第一个切片开始播放失败方式一❌在 FFmpeg 命令中添加-start_number参数指定起始序号比如从 0 开始但是在执行之前需要删除旧的output.m3u8和所有output*.ts文件避免新旧片段混杂。ffmpeg -i input.mp4 -c copy -f hls -hls_time 5 -start_number 0 output.m3u8但是#EXT-X-MEDIA-SEQUENCE:122依然没有从 0 开始查了一些资料说是依然延用了之前的序列没有彻底删除。但是我换了一个目录进行操作但是还是没有从第一个切片开始播放补充下**验证 FFmpeg 是否真的识别-start_number**可以执行命令查看ffmpeg -h muxerhls失败方式二❌重新编码ffmpeg -i bbb_30fps_gop_60_3mbps.mp4 -c:v libx264 -c:a aac -f hls -hls_time 5 -start_number 0 output.m3u8但是最终结果#EXT-X-MEDIA-SEQUENCE:110执行这个命令需要等待一段时间。即使换一个目录重新执行还是没有从切片0 开始播放。成功方式三 ✅直接修改m3u8文件列表用文本编辑器打开或者vim 命令手动指定#EXT-X-MEDIA-SEQUENCE:0后面的ts文件名都要修改。手动修改的方式可以从第一个切片开始播放强制禁用序列延续 重置临时状态推荐ffmpeg -i ../bbb_30fps_gop_60_3mbps.mp4 -c copy -f hls -hls_time 5 -start_number 0 -hls_flags single_filedelete_segments output.m3u8执行这个命令后执行完成时间较快会看到生成一个ts文件留一个问题切片时长是指定的怎么最终的切片时长 长短不一要成功不需要什么特别的才能只要把你能做的小事做得好就行了。——维龙‬

需要专业的网站建设服务?

联系我们获取免费的网站建设咨询和方案报价,让我们帮助您实现业务目标

立即咨询