Multimedia
文章平均质量分 88
布道师Peter
一直从业于半导体行业,曾为Linux内核开源文档社区提交过若干文档。 主要从事Linux、Android相关系统软件开发工作,负责Soc芯片BringUp及系统软件开发,喜欢阅读内核源代码,在不断的学习和工作中深入理解内存管理,进程调度,文件系统,设备驱动等内核子系统。
展开
-
Android多媒体浅析
发现Android影音系统超复杂的,个人水平有限,关注以下几个问题:1. 系统如何选择多媒体引擎2. 引擎如何选择编解码器3. 分离器如何分离音视频4. 视频解码播放过程如何使用OMX IL5. 音频解码播放过程与ALSA的关系1. 系统如何选择多媒体引擎多媒体系统自上而下可分为三类,上层应用软件,就是在Android市场里下载的转载 2012-12-29 19:29:11 · 648 阅读 · 0 评论 -
Android设备驱动之——V4L2
Video for Linux Two V4L2的是V4L的第二个版本。原来的V4L被引入到Linux内核2.1.x的开发周期后期。Video4Linux2修正了一些设计缺陷,并开始出现在2.5.X内核。Video4Linux2驱动程序包括Video4Linux1应用的兼容模式,但实际上,支持是不完整的,并建议V4L2的设备使用V4L2的模式。现在转载 2013-05-15 14:01:48 · 1057 阅读 · 0 评论 -
FFmpeg API:将视频帧保存为yuv
http://www.elesos.com/index.php?title=%E5%88%86%E7%B1%BB:%E7%BC%96%E8%A7%A3%E7%A0%81转载 2014-06-22 14:26:42 · 1523 阅读 · 0 评论 -
入门视频采集与处理(显示YUV数据)
在《入门视频采集与处理(学会分析YUV数据)》这篇文章中,我们已经学会了如何分析采集到的YUV原始码流,那么,下一步就是如何预览显示所采集的码流了,只有经过显示,才能非常直观地看出自己采集的数据是否有问题。 关于如何显示原始的YUV码流,根据我的经验,一般有三种方法: (1) 利用 matlab ,写相关的程序进行显示。(本文我将提供相关显示程序) (2) 使用 MFC转载 2014-06-22 14:15:29 · 2283 阅读 · 0 评论 -
入门视频采集与处理(BT656简介)
凡是做模拟信号采集的,很少不涉及BT.656标准的,因为常见的模拟视频信号采集芯片都支持输出BT.656的数字信号,那么,BT.656到底是何种格式呢? 本文将主要介绍 标准的 8bit BT656(4:2:2)YCbCr SDTV(标清) 数字视频信号格式,主要针对刚刚入门模拟视频采集的初学者入门之用。1. 帧的概念(Frame) 一个视频序列是由N个帧组成转载 2014-06-22 14:13:36 · 813 阅读 · 0 评论 -
YUV内存里的存放顺序
做视频采集与处理,自然少不了要学会分析YUV数据。因为从采集的角度来说,一般的视频采集芯片输出的码流一般都是YUV数据流的形式,而从视频处理(例如H.264、MPEG视频编解码)的角度来说,也是在原始YUV码流进行编码和解析,所以,了解如何分析YUV数据流对于做视频领域的人而言,至关重要。本文就是根据我的学习和了解,简单地介绍如何分析YUV数据流。 YUV,分为三个分量,“Y”表示明亮度(转载 2014-06-22 13:53:39 · 1270 阅读 · 0 评论 -
ALSA音频的移植,编译与测试
ALSA是目前Linux系统上大量采用的音频设备库,通过Alsa架构能分离驱动和应用的开发。Alsa为上层提供API的同时,也为下层提供了接口,在内核配置的时候指定“支持Alsa”就能得到内核支持,具体位置为:Menuconfig -> Device Drivers -> Soundcard support -> Advanced Linux Sound Architecture有了A转载 2014-01-21 09:41:33 · 2999 阅读 · 0 评论 -
I2S,PCM,AC97 音频总线
IIS是PCM 的一个子集,接口定义都是一样, IIS的采样频率一般为44.1KHZ 和48KHZ 做,PCM 采样频率一般为8K,16K。有四组信号: 位时钟信号,同步信号,数据 ,输入,数据输出。PCM 一般传单声道的声音,也可以传立体声。IIS 一般传立体声。数据格式都为PCM 格式。 左(右)声道的一个点一般为16 位,两个声道加起来为32 位。IIS 为一个周转载 2014-01-21 09:58:13 · 1003 阅读 · 0 评论 -
很全的Linux 音频ALSA技术说明
http://ivqinwei.blog.163.com/blog/static/11093154201172211739980/原创 2014-03-15 11:24:08 · 826 阅读 · 0 评论 -
alsa 音频库的移植
alsa 是在LINUX出现比较晚的音频处理库,主要是针对原有的OSS的库进行改进.性能更好,支持多个播放源等.但相应的,增加的编程的复杂性. 旧的oss是采用标准文件IO接口,设备打开采用open,声音播录是采用数据IO接口(read/write),设备的参数采用ioctl来控制.都是 系统调用因此无需额外库和配置文件来操作设备.但alsa也是最终采用open/read/write/ioc转载 2014-03-11 16:53:42 · 638 阅读 · 0 评论 -
ALSA讲解很详细的网址
http://blog.csdn.net/Tommy_wxie/article/category/1746961转载 2014-03-03 15:20:37 · 974 阅读 · 0 评论 -
linuxmini2440I2S驱动
要写I2S驱动,对于硬件也要了解。I2S是一种常用的数字音频接口。总线值处理音频数据,像编码和控制这样的其他信号被转移分开。I2S接口传输或者接受声音数据来自于外部立体声音频编码器。用于传输和接受数据,包括两个32x16FIFO数据结构。总线特征:2通道I2S总线用于DMA装置的音频接口运作。串行,8/16位经通道数据传输支持I2S,MSB-justified和LSB-ju转载 2014-03-09 15:38:34 · 1713 阅读 · 0 评论 -
freescale i.mx23平台上移植android2.2-froyo - audio 系统.
基本上参照了http://blog.csdn.net/tianfeng105/archive/2010/03/28 /5425547.aspxkernel部分不需要改动,只需要在android下面做事情。1: 下载alsa相关代码cd android/externalgit clone git://android.git.kernel.org/platfor转载 2012-10-02 10:17:37 · 658 阅读 · 0 评论 -
实时视频传输的关键技术 H.264 全解析
在实时多媒体领域,实时视觉、感知的展现将会有更加广泛的发展空间,而对于实时视频传输的基础核心技术莫过于 H.264 编码标准。本文作者尝试解答 H.264 编解码最核心的两个问题,其一是 H.264 编解码的过程;其二是 H.264 码流的结构,希望能帮助正在研究这方面的大家提供一些帮助。我在今年年初离开 YOLO 加入了一家在流媒体领域具有极深积累的小公司,负责视频群聊 SDK 的开转载 2017-10-02 10:42:24 · 918 阅读 · 0 评论 -
V4L2 CONTROLS
下面是Linux内核文档中的一篇---videobuf的翻译,只是大概意思的翻译,有不对的地方请指正。欢迎转载,转载请注明出处。An introduction to the videobuf layerJonathan Corbet Current as of 2.6.33The videobuf layer functions as a sort of glue转载 2014-07-05 17:30:23 · 842 阅读 · 0 评论 -
linux视频驱动之videobuf
下面是Linux内核文档中的一篇---videobuf的翻译,只是大概意思的翻译,有不对的地方请指正。欢迎转载,转载请注明出处。An introduction to the videobuf layerJonathan Corbet Current as of 2.6.33The videobuf layer functions as a sort of glue转载 2014-07-05 17:33:21 · 1499 阅读 · 0 评论 -
非常全的android多媒体开发网站
http://blog.csdn.net/tjy1985/article/category/1109458转载 2012-12-17 10:54:05 · 497 阅读 · 0 评论 -
Android Audio 数据流详解
Android Audio Architecture 图如下所示 详细调用路径如下1. 音频播放示例代码MediaPlayer mp = new MediaPlayer();mp.setDataSource(PATH_TO_FILE);mp.prepare();mp.start(); 1.1 MediaPlayer mp = new MediaPlaye转载 2012-12-11 11:23:25 · 765 阅读 · 0 评论 -
Android Audio System 之三: AudioPolicyService 和 AudioPolicyManager
引言 AudioPolicyService是Android音频系统的两大服务之一,另一个服务是AudioFlinger,这两大服务都在系统启动时有MediaSever加载,加载的代码位于:frameworks/base/media/mediaserver/main_mediaserver.cpp。AudioFlinger主要负责管理音频数据处理以及和硬件抽象层相关的工作。本文主要介绍转载 2012-11-30 13:39:28 · 513 阅读 · 0 评论 -
Android Audio System 之二:AudioFlinger
引言 AudioFlinger是Android音频系统的两大服务之一,另一个服务是AudioPolicyService,这两大服务都在系统启动时有MediaSever加载,加载的代码位于:frameworks/base/media/mediaserver/main_mediaserver.cpp。AudioPolicyService的相关内容请参考另一编文章:《Android Aud转载 2012-11-30 13:38:53 · 480 阅读 · 0 评论 -
Android Audio System 之一:AudioTrack如何与AudioFlinger交换音频数据
引子Android Framework的音频子系统中,每一个音频流对应着一个AudioTrack类的一个实例,每个AudioTrack会在创建时注册到AudioFlinger中,由AudioFlinger把所有的AudioTrack进行混合(Mixer),然后输送到AudioHardware中进行播放,目前Android的Froyo版本设定了同时最多可以创建32个音频流,也就是说,Mixe转载 2012-11-30 13:37:46 · 729 阅读 · 0 评论 -
Android之MediaPlayer
Android的MediaPlayer包含了Audio和video的播放功能,在Android的界面上,Music和Video两个应用程序都是调用MediaPlayer实现的。 MediaPlayer在底层是基于OpenCore(PacketVideo)的库实现的,为了构建一个MediaPlayer程序,上层还包含了进程间通讯等内容,这种进程间通讯的基础是Android基本库中的Bi转载 2012-11-28 15:49:18 · 3464 阅读 · 1 评论 -
Android三种播放视频的方式
在Android中,我们有三种方式来实现视频的播放:1、使用其自带的播放器。指定Action为ACTION_VIEW,Data为Uri,Type为其MIME类型。2、使用VideoView来播放。在布局文件中使用VideoView结合MediaController来实现对其控制。3、使用MediaPlayer类和SurfaceView来实现,这种方式很灵活。1、调用其自带的转载 2012-11-23 11:00:30 · 7446 阅读 · 0 评论 -
720p、1080i、1080p,三种格式(片源),谁更清晰?
答案是,1080p>720p>1080i。1080p比1080i要清晰,这个估计很好理解,因为一个是逐行扫描,一个是隔行扫描,逐行比隔行自然要清晰。最让人困惑的是720p规格,为什么它比1080i要清晰呢? 原因是这样的。 其实,720p、1080i、1080p三种格式,在表示画面分辨率的同时,还表示了视频的垂直清晰度所谓的垂直清晰度,又称电视线,它是衡量视频画面清晰程度的核心转载 2012-11-23 10:23:48 · 11678 阅读 · 0 评论 -
gobject的学习
https://developer.gnome.org/gobject/stable/原创 2014-08-19 23:59:16 · 590 阅读 · 0 评论 -
隔行扫描(interlaced)与逐行扫描(progressive)的图像对比
交错扫瞄(隔行扫瞄, Interlaced), 就是一个画面分成两次送出, 先送奇数线的画面后, 再送偶数线,显示时再将它们合成完整画面. 非交错扫瞄(逐行扫瞄, Porgressive), 就是每次都送完整的画面, 不需要奇偶画面重新组合.所以在非交错式显示的萤幕上观看时, 交错画面要把它重组回来, 这个动作叫做 "去交错" (Deinterlaced)直接来看看, 到底它们是什么.下图是隔行扫原创 2017-10-12 18:10:25 · 14235 阅读 · 2 评论