
流媒体
文章平均质量分 74
wusc'blog
假如生活欺骗了你,不要悲伤,不要心急,忧郁的日子里需要镇静
展开
-
Live555 RTSP播放分析(二)--RTSPClient及MediaSession
以testRTSPClient.cpp测试程序来分析RTSP播放流程,其中最主要的流程在RTSPClient及MediaSession中。原创 2020-03-21 17:41:10 · 2522 阅读 · 0 评论 -
Live555 RTSP播放分析(一)--基本模块介绍
RTSPClient处于Live555 liveMedia模块,这部分是Live555流媒体的核心部分,主要是实现了各种流媒体交互流程。我们先了解一些重要的类,以帮助后面分析代码。原创 2020-03-21 11:29:04 · 4112 阅读 · 0 评论 -
Live555 组播及RTSPClient IPv6改造
扩展Live555 GroupSock及liveMedia,支持rtsp、组播 IPv6播放原创 2020-03-12 09:49:10 · 1852 阅读 · 1 评论 -
wireshark TCP常见异常报文分析
流媒体播放中,常常需要借助wireshark从TCP层面对交互过程进行分析,本文记录一些常见的TCP异常报文及其分析。乱序与丢包1、[TCP Previous segment not captured][TCP Previous segment not captured]报文指的是在TCP发送端传输过程中,该Seq前的报文缺失了。一般在网络拥塞的情况下,造成TCP报文乱序、丢包时,会出现该标...原创 2019-10-19 18:57:27 · 16953 阅读 · 2 评论 -
媒体播放常用调试工具
码流分析也是播放器开发中必备方法,可以帮助我们查看码流信息,确认码流是否正常,对问题分析起到事半功倍的作用。介绍些常用的分析工具及方法。原创 2019-08-16 13:12:59 · 2264 阅读 · 0 评论 -
Android 实现live555 RTSP代理播放器
利用live555 实现RTSP拉流客户端,但想看下播放效果,所以结合Android MediaPlayer实现播放。live555 实现RTSP交互及拉流过程,然后UDP,将数据传递给MediaPlayer播放。也就是相当于live555作为RTSP播放器的代理端。原创 2019-08-11 13:40:06 · 6881 阅读 · 0 评论 -
Android live555组播拉流客户端
组播拉流客户端,支持RTP及UDP裸流,介绍了live555在Android上的移植及简单实用方法。原创 2019-07-20 21:30:02 · 2328 阅读 · 0 评论 -
FFmpeg 从seek闪退问题分析ts时长duration计算方法
背景HTTP点播seek闪退分析FFmpeg解析ts duration流程分析解决思路背景FFmpeg是非常优秀的开源框架,在使用其进行二次开发及适配的过程中,难免会遇到各种各样的问题。这次要分析的问题是基于FFmpeg的播放器在HTTP点播seek的时候,出现闪退,从而引申出FFmpeg中ts流duration计算方法的分析。HTTP点播seek闪退分析从日志看,发现seek的位置是...原创 2019-06-16 16:49:20 · 3371 阅读 · 0 评论 -
FFmpeg 直播黑屏问题分析解决
背景FFmpeg是非常优秀的开源框架,在使用其进行二次开发及适配的过程中,难免会遇到各种各样的问题。这次记录的是基于FFmpeg开发的播放器中,直播黑屏问题分析思路及解决方法。问题如下:在直播节目的使用过程中,某些播放源起播后画面黑屏,但却有声音。...原创 2019-06-10 19:42:35 · 5488 阅读 · 0 评论 -
Wireshark网络抓包分析——工具
转自https://www.cnblogs.com/strick/p/6344486.html一、基本信息统计工具1)捕获文件属性(Summary)File:了解抓包文件的各种属性,例如抓包文件的名称、路径、文件所含数据包的规模等信息Time:获悉抓包的开始、结束和持续时间Capture:抓包文件由哪块网卡生成、OS版本、Wireshark版本等信息Display:剩下...转载 2018-10-19 08:51:19 · 2569 阅读 · 1 评论 -
HLS简介
1.协议简介HLS全称为HTTP Live Streaming,是苹果公司提出的基于HTTP的流媒体网络传输协议。它的工作原理是把整个媒体流分成一个个小的基于HTTP的媒体分片来下载,每次只下载一些分片。在开始一个流媒体会话时,客户端会下载一个包含媒体分片的索引文件,即extended M3U playlist文件(m3u8),用于寻找可用的媒体分片。HLS中,索引文件可以嵌套,一般只有一级索...原创 2019-06-05 11:58:12 · 30073 阅读 · 1 评论 -
常用流媒体协议(HLS/HTTP/RTP组播/RTSP)提取流的方法
记录一下从网络包提取TS的方法,基于RTP协议的。1、首先过滤出对应的UDP流出来 2、选中一包,右键DecodeAs…选择RTP 3、之后会全部变成TS出来,如下图,选择工具栏上的Telephony->RTP->Stream Analysis 4、点 Save Payload,保存为ts即可原创 2017-03-07 11:27:53 · 5799 阅读 · 0 评论 -
播放器:记录对gzip解压支持的修改
问题背景: 有些服务器,播放HLS时,http请求返回的编码类型是gzip,导致终端无法播放,m3u8文件被压缩,需要进行解压操作。1、使用curl下载使用curl的话则十分简单,可以在下载之前设置参数,curl会自己进行解压。参考源文档的解释,参数enc可以设置“gzip”或者“”即可(“”则支持更多的压缩方式)。CURLcode curl_easy_setopt(CURL *handle, C原创 2017-08-31 15:13:04 · 572 阅读 · 0 评论 -
FFmpeg hls.c分析
转载自https://blog.youkuaiyun.com/wzw88486969/article/details/78821068avformat_open_input(http.xxx.m3u8) init_input(s, filename, &tmp)) //提供的文件名信息不能探测格式 av_probe_input_format2...转载 2018-05-09 14:27:01 · 2551 阅读 · 0 评论 -
Android MediaPlayer中的RTSP(一):RTSP简介
背景:最近的项目中,遇到了使用Android的mediaplyer来进行RTSP播放的场景。对于RTSP这种流媒体协议,Android原生的播放器支持的其实并不是很好,所以有许多需要修改的地方,在此做一下记录,并作为一个了解RTSP协议的契机。 这次主要是简单介绍RTSP协议及其在mediaplyer中的层级,后面会记录下项目中遇到的情况及修改。RTSP播放器架构这里介绍下media...原创 2018-06-10 17:25:52 · 18264 阅读 · 4 评论 -
Android MediaPlayer中的RTSP(二):FFmpeg中RTSP代码流程分析
背景:RTSP在不同FFmpeg版本中可能略有不同,该文档主要介绍FFmpeg RTSP主要的相关代码流程,而涉及FFmpeg的一些结构并不会详细说明,这部分的内容,有兴趣可以可以参考雷霄骅大神的博客https://my.youkuaiyun.com/leixiaohua1020。关键结构ff_rtsp_demuxer :AVInputFormat该结构被称为解复用模块,是音视频文件的一个解封...原创 2018-07-06 17:42:15 · 5477 阅读 · 3 评论 -
Android MediaPlayer中的RTSP(三):相关修改总结
背景:前面两章节简单介绍了RTSP协议,FFmpeg中RTSP的简单交互流程。之前提到过,实际应用中,对于不同项目,对FFmpeg需要进行完善,以适应各种特殊情况。之前列的情况如下: 1、SETUP阶段的协议选择:载流协议是UDP还是TCP,是否使用RTP承载,尝试一种载流协议不支持后的切换流程 2、重定向的完善:正常来说,一般在SETUP阶段后,就不会再有重定向了,因为这样需要重新...原创 2018-08-08 17:50:58 · 2396 阅读 · 1 评论 -
libcurl 使用方法简介
libcurl 使用方法简介背景简介使用方法1、easy interface使用方法2、multi interface使用方法背景最近想做一个简单的HLS拉流程序,HTTP的下载部分觉得采用libcurl来进行比较合适及方便,所以先介绍libcurl的基本用法,然后使用libcurl完成一个简单的下载小程序。简介libcurl是一个跨平台的开源网络协议库,支持http, https, rt...原创 2018-09-30 10:09:18 · 42050 阅读 · 3 评论