app/app // 壳工程,主要用于首页 UI 实现,以及定义首页展示的功能 ├── BEAppDelegate.h ├── BEAppDelegate.m ├── Info.plist ├── main.m ├── manager │ ├── BEFeatureConfig.h │ ├── BEFeatureConfig.m │ ├── BEFeatureItem.h │ ├── BEFeatureItem.m │ ├── BEMainDataManager.h │ └── BEMainDataManager.m ├── re.h └── ui ├── vc // ViewController 实现 │ ├── BEMainVC.h │ └── BEMainVC.m └── view ├── BEMainView.h // 首页 View 实现,下面的也都是 UI 代码 ├── BEMainView.m ├── adapter ├── cell ├── content └── test Core/Core // 对 SDK 提供的 C 接口的封装,和一些常用功能的封装 ├── Algorithm // 算法封装接口 │ ├── Base │ │ ├── BEAlgorithmKey.h │ │ ├── BEAlgorithmKey.m │ │ ├── BEAlgorithmTask.h │ │ ├── BEAlgorithmTask.m │ │ ├── BEAlgorithmTaskFactory.h │ │ └── BEAlgorithmTaskFactory.m │ └── Task // 内含所有算法的实现,每一个算法单独为一个类 ├── Core.h ├── Effect // 特效封装接口 │ ├── BEEffectManager.h │ └── BEEffectManager.m ├── Lens // 画质封装接口 │ ├── BEAdaptiveSharpenTask.h │ ├── BEAdaptiveSharpenTask.m │ ├── BEImageOpeartion.h │ ├── BEImageOpeartion.m │ ├── BEImageQualityProcessManager.h │ ├── BEImageQualityProcessManager.m │ ├── BEVideoSRTask.h │ └── BEVideoSRTask.m ├── Utils // 工具类封装 │ ├── BEGLTexture.h │ ├── BEGLTexture.m │ ├── BEImageUtils.h // 图像转换工具类,内含 buffer、CVPixelBuffer、texture 互相转换函数 │ ├── BEImageUtils.m │ ├── BETimeRecoder.h │ └── BETimeRecoder.m ├── Info.plist └── macro.h Common/Common // 特效、算法等模块公用的一些功能合集 ├── Categories // ui 相关,自定义的 category ├── Common.h ├── CommonSize.h ├── Info.plist ├── model ├── ui │ ├── cell │ │ ├── BEButtonViewCell.h │ │ ├── BEButtonViewCell.m │ │ ├── BEMainTabCell.h │ │ └── BEMainTabCell.m │ ├── vc │ │ ├── BEBaseBarVC.h // 继承自 BaseVC,添加了一些通用按钮及相关实现 │ │ ├── BEBaseBarVC.m │ │ ├── BEBaseVC.h // 基础 ViewController,封装了相机、图片、视频等不同模式的调用 │ │ ├── BEBaseVC.m │ │ ├── BEPopoverVC.h // 自定义 popover 实现 │ │ └── BEPopoverVC.m │ └── view │ ├── BEBaseBarView.h │ ├── BEBaseBarView.m │ ├── BEPopoverView.h │ ├── BEPopoverView.m │ └── content ├── util // 一些通用的工具类 │ ├── BEDeviceInfoHelper.h │ ├── BEDeviceInfoHelper.m │ ├── BEGLUtils.h │ ├── BEGLUtils.m │ ├── BEPreviewSizeManager.h │ ├── BEPreviewSizeManager.m │ ├── BEProfileRecordManager.h │ ├── BEProfileRecordManager.m │ ├── BETextSizeUtils.h │ ├── BETextSizeUtils.m │ ├── bubble_tip │ ├── gesture // 触摸手势检测工具 │ └── popover └── videoSource // 封装的图像源,支持相机、图片、视频等不同模式的使用 ├── BEImageCapture.h // 图片解析 ├── BEImageCapture.m ├── BELocalVideoCapture.h // 视频文件解析 ├── BELocalVideoCapture.m ├── BEVideoCapture.h // 相机 ├── BEVideoCapture.m ├── BEVideoSourceConfig.h ├── BEVideoSourceConfig.m ├── BEVideoSourceProvider.h └── BEVideoSourceProvider.m Algorithm/Algorithm // 算法功能相关的 UI 实现 ├── Algorithm.h ├── Info.plist ├── model │ ├── BEAlgorithmConfig.h │ ├── BEAlgorithmConfig.m │ ├── BEAlgorithmItem.h │ ├── BEAlgorithmItem.m │ ├── BEAlgorithmResourceHelper.h │ └── BEAlgorithmResourceHelper.m ├── render // 渲染算法检测结果的工具类 │ ├── BEAlgorithmRender.h │ ├── BEAlgorithmRender.m │ ├── BEAlgorithmRenderHelper.h │ └── BEAlgorithmRenderHelper.m ├── ui │ ├── content │ ├── vc │ │ ├── BEAlgorithmVC.h // 算法页面的 ViewController │ │ ├── BEAlgorithmVC.m │ │ ├── content │ │ └── info │ └── view │ ├── BEAlgorithmView.h │ ├── BEAlgorithmView.m │ └── content └── widgets ├── BEActionView.h └── BEActionView.m Effect/Effect // 特效功能相关 UI 的实现 ├── Effect.h ├── Effect.m ├── Info.plist ├── config │ ├── BEEffectConfig.h │ ├── BEEffectConfig.m │ ├── BEStickerConfig.h │ └── BEStickerConfig.m ├── model │ ├── BEComposerNodeModel.h │ ├── BEComposerNodeModel.m │ ├── BEEffectDataManager.h // 特效相关的数据,如美颜美型素材路径、默认参数等 │ ├── BEEffectDataManager.m │ ├── BEEffectItem.h │ ├── BEEffectItem.m │ ├── BEEffectResponseModel.h │ └── BEEffectResponseModel.m ├── ui │ ├── base // 特效基础类 │ │ ├── BEEffectBaseView.h │ │ ├── BEEffectBaseView.m │ │ ├── vc │ │ └── view │ ├── effect // 美颜美型页面 UI 实现 │ │ ├── vc │ │ └── view │ ├── matting_sticker // 背景分割页面 UI 实现 │ │ ├── vc │ │ └── view │ ├── qr_scan // 扫一扫页面 UI 实现 │ │ ├── BEQRScanVC.m │ │ ├── BEQRScanView.h │ │ ├── vc │ │ └── view │ ├── sticker // 贴纸/Animoji/AR 页面 UI 实现 │ │ ├── vc │ │ └── view │ └── style_makeup // 风格妆页面 UI 实现 │ ├── vc │ └── view ├── util │ ├── BEEffectResourceHelper.h │ ├── BEEffectResourceHelper.m │ ├── BENetworkUtil.h │ ├── BENetworkUtil.m │ ├── BEStickerDownloadTask.h │ └── BEStickerDownloadTask.m └── widgets ├── BETextSliderView.h └── BETextSliderView.m lens/lens // 画质功能相关 UI 实现 ├── Info.plist ├── Lens.h ├── model │ ├── BELensConfig.h │ ├── BELensConfig.m │ ├── BELensResourceHelper.h │ ├── BELensResourceHelper.m │ └── BELensType.h └── ui ├── vc │ ├── BELensVC.h │ └── BELensVC.m └── view ├── BELensView.h └── BELensView.m