![](https://img-blog.csdnimg.cn/20201014180756724.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
音视频
文章平均质量分 90
一叶知秋dong
好记性不如烂笔头,记录学习和工作中的一些东东。
展开
-
WebRTC 基础
WEBRTC 基础知识原创 2022-06-22 20:42:48 · 5651 阅读 · 0 评论 -
H264/H265 P帧帧内刷新
视频编码帧内刷新Intra refresh简介帧内刷新能够解决IDR过大带来的码流不平稳问题,传统的视频码流通常是IPPPIPPP码流结构,即每个GOP的第一帧为全Intra predicted(I 帧),这样即使该GOP中某一帧丢失,最坏的情况下也只影响一个GOP内的帧,等到下一个GOP视频即可恢复正常,但是这种GOP结构码率不够平稳,在I帧的时候导致码率突然变高,非常不利于网络传输。帧内刷新技术可以使码率平稳,降低码流传输时延,并且仍然可以在传输出错的情况下快速恢复。帧内刷新原理帧.原创 2021-03-04 17:31:11 · 2940 阅读 · 9 评论 -
AMR NB格式解析
一、什么是AMR、AMR-WB全称Adaptive Multi-Rate和Adaptive Multi-Rate Wideband,主要用于移动设备的音频,压缩比比较大,但相对其他的压缩格式质量比较差,由于多用于人声,通话,效果还是很不错的。二、编码方式这里都是针对AMR narrow-band (AMR-NB)进行讨论Amr有以下一些编码方式:Mode 0 - AMR 4.75 - E...转载 2019-11-29 20:49:13 · 2288 阅读 · 0 评论 -
EVS(Enhance Voice Services) Codec 增强语音服务编码
一、什么是EVS当前视频业务有标清、高清、超清、1080P等等技术,不断在增强视频清晰度,语音业务为了增强清晰度从2G时代的NB(窄带)通信到目前3G和4G在用的WB(宽带)通信。语音业务和视频业务一样,在WB宽带通信之后还有SWB(超宽带)和FWB(全宽带通信),这种对语音编码技术进行进一步演进的语音编码技术我们叫EVSEVS增强语音语服务是继AMR-WB高清语音编码技术后对通话编码技术...转载 2019-11-26 15:17:14 · 2509 阅读 · 0 评论 -
webrtc中的VAD 语音检测
一、简介 VAD(Voice Activity Detection)算法的作用是检测是否是人的语音,它的使用范围极广,降噪,语音识别等领域都需要有vad检测。vad检测有很多方法,这里我们之介绍一下webrtc里面的vad检测。 webrtc的vad检测原理是根据人声的频谱范围,把输入的频谱分成六个子带:80Hz~250Hz,250Hz~500Hz,500Hz~1K,1K~2K...转载 2019-10-16 11:53:28 · 4095 阅读 · 0 评论 -
VOIP语音算法基础
一、前言 基音周期是语音信号处理中描述激励源的重要参数之一,在语音合成、语音压缩编码、语音识别、语音拉升、说话人确认等领域都有着广泛而重要的运用。 PS1、语音拉升通俗的讲就是慢播,在voip中,如果语音数据少量丢失,可以采用拉升基音的方法来优化用户体验。 PS2、通常,基音频率与个人的声带的结构有很大的关系,所以基因频率也能用于识别...原创 2019-10-16 11:37:59 · 629 阅读 · 0 评论 -
AMR RTP打包(rfc3267,4867)
缩写解释SID Silence Descriptor (Comfort Noise Frame) 1 AMR编码介绍AMR编码是一种自适应多速率编码,根据传输信道的实际情况,调整编码模式、速率和纠错码位数来保证语音质量,在数据压缩和容错上面取得平衡。一般语音质量越高抗干扰能力越弱。在GSM网络,基站、基站控制器可根据网络质量和信号质量情况动态调整语音编码模式以提高不同网络状况下的语转载 2016-10-26 14:27:29 · 5575 阅读 · 1 评论 -
AMR 文件解析及编解码流程
CONTENT: * AMR简介 * AMR 话音质量评定 * AMR 文件结构解析 * AMR 帧结构解析 * AMR 帧读取算法 * AMR 解码原理及流程 * AMR 模式选择自适应机制 一、A转载 2016-10-24 16:35:18 · 11692 阅读 · 0 评论 -
Silk编解码在android实现
Silk编解码是Skype向第三方开发人员和硬件制造商提供免版税认证(RF)的Silk宽带音频编码器。Skype已将其开源,可以访问http://developer.skype.com/silk获取最新动向。SILK Codec是一个语音和音频编解码算法, 对于音频带宽、网络带宽和算法复杂度都具有很好的弹性。支持4种采样率:8KHz、12KHz、16KHz、24KHz;三种复杂度:低、中、高。转载 2014-01-10 11:25:13 · 3084 阅读 · 0 评论 -
Skype SILK codec overview
最近简单看了一下Skype SILK codec 算法, 基本原理和流程大体明白了, 以后有时间再仔细研究一下细节,今天就简单说说. SILK Codec是一个语音和音频编解码算法, 对于音频带宽、网络带宽和算法复杂度都具有很好的弹性。支持4种采样率:8KHz、12KHz、16KHz、24KHz;三种复杂度:低、中、高。编码码率在 6~40kbps(不同采样率具有不同的码率范围)以及还支持VAD、转载 2017-04-10 16:18:46 · 910 阅读 · 2 评论 -
Skype SILK vs. iLBC vs. Speex
对比一下这三种VOIP语音算法的特点: 1 参数与特征 2 SILK性能 关于iLBC和Speex的性能可以参考以前写的文章。 3 关于VOIP一些观点(仅代表个人观点) 1) Skype 辛苦三年开发的SILK为什么要开源? 第一,转载 2017-04-10 16:26:25 · 678 阅读 · 0 评论 -
android 5.0 mediacodec demo
最近在高通8974A android5.0 平台调试mediacodec硬件编解码,发现之前在android 4.1上可以用的代码报错不能用了。经过分析和网上搜索解决了,现贴出来。demo的功能就是显示camera 的预览图像,从camera回调里拿到yuv数据,然后送给mediacodec编码,输出的编码数据给到mediacodec解码,解码后的图像显示出来。package原创 2017-07-06 15:45:00 · 1861 阅读 · 0 评论 -
浅析NVR主流芯片方案
近年来, IPC+NVR方案组合以其成本经济、部署灵活等优势在视频监控市场上取得了令人瞩目成绩,随着越来越来多的NVR厂家加入,NVR市场空前繁荣。芯片作为NVR核心元器件,对NVR的市场定位、性能、成本起着决定性因素,因此各个上游芯片厂家不断推陈出新,研发出更高解码能力、更强处理能力的高清芯片。目前市场上NVR主流的芯片方案主要有以下4种,分别是TI DM816X系列、海思35XX系列、En转载 2017-07-10 14:27:23 · 9821 阅读 · 0 评论 -
使用ffmpeg命令实现合并多个音频为一个音频的方法
使用ffmpeg实现合并多个音频为一个音频的方法可以使用ffmpeg的filter功能来进行这个操作,而且效果很好amerge也可以实现,但是这里就介绍一下使用amix来做的方法ffmpeg的filter功能强大的功能能够满足几乎所有的音视频操作,包括合并音频ffmpeg可以支持多输入通道,也可以支持多输出通道,合并多音频的功能就使用多输入通转载 2017-08-03 17:45:19 · 18233 阅读 · 0 评论 -
利用ffmpeg的amix filter混音
概述一个简单的混音demo,把文件a和文件b的音频混为一个音频流输出并存为文件,只处理每个文件的第一个音频流 注:源代码是网友Larry_Liang(1085803139)写的,我帮其调试通过,存在这里以免备忘流程介绍流程如下:打开输入1->打开输入2->打开输出->初始化混音filter->开启采集线程和编码写文件循环线程之间数据走向如下:采集线程转载 2017-08-03 17:46:33 · 2241 阅读 · 0 评论 -
x264参数详解
输入用1个绝对路径定义输入文件(或者2个,rawYUV文件)。如下例:x264.exe -o NUL C:\input.avsx264 -o /dev/null ~/input.y4m如果输入文件是rawYUV格式的,还要把分辨率一并输入。如果开启了比特率控制,还需要输入帧率。如下例:x264.exe -o NUL –fps 25 D:\input.yuv 1280×720转载 2016-02-27 15:28:52 · 5971 阅读 · 0 评论 -
使用mp4v2将H264+AAC合成mp4文件以及调试过程
录制程序要添加新功能:录制CMMB电视节目,我们的板卡发送出来的是RTP流(H264视频和AAC音频),录制程序要做的工作是:(1)接收并解析RTP包,分离出H264和AAC数据流;(2)将H264视频和AAC音频以某种格式封装,最后存成文件,供用户查看。 第一步已经有部分代码可供参考,因此很快就完成了。第二步,我们决定封装成mp4,查找了一些资料后,决定使用开源库mp4v2来转载 2014-12-24 11:09:38 · 2782 阅读 · 2 评论 -
ffmpeg 重要结构体说明
AVStream该结构体描述一个媒体流主要域的释义如下,其中大部分域的值可以由av_open_input_file根据文件头的信息确定,缺少的信息需要通过调用av_find_stream_info读帧及软解码进一步获取:index/id:index对应流的索引,这个数字是自动生成的,根据index可以从AVFormatContext::streams表中索引到该流;而i转载 2013-12-27 16:04:02 · 888 阅读 · 0 评论 -
StageFright框架流程解读 .
1、 StageFright介绍 Android froyo版本多媒体引擎做了变动,新添加了stagefright框架,并且默认情况android选择stagefright,并没有完全抛弃opencore,主要是做了一个OMX层,仅仅是对 opencore的omx-component部分做了引用。stagefright是在MediaPlayerService这一层加入的,和open转载 2014-06-24 16:54:05 · 1229 阅读 · 0 评论 -
Ffmpeg框架结构解读 .
1、 FFMEPG结构说明 1.1》介绍 ffmpeg(Fast Forward Moving Pictures Experts Group)是音视频的分离,转换,编码解码及流媒体的完全解决方案,其中最重要的就是libavcodec库,是一个集录制、转换、音/视频编码解码功能为一体的完整的开源解决方案。ffmpeg的开发是基于Linux操作系统,但是可以在大多数操作系统中转载 2014-06-24 16:55:30 · 1830 阅读 · 0 评论 -
YUV420数据格式详解及90度旋转例子
很多人对YUV数据格式不清楚,以至于在做视频的时候出现了一些不可预知的错误(比如说图像带有点、颜色不对等)。今晚是周末放假,我就抽点时间来给大家介绍一下。 提示: 读下面的文字时,希望大家结合图片看,这样更易理解 在YUV420中,一个像素点对应一个Y,一个2X2的小方块对应一个U和V。对于所有YUV420图像,它们的Y值排列是完全相同的,因为只有Y的图像就是灰度图转载 2014-04-25 08:58:22 · 6900 阅读 · 8 评论 -
HEVC,VP9,x264性能对比 .
Dan Grois等人在论文《Performance Comparison of H.265/MPEG-HEVC, VP9, andH.264/MPEG-AVC Encoders》中,比较了下一代编码标准HEVC,VP9的以及当前主流编码标准H.264之间的性能。在此记录一下。本文中选用的编码器如下:HEVC:HMVP9:libvpxH.264:x264下表显示了HM的转载 2014-07-25 11:13:23 · 4595 阅读 · 0 评论 -
WebRTC学习笔记
1. WebRTC学习1.1 WebRTC现状本人最早接触WebRTC是在2011年底,那时Google已经在Android源码中加入了webrtc源码,放在/external/webrtc/,但是Android并没有用到它,更没有被浏览器使用。当时试图在Android 2.3(Gingerbread)高通平台的手机上用H.264 硬件codec替换掉WebRTC缺省使用的转载 2014-06-20 17:07:44 · 1097 阅读 · 0 评论 -
Web Real-Time Communication(WebRTC)技术概述
1. 前言 WebRTC(Web Real-Time Communication——网页实时通信)是一个基于浏览器的实时多媒体通信技术。该项技术旨在使Web浏览器具备实时通信能力;同时,通过将这些能力封装并以JavaScript API的方式开放给Web应用开发人员,使得Web应用开发人员能够通过HTML标签和JavaScript API快速地开发出基于Web浏览器的实时音视频应用,而无需依转载 2014-06-20 17:06:36 · 2164 阅读 · 0 评论 -
SV的边界: x264编码参数解释
这篇经典的文章已经在网上几乎找不到了,唯一一个链接在中国大陆还访问不了.现将文章共享于此.英文源文:http://www.digital-digest.com/articles/x264_options_page1.html你有使用mencoder ffmpeg对视频编码成h.264吗?面对复杂的编码参数无所适从吗?读读这篇文章吧,虽然它面向StaxRip和mergui翻译 2014-11-07 16:38:45 · 1223 阅读 · 0 评论 -
android 编译mp4v2 2.0.0生成动态库
最近要录制h264+aac的mp4视频,使用mp4v2来实现,下面就是编译的方法1、下载源码,到官网http://code.google.com/p/mp4v2/downloads/list 下载,现在最新的是mp4v2 2.0.02、解压下载的mp4v2-2.0.0.tar.bz2,然后进入mp4v2-2.0.0,将里面的文件以及文件夹拷贝的新创建的jni目录中,目录结构例如:/home转载 2014-12-24 10:39:54 · 1201 阅读 · 2 评论 -
使用ffmpeg AVfilter 中的amix实现混音
官方文档:6.16 amixMixes multiple audio inputs into a single output.Note that this filter only supports float samples (the amerge and pan audio filters support many formats). If the amix input has in转载 2017-08-03 17:48:25 · 9288 阅读 · 0 评论 -
视频会议十大开源项目排行
在视频会议领域,有许多可以值得参考的开源项目,这些开源项目有的是协议栈、有的是编码器或者是传输协议,由于视频会议系统是一个综合性的应用系统,里面包含功能较多,如能把这些开源项目选择性的加入我们的视频会议开发当中,我们的开发效率肯定会事半功倍,下面我们列举一下视频会议相关的十大开源项目,并对其重要性及优缺点做一个全面的评价与排名。1、 OpenH323项目 (★★★★★)转载 2017-08-04 14:35:36 · 1646 阅读 · 0 评论 -
视频会议行业应用软件分析
原创作品,允许转载,转载时请务必以超链接形式标明文章 原始出处 、作者信息和本声明。否则将追究法律责任。http://yinshipinfangan.blog.51cto.com/9802182/1600584在这个商业迅速发展的时代,各行各业目前面临市场竞争日益严峻的挑战,在现在的信息时代,大部分企业已突破地域的限制,在各个地区设立分公司和是很多企业必不可少的战略手段。然而众多的分公转载 2017-08-04 14:53:46 · 946 阅读 · 0 评论 -
ts流格式详解
ts文件为传输流文件,视频编码主要格式h264/mpeg4,音频为acc/MP3。 ts文件分为三层:ts层Transport Stream、pes层 Packet Elemental Stream、es层 Elementary Stream. es层就是音视频数据,pes层是在音视频数据上加了时间戳等对数据帧的说明信息,ts层就是在pes层加入数据流的识别和传输必须的信息注: 详解如下 (1...转载 2018-03-22 14:47:30 · 20930 阅读 · 4 评论 -
h.264 去块滤波
我们在观看视频的时候,在运动剧烈的场景常能观察到图像出现小方块,小方块在边界处呈现不连续的效果(如下图),这种现象被称为块效应(blocking artifact)。首先我们需要搞清楚块效应产生的原因。h.264在编码过程中对像素残差进行了DCT变换,变换后得到的DCT系数是与每个像素都相关的,这些系数代表了被变换数据的基础色调与细节。h.264在DCT变换后对DCT系数进行了量化,量化能有效去除...转载 2018-05-14 17:19:24 · 1958 阅读 · 0 评论 -
新一代视频编码标准:HEVC、AVS2和AV1性能对比报告
转自:http://media.pkusz.edu.cn/achievements/?p=138 H.265/HEVC距离H.265/HEVC标准正式发布已经有4年多的时间,虽然其压缩效率比H.264/AVC高出一倍,可以为视频公司节约带宽成本,但H.264仍是目前最流行的视频编码格式。除了复杂度高、实现困难外,H.265/HEVC高昂的专利费用和复杂的授权政策也是阻碍其推广的重要...转载 2018-08-06 14:33:18 · 39927 阅读 · 0 评论 -
基于TensorFlow,人声识别如何在端上实现?
本文章由闲鱼技术团队出品。针对服务端上人声识别具有延时和占用资源的问题,本文提出了在客户端上基于tensorflowLite框架实现人声识别方案,下面一起来深入了解。本文作者:仝辉,上叶 摘要现有的人声识别绝大部分在服务端实现,这会带来如下两方面的问题:1) 当网络较差的情况下会造成较大的延时,带来较差的用户体验。2) 当访问量较大的情况下,会大量占用服务端资源。为解决...转载 2018-10-24 17:59:07 · 1226 阅读 · 1 评论 -
PSNR
PSNR(Peak Signal to Noise Ratio)峰值信噪比,是一种全参考的图像质量评价指标。其中,MSE表示当前图像X和参考图像Y的均方误差(MeanSquare Error),H、W分别为图像的高度和宽度;n为每像素的比特数,一般取8,即像素灰阶数为256. PSNR的单位是dB,数值越大表示失真越小。PSNR是最普遍和使用最为广泛的一种图像客观评价指标,然而它是...原创 2018-12-18 17:37:27 · 11325 阅读 · 0 评论 -
EDID标准简介
小伙伴们在设计显示接口的时候,常常会遇到显示器支持格式的问题,这里呢就简要的介绍下格式握手的重要协议EDID。 EDID(ExtendedDisplay Indentification Data Standard)就是显示器通过DDC(Display DataChannel)传输数据给主控器的一个标准。目前已经发布了三个版本,数据量分为128字节或256字节。...转载 2019-02-21 17:40:06 · 10774 阅读 · 1 评论 -
HDMI之EDID使用说明
Q1: 为什么要写这篇文章?A1:在最近的工作中遇到了不少问题,其中很多都是和EDID相关的。可以说,作为一家以“显示”为生的企业,我们时时刻刻在与EDID打交道。EDID这东西很简单,但是如果不了解其基本原理和概念的话,会给我们的工作带来不少麻烦。因此,我决定将我对EDID的理解和调试EDID的一些经验写成一篇文章,供大家学习和参考,希望能对大家的工作有所帮助。为了方便阅读和理解,文章写成问...转载 2019-02-22 19:24:43 · 18477 阅读 · 3 评论 -
RAM数据格式解析
Raw格式是sensor的输出格式,是未经处理过的数据,表示sensor接受到的各种光的强度。Raw数据在输出的时候是有一定的顺序的,一般为以下四种:00:GR/BG01: RG/GB10:BG/GR11: GB/RG为什么每种情况里有两个G分量呢?这时因为人的眼睛对绿色比较敏感,所以增加了对绿色的采样。其中每个分量代表一个piexl。所以GR/BG就代表四个piexl,...转载 2019-06-21 13:57:19 · 2463 阅读 · 0 评论 -
使用FEC改善UDP(RTP)音视频传输效果
实时音视频领域UDP才是王道 在 Internet 上进行音视频实时互动采用的传输层方案有TCP(如:RTMP)和UDP(如:RTP)两种。TCP协议能为两个端点间的数据传输提供相对可靠的保障,这种保障是通过一个握手机制实现的。当数据传给接收者时,接收者要检查数据的正确性。发送者只有接到接收者的正确性认可才能发送下一个数据块。如果没有接到确认报文,这个数据块就得重传。尽管...转载 2018-03-15 14:57:37 · 2251 阅读 · 1 评论 -
Speex 音频编解码 示例
地址:http://wmnmtm.blog.163.com/blog/static/38245714201110801617165/Ubuntu下编译gcc -o speexdec speexdec.c -lspeex -logg[csharp] view plain copy// demo.cpp : Defines the ent转载 2017-12-30 16:08:04 · 1377 阅读 · 0 评论 -
WebRTC 音视频同步方法
转自:http://blog.csdn.net/lixiaowei16/article/details/53407010音视频同步事关多媒体产品的最直观用户体验,是音视频媒体数据传输和渲染播放的最基本质量保证。音视频如果不同步,有可能造成延迟、卡顿等非常影响用户体验的现象。因此,它非常重要。一般说来,音视频同步维护媒体数据的时间线顺序,即发送端在某一时刻采集的音视频数据,接收端转载 2017-11-13 19:20:15 · 2027 阅读 · 0 评论