集成到自己的Android项目中,及提供API说明_第1页
集成到自己的Android项目中,及提供API说明_第2页
集成到自己的Android项目中,及提供API说明_第3页
集成到自己的Android项目中,及提供API说明_第4页
集成到自己的Android项目中,及提供API说明_第5页
已阅读5页,还剩17页未读 继续免费阅读

付费下载

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、Pisofttech 21/22Pisofttech圆周率全景相机Android SDK使用指南版本:V1.1.0.BasicPisofttech本文主要指导用户如何将本公司的Android SDK集成到自己的Android项目中,及提供API说明 目录 TOC o 1-3 h z u HYPERLINK l _Toc496277572 一、名词解释 PAGEREF _Toc496277572 h 2 HYPERLINK l _Toc496277573 二、功能介绍 PAGEREF _Toc496277573 h 4 HYPERLINK l _Toc496277574 1.功能列表 PAGER

2、EF _Toc496277574 h 4 HYPERLINK l _Toc496277575 2.使用限制 PAGEREF _Toc496277575 h 4 HYPERLINK l _Toc496277576 三、Android studio如何导入SDK PAGEREF _Toc496277576 h 4 HYPERLINK l _Toc496277577 1.SDK文件结构 PAGEREF _Toc496277577 h 4 HYPERLINK l _Toc496277578 2.导入必要文件 PAGEREF _Toc496277578 h 5 HYPERLINK l _Toc49627

3、7579 3.工程配置 PAGEREF _Toc496277579 h 7 HYPERLINK l _Toc496277580 四、SDK初始化 PAGEREF _Toc496277580 h 9 HYPERLINK l _Toc496277581 五、基本功能 PAGEREF _Toc496277581 h 11 HYPERLINK l _Toc496277582 1.如何开始预览 PAGEREF _Toc496277582 h 11 HYPERLINK l _Toc496277583 2.如何查看本地照片 PAGEREF _Toc496277583 h 11 HYPERLINK l _To

4、c496277584 3.如何播放视频 PAGEREF _Toc496277584 h 12 HYPERLINK l _Toc496277585 六、API说明 PAGEREF _Toc496277585 h 12 HYPERLINK l _Toc496277586 初始化 PAGEREF _Toc496277586 h 12 HYPERLINK l _Toc496277587 PiPanoSDK(Activity actvty, OnSDKIsReadyListener listener) PAGEREF _Toc496277587 h 12 HYPERLINK l _Toc49627758

5、8 View getPlayerView() PAGEREF _Toc496277588 h 12 HYPERLINK l _Toc496277589 实时预览 PAGEREF _Toc496277589 h 13 HYPERLINK l _Toc496277590 void setPreviewIsReadyListener(OnPreviewIsReadyListener listener) PAGEREF _Toc496277590 h 13 HYPERLINK l _Toc496277591 int startPreview(String inputSrcType) PAGEREF _

6、Toc496277591 h 13 HYPERLINK l _Toc496277592 int stopPreview() PAGEREF _Toc496277592 h 13 HYPERLINK l _Toc496277593 void setPreviewTextureSize(int width, int height) PAGEREF _Toc496277593 h 14 HYPERLINK l _Toc496277594 SurfaceTexture getPreviewSurfaceTexture() PAGEREF _Toc496277594 h 14 HYPERLINK l _

7、Toc496277595 视频文件播放 PAGEREF _Toc496277595 h 14 HYPERLINK l _Toc496277596 int openVideo(String url, String inputSrcType) PAGEREF _Toc496277596 h 14 HYPERLINK l _Toc496277597 void pause() PAGEREF _Toc496277597 h 15 HYPERLINK l _Toc496277598 void Resume() PAGEREF _Toc496277598 h 15 HYPERLINK l _Toc4962

8、77599 void stop() PAGEREF _Toc496277599 h 15 HYPERLINK l _Toc496277600 double getVideoProgress() PAGEREF _Toc496277600 h 15 HYPERLINK l _Toc496277601 void seek(double offset) PAGEREF _Toc496277601 h 15 HYPERLINK l _Toc496277602 查看本地照片 PAGEREF _Toc496277602 h 16 HYPERLINK l _Toc496277603 int openPhot

9、o(String path, String inputSrcType) PAGEREF _Toc496277603 h 16 HYPERLINK l _Toc496277604 显示效果 PAGEREF _Toc496277604 h 16 HYPERLINK l _Toc496277605 int setViewMode(String showMode) PAGEREF _Toc496277605 h 16 HYPERLINK l _Toc496277606 void setImageFlipHorizontal(boolean flag) PAGEREF _Toc496277606 h 1

10、7 HYPERLINK l _Toc496277607 void setInputImageContentSize(int canvasWidth, int canvasHeight, int contentWidth, int contentHeight) PAGEREF _Toc496277607 h 17 HYPERLINK l _Toc496277608 其他 PAGEREF _Toc496277608 h 18 HYPERLINK l _Toc496277609 String getVersion() PAGEREF _Toc496277609 h 18 HYPERLINK l _T

11、oc496277610 void setScreenOrientation(int mode) PAGEREF _Toc496277610 h 18 HYPERLINK l _Toc496277611 String getCurrentInputSrcType() PAGEREF _Toc496277611 h 18 HYPERLINK l _Toc496277612 void setCamDirection(int type) PAGEREF _Toc496277612 h 19 HYPERLINK l _Toc496277613 七、附录 PAGEREF _Toc496277613 h 1

12、9 HYPERLINK l _Toc496277614 类PiSourceModeType PAGEREF _Toc496277614 h 19 HYPERLINK l _Toc496277615 方法概要 PAGEREF _Toc496277615 h 19 HYPERLINK l _Toc496277616 类PiViewModeType PAGEREF _Toc496277616 h 20 HYPERLINK l _Toc496277617 方法概要 PAGEREF _Toc496277617 h 20 HYPERLINK l _Toc496277618 类PiTransitionEff

13、ectType PAGEREF _Toc496277618 h 20 HYPERLINK l _Toc496277619 方法概要 PAGEREF _Toc496277619 h 20 HYPERLINK l _Toc496277620 类PiCameraDirectionType PAGEREF _Toc496277620 h 20 HYPERLINK l _Toc496277621 八、常见问题 PAGEREF _Toc496277621 h 21 HYPERLINK l _Toc496277622 预览、浏览照片或播放视频文件时,看到的图像是左右相反的 PAGEREF _Toc49627

14、7622 h 21 HYPERLINK l _Toc496277623 一个SDK实例可以和多个fragment的Layout绑定吗? PAGEREF _Toc496277623 h 21 HYPERLINK l _Toc496277624 单鱼眼的输入源,在【沉浸】图像显示不正常怎么办? PAGEREF _Toc496277624 h 21 HYPERLINK l _Toc496277625 单鱼眼的输入图像画布四边不是和鱼眼图像相切的,怎么才能正常展开? PAGEREF _Toc496277625 h 21名词解释展开:按照特定的3D模型对输入图像进行展示,而这些特定的3D模型称为【展开模

15、式】。转场动画:从一个展开模式切换到另一个展开模式时的动态过度效果。输入源:根据输入图像内容进行的分类。预览:实时显示输入的图像数据。镜头朝向:专指单鱼眼镜头的摆放位置。功能介绍功能列表功能描述实时预览以多种全景展开模式,观看全景相机拍摄的实时图像浏览图片以多种全景展开模式,查看本地保存的全景照片播放全景视频以多种全景展开模式,播放本SDK录制的全景视频文件使用限制软件要求:只支持android 5.0及以上armeabi-v7a版本的android应用开发。硬件要求: 要求CPU 四核2.7GHz ,运行时内存2GB同等及以上性能的手机。Android studio如何导入SDKSDK文件结

16、构pi_camera_sdk.zip解压后会得到libs、assets、jniLibs、demo、doc三个文件夹,如下图:其中:libs、assets及jniLibs文件夹包含的是android工程集成SDK的必须文件;demo包含的是android studio调用SDK的实例工程;doc包含的是SDK的帮助文档。导入必要文件将libs目录下的所有文件复制到android studio工程的libs目录中,如下图:图中文件仅供参考,实际文件会根据使用前版本有所差异。将assets文件夹复制到android studio工程的src/main目录中,如下图:将jniLibs目录下的文件夹复制

17、到android studio工程的src/main/jniLibs目录(如果没有jiniLibs目录,则新建一个)中,如下图:图中文件仅供参考,实际文件会根据使用前版本有所差异。工程配置用户须要根据实际需求,配置相应的权限。以demo中的实例工程为例,拍照、录像须要SD卡的读写及音频采集权限,如下图:在需要嵌入预览或播放器的layout文中加入一个播放器的父控件,如LinearLayout,参考下图:在Activity的onCreate()中加入LinearLayout layout = (LinearLayout)findViewById(R.id.videoview);layout.ad

18、dView(panoPlayerView);layout变量对应上面layout中添加的控件,panoPlayerView变量由SDK的API中获得,详见 HYPERLINK l _初始化 下文。重载Activity中以下函数:Override protected void onDestroy () mPiPanoSDK.onDestroy(); super.onDestroy();/ Pause UnityOverride protected void onPause() super.onPause(); mPiPanoSDK.onPause();/ Resume UnityOverride

19、 protected void onResume() super.onResume(); mPiPanoSDK.onResume();/ This ensures the layout will be correct.Override public void onConfigurationChanged(Configuration newConfig) super.onConfigurationChanged(newConfig); mPiPanoSDK.onConfigurationChanged(newConfig);/ Notify Unity of the focus change.O

20、verride public void onWindowFocusChanged(boolean hasFocus) super.onWindowFocusChanged(hasFocus); mPiPanoSDK.onWindowFocusChanged(hasFocus);mPiPanoSDK变量由SDK的API中获得,详见 HYPERLINK l _初始化 下文。SDK初始化先在要调用SDK的java文件中加入import com.pi.RenderTextureToEncoder.TextureListener;import com.pi.pipanosdk.ErrCode;impor

21、t com.pi.pipanosdk.PiPanoSDK;在Activity的onCreate()中加入创建SDK对象mLayout = (LinearLayout) findViewById(R.id.videoview);try mPiPanoSDK = new PiPanoSDK(this, this); catch (Exception e) e.printStackTrace();获取SDK图像渲染窗口View panoPlayerView = mPiPanoSDK.getPlayerView();if (null = panoPlayerView) Log.e(TAG, null

22、= panoPlayerView); return;实现接口PiPanoSDK.OnSDKIsReadyListener中的onSDKIsReady(),监听SDK初始化完成public void onSDKIsReady() mSDKIsOK = true; Log.d(TAG, SDK is ok);如果输入源为单鱼眼,则需要根据相机实际的摆放情况,调用 HYPERLINK l _void_setCamDirection(int_type) setCamDirection()设置相机的方向注意:如果是使用Fragment加载SDK,则Fragment需要定义接口给加载自身的Activity

23、在onWindowFocusChanged()响应时,将消息传递给Fragment,实例代码如下:Fragment中代码:Overridepublic void onWindowFocusChanged(boolean hasFocus) mPiPanoSDK.onWindowFocusChanged(hasFocus);加载Fragment的Activity中代码:Overridepublic void onWindowFocusChanged(boolean hasFocus) super.onWindowFocusChanged(hasFocus); if (mCurrentFragme

24、nt instanceof IOnFocusListenable) (IOnFocusListenable) mCurrentFragment).onWindowFocusChanged(hasFocus); 基本功能如何开始预览使用 HYPERLINK l _void_setPreviewIsReadyListener(OnPr setPreviewIsReadyListener()设置监听预览是否准备就绪;实现OnPreviewIsReadyListener()方法,处理预览就绪后的业务;调用 HYPERLINK l _void_setTextureSize(int_width, setP

25、reviewTextureSize()设置SDK 预览的texture size;调用 HYPERLINK l _int_startPreview() startPreview()开始预览;调用 HYPERLINK l _void_setShowMode(int_showMode) setViewMode()设置展开模式;OnPreviewIsReadyListener()响应后,调用 HYPERLINK l _SurfaceTexture_getSurfaceTexture() getPreviewSurfaceTexture()获取SDK的SurfaceTexture,然后将图像渲染到此S

26、urfaceTexture,即可预览到图像;在预览过程中可调用 HYPERLINK l _void_setShowMode(int_showMode) setViewMode()切换展开模式,详见 HYPERLINK l _void_setShowMode(int_showMode) API说明;调用 HYPERLINK l _int_stopPreview() stopPreview()停止预览。如何查看本地照片调用 HYPERLINK l _int_openPhoto(String_path) openPhoto()打开指定的本地照片,并显示在之前关联的控件中。在照片浏览时,可以调用 HY

27、PERLINK l _void_setShowMode(int_showMode) setViewMode()切换展开模式。如何播放视频播放录像调用 HYPERLINK l _int_openVideo(String_url) openVideo()打开视频文件,可以是本地文件也可以是网络url。在播放过程中,可以调用setViewMode()切换展开模式。调用 HYPERLINK l _void_pause() pause()暂停播放。调用 HYPERLINK l _void_Resume() resume()继续播放。调用 HYPERLINK l _double_getVideoProgr

28、ess() getVideoProgress()获取当前播放进度百分比(1.0表示100%)。调用 HYPERLINK l _void_seek(double_offset) seek()快进到指定的进度百分比开始播放。调用 HYPERLINK l _void_stop() stop()停止视频播放。API说明初始化PiPanoSDK(Activity actvty, OnSDKIsReadyListener listener)PiPanoSDK的构造函数Parameters actvty 使用SDK的actvty listener 监听SDK初始化完成的回调Returns 无View get

29、PlayerView()获取SDK用于图像渲染的view,以便部署到android工程的UI中Returns 返回null表示失败实时预览void setPreviewIsReadyListener(OnPreviewIsReadyListener listener)给SDK绑定OnPreviewIsReadyListener,以便监听预览是否准备就绪Parameters listener Returns 无int startPreview(String inputSrcType)开始显示预览图像Parameters inputSrcType 输入源类型 取值范围:输入源类型值单鱼眼OneEy

30、e全景2:1Full21Returns 返回0表示成功就,返回负值表示失败 int stopPreview()停止显示预览图像Returns 返回0表示成功就,返回负值表示失败void setPreviewTextureSize(int width, int height)设置预览Texture的sizeReturns 无SurfaceTexture getPreviewSurfaceTexture()获取用于渲染预览图像的SurfaceTexture,用户可以对此SurfaceTexture进行操作Returns 用于渲染预览图像的SurfaceTexture视频文件播放int openVi

31、deo(String url, String inputSrcType)打开并播放视频文件(支持本地和网络)Parameters url 本地视频文件路径或者网络链接 inputSrcType 输入源类型 取值范围:输入源类型值单鱼眼OneEye全景2:1Full21Returns 返回0表示成功就,返回负值表示失败void pause()暂停播放Returns 无void Resume()继续播放Returns 无void stop()停止播放Returns 无double getVideoProgress()获取视频当前播放进度的百分比Returns 视频当前播放进度的百分比(范围:0.0

32、1.0)void seek(double offset)进度跳转Parameters offset 表示跳转到视频时长的百分之几的位置(范围:0.01.0)Returns 无查看本地照片int openPhoto(String path, String inputSrcType)打开并显示照片Parameters path 本地视频文件路径或者网络链接 inputSrcType 输入源类型 取值范围:输入源类型值单鱼眼OneEye全景2:1Full21Returns 返回0表示成功就,返回负值表示失败显示效果int setViewMode(String showMode)设置展开模式,不同的输

33、入源对应的可用模式不同Parameters showMode 对应各种全景展开模式的标识值 取值范围:展开模式值支持的输入源黑屏EPM_NONEOneEye Full21沉浸EPM_SPHEREINOneEye Full21鱼眼EPM_SPHEREOUTOneEye Full21小行星EPM_SPHEREASTEROIDFull21VREPM_VROneEye Full21Returns 无void setImageFlipHorizontal(boolean flag)将显示的图像进行左右翻转,对“预览”、“打开照片”、“播放文件”均生效Parameters flag true为翻转,false为不翻转Returns 无void setInputImageContentSize(int canvasWidth, int canvasHeight, int contentWidth, int contentHeight)设置输入图像的画布分辨率及显示在画布上的图像内容分辨率(单鱼眼专用)Parameters canvasWidth 画布宽 canvasHeight 画布高 contentWidth 图像宽 contentHeig

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论