首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

hls音频直播杂音分析

HTTP Live Streaming(HLS)是Apple制定的一套自适应多码率标准,用于切片式的分发,在直播领域应用非常广泛,但是在转封装的过程中,我们发现仅在苹果系统中,会伴有破音问题...,本文主要内容就是如何分析直播过程中的破音产生的原因以及解决办法。...直播数据源一般有推流和回源两种模式,推流目前主流是rtmp协议 ott厂商会有TS协议,而回源,一般主流是rtmp源站或者flv源站 少量ott厂商会提供TS源站,而下行播放一般采用flv或者hls,如果有多码率自适应的需求...,一般会采用hls,那这里就涉及了协议转封装问题,这里我们主要讨论ts转hls过程中遇到的问题分析。        ...就是ts的切片形式,苹果公司制定的标准,自然苹果系统的播放器对hls标准执行的就更加严格,Safari播放器对这个音频误差比较敏感,所以每过一小段时间就会听到噗噗的爆破音,对于音质要求较高的直播场景来说

1.1K20
您找到你想要的搜索结果了吗?
是的
没有找到

直播协议的选择:RTMP vs. HLS

这里不多说,就主要结合 iOS 平台,从观看端出发,介绍一下对直播协议的选择。 通常在 iOS 平台做直播业务,会有两种协议可供选择:HLS 和 RMTP。...HLS,是苹果公司实现的基于 HTTP 的流媒体传输协议,全称 HTTP Live Streaming,可支持流媒体的直播和点播,主要应用在 iOS 系统,为 iOS 设备(如 iPhone、iPad)...HLS 先说说 HLS。...相对于常见的流媒体直播协议,例如 RTMP 协议、RTSP 协议等,HLS 最大的不同在于直播客户端获取到的并不是一个完整的数据流,而是连续的、短时长的媒体文件,客户端不断的下载并播放这些小文件。...HLS 的分段策略,基本上推荐是 10 秒一个分片,这就看出了 HLS 的缺点: 通常 HLS 直播延时会达到 20-30s,而高延时对于需要实时互动体验的直播来说是不可接受的。

3.5K41

HLS直播变点播,未按顺序从头播放问题(vidoe.jsvideojs-contrib-hls.js)。

问题描述 可以参考这篇文章,博主遇到的问题跟他类似:HLS实现点播和直播时,M3U8文件的不同; 主要问题就是当m3u8文件没有切片结束时(也就是最后没有#EXT-X-ENDLIST这行代码),直播内容为倒数第三个开始...技术背景 考虑到H5标签对m3u8的兼容性,于是用了video.js 和 videojs-contrib-hls,具体使用可以在我贴出的github连接上找到。...资料查找 翻箱倒柜,终于在谷歌找到了如下描述:gst-plugins-bad: hls: Exclusion of last three fragment in case of live playback...;有一段话是这样讲的: HLS spec 6.3.3 is saying that "the client SHOULD NOT choose a segment which starts less than...Live Streaming draft-pantos-http-live-streaming-12;MD原来hls协议已经支持,但是我用的videojs-contrib-hls.js插件貌似不支持!

28520

EasyNVR视频广场按需播放HLS直播流总是断流原因排查

EasyNVR视频监控综合管理平台支持多种格式视频流的直播播放,包括HLS、FLV、RTSP等,今年我们在此基础上又开发了WebRTC格式的播放,并且将该格式拓展到其他平台,比如EasyGBS。...我们测试EasyNVR视频广场HLS直播的时候,发现直播流会断掉。...分析其原因,了解到直播m3u8返回#EXT-X-ENDLIST(播放结束),只发送了touch channel命令,播放结束后未发送ts请求,m3u8文件未加载,导致直播流播放结束。...解决问题: 在播放器添加是否开启按需直播参数,在播放器监听播放结束中判断是否为直播、按需直播,如果符合两个判断条件则初始化播放器重新请求流,代码如下: this.player.on("ended", (...$emit("ended"); }); 修改后可以看到参数正常返回,直播流正常:

50030

EasyNVR视频广场按需播放HLS直播流总是断流的原因

EasyNVR视频监控综合管理平台支持多种格式视频流的直播播放,包括HLS、FLV、RTSP等,今年我们在此基础上又开发了WebRTC格式的播放,并且将该格式拓展到其他平台,比如EasyGBS。...image.png 我们测试EasyNVR视频广场HLS直播的时候,发现直播流会断掉。...分析其原因,了解到直播m3u8返回#EXT-X-ENDLIST(播放结束),只发送了touch channel命令,播放结束后未发送ts请求,m3u8文件未加载,导致直播流播放结束。...image.png 解决问题: 在播放器添加是否开启按需直播参数,在播放器监听播放结束中判断是否为直播、按需直播,如果符合两个判断条件则初始化播放器重新请求流,代码如下: this.player.on(...$emit("ended"); }); 修改后可以看到参数正常返回,直播流正常: image.png

55620

安放互联网直播HLS直播流在Android系统能播放但IOS系统无法直播问题解决

随着移动设备和5G应用的普及,互联网直播越来越往移动端转移,除了手机APP,在进行网页H5无插件直播时,如果做到各系统、各品牌、各终端的全覆盖观看,是当前亟待解决的问题。...最近我们有用户在使用国标GB28181流媒体服务器进行手机直播时发现,使用Android手机直播HLS流时,画面流畅;而使用苹果时却不行,播放会出现延时、卡段、播不出来的现象。...基于此,今天就为大家分析下HLS直播为什么会出现这种情况? 首先,我们知道,HLS十分适应H5的要求,是移动端浏览器最为贴合的直播方案,唯一的缺点是延时大。...所以,苹果系统在访问HLS直播流时,需要下载完3个TS文件方可进行播放,若是没有3个TS文件,播放途中就会出现请求不到服务器的情况,造成播放延时、直播画面播放不出来的问题。...此过程中对网络及摄像头码流的要求至关重要,可以采用流媒体服务器直播非按需操作,按需直播能够减少带宽流量和服务器性能占用,最优的提高服务器的使用效率。或者通过降低视频码流,实现有效利用最大上行带宽。 ?

1.4K30

流媒体HLS传输协议的直播加密播放解决方案

通过视频转码,切片成不同码率的TS文件,从而实现播放客户端根据网络带宽情况,自由的选择码流进行播放,但是HLS直播时延时较大。...即可直接播放;网络兼容性好,可很方便的通过防火墙或代理服务器,可很简单的实现媒体流的负载均衡,CDN支持良好;自带多码率自适应机制,实现播放码率自由选择 劣势:延时较高,不能用于对延时较为苛刻的场景,如互动直播领域...;TS切片较多,特别是实时视频流,需要动态的生成和删除TS切片文件,为了实现高性能、低碎片化,对于文件存储的逻辑需要更加复杂的设计 直播加密实现 HSL 可播放地址 https://hls-auth.tinywan.com...注意:您必须获得受信任的权威机构签署的SSL证书才能使用具有HTTP Live Streaming的HTTPS服务器 RTMP 直播配置 rtmp { notify_method get;...on; hls_path /tmp/hls; hls_fragment 6; hls_keys on;

11510

如何使用FFmpeg将互联网直播点播平台内直播视频流转化为HLS流?

在音视频开发过程中,经常需要使用 FFmpeg 将原先的一个单视频文件转换为多个HLS 流文件,用于视频直播和点播,当然我们视频直播点播平台EasyDSS也会使用FFmpeg作为能力程序,当需要将视频流转化为...HLS 流时,我们就可以通过FFmpeg来进行转换。...通过互联网直播点播平台EasyDSS播放的单视频文件一般有多种格式,比如mp4、mkv等封装好的视频格式。HLS 流文件由 m3u8 文件和视频 TS 文件组成,如下图所示: ?...-hls_time 8 -hls_list_size 0 output.m3u8 libx264 参数为仅使用 cpu 的能力进行视频转码,h264_nvenc 调用了显卡的程序进行转码,速度更快。...8 -hls_list_size 0 output.m3u8 ?

2K30

HLS 协议:直播回放首选这个协议?丨音视频基础

文森特·梵高《白色的果园》像素版 HLS(HTTP Live Streaming)是由苹果公司提出的一种流媒体传输协议,可支持流媒体的直播和点播。...对于 HLS 直播,相对于常见的流媒体直播协议,例如 RTMP 协议、RTSP 协议等,HLS 最大的不同在于直播客户端获取到的并不是一个完整的数据流,而是连续的、短时长的媒体文件(如 MPEG-TS...不过 HLS 的这种技术特点,决定了它的延迟一般总是会高于普通的流媒体直播协议。...,所以直播回放通常都会选择 HLS 协议来实现。...-23 (通过上文的介绍,我们了解了 HLS 协议的基础知识,HLS 协议配合 M3U8 和 TS 封装格式可以应用在直播和点播场景。

1.2K20

淘汰的RTMP、HTTP-FLV、HLS直播技术,拥抱互联网直播的未来--WEBRTC、WEBSOCKET

随着移动互联网时代的到来,各大互联网厂商和流媒体协议组织涌现出丰富多彩各种各样的直播流媒体协议,其中比较出名的经典流媒体协议有RTMP/RTSP/HTTP-FLV/HTTP-HLS/WEBRTC等,协议简介如下...但是HLS协议的小切片方式会生成大量的文件,存储或处理这些文件会造成大量资源浪费。如果要实现数天的时移,索引量将会是个巨额数字,并明显影响请求速度。因此,HLS协议对存储I/O要求相当苛刻。...如此众多的流媒体直播协议如何选择?...基于浏览器插件的老牌直播协议RTMP终于寿钟正寝,虽然各大CDN厂商还在坚持使用RTMP协议,但是也难逃被各大浏览器厂商淘汰的趋势和事实;RTSP主要应用于安防领域,而随之兴起流行的HTTP-FLV、HLS...而新兴的WEBRTC协议是专门基于网页js设计的及时音视频通信协议,其无插件的直播性能完全能满足流媒体直播的要求,而新兴的互联网90%的浏览流量都在浏览器上,所以WEBRTC是目前互联网直播协议中一种比较优质是选择

1.5K40

EasyNVR H5无插件直播方案前端构建之:如何播放HLS

之前在进行EasyNVR多屏开发的时候,由于多屏功能不需要在手机端展示出来(pc多播放为RTMP,手机端播放为HLS),因此只注意到了引用videojs来进行rtmp的播放。...由于不同项目需求不同,对hls流的播放也需要体现出来。 videojs在播放rtmp时,是调用Flash来进行播放的,在播放hls时是调用h5来播放的。... 主要的不同点在于type...的形式 当我们在标签中引用videojs时会通过data-setup=”;来进行控制,我们有时默认为空,由videojs自己来觉定,但是必须要有该属性; 如果是要播放 hls 就改成這樣 data-setup...=’{“techOrder”: [“hls”]}’ ; 播放h5或flash,同理; 如果 我们播放方hls, video type 一定要是 type=”application/x-mpegURL

61120

利用nginx搭建RTMP视频点播、直播HLS服务器「建议收藏」

那就是配置location部分,由于下面我们要配置直播和回看功能所以选用了RTMP服务。 直播视频服务器的配置 接着我们就在点播服务器配置文件的基础之上添加直播服务器的配置。...最后奉上一张观看直播的屏幕截图。 实时回看视频服务器的配置 我们想一想如果直播服务能够把节目录制在本地,我们不就可以直接进行回看先前的节目了吗?回看一分钟、一小时甚至一天的。...hls_path /opt/video/hls; #切片视频文件存放位置。 hls_fragment 10s; #每个视频切片的时长。...hls_playlist_length 60s; #总共可以回看的事件,这里设置的是1分钟。 hls_continuous on; #连续模式。...hls_cleanup on; #对多余的切片进行删除。 hls_nested on; #嵌套模式。

2.2K20

基于HLS-TS&RTMP-FLV的微信小程序点直播方案

前端点播方案 点播不关心延时,采用H5中video标签对hls-ts的支持即可,因为HLS兼容性很好,在PC端、Ios和Android,支持都非常友好,也是目前唯一跨平台支持比较好的拉流协议,美中不足就是直播延时比较大...,延时大的原因是因为这套协议本质采用了小文件片段的分发方式,一个小文件片段基本在2秒左右,这样HLS延时一般下来都在10s+,做的好的也在5s+,综合来看HLS作为直播分发协议不太合理(除非直播时不关心延时...Open API,提供一些Restful API接口,允许用户通过该接口创建点直播任务,获取HLS拉流和RTMP拉流URL,任务一旦创建后就唤醒设备,设备通过私有协议或者国标协议,将码流推到平台侧; 2...---- 最终效果: 上面代码只是为了验证下服务端功能,前端我们除了点直播,还增加了随机拖动,花式播放、缩略图和timeline等功能。 Rtmp直播: ? HLS点播: ?...---- 本文总结: 本文主要讲了下基于微信小程序的点直播方案,其中点播基于H5 Video标签用了HLS-TS方案,直播基于微信live-player媒体组件用了RTMP-FLV方案。

2.3K20
领券