- 博客(35)
- 资源 (1)
- 问答 (1)
- 收藏
- 关注
原创 Webrtc笔记
webrtc处理视频丢包的机制 - 简书WebRTC中丢包重传NACK实现分析 - 简书webrtc QOS方法(汇总篇)_CrystalShaw的博客-CSDN博客实时音视频质量评估方案_u011608531的专栏-CSDN博客
2021-09-28 21:02:56 139
原创 I, P, B帧和PTS, DTS时间戳的关系
I帧:帧内编码帧 又称intra picture,I 帧通常是每个 GOP(MPEG 所使用的一种视频压缩技术)的第一个帧,经过适度地压缩,做为随机访问的参考点,可以当成图象。I帧可以看成是一个图像经过压缩后的产物。P帧:前向预测编码帧 又称predictive-frame,通过充分将低于图像序列中前面已编码帧的时间冗余信息来压缩传输数据量的编码图像,也叫预测帧。B帧:双向预测内插编码帧 ...
2020-02-13 16:52:00 584
原创 H264编码中Baseline Main High简介
Baseline(基本Profile):利用I片和P片支持帧内和帧间编码,支持利用基于上下文的自适应的变长编码进行的熵编码(CAVLC)。主要用于可视电话、会议电视、无线通信等实时视频通信。Main(主要Profile):I帧、P帧和CAVLC的基础上,支持隔行视频,采用B片的帧间编码和采用加权预测的帧间编码;支持利用基于上下文的自适应的算术编码(CABAC)。主要用于数字广播电视与数字视频存...
2020-02-13 16:47:20 13358
原创 影响视频编码质量的因素
1. 分辨率在保持码率不变的时候,提升分布率对视频质量并没有多大影响。2.比特率视频编码比特率和视频的质量是正相关的。3.帧率帧率对视频画质没有影响帧率和视频大小正相关。视频大小和FPS/GOP_SIZE存在一定的线性相关性。参考:比特率,帧率,分辨率对视频画质的影响视频质量,分辨率以及码率之间的关系...
2020-02-13 16:37:47 1703
翻译 HoloLens Mixed reality capture
MR介于VR和AR之间,即把虚拟的三维物体跟空间位置相结合,展示到显示世界中。 Mixed reality capture(MRC)通俗讲,Mixed reality capture就是HoloLens佩戴者的第一视角画面捕获成视频的功能。 MRC的重要性MRC拍摄的照片和视频可能是用户对您的应用的第一次曝光。无论是在Windows商店页面上的全息屏幕截图,还是在社交网...
2018-07-17 16:40:02 1379
原创 YUV 格式
1.何为YUV 一种颜色编码方法,是PAL和SECAM模拟彩色电视制式采用的颜色空间。在现代彩色电视系统中, 通常采用三管彩色摄影机或彩色CCD摄影机进行取像,然后把取得的彩色图像信号经分色、分别 放大校正后得到RGB,再经过矩阵变换电路得到亮度信号Y和两个色差信号B-Y(即U)、R-Y (即V),最后发送端将亮度和色差三个信号分别进行编码,用同一信道发送出
2016-09-19 14:33:35 841
原创 E/ACodec: [OMX.qcom.video.decoder.avc] ERROR(0x80001009)
这里记录下Android硬编解码的大坑 “E/ACodec: [OMX.qcom.video.decoder.avc] ERROR(0x80001009)”产生的原因:1:塞了错误的数据2:入队Frame数据时用了flag(BUFFER_FLAG_CODEC_CONFIG),但是入队的数据中没带sps,pps。 或者相反,没用这个flag,数据中带了sps,pps。
2016-09-05 16:50:12 9840 3
原创 Android 6.0(Marshmallow API level 23) 变更
1)Runtime Permission 在这个版本中,用户可以直接在运行时对应用权限进行管理。 在您的app中,需要在运行时对权限进行请求。 使用checkSelfPermission方法检查您的app是否有一个权限。 使用requestPermission方法来请求一个权限。2)Doze and App Standby Doze
2016-08-16 15:58:36 1056
转载 android面试 (基础篇 12) View绘制流程
1.下面是一个从这里找到的View绘制流程图2.概念 总的来说绘制view总共分三步:Measure , Layout , Draw Measure:自上而下的遍历,根据父视图对子视图的MeasureSpec以及ChildView自身的参数,通过: getChildMeasureSpec()方法获取子view的MeasureSp
2016-08-16 11:42:26 647
转载 android面试 (基础篇 11)
9)touch事件的传递 touch事件既是用手触摸屏幕所触发的事件。这些事件基本包括按下Down,移动Move 取消Cancel和离开触摸屏Up四种事件。一个完整的Touch过程一般是由Down->(Move) ->Up/Cancel这四个事件做成,值得注意的是,一个完整的触摸事件必须由Down开始, 再到Up/Cancel技术,中间的Move可有可无
2016-08-11 23:06:12 288
转载 android面试(基础篇 10)
7)Activity的launch mode的应用场景 standard:创建一个新的Activity singleTop:栈顶不是该类型的Activity,则创建一个新的Activity。否则,onNewIntent singleTask:回退占中没有该类型的Activity,则创建Activity。否则,onNewIntent+ClearTop 注意:
2016-08-11 15:22:22 253
转载 android面试(基础篇 9)
4)Activity,Window,View三者的差别,Fragment的特点? Activity是控制单元,Window是承载模型,View是显示视图(窗花),LayoutInflater是剪刀, Xml像窗花的图纸。 (1)在Activity中调用attach,创建一个window (2)创建window是其子类PhoneWindow,在atta
2016-08-10 21:32:54 352
原创 x264编码参数设置
H264Encoder *pEn = (H264Encoder *) AllocBuffer(sizeof(H264Encoder));pEn->param = (x264_param_t *) AllocBuffer(sizeof(x264_param_t));/*设置profile属性*///x264_profile_names数组定义如下:static cons
2016-08-09 09:04:22 6568 1
转载 android面试(基础篇 8)
1)数据库操作有哪些,如何导入外部数据库? 把数据库包括在项目源码的res/raw中,android系统下数据库应存放在 /data/data/包名/ 目录下,所以我们需要做的是把已有数据库传入那个目录下, 操作方法是用FileInputStream读取元数据库,在用FileOutputStream把读取的 数据库写到那个目录下。
2016-08-07 16:59:32 584
转载 android 面试(基础篇 7)
Java中hashmap和hashtable的区别1)继承和实现的区别 Hashtable是基于成就的Dictonary类,完成了Map接口;HashMap是java1.2引进的Map接口的 一个实现,继承于AbstractMap,AbstractMap完成了Map接口。2)线程安全不同 HashTable的方法是同步的,HashMap是未同步,所以在
2016-08-07 16:35:47 294
转载 android 面试(基础篇 6)
20.Java内部类 将一个类的定义放在另外一个类的内部,这就是内部类。内部类从表面看非常容易理解。 1)为啥要使用内部类呢? 在《Think in java》中有这样的一句话:使用内部类最吸引人的原因是:每个内部类都 能继承一个接口实现,所以无论外围类是否已经继承了某个接口实现,对于内部类都没 有影响。我们在程序设
2016-08-04 23:28:32 512
转载 IOS 多线程技术
IOS有三种多线程编程技术,分别是: 1)NSThread 2)Cocoa NSOperation 3)GCD(Grand Central Dispatch) 这三种编程方式从上到下,抽象层次从低到高,抽度越高越简单,也是Apple最推荐使用的。三种方式的优缺点介绍 1)NSThread 优点:比其他两种轻量级
2016-08-03 21:14:11 358
转载 android 面试 (基础篇 5)
19.容器类之间的区别 1)Array java所以存储及随机访问一连串对象的做法,array是最有效的一种 效率高,大师容量固定切无法动态改变。Array还有一个缺点是,无法判断其中实际存在有多少元素, length只是告诉我们array的容量 java中有一个Arrays类专门用来操作Array。其中有一组静态方法
2016-08-02 20:31:08 367
转载 android ANR分析
1.ANR排错一般有三中种类型 1)KeyDispatchTimeout(5s) 主要是类型案件或触摸事件在特定时间内无响应 2)BroadcastTimeout(10s) BroadcastReceiver在特定时间内无法处理完成 3)ServiceTimeout(20s) 小概率事件Service在特定时间内无法处理完成2.哪些操作会导致ANR
2016-07-26 20:58:10 397
转载 android 面试 (基础篇 4)
17.java多态,java多态性的理解,java中多态的实现,什么是多态。 面向对象的三大特性:封装,继承,多态。从一定角度来看封装和继承几乎都 是为多态而准备的。 多态的定义:指允许不同的类的对象对同一消息作出响应。既同一消息可以 根据发送对象的不同而采取多种不同的行为方式。(发送消息既函数调用) 实现多态的技术成为动态绑定(dynamic b
2016-07-25 23:21:06 505
转载 android 面试(基础篇 3)
14.java中int char long各占多少字节char16位2字节byte8位1字节short16位4字节int32位4字节long64位8字节floa
2016-07-21 22:02:29 253
转载 android 面试(基础篇 2)
9.进程和线程的区别 一个程序至少有一个进程,一个进程至少有一个线程。 线程的划分尺度小于进程,使得多线程程序的并发性高。 另外,进程在执行过程中拥有独立的内存单元,线程之间共享内存,从而极大 地提高了程序的运行效率。 线程在执行过程中和进程是有区别的。每个独立的进程有一个程序运行的入口, 顺序执行序列,和程序的出口。但线程不能独立执行,必须依赖应用程序中。
2016-07-21 18:21:13 268
转载 android 面试(基础篇 1)
1.接口的意义 规范、扩展、回调2.抽象类的意义 为其子类提供一个公共类型,封装自雷中重复内容,定义抽象方法 子类虽然有不同的实现但是定义是相同的3.内部类 所谓内部类,顾名思义,是定义在类内部的类。内部类可以用多个实例,每个实例都有自己的状态信息,并且与其他外围对象的信息相互独立。在单个外围类中可以让多个内
2016-07-20 22:59:03 611
原创 android动画定义
1.android动画类型动画类型XmlJava动画模式渐变透明度alphaAlphaAnimationTween渐变尺寸伸缩scaleScaleAnimation画面位置移动translateTra
2016-07-19 21:17:12 271
原创 android native中崩溃的调试办法
在android native开发中遇到比较头疼的就是Fatal error这时候传说中的gdb调试就该出场了直接上干活,嘿嘿1. 在命令行中执行下面的命令 /SDK目录/adb logcat | /NDK目录/ndk-stack -sym /Android Studio项目根目录/app/build/intermediates/jniLibs/debug
2016-07-05 22:28:42 2134
原创 IOS aac裸数据创建音频SampleBuffer
- (CMSampleBufferRef)createAudioSampleBuffer:(char*) buf withLen:(int) len withASBD:(AudioStreamBasicDescription) asbd{ AudioBufferList audioData; audioData.mNumberBuffers = 1; char* tmp
2016-06-13 21:31:06 2734
原创 AVCaptureDevice 曝光模式
Exposure ModesAVCaptureExposureModeContinuousAutoExposure ---自动调节曝光AVCaptureExposureModeLocked --使用当前曝光下面是设置为持续自动曝光的例子:if ([currentDevice isExposureModeSupported:AVCaptureExpos
2016-06-12 09:12:31 2275
原创 acitvity生命周期
1. startActivityonCreateonStartonRestoreInstanceStateonResume2. 切换到其他应用、退到后台onPauseonSaveInstanceStateonStop3. 从其他应用切换回来、回到前台onRestartonStartonResume4. 退出应用,结束act
2016-06-10 12:41:13 326
原创 IOS音频转换器 AudioConverterRef
1. 创建extern OSStatusAudioConverterNewSpecific( const AudioStreamBasicDescription * inSourceFormat, const AudioStreamBasicDescription * inDestinationFormat,
2016-06-07 23:26:33 4289
转载 PCM数据格式
PCM数据格式PCM(Pulse Code Modulation)也被称为 脉码编码调制。PCM中的声音数据没有被压缩,如果是单声道的文件,采样数据按时间的先后顺序依次存入。如果是双声道的文件,采样数据按时间先后顺序交叉地存入。PCM的每个样本值包含在一个整数i中,i的长度为容纳指定样本长度所需的最小字节数。首先存储低有效字节,表示样本幅度的位放在i的高有效位上,剩下的位置为0,这样8位和16位
2016-06-07 23:07:57 803
原创 音频采样率和数据大小的关系
数据量(字节/秒) = 采样率(Hz) * 采样大小(bit) * 声道数 / 8采样率:是指录音设备在一秒钟内对声音信号的采样次数。采样大小:每次采样中记录采样点的存储空间的大小,16bit就能存储2的16次方个采样点。
2016-06-07 22:53:51 22555 2
转载 H.264
所谓视频编码方式就是指通过特定的压缩技术,将某个视频格式的文件转换成另一种视频格式文件的方式。视频流传输中最为重要的编解码标准有国际电联的H.261、H.263、H.264,运动静止图像专家组的M-JPEG和国际标准化组织运动图像专家组的MPEG系列标准,此外在互联网上被广泛应用的还有Real-Networks的RealVideo、微软公司的WMV以及Apple公司的QuickTime等。
2015-08-31 15:29:12 949
转载 音频编码
从信息论的观点来看,描述信源的数据是信息和数据冗余之和,即:数据=信息+数据冗余。音频信号在时域和频域上具有相关性,也即存在数据冗余。将音频作为一个信源,音频编码的实质是减少音频中的冗余。自然界中的声音非常复杂,波形极其复杂,通常我们采用的是脉冲代码调制编码,即PCM编码。PCM通过抽样、量化、编码三个步骤将连续变化的模拟信号转换为数字编码。采样率和采样大小声音其实
2015-08-31 15:03:37 930
转载 音频采样率
音频采样率是指录音设备在一秒钟内对声音信号的采样次数,采样频率越高声音的还原就越真实越自然。在当今的主流采集卡上,采样频率一般共分为22.05KHz、44.1KHz、48KHz三个等级,22.05KHz只能达到FM广播的声音品质,44.1KHz则是理论上的CD音质界限,48KHz则更加精确一些。常用的采样
2015-08-31 14:42:35 2932
转载 aac (高级音频编码)
AAC(Advanced Audio Coding),中文名:高级音频编码,出现于1997年,基于MPEG-2的音频编码技术。由Fraunhofer IIS、杜比实验室、AT&T、Sony等公司共同开发,目的是取代MP3格式。2000年,MPEG-4标准出现后,AAC重新集成了其特性,加入了SBR技术和PS技术,为了区别于传统的MPEG-2 AAC又称为MPEG-4 AAC。一种专为声
2015-08-31 11:57:33 1900
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人