当前搜索:

Android mediaRecorder框架简述(二)

这里有个setupVideiEncoder,看来这里应该是对视频编码的地方 根据不同的编码类型来设置不同的参数,这个方法代码有些多直截取部分代码: 来看看关键的一句,这里创建了OMXCodec 然后把创建了的编码器赋值给MediaSource,这里的MediaSource可以看作是OMXCodec的封装,这样编码器的准备工作就已经做好了: 接着我们回到startMPEG4Recor...
阅读(5202) 评论(1)

Android mediaRecorder框架简述(一)

下面是框架简图: 首先调用mediaRecorder.java中的方法比如start方法,会调用jni: 也就是调用android_media_recorder.cpp的start方法:  接着到mediaRecorder.cpp,mediaRecorder是由mediaplayerService创建的,而mediaRecoder.cpp和mediap...
阅读(7289) 评论(7)

H264 获取SPS与PPS

在用android手机进行h264硬编码的时候如果要进行视频流的实时传输,就需要知道视频流的Sequence Parameter Sets (SPS) 和Picture Parameter Set (PPS)。 今天算是看明白如何获取SPS和PPS,在这里记录下来,希望有需要的朋友可以在这里获取到一些些的帮助。 首先说一下大前提,我设置的视频录制参数为: mMediaRecord...
阅读(6521) 评论(0)

MediaPlayer和AudioTrack播放Audio的区别与联系

播放声音可以用MediaPlayer和AudioTrack,两者都提供了java API供应用开发者使用。虽然都可以播放声音,但两者还是有很大的区别的。 其中最大的区别是MediaPlayer可以播放多种格式的声音文件,例如MP3,AAC,WAV,OGG,MIDI等。MediaPlayer会在framework层创建对应的音频解码器。 而AudioTrack只能播放已经解码的PCM流,如果是文...
阅读(2165) 评论(0)

Android三种播放视频的方式

在Android中,我们有三种方式来实现视频的播放: 1、使用其自带的播放器。指定Action为ACTION_VIEW,Data为Uri,Type为其MIME类型。 2、使用VideoView来播放。在布局文件中使用VideoView结合MediaController来实现对其控制。 3、使用MediaPlayer类和SurfaceView来实现,这种方式很灵活。 1、调用其自带的...
阅读(66185) 评论(18)

Stagefright框架解读(—)音视频Playback流程

从Android 2.0,Google引进了Stagefright,并在android2.3时用Stagefright在Android中是以shared library的形式存在(libstagefright.so),其中AwesomePlayer可用來播放video/audio。AwesomePlayer提供許多API,可以让上层的应用用程式(Java/JNI)來呼叫,我在这里简单说明一...
阅读(6648) 评论(0)

Android MediaPlayer+Stagefright框架(音频)图解

在android原生的媒体播放器中是由mediaplayerservice来控制媒体播放器的,在mediaplayerservice中创建了mediaplayer,在mediaplayer.java的native方法通过jni调用android_media_mediaplayer.cpp中的方法,接着往下调用mediaplayer.cpp中的方法,mediaplayer通过ipc机制调用media...
阅读(15586) 评论(4)

OpenCore框架概述(二)

OpenCore Player介绍: OpenCore的Player的编译文件是pvplayer/Android.mk,将生成动态库文件libopencoreplayer.so。这个库包含了两方面的内容:一方是Player的engine(引擎),一方面是为Android构件的Player,这实际上是一个适配器(adapter)。 libopencoreplayer.so中包含了以下内容: 一...
阅读(2776) 评论(0)

OpenCore框架概述(一)

OpenCore是一个多媒体的框架,从宏观上来看,它主要包含了两大方面的内容:PVPlayer:提供媒体播放器的功能,完成各种音频(Audio)、视频(Video)流的回放(Playback)功能。PVAuthor:提供媒体流记录的功能,完成各种音频(Audio)、视频(Video)流的捕获(Recording)功能PVPlayer和PVAuthor以SDK的形式提供给开发者,可以在这个SDK之上...
阅读(2980) 评论(0)

MediaPlayer框架概述(二)

3 mediaplayer的核心库libmedia.so libs/media/mediaplayer.cpp文件用于实现mediaplayer.h提供的接口,其中一个重要的片段如下所示: const sp& MediaPlayer::getMediaPlayerService() { Mutex::Autolock _l(mServiceLock); if (mMedia...
阅读(5202) 评论(1)

MediaPlayer框架概述(一)

1.媒体播放器概述 Android的MediaPlayer包含了Audio和video的播放功能,在Android的界面上,Music和Video两个应用程序都是调用MediaPlayer实现的。 MediaPlayer在底层是基于OpenCore(PacketVideo)的库实现的,为了构建一个MediaPlayer程序,上层还包含了进程间通讯等内容,这种进程间通讯的基础是Android基本...
阅读(5493) 评论(1)

MediaPlayer的生命周期

下面图表表现出来生命周期和MediaPlayer类的控制操作,椭圆体描述了MediaPlayer 类的状态,弧线描述了重放控制的运作,有两种箭头,单箭头的弧线代表同步方法的调用,爽箭头代表异步方法的调用。       从这个图我们可以看出MediaPlayer类有如下的状态: l 当一个 MediaPlayer类 刚用new或者在reset()调用后创建,这时处于空闲状态,在relea...
阅读(5963) 评论(1)

Camera源码分析(android2.2)

android通过android.hardware.Camera类来控制摄像头设备的,要使用只有通过android.hardware.Camera.open()来打开,这样就会创建一个新的Camera对象。 android提供了一些接口来给予回调,控制Camera的状态, 分别是: 1.android.hardware.Camera.ErrorCallback:摄像头出错的...
阅读(5881) 评论(2)
    我的新书
    个人资料
    • 访问:1804805次
    • 积分:15974
    • 等级:
    • 排名:第749名
    • 原创:188篇
    • 转载:52篇
    • 译文:0篇
    • 评论:979条
    我的微博
    最新评论
    公众号
    百度统计