EmxMedia

媒体模块 更多...

EmxMedia 的协作图:

模块

 MediaClient
 media的用户层调用接口,应用开发使用的接口。
 
 MediaServer
 media的底层接入接口,底层芯片对接使用的接口。
 
 MediaCommon
 media模块的通用接口,用于统一media的用户层调用接口(client)和底层芯片接入接口(server)。
 

详细描述

  EmxMedia包含一个独立的服务程序EmxMediaServer,屏蔽了底层不同IPC芯片的差异,对外提供媒体服务,用户使用的时候只需要include头文件EmxMedia.hpp以及连接libEmxMedia.so动态库即可使用这些服务。目前EmxMedia提供如下功能:

  EmxMediaServer启动后会去加载两种类型的文件,一种是静态配置文件,里面存储的是芯片底层的配置,位于media的configs目录下,这类的配置文件用户一般不需要关心,另一种是动态加密的param文件,位于app的param目录下,保存的是用户对于media的动态配置信息,例如编码格式/osd等参数。EmxMediaServer识别configs目录的路径是依靠系统环境变量**EMX_MEDIA_CONFIGS_DIR**和**EMX_DATA_DIR**因此需要在EmxMediaServer启动前配置好,参考EmxCore中关于环境变量配置的说明

  EmxMediaServer启动时会读取media/server.json配置文件,文件中ringBufferSizeKB用于配置EmxMediaServer音视频编码和AI的环形缓冲区大小,单位是KB,具体配置大小可结合媒体的需求量以及系统的内存量进行平衡,通常1024KB的大小可满足常规IPC产品要求