02 2017 档案
摘要:1、ijkplayer 编码 IjkPlayer支持硬解码和软解码。 软解码时不会旋转视频角度这时需要你通过onInfo的what == IMediaPlayer.MEDIA_INFO_VIDEO_ROTATION_CHANGED去获取角度,自己旋转画面。或者开启硬解硬解码,不过硬解码容易造成黑屏无
阅读全文
摘要:解决低延迟问题的核心思想:NO BUFFER 低延迟:顾名思义,就是让播放端和推流端的时间差越小越好,那么如何做到低延迟呢,一个词概括:no buffer 首先说明一下视频流的流向:推流端 >CDN服务器 >拉流端 1. 推流端 nobuffer,也就是保证推流端缓存的buffer最小。这样基本上保
阅读全文
摘要:最近在做android截图应用的过程遇到很多问题,接触了好些截图方法,但是还是不能实现SufaceView截图功能。今天就把我尝试过的方法总结下,希望把我惨痛的经历写出来后能够帮助到要做此功能的朋友少走弯路,或者是给一些思路吧。如果哪位大侠能够做到SurfaceView截图,还请分享下思路。 一、无
阅读全文
摘要:音视频的直播系统是一个复杂的工程系统,要做到非常低延迟的直播,需要复杂的系统工程优化和对各组件非常熟悉的掌握。下面整理几个简单常用的调优技巧: 编码优化 1. 确保 Codec 开启了最低延迟的设置。Codec 一般都会有低延迟优化的开关,对于 H.264 来说其效果尤其明显。很多人可能不知道 H.
阅读全文
摘要:近期开始接触视频直播方面的项目,本人也总结了一些视频直播的相关的概念、技术及解决方案。 首先,了解了一下视频直播相关的概念。常用的几种视频协议是:RTMP、HTTP-FLV、HLS、RTP/RTCP协议。 然后我们会在说明一下直播整体的流程和相关的技术。 一、视频直播协议 在直播领域大概可以分类两种
阅读全文
摘要:在Android 开发中,我们肯定会接触到下载需求,那么如何通过技术实现呢? 一、简单实现: 通过了解HTTP原理,我们应该可以知道,HTTP学习的时候,可以通过HTTPGET方式来进行文件下载:
阅读全文
摘要:我们知道WebRTC要解决的是两个浏览器之间如何进行实时音视频互动的问题。从底层来看,就是要解决两个点之间如何进行高效的网络传输。这就涉及要很多重要的传输协议,下面我们针对涉及到的协议进行梳理和说明。 一、NAT(Network Address Translator) NAT主要做的事情就是地址映射
阅读全文
摘要:TCP/IP重要的特性就是分层。TCP/IP 按照层次分为四层:应用层、传输层、网络层、数据链路层。分层的好处就是当某些地方需要改变的时候,只需要将改变的层替换掉即可,而不用去把整体做替换。各层之间的接口部分规划好了,层次内部的设计就能够自由改动了。 一、TCP/IP各层的作用 1.1 应用层 应用
阅读全文
摘要:一、Http 概念解析 HTTP协议用于客户端和服务端之间的通信,通过请求和响应的交互达成通信。HTTP协议规定,请求从客户端发出,最后服务器端响应请求并返回,也就是说,肯定是从客户端开始建立通信的,服务器端在没有接受到请求之前不会发送响应。 HTTP 是不保存状态的协议,HTTP协议不对请求和响应
阅读全文
摘要:一、WebRTC概念 1.什么是WebRTC 音视频互动的例子:https://appr.tc/(需FQ)。 我们都知道浏览器本身不支持相互之间建立信道进行通信,都需要通过服务器进行中转。比如现在有两个客户端—甲、乙,他俩想要进行通信,首先需要甲和服务器、乙和服务器之间建立信道。甲给乙发送消息时,甲
阅读全文