我们长路漫漫,只因学无止境。网站首页学无止境
2. IEGL类初始化封装java部分添加XPlay窗口类~1
发布时间:2021-06-10 17:44:37作者:雪饮[心得笔记]
首先需要初始化窗口cpp/native-lib.cpp:#include <jni.h>
#include <string>
#include <android/native_window_jni.h>
#include "FFDemux.h"
#include "XLog.h"
#include
1. IVideoView显示模块架构讲解和代码创建~1
发布时间:2021-06-10 16:57:26作者:雪饮[心得笔记]
c++后台若使用ANativeWindow_fromSurface将surface转化为ANativeWindow;需要头文件:#include <android/native_window_jni.h>:cpp/native-lib.cpp:#include <jni.h>
#include
14. 加入生产者消费者模式控制音视频缓冲~1
发布时间:2021-06-10 11:40:18作者:雪饮[心得笔记]
说到这个缓冲啊,其实需要定义一个最大队列缓冲限制,这样避免耗尽太多内存。cpp/IDecode.h:#ifndef XPLAY_IDECODE_H
#define XPLAY_IDECODE_H
#include "XParameter.h"
#inc
13. 完成音视频解码和并重构解码器加入观察者模式~1
发布时间:2021-06-09 20:51:20作者:雪饮[心得笔记]
上篇咱們實現了幀數據類型的獲取,那麽接下來我們要實現觀察者的加入。那麽我們在cpp/native-lib.cpp:中調用添加觀察者:#include <jni.h>
#include <string>
#include "FFDe
12. 读取媒体帧数据获取类型信息(音频、视频)存入XData~1
发布时间:2021-06-09 18:16:42作者:雪饮[心得笔记]
为了区分帧数据的类型,比如音频或者视频帧。则需要在cpp/FFDemux.cpp中实现GetAPara和GetVPara方法:#include "FFDemux.h"
#include "XLog.h"
extern "C"{
#include <libavfor
11. 封装FFDecode解码的Send和Recv接口~1
发布时间:2021-06-09 17:16:16作者:雪饮[心得笔记]
接收压缩包和发送压缩包,需要实现Send和Recv接口。cpp/IDecode.h:#ifndef XPLAY_IDECODE_H
#define XPLAY_IDECODE_H
#include "XParameter.h"
#include "IObserver.h"
//
10. 添加IDemux的GetVPara获取视频XParamter参数接口用IDecode的Open测试~1
发布时间:2021-06-09 16:21:37作者:雪饮[心得笔记]
获取视频参数的话,要在cpp/FFDemux.cpp中实现GetVPara方法:#include "FFDemux.h"
#include "XLog.h"
extern "C"{
#include <libavformat/avformat.h>
}
//打开文件,或者流媒
9. FFDecode的Open打开解码器接口编写和Observer基类添加~1
发布时间:2021-06-09 15:53:34作者:雪饮[心得笔记]
解码器接口其实上篇就实现了,只是有个地方需要注意下cpp/FFDecode.cpp:extern "C"
{
#include <libavcodec/avcodec.h>
}
#include "FFDecode.h"
#include "XLog.h"
boo
8. IDecode和FFDecode模块代码创建~1
发布时间:2021-06-09 15:27:15作者:雪饮[心得笔记]
封装解码器获取与具体的解码以及对于下一步的考量,对于FFDecode、Idecode、Xparameter的cpp或者头文件的完善。cpp/CMakeLists.txt:# For more information about using CMa
详细信息>>7. 观察者Observer模式的代码实现并使用IDemux进行测试~1
发布时间:2021-06-09 14:50:56作者:雪饮[心得笔记]
先实现观察者服务好吧。cpp/CMakeLists.txt:# For more information about using CMake with Android Studio, read the
# documentation: https://d.android.com/studio/p