资源简介
github上下的minicap包,.so文件需要自己生成,这里提供Android9-27的minicap.so,附带一个自己编写的初始化init.js哦,再也不用挨着查cpu,查apilevel了,本来想免费,但是至少要2积分,欢迎大家下载哦~
代码片段和文件信息
#include
#include “JpgEncoder.hpp“
#include “util/debug.h“
JpgEncoder::JpgEncoder(unsigned int prePadding unsigned int postPadding)
: mTjHandle(tjInitCompress())
mSubsampling(TJSAMP_420)
mEncodedData(NULL)
mPrePadding(prePadding)
mPostPadding(postPadding)
mMaxWidth(0)
mMaxHeight(0)
{
}
JpgEncoder::~JpgEncoder() {
tjFree(mEncodedData);
}
bool
JpgEncoder::encode(Minicap::frame* frame unsigned int quality) {
unsigned char* offset = getEncodedData();
return 0 == tjCompress2(
mTjHandle
(unsigned char*) frame->data
frame->width
frame->stride * frame->bpp
frame->height
convertFormat(frame->format)
&offset
&mEncodedSize
mSubsampling
quality
TJFLAG_FASTDCT | TJFLAG_NOREALLOC
);
}
int
JpgEncoder::getEncodedSize() {
return mEncodedSize;
}
unsigned char*
JpgEncoder::getEncodedData() {
return mEncodedData + mPrePadding;
}
bool
JpgEncoder::reserveData(uint32_t width uint32_t height) {
if (width == mMaxWidth && height == mMaxHeight) {
return 0;
}
tjFree(mEncodedData);
unsigned long maxSize = mPrePadding + mPostPadding + tjBufSize(
width
height
mSubsampling
);
MCINFO(“Allocating %ld bytes for JPG encoder“ maxSize);
mEncodedData = tjAlloc(maxSize);
if (mEncodedData == NULL) {
return false;
}
mMaxWidth = width;
mMaxHeight = height;
return true;
}
int
JpgEncoder::convertFormat(Minicap::Format format) {
switch (format) {
case Minicap::FORMAT_RGBA_8888:
return TJPF_RGBA;
case Minicap::FORMAT_RGBX_8888:
return TJPF_RGBX;
case Minicap::FORMAT_RGB_888:
return TJPF_RGB;
case Minicap::FORMAT_BGRA_8888:
return TJPF_BGRA;
default:
throw std::runtime_error(“Unsupported pixel format“);
}
}
属性 大小 日期 时间 名称
----------- --------- ---------- ----- ----
目录 0 2018-03-19 09:25 minicap\
目录 0 2018-03-19 09:25 minicap\.git\
目录 0 2018-03-19 09:25 minicap\.git\branches\
文件 351 2018-03-19 09:25 minicap\.git\config
文件 73 2018-03-19 09:25 minicap\.git\desc
文件 23 2018-03-19 09:25 minicap\.git\HEAD
目录 0 2018-03-19 09:25 minicap\.git\hooks\
文件 452 2018-03-19 09:25 minicap\.git\hooks\applypatch-msg.sample
文件 896 2018-03-19 09:25 minicap\.git\hooks\commit-msg.sample
文件 189 2018-03-19 09:25 minicap\.git\hooks\post-update.sample
文件 398 2018-03-19 09:25 minicap\.git\hooks\pre-applypatch.sample
文件 1704 2018-03-19 09:25 minicap\.git\hooks\pre-commit.sample
文件 4898 2018-03-19 09:25 minicap\.git\hooks\pre-reba
文件 1239 2018-03-19 09:25 minicap\.git\hooks\prepare-commit-msg.sample
文件 3611 2018-03-19 09:25 minicap\.git\hooks\update.sample
文件 10040 2018-03-19 09:25 minicap\.git\index
目录 0 2018-03-19 09:25 minicap\.git\info\
文件 240 2018-03-19 09:25 minicap\.git\info\exclude
目录 0 2018-03-19 09:25 minicap\.git\logs\
文件 175 2018-03-19 09:25 minicap\.git\logs\HEAD
目录 0 2018-03-19 09:25 minicap\.git\logs\refs\
目录 0 2018-03-19 09:25 minicap\.git\logs\refs\heads\
文件 175 2018-03-19 09:25 minicap\.git\logs\refs\heads\master
目录 0 2018-03-19 09:25 minicap\.git\modules\
目录 0 2018-03-19 09:25 minicap\.git\modules\jni\
目录 0 2018-03-19 09:25 minicap\.git\modules\jni\vendor\
目录 0 2018-03-19 09:25 minicap\.git\modules\jni\vendor\libjpeg-turbo\
目录 0 2018-03-19 09:25 minicap\.git\modules\jni\vendor\libjpeg-turbo\branches\
文件 330 2018-03-19 09:25 minicap\.git\modules\jni\vendor\libjpeg-turbo\config
文件 73 2018-03-19 09:25 minicap\.git\modules\jni\vendor\libjpeg-turbo\desc
文件 41 2018-03-19 09:25 minicap\.git\modules\jni\vendor\libjpeg-turbo\HEAD
............此处省略1312个文件信息
评论
共有 条评论