LibYuv-Android首頁、文檔和下載- YUV 轉換工具庫- 程式开发

LibYuv 是基於Google的libyuv編譯封裝的YUV轉換工具庫,主要用途是在各種YUV與RGB之間進行相互轉換、裁減、旋轉、縮放、鏡像等。

Gif 展示

你也可以直接下載 演示App 體驗效果

使用

使用概要

LibYuv中的功能方法主要包括:格式轉換、裁減、旋轉、縮放、鏡像等;下面就以文檔註釋的形式對一些主要的方法做個簡要說明。

格式轉換

/**
 * 将Image转换为I420
 *
 * @param image   图像;{@link Image}
 * @param degrees 需要旋转的角度
 * @return 返回I420数据
 */
LibYuv.imageToI420(image, degrees)

/**
 * NV21转I420
 *
 * @param nv21Data 源NV21数据
 * @param width    图像宽度
 * @param height   图像高度
 * @return 返回I420数据
 */
LibYuv.nv21ToI420(nv21Data, width, height)

/**
 * I420转NV21
 *
 * @param i420Data 源I420数据
 * @param width    图像宽度
 * @param height   图像高度
 * @return 返回NV21数据
 */
LibYuv.i420ToNv21(i420Data, width, height)

通用格式轉換(各種YUV與RGB之間相互轉換)

/**
 * 将I420数据转换为指定格式的数据
 *
 * @param i420Data 源I420数据
 * @param width    图像宽度
 * @param height   图像高度
 * @param fourcc   指定数据格式;{@link FourCC}
 * @return 返回转换成指定格式后的数据
 */
LibYuv.convertFromI420(i420Data, width, height, fourcc)

/**
 * 将指定格式的数据转换为I420数据
 *
 * @param srcData 源数据
 * @param width   图像宽度
 * @param height  图像高度
 * @param fourcc  指定数据格式;{@link FourCC}
 * @return 返回I420数据
 */
LibYuv.convertToI420(dstData, width, height, fourcc)

旋轉

/**
 * 将指定格式的数据进行旋转
 *
 * @param srcData 源数据
 * @param width   图像宽度
 * @param height  图像高度
 * @param degrees 需要旋转的角度;{@link  RotationMode}
 * @param fourcc  指定数据格式;{@link FourCC}
 * @return 返回旋转后的数据
 */
LibYuv.rotate(srcData, width, height, degrees, fourcc)

縮放

/**
 * 将指定格式的数据进行缩放
 *
 * @param srcData    源数据
 * @param width      图像宽度
 * @param height     图像高度
 * @param dstWidth   目标宽
 * @param dstHeight  目标高
 * @param fourcc     指定数据格式;{@link FourCC}
 * @param filterMode 压缩过滤模式;{@link  FilterMode}
 * @return 返回缩放后的数据
 */
LibYuv.scale(srcData, width, height, dstWidth, dstHeight, fourcc, filterMode)

裁減

/**
 * 将指定格式的数据进行裁减
 *
 * @param srcData  源数据
 * @param width    图像宽度
 * @param height   图像高度
 * @param cropRect 裁减的矩形区域
 * @param fourcc   指定数据格式;{@link FourCC}
 * @return 返回裁减后的数据
 */
LibYuv.crop(srcData, width, height, cropRect, fourcc)

鏡像

/**
 * 将指定格式的数据进行镜像翻转
 *
 * @param srcData 源数据
 * @param width   图像宽度
 * @param height  图像高度
 * @param fourcc  指定数据格式;{@link FourCC}
 * @return 返回镜像翻转后的数据
 */
LibYuv.mirror(srcData, width, height, fourcc)

更多使用詳情,請查看app中的源碼使用示例或直接查看 API幫助文檔

#LibYuvAndroid首頁文檔和下載 #YUV #轉換工具庫 #程式开发

發佈留言

發佈留言必須填寫的電子郵件地址不會公開。 必填欄位標示為 *