已阅读5页,还剩29页未读, 继续免费阅读
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
Camera Camera Camera Camera 详细设计说明书详细设计说明书详细设计说明书详细设计说明书 MTK M3 项目组 康佳通信科技开发中心软件所 2005 年 4 月 30 日 详细设计说明书 2 目录目录 修改历史修改历史 4 1 整体结构及功能描述整体结构及功能描述 5 2 关键数据结构说明关键数据结构说明 6 1 MDI CAMERA配置的数据结构 6 2 CAMERA配置数据结构 6 3 CAMERA上下文相关变量的数据结构 7 4 CAMERA菜单上下文数据结构 9 3 主要存储分配主要存储分配 11 4 4 各子模块实现及主要算法说明各子模块实现及主要算法说明 11 程序状态说明 11 进入预览状态 12 拍摄流程 普通模式 13 连续拍摄流程 16 快拍模式 17 延迟拍摄模式 19 延迟连拍模式 21 延迟快拍模式 22 5 5 内部调用的主要函数说明内部调用的主要函数说明 23 BOOL MMI CAMERA GET STORAGE DISK PATH PS8 DRV BUF 23 2 VOID MMI CAMERA GET NEXT FILENAME PS8 FILE BUF P 23 3 VOID MMI CAMERA DISPLAY ERROR POPUP VOID 23 4 VOID MMI CAMERA DISPLAY SUBLCD ERROR POPUP VOID 23 5 VOID MMI CAMERA HILIGHT APP VOID 24 6 U16 MMI CAMERA GET IMG SIZE STR ID S32 IMAGE WIDTH S32 IMAGE HEIGHT 24 7 VOID MMI CAMERA EXIT APP SCREEN VOID 24 8 VOID MMI CAMERA ENTER STATE CAMERA STATE ENUM STATE 24 9 VOID MMI CAMERA EXIT CURRENT STATE VOID 25 10 U8 MMI CAMERA CLAM CLOSE EVENT HDLR VOID PTR 25 11 VOID MMI CAMERA CALC REMAIN STORAGE VOID 25 详细设计说明书 3 12 VOID MMI CAMERA TOGGLE SELF CAPTURE VOID 25 13 VOID MMI CAMERA TURN ON PREVIEW LED HIGHLIGHT VOID 25 14 STATIC VOID MMI CAMERA TURN ON CAPTURE LED HIGHLIGHT VOID 26 15 VOID MMI CAMERA TURN OFF LED HIGHLIGHT VOID 26 16 VOID MMI CAMERA ENTRY PREVIEW STATE VOID 26 17 VOID MMI CAMERA EXIT PREVIEW STATE VOID 26 17 VOID MMI CAMERA PREVIEW SET KEY HDLR VOID 27 18 VOID MMI CAMERA PREVIEW CREATE RESOURCE VOID 27 19 VOID MMI CAMERA PREVIEW FREE RESOURCE VOID 27 20 VOID MMI CAMERA PREVIEW START VOID 27 21 VOID MMI CAMERA PREVIEW STOP VOID 28 22 VOID MMI CAMERA PREVIEW SET BLT LAYER BOOL IS PREVIEWING 28 23 VOID MMI CAMERA PREVIEW CLEAR BACKGROUND VOID 28 24 VOID MMI CAMERA PREVIEW FLATTEN LAYER VOID 28 25 VOID MMI CAMERA PREVIEW DRAW OSD VOID 29 26 U16 MMI CAMERA PREVIEW GET ZOOM FACTOR VOID 29 27 VOID MMI CAMERA DRAW ADD FRAME VOID 29 28 VOID MMI CAMERA ENTRY COUNTDOWN STATE VOID 29 29 VOID MMI CAMERA EXIT COUNTDOWN STATE VOID 29 30 VOID MMI CAMERA COUNTDOWN CYCLIC VOID 30 31 VOID MMI CAMERA ENTRY BURSTSHOT STATE VOID 30 32 VOID MMI CAMERA EXIT BURSTSHOT STATE VOID 30 33 VOID MMI CAMERA ENTRY BURSTSHOT SAVE CONFIRM STATE VOID 30 34 VOID MMI CAMERA BURSTSHOT SAVING CYCLIC VOID 31 35 VOID MMI CAMERA ENTRY SAVE CONFIRM STATE VOID 31 36 VOID MMI CAMERA CAPTURE VOID 31 6 6 模块提供的外部接口函数说明模块提供的外部接口函数说明 31 1 MMI CAMERA INIT APP 31 2 MMI CAMERA ENTRY APP SCREEN 32 3 MMI CAMERA RESTORE SETTING 32 4 MMI CAMERA LOAD SETTING 32 5 MMI CAMERA STORE SETTING 32 6 MMI CAMERA PREVIEW UPDATE CAPTURE SIZE 33 7 MMI CAMERA GET STORAGE FILE PATH 33 8 MMI CAMERA CHECK AND RESTORE VALID DRV 33 9 MMI CAMERA CAPTURE PLAY SOUND 33 10 MMI CAMERA CREATE FILE DIR 34 7 7 相关文档文件相关文档文件 34 详细设计说明书 4 修改历史修改历史 时间时间修改人修改人版本版本修改内容修改内容 2005 4 30唐冲1 0创建初始版本 详细设计说明书 5 1 整体结构及功能描述整体结构及功能描述 说明该程序应具有的功能 可采用IPO图 即输入一处理一输出图 的形式或文字描述 Camera即相当于手机的 眼睛 和键盘一样 同属于手机的输入设备 手机利用它来从外界 捕获图像或者动画 下图描述了 Camera 模块相关的总体的架构 图表 1 在 图表 1 中 我们看到有两个 task 一个是 MMI Task 另一个是 Media Task 其中 MMI task 负责显示 中断处理 手机状态流程等 Media Task 负责管理与多媒体相关的驱动部分的内容 如 Camera 的驱动 Audio 和 Video 数据的编解码等等 在本文档中 我们将着重介绍 MMI Task 内的内容 详细设计说明书 6 2 关键数据结构关键数据结构说明说明 1 Mdi Camera 配置的数据结构 配置的数据结构 typedef struct U16 wb 白平衡 U16 ev 曝光程度 U16 zoom 缩放 U16 effect 效果 有Normal Gray Scale Sepia Sepia Green Sepia Blue Color Invert Gray Invert Blackboard Whiteboard Cooper Carving Blue Carving Embossment Contrast Jean Sketch Oil 以及三个用户可自定义的效果 U16 image qty 图像质量 指压缩质量 有 Fine High Normal Low 几种 U16 image width 图像宽度 U16 image height 图像高度 U16 preview width 预览图像宽度 U16 preview height 预览图像高度 U16 night Night 模式 开 关 U16 banding U16 lcm LCM 标识 主屏 副屏 U16 preview rotate 预览旋转 U16 lcm rotate LCM 旋转 U16 brightness 亮度值 U16 saturation 饱和度值 U16 contrast 对比度值 U16 hue 色调值 flash mdi camera flash struct preview flash value mdi camera flash struct capture flash value mdi camera setting struct 2 Camera 配置数据结构配置数据结构 typedef struct U16 wb 白平衡 U16 flash 闪光 详细设计说明书 7 U16 led highlight U16 shutter sound 快门声音 U16 ev 曝光程度 U16 night 夜间模式 开 关 U16 closeup U16 banding U16 image size 图像大小 U16 image qty 图像质量 指压缩比 U16 effect 效果 U16 add frame 相框 U16 cont shot 连续拍摄 U16 delay timer 延时拍摄 U16 storage 存贮器 U16 zoom 缩放 U16 fx brightness 3 自定义亮度 U16 fx saturation 3 自定义饱和度 U16 fx contrast 3 自定义对比度 U16 fx hue 3 自定义色调 U16 reserve0 保留 U16 reserve1 保留 U16 reserve2 保留 U16 reserve3 保留 U16 reserve4 保留 U16 reserve5 保留 U16 reserve6 保留 U16 reserve7 保留 U16 reserve8 保留 U16 reserve9 保留 U16preview flash value 预闪光值 U16capture flash value 闪光值 U16preview led value 预拍摄时 Led 亮度值 U16capture led value 拍摄时 led 亮度值 camera setting struct 此结构体重要用来定义 g camera cntxt 中的一个项 setting 3 Camera 上下文相关变量的数据结构上下文相关变量的数据结构 typedef struct gdi handlebase layer handle Base 图层句柄 gdi handleadd frame layer handle 相框图层句柄 gdi handleosd layer handle OSD 层句柄 gdi handlesublcd base layer handle 子屏 Base 图层句柄 MDI RESULTlast error 错误代码 详细设计说明书 8 camera setting structsetting 相机设置 见之前数据结构 camera setting struct S32 capture countdown 延迟拍摄倒计时数 PS8 storage filepath 存储路径 PU8 osd layer buf ptr OSD 层缓冲区地址 U16 preview width 预览宽度 U16 preview height 预览高度 U16 image width 图片宽度 U16 image height 图片高度 U16 zoom limit 缩放限制 U16 image size before burst 用于记录在 burstshot 前的 image size U16 app state camera 程序的当前状态 U16 app prev state camera 程序的先前状态 U16 app next state camera 程序的下一个状态 S16 cont shot cout 连续拍摄的次数 已完成次数 S16 cont shot total count 连续拍摄的总次数 当前名 cont shot cout 与之相等 时 即表示连续拍摄次数已到 U8remain percent 存储器剩余空间百分比 BOOL is storage path changed 标志存储是否被改变 BOOL is lsk pressed 标志左软键是否被按下 BOOL is rsk pressed 标志右软件是否被按下 BOOL is up arrow pressed 标志向上方向键是否被按下 BOOL is down arrow pressed 标志下方向键是否被按下 BOOL is clam close 标志翻盖是否被合上 BOOL is force self capture 标志是否为自拍模式 BOOL is setting loaded 标志配置数据是否已装载 BOOL is mainlcd resource 标志主 LCD 资源是否已被创建 BOOL is sublcd resource 标志子 LCD 资源是否已被创建 BOOL is fullscreen 标志是否满屏预览 BOOL is sublcd display 标志是否使用子 LCD 预览 S8 hint1 buf CAMERA HINT BUF SIZE S8 hint2 buf CAMERA HINT BUF SIZE U16 fade time U16 image size str id 5 LL L M S SS U16 selected effect ifdef CAMERA FEATURE CONT SHOT BURST jpegs struct burst jpg data PU8 burst jpg mem ptr U16 burst save index endif 详细设计说明书 9 camera context struct camera context struct g camera cntx 为 Camera 相关的一个最重要的全局变量 数据结构 中保存了模块运行时所需要和记录的所有数据 4 Camera 菜单上下文数据结构菜单上下文数据结构 typedef struct camera camera setting inline data structcamera setting inline Camera 设置菜单 inline 数据 camera image setting inline data struct image setting inline Camera 图像设置 inline 数据 S32 cur select add frame idx 当前添加 Frame 的句柄 camera menu contex struct 5 camera camera setting inline data struct typedef struct strings for inline selection display UI string type wb str CAMERA WB ITEM COUNT 白平衡菜单内容 UI string type flash str CAMERA FLASH ITEM COUNT 闪光菜单内容 UI string type led highlight str CAMERA LCD HIGHLIGHT ITEM COUNT UI string type shutter sound str CAMERA SHUTTER SOUND ITEM COUNT 快门声音菜单内容 UI string type ev str CAMERA EV ITEM COUNT 曝光程度菜单内容 UI string type night str CAMERA NIGHT ITEM COUNT 夜间模式菜单内容 UI string type closeup str CAMERA CLOSEUP ITEM COUNT UI string type banding str CAMERA BANDING ITEM COUNT selected item S32 wb selected 白平衡选择项 S32 flash selected 闪光选择项 S32 led highlight selected S32 shutter sound selected 快门声音选择项 S32 ev selected 曝光程度选择项 S32 night selected 夜景模式选择项 S32 closeup selected 详细设计说明书 10 S32 banding selected camera camera setting inline data struct 详细设计说明书 11 3 主要存储分配主要存储分配 NVRAM File ID NVRAM EF CAMERA SETTING LID Number of records 1 NVRAM EF CAMERA SETTING TOTAL 1 Record Size 84 define NVRAM EF CAMERA SETTING SIZE 84 4 4 各子模块实现及主要算法说明各子模块实现及主要算法说明 程序状态说明 程序状态说明 typedef enum CAMERA STATE EXIT 0 关闭状态 CAMERA STATE PREVIEW 预览状态 CAMERA STATE COUNTDOWN 拍摄倒计时状态 CAMERA STATE CONTSHOT 连续拍摄状态 CAMERA STATE BURSTSHOT 快拍状态 CAMERA STATE BURSTSHOT SAVE CONFIRM 快拍保存确认 CAMERA STATE BURSTSHOT SAVING 快拍保存状态 CAMERA STATE SAVE DONE 保存完成 CAMERA STATE SAVE CONFIRM 保存确认状态 CAMERA STATE TOGGLE TO SUB 切换至 Sub LCD CAMERA STATE TOGGLE TO MAIN 切换至 Main LCD CAMERA STATE SUB PREVIEW Sub LCD 预览状态 CAMERA STATE SUB COUNTDOWN Sub LCD 拍摄倒计时状态 CAMERA STATE SUB CONTSHOT Sub LCD 连续拍摄状态 CAMERA STATE SUB BURSTSHOT Sub LCD 快拍状态 CAMERA STATE SUB BURSTSHOT SAVING Sub LCD 快拍保存状态 camera state enum 下图为 Camera app 各个状态之间的流程图 接下去 我们将就每个功能模块的流程 图作详细的分析 详细设计说明书 12 图表 2 进入预览状态进入预览状态 程序初始状态为 Exit 状态 当程序调用 mmi camera entry preview state 函 数时 函数进入 Preview 状态 如果此时自拍模式是打开的 被调用的函数将为 mmi camera entry sublcd preview state 进入 Sub Preview 状态 是否处于自 拍模式将有全部变量 g camera cntx is force self capture 决定 如果程序在进入 preview 状态之前有未保存的图片 程序将先进入 Save Confirm 状态以便用户保存未保存的图片 程序的流程图如图表 3 所示 详细设计说明书 13 图表 3 拍摄流程 普通模式 拍摄流程 普通模式 普通模式是指按键后立即拍摄 并且只拍摄一张图片的模式 在此种模式下 当用户按下 capture 键 程序将调用 mmi camera capture button press 函数来处理此按键消息 函数 mmi camera capture button press 根据全局变量 g camera cntx setting delay timer 判 断是否是延迟拍摄 如果不是 则调用 mmi camera capture 函数立即进行拍摄 mmi camera capture 函数对全局变量 g camera cntx setting cont shot 进行判断 如 果是 CAMERA SETTING CONT SHOT OFF 则表示普通拍摄模式 函数将调用 Camera MDI 层的接口函数拍摄一张图片 拍摄成功之后进入 Save Confirm 状态 在进入 Save Confirm 状态之后 mmi camera entry save confirm state 函数将立 即被调用 函数将分别设置左软键 LSK 和右软键 RSK 的功能为保存图片和放 弃保存 并将拍摄的图片显示在 LCD 上 详细设计说明书 14 如果用户选择不保存图片 按一下手机右软键 则函数 mmi camera save confirm rsk press 和函数 mmi camera save confirm rsk releasee 将依次被调用 函数 mmi camera save confirm rsk releasee 又将调用 mmi camera save confirm cancel file 删除存放照片的临时文件并回到 Preview 状态 如若用户选择了保存 左软键 则函数 mmi camera save confirm lsk press 和 函数 mmi camera save confirm lsk release 将依次被调用 程序将调用函数 mmi camera save confirm save file 该函数将保存图片至存贮器并进入 Save Done 状态 在 Save Down 状态下 程序将调用 mmi camera entry save done state 函数显示 一个保存成功的 popup 窗口 然后创建一个 timer 时间为 1000ms timer enpire 之后 将调用 mmi camera save done timeout 函数回到 Preview 状态 程序的流程图如图表 4 所示 图表 4 详细设计说明书 15 详细设计说明书 16 连续拍摄流程连续拍摄流程 连续拍摄是指连续拍摄若干张照片 去后面将要讲到的快拍 Burst shot 不同 的是 连续拍摄不是一次性连续拍摄 还是每拍摄一张之后将重新返回到 Preview 状 态再进行拍摄 首先 当用户设置为快拍模式后 当 capture 键被按下 mmi camera capture 函数被调用 函数在判断为连续拍摄 cont shot 模式之后 调用 CAMERA ENTER STATE CAMERA STATE CONTSHOT 进入 ContShot 状态 mmi camera entry contshot state 函数将被调用 函数根据全局变量 g camera cntx setting cont shot 的值 决定相对应得连拍张数 之后进入 mmi camera contshot cyclic 循环 在 mmi camera contshot cyclic 函数调用过程中 函数将调用 camera mdi 层的接口函数拍摄一张图片 然后返回到 Preview 状态 并 且 函数将创建一个时间为 100ms 的 timer 当 timer 设定时间到的时候函数 mmi camera contshot cyclic 将再次被调用 每执行一次 g camera cntx cont shot cout 的值加 1 直到 g camera cntx cont shot cout g camera cntx cont shot total count 如此实现了连续多张拍摄 程序的流程图如下图 5 所示 详细设计说明书 17 图表 5 快拍模式快拍模式 当拍摄模式被用户设定为快拍模式 burst shot 用户按下 capture 键 mmi camera capture 函数将经由 mmi camera capture button press 被调用 mmi camera capture 函数在判断 g camera cntx setting cont shot 的值之后 此时应 为 CAMERA SETTING CONT SHOT BURST 函数将调用 CAMERA ENTER STATE CAMERA STATE BURSTSHOT 进入 burstshot 模式 此时 mmi camera entry burstshot state 函数被调用 并由此函数调用 camera mdi 层接口函数完成快拍 快拍结束之后执行 CAMERA ENTER STATE CAMERA STATE BURSTSHOT SAVE CONFIRM 进入 Burst shot confirm 模式 Burst shot confirm 模式的入口函数为 mmi camera entry burstshot save confirm state 在此函数中 函数首先设定左右软 键分别为 保存 和 不保存 然后将所拍摄照片分行列显示在 LCD 上 详细设计说明书 18 当用户选择不保存拍摄图片 点击右软键 mmi camera burstshot save confirm rsk press 和 mmi camera burstshot save confirm rsk release 函数将先后被调用 返回 Preview 状态 当用户选择保存图片 则 mmi camera burstshot save confirm lsk press 和 mmi camera burstshot save confirm lsk release 函数将被调用 后者将执行 CAMERA ENTER STATE CAMERA STATE BURSTSHOT SAVING 进入 Burst shot saving 状态 此时 Burst shot saving 的入口函数 mmi camera entry burstshot saving state 被调用 在函数执行过程中 函数首先 display 一个示意 正在保存 的窗口 然后就进入 mmi camera burstshot saving cyclic 的循环 函数 mmi camera burstshot saving cyclic 类以与前面提到的连续拍摄时保存图片的函数 mmi camera contshot cyclic 不同是退出的条件变为当 g camera cntx burst save index CAMERA FEATURE CONT SHOT BURST COUNT 1 另外在保存完成之后 函 数执行 CAMERA ENTER STATE CAMERA STATE SAVE DONE 语句进入 Save Done 状态 进入 Save Done 状态 mmi camera entry save done state 这个函数的功能是 为了显示一个 保存完毕 的窗口 并在 1000ms DONE POPUP FADE TIME 后执行 mmi camera save done timeout 返回 Preview 状态 程序的流程图如下图 6 所示 详细设计说明书 19 图表 6 延迟拍摄模式延迟拍摄模式 当用户设置手机为延迟拍摄 当用户按下拍摄键时 函数 mmi camera capture button press 被调用 函数判断全局变量 g camera cntx setting delay timer 的值非 CAMERA SETTING DELAY TIMER OFF 则执行 CAMERA ENTER STATE CAMERA STATE COUNTDOWN 进入 count down 状态 状态 Count Down 的入口函数为 mmi camera entry countdown state mmi camera entry countdown state 函数根据 g camera cntx setting delay timer 的值 详细设计说明书 20 计算得出 g camera cntx capture countdown 的值 单位 毫秒 然后进入 mmi camera countdown cyclic 循环等待到设定时间结束 这期间函数会发出节奏逐 渐加快的提示音和闪光 最后调用 mmi camera capture 函数进行拍摄 假定此时 g camera cntx setting cont shot 的值为 CAMERA SETTING CONT SHOT OFF 则表示只拍摄一张 关于其值不为 CAMERA SETTING CONT SHOT OFF 的情况 则是属于 延迟连续拍摄模式 我们将在紧接的下文中介绍 此时 mmi camera capture 函数调用 camera mdi 层的 接口函数拍摄一张照片并进入 Save Confirm 模式 这以后的流程与第一种模式 普 通拍摄 完全相同 此处不再赘述 程序的流程图如下图 7 所示 图表 7 详细设计说明书 21 延迟连拍模式延迟连拍模式 此种模式 从 Capture 键被按下 mmi camera capture button press 函数被调用 到进入 mmi camera capture 函数 其过程与模式 5 完全相同 在 mmi camera capture 执行过程中 程序通过 g camera cntx setting cont shot 值为 CAMERA SETTING CONT SHOT x 判断出用户是希望连续拍摄 n 张照片 于是程 序执行 CAMERA ENTER STATE CAMERA STATE CONTSHOT 进入 Cont Shot 模式 这之后的步骤于模式连续拍摄完全相同 此处也不再赘述 程序的流程图如下图 8 所示 图表 8 详细设计说明书 22 延迟快拍模式延迟快拍模式 此模式与上面模式的不同就在于执行 mmi camera capture 函数的时候 g camera cntx setting cont shot 的值被设置为 CAMERA SETTING CONT SHOT BURST 所以程序执行语句 CAMERA ENTER STATE CAMERA STATE BURSTSHOT 进入 Burst shot 模式 这以后的步骤参照模式 Burst shot 程序的流程图见下图 9 所示 图表 9 详细设计说明书 23 5 5 内部调用的主要函数说明内部调用的主要函数说明 BOOL mmi camera get storage disk path PS8 drv buf 功能描述 得到当前存储器的盘符 输入参数 无 输出参数 drv buf 存储器盘符 返回值 TRUE 获取成功 FALSE 获取失败 备注 2 void mmi camera get next filename PS8 file buf p 功能描述 得到下一张照片的文件名 输入参数 无 输出参数 下一张照片的文件名 返回值 无 备注 3 void mmi camera display error popup void 功能描述 弹出一个错误信息窗口 输入参数 无 输出参数 无 返回值 无 备注 错误信息 g camera cntx last error 4 void mmi camera display sublcd error popup void 功能描述 在 SubLcd 中弹出一个错误信息窗口 输入参数 无 输出参数 无 返回值 无 备注 详细设计说明书 24 5 void mmi camera hilight app void 功能描述 Camera 程序菜单高亮处理程序 输入参数 无 输出参数 无 返回值 无 备注 6 U16 mmi camera get img size str id S32 image width S32 image height 功能描述 得到表示图像大小的字符串资源的 ID 输入参数 image width 图像宽度 image height 图像高度 输出参数 无 返回值 字符串资源 ID 备注 7 void mmi camera exit app screen void 功能描述 Camera app 的出口函数 输入参数 无 输出参数 无 返回值 无 备注 8 void mmi camera enter state camera state enum state 功能描述 Camera app 进入下个状态 输入参数 state 新状态 输出参数 无 返回值 无 备注 详细设计说明书 25 9 void mmi camera exit current state void 功能描述 Camera app 推出当前状态 输入参数 无 输出参数 无 返回值 无 备注 10 U8 mmi camera clam close event hdlr void ptr 功能描述 处理打开和关闭手机翻盖的情况 输入参数 队列消息数据 输出数据 无 返回值 TRUE 该消息已被处理 FALSE 将消息传递给 FrameWork 层处理 备注 注意 该函数同时处理开盖和合盖的消息 函数名中仅包括 close 不准确 11 void mmi camera calc remain storage void 功能描述 计算存储器中剩余空间 输入参数 无 输出参数 无 返回值 无 备注 计算结构保存在全部变量 g camera cntx remain percent 中 12 void mmi camera toggle self capture void 功能描述 在两种拍摄模式下切换 Main LCD 和 Sub LCD 输入参数 无 输出参数 无 返回值 无 备注 必须在翻盖处于 close 状态下才能切换至自拍模式 13 void mmi camera turn on preview led highlight void 功能描述 开启或关闭 LED 灯 输入参数 无 输出参数 无 详细设计说明书 26 返回值 无 备注 LED 灯的颜色以及开启还是关闭由全部变量 g camera cntx setting led highlight 决定 14 static void mmi camera turn on capture led highlight void 功能描述 启动闪光灯 输入参数 无 输出参数 无 返回值 无 备注 闪光灯的颜色及开启还是关闭由全局变量 g camera cntx setting led highlight 决定 亮度值由全部变量 g camera cntx setting capture led value 决定 15 void mmi camera turn off led highlight void 功能说明 关闭 preview 状态下的 led 灯 输入参数 无 输出参数 无 返回值 无 备注 16 void mmi camera entry preview state void 功能说明 进入主 LCD 预览模式 输入参数 无 输出参数 无 返回值 无 备注 无 17 void mmi camera exit preview state void 功能说明 退出预览模式 输入参数 无 输出参数 无 返回值 无 备注 详细设计说明书 27 17 void mmi camera preview set key hdlr void 功能说明 设置 camera app 在 preview 状态下的按键消息处理程序 输入参数 无 输出参数 无 返回值 无 备注 18 void mmi camera preview create resource void 功能说明 创建预览时 LCD Layer 资源 输入参数 无 输出参数 无 返回值 无 备注 函数的执行操作有 得到当前 MainLCD 和 SubLCD if exists 的 base Layer 的句柄 然后全部置位黑色 第二步加上相框 Frame 最后将创建 OSD 层并置为 active 19 void mmi camera preview free resource void 功能说明 释放主 LCD 的预览时 Layer 资源 输入参数 无 输出参数 无 返回值 无 备注 函数调用 gdi layer free 先后释放掉 ADD Frame Layer OSD Layer 仅 保留 Base Layer 并在释放成功之后将 g camera cntx is mainlcd resource 置位 FALSE 20 void mmi camera preview start void 功能说明 开始 Main LCD 预览 输入参数 无 输出参数 无 返回值 无 备注 函数首先根据 camera app 的全部变量 g camera cntx 中的值初始化 mdi camera setting structcamera setting data 的值 然后调用 mdi 接口函数 mdi camera preview start 进入 Main LCD 预览 详细设计说明书 28 21 void mmi camera preview stop void 功能说明 结束 Main Lcd 预览 输入参数 无 输出参数 无 返回值 无 备注 函数调用 mdi 接口函数 mdi camera preview stop 结束 Main Lcd preview 22 void mmi camera preview set blt layer BOOL is previewing 功能说明 根据当前设置 如是否是 previewing 是否添加相框 传送不同的 layer 到 GDI 输入参数 is previewing 是否 previewing 输出参数 无 返回值 无 备注 无 23 void mmi camera preview clear background void 功能说明 清除并重置背景色 输入参数 无 输出参数 无 返回值 无 备注 函数将根据全局变量 mera osd cntx bg 值设置背景色 并根据 g camera osd cntx bg is draw bg image 选择是否 draw 背景图片 如果以上两项都 未执行 则调用 gdi layer clear 将 base layer 置位黑色 24 void mmi camera preview flatten layer void 功能说明 叠加所有 preview layer 到 base layer 输入参数 无 输出参数 无 返回值 无 备注 函数根据不同的参数值 g camera cntx is fullscreen g camera cntx setting add frame 选择不同的 Layer 并叠加到一起显示 详细设计说明书 29 25 void mmi camera preview draw osd void 功能说明 在 preview 的 OSD Layer 上添加图标 标题 左右软键等信息 输入参数 无 输出参数 无 返回值 无 备注 无 26 U16 mmi camera preview get zoom factor void 功能说明 获得缩放比例 输入参数 g camera cntx setting zoom 输出参数 无 返回值 缩放值 备注 27 void mmi camera draw add frame void 功能说明 增加 Add Frame Layer 输入参数 g camera cntx setting add frame g camera cntx add frame layer handle 输出参数 无 返回值 无 备注 28 void mmi camera entry countdown state void 功能说明 进入拍摄倒计时状态 输入参数 g camera cntx setting delay timer 倒计时时间 输出参数 无 返回值 无 备注 29 void mmi camera exit countdown state void 功能说明 推出拍摄倒计时状态 输入参数 无 输出参数 无 详细设计说明书 30 返回值 无 备注 如果下一个状态是 exit 那么将关闭 LED 退出 preview 模式 Flatten Layer 释放资源 30 void mmi camera countdown cyclic void 功能说明 控制拍摄倒计时循环 输入参数 无 输出参数 无 返回值 无 备注 31 void mmi camera entry burstshot state void 功能说明 进入快拍模式 输入参数 无 输出参数 无 返回值 无 备注 32 void mmi camera exit burstshot state void 功能说明 退出快拍模式 输入参数 无 输出参数 无 返回值 无 备注 无 33 void mmi camera entry burstshot save confirm state void 功能说明 进入快拍结果确认保存状态 输入参数 无 输出参数 无 返回值 无 备注 无 详细设计说明书 31 34 void mmi camera burstshot saving cyclic void 功能说明 循环保存图片 输入参数 无 输出参数 无 返回值 无 备注 每 100ms 保存一张图片 全部保存完毕后进入 CAMERA STATE SAVE DONE 状 态 35 void mmi camera entry save confirm state void 功能说明 进入确认保存状态 输入参数 无 输出参数 无 返回值 无 备注 36 void mmi camera capture void 功能说明 拍摄照片 输入参数 无 输出参数 无 返回值 无 备注 函
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 2026年蔬菜种植公司大棚、农机等固定资产投资管理制度
- 2025牧原集团西北区域招聘2133人易考易错模拟试题(共500题)试卷后附参考答案
- 2025湖南靖州苗族侗族自治县自来水公司招聘16人易考易错模拟试题(共500题)试卷后附参考答案
- 2025海南保亭县招聘文明志愿督导员3人易考易错模拟试题(共500题)试卷后附参考答案
- 2025河北邯郸市峰峰矿区政府系统事业单位招聘274人易考易错模拟试题(共500题)试卷后附参考答案
- 实物类会计题库及答案
- 2025年上学期高一生物侧向思维能力测评试题
- 幼儿教师伦理题库及答案
- 健康管理知识与生活作息优化方案
- 区块链钱包开发工程师团队建设方案
- 动火作业安全培训课件
- 高精度地震定位技术及其网络部署-洞察及研究
- 新能源汽车电力电子基础课件 项目一 电工基础
- 水厂配水管道工程可行性研究报告
- 山路交通安全培训课件
- 劳动争议维权课件
- 供货合同范本附件模板
- 国开2025年春本科《国家安全教育》形考作业1-4终考答案
- 硫化氢安全防护知识培训课件
- 2025年中医确有专长考试题库(附答案)与答案
- 民办高校与公办高校结对共建的策略及实施路径
评论
0/150
提交评论