T/TAF 264-2025 基于双目视差支持裸眼3D功能的移动通信终端应用程序接口(API)规范

T/TAF 264-2025 Mobile communication terminal API specification based on binocular parallax support for naked-eye 3D function

团体标准 中文(简体) 现行 页数:42页 | 格式:PDF

基本信息

标准号
T/TAF 264-2025
标准类型
团体标准
标准状态
现行
中国标准分类号(CCS)
-
国际标准分类号(ICS)
发布日期
2025-02-10
实施日期
2025-02-10
发布单位/组织
-
归口单位
电信终端产业协会
适用范围
主要技术内容:本文件规定了基于双目视差的非全息裸眼3D显示技术应用层和运行库层的接口规范,包含应用运行流程,事件处理、应用渲染处理、应用交互处理的接口定义。本文件适用于双目视差的裸眼3D终端产品,供移动通信终端制造商和应用开发者进行软件开发时使用

研制信息

起草单位:
中国信息通信研究院、中国移动通信集团终端有限公司、华为技术有限公司、中兴通讯股份有限公司、宇龙计算机通信科技(深圳)有限公司、紫光展锐(上海)科技有限公司、北京凌宇智控科技有限公司、咪咕文化科技有限公司
起草人:
崔芳、路鹏、段亚锋、段汶欣、陈公达、吴昊、顾秋辰、张佳宁、张丽强、王晓阳、马波、刘良国、张鹏、陈文斌、傅蓉蓉、董千洲、范洪源、曾路、邓雅丽、翁学义、李丛蓉
出版信息:
页数:42页 | 字数:- | 开本: -

内容描述

ICS33.050

CCSM30

团体标准

T/TAF264—2025

基于双目视差支持裸眼3D功能的移动通信

终端应用程序接口(API)规范

Technicalspecificationforinterfaceofcommunicationterminal

applicationsupportingglasses-free3Dfunctionalitybasedonbinocular

disparity

2025-02-10发布2025-02-10实施

电信终端产业协会发布

T/TAF264—2025

目次

前言.....................................................................................................................................................................II

引言...................................................................................................................................................................III

1范围...............................................................................1

2规范性引用文件.....................................................................1

3术语和定义.........................................................................1

4缩略语.............................................................................1

5通用架构...........................................................................1

5.1概述...........................................................................1

5.2应用层.........................................................................2

5.3API层..........................................................................2

5.4运行库层.......................................................................2

6API说明............................................................................2

6.1概述...........................................................................2

6.2应用运行流程...................................................................3

6.3GSGF3D应用生命周期处理.........................................................3

6.4GSGF3D事件处理.................................................................6

6.5GSGF3D应用渲染.................................................................7

6.6GSGF3D应用交互....................................................................................................................................17

附录A(资料性)接口使用说明........................................................29

A.1GSGF3D应用生命周期处理接口使用说明............................................29

A.2GSGF3D事件处理接口使用说明....................................................30

A.3GSGF3D应用渲染接口使用说明....................................................30

A.4GSGF3D应用交互接口使用说明....................................................33

I

T/TAF264—2025

前言

本文件按照GB/T1.1—2020《标准化工作导则第1部分:标准化文件的结构和起草规则》的规定

起草。

请注意本文件中的某些内容可能涉及专利。本文件的发布机构不承担识别专利的责任。

本文件由电信终端产业协会提出并归口。

本文件起草单位:中国信息通信研究院、中国移动通信集团终端有限公司、华为技术有限公司、中兴

通讯股份有限公司、宇龙计算机通信科技(深圳)有限公司、紫光展锐(上海)科技有限公司、北京凌

宇智控科技有限公司、咪咕文化科技有限公司。

本文件主要起草人:崔芳、路鹏、段亚锋、段汶欣、陈公达、吴昊、顾秋辰、张佳宁、张丽强、王

晓阳、马波、刘良国、张鹏、陈文斌、傅蓉蓉、董千洲、范洪源、曾路、邓雅丽、翁学义、李丛蓉等。

II

T/TAF264—2025

引言

随着移动通信技术的飞速发展和硬件性能的不断提升,基于双目视差的裸眼3D显示技术正逐步

成为提升用户体验的重要手段。这种技术无需佩戴额外设备即可实现立体显示,已经在市场上得到了广

泛应用,特别是在移动通信终端中,能够为用户提供更加直观和沉浸式的3D视觉效果。

在当前人们对裸眼3D应用场景需求日益增长的背景下,从娱乐、游戏到教育、文旅,基于双目

视差的裸眼3D显示技术展现出广阔的应用前景。然而,尽管技术和硬件日益成熟,不同厂商提供的

SDK在接口设计、算法实现和显示效果上仍存在显著差异。这种不统一给开发者带来了巨大的挑战,

例如,开发者需要针对不同厂商的设备进行定制开发,增加了开发成本和时间。同时,算法实现的差

异导致各设备的裸眼3D显示效果参差不齐,影响了用户体验的一致性。

本文件的制定,旨在引导基于双目视差支持裸眼3D功能移动通信终端,制定一套通用的接口

规范,推动行业的健康发展。

III

T/TAF264—2025

基于双目视差支持裸眼3D功能的移动通信终端应用程序接口(API)

规范

1范围

本文件规定了基于双目视差的非全息裸眼3D显示技术应用层和运行库层的接口规范,包含应用

运行流程,事件处理、应用渲染处理、应用交互处理的接口定义。

本文件适用于双目视差的裸眼3D终端产品,供移动通信终端制造商和应用开发者进行软件开

发时使用。

2规范性引用文件

本文件没有规范性引用文件。

3术语和定义

下列术语和定义适用于本文件。

3.1

裸眼3D通用标准generalstandardforglasses-free3D

一种无需特殊眼镜或其他辅助设备即可观看3D效果的从内容采集、编码、存储、传输到终端播

放的移动通信终端通用标准方案。

4缩略语

下列缩略语适用于本文件。

DOF:空间自由度(InterPupillaryDistance)

GSGF3D:裸眼3D通用标准(GeneralStandardforGlasses-Free3D)

IPD:双眼瞳距(InterPupillaryDistance)

SDK:软件开发工具包(SoftwareDevelopmentKit)

5通用架构

5.1概述

裸眼3D显示技术的通用架构,主要包含应用层,API层,运行库层,详见图1。

1

T/TAF264—2025

图1通用架构图

5.2应用层

裸眼3D应用层是指通过3D内容开发引擎或原生代码(Native)等平台创建的3D应用软件。

其中裸眼3DSDK是针对不同应用开发平台的软件开发工具包(SDK)。这些SDK帮助开发者在各个

开发平台上创建支持裸眼3D显示的应用内容。

5.3API层

裸眼3DAPI层定义了裸眼3D显示等功能的标准API。无论开发者使用何种SDK,最终都通过

调用这些标准化的API来实现裸眼3D显示等功能,确保了不同设备和平台之间的兼容性。

5.4运行库层

裸眼3D运行库层是整个系统的运行时,负责最终的3D显示效果,包括以下几个主要功能模

块:

a)设备函数:处理与硬件设备相关的功能调用;

b)空间交互函数:管理与3D空间中的交互,如手势、触控等;

c)特性函数:管理裸眼3D显示的特性,如视差调节、深度控制等;

d)渲染函数:负责3D图像的最终渲染,生成立体图像。

这些功能模块涉及到的算法主要包括通用算法,如眼球追踪算法、外接设备交互(如笔控、指环

等)和原生屏和膜厂商实现的合图算法。通用算法支持了3D显示中的互动和动态调整功能。原生屏和

膜厂商实现的合图算法用于处理设备本身的特定3D显示需求。

通用架构图展示了从3D应用开发及SDK使用、API标准化、到最终3D显示运行的完整流程。

6API说明

6.1概述

通过定义统一的API,可以使开发者以一致的方式接入不同厂商的裸眼3D终端,不再需要为

每个厂商的设备和不同平台单独编写和调整代码,大大缩短了适配时间、降低了开发难度;也能

2

T/TAF264—2025

在不同的平台(如Android、iOS)和设备上以一致的方式实现裸眼3D功能,这种跨平台的兼容

性也给开发者提供了更大的灵活性和选择空间。

6.2应用运行流程

GSGF3D应用程序从创建实例开始,应用的后续操作都将依据该实例进行。首先该实例进行参数

配置并确认输入输出、图形及显示系统正常工作。随后创建渲染器及目标纹理并开始渲染,在渲染循

环中,GSGF3D应用程序获取该实例的事件、位姿、输入数据,并获取目标纹理的图形缓冲进行视图

渲染,最后提交渲染帧到该实例进行后续的图形算法处理并输出到显示屏。应用运行主

线流程见图2。

图2应用运行流程图

6.3GSGF3D应用生命周期处理

6.3.1Instance的创建

6.3.1.1概述

Instance作为GSGF3D应用的上下文环境,存在于整个GSGF3D应用的生命周期中。

6.3.1.2[结构体]GS3D_ApplicationType

typedefstructGS3D_ApplicationType

{GS3D_ApplicationType_3D=1,

3

T/TAF264—2025

}GS3D_ApplicationType;

说明:

枚举应用的类型

成员:

GS3D_ApplicationType_3D:3D应用类型

6.3.1.3[结构体]GS3D_InstanceCreateInfo

typedefstructGS3D_InstanceCreateInfo

{void*next;

GS3D_ApplicationTypeappType;

void*appVM;

void*appActivity;

}GS3D_ApplicationType;

说明:

Instance初始信息结构体,用以创建并初始化Instance实例,next作为预留指针

成员:

next预留指针

appType应用类型

appVM指向JNIJavaVM结构体

appActivity指Activity的jobject参考

6.3.1.4[函数]GS3D_CreateInstance(创建Instance)

GS3D_ResultGS3D_CreateInstance(

constGS3D_InstanceCreateInfo*createInfo,

GS3D_Instance*instance

);

说明:

创建并初始GS3DInstance实例。

参数:

[in]createInfo指向GS3D_InstanceCreateInfo的结构体,内含Instance初始信息

[out]指向GS3D_Instance句柄的指针,instance实例创建成功输出一个有效句柄,创建失败输出

GS3D_NULL_HANDLE

返回值:

GS3D_Result_Success

GS3D_Error_Operation_Failed

GS3D_Error_ApplicationType_Unsupported

GS3D_Error_Argument_Invalid

GS3D_Error_Out_Of_Memory

备注:

无

4

T/TAF264—2025

6.3.2终止及销毁Instance

6.3.2.1概述

GSGF3D提供GS3D_DestroyInstance函数进行Instance实例的终止及销毁。

6.3.2.2[函数]GS3D_DestroyInstance(销毁Instance)

GS3D_ResultGS3D_DestroyInstance

(GS3D_Instanceinstance

);

说明:

终止并销毁GS3DInstance实例。

参数:

[in]instanceGS3D_Instance句柄,由GS3D_CreateInstance获取

返回值:

GS3D_Result_Success

GS3D_Error_Operation_Failed

GS3D_Error_Handle_Invalid

GS3D_Error_Call_Flow_Invalid

GS3D_Error_Instance_Unavailable

备注:

无

6.3.3获取Instance的属性

6.3.3.1概述

在成功创建并初始Instance之后,GSGF3D应用程序可经由Instance句柄调用

GS3D_GetInstanceProperties函数获取Instance属性信息,包括Instance实现的GSGF3D版本

号、Instance自身版本号、以及Instance实现者名称。

6.3.3.2[结构体]GS3D_InstanceProperties(Instance属性信息)

typedefstructGS3D_InstanceProperties

{void*next;

GS3D_VersionGS3DVersion;

GS3D_VersioninstanceVersion;

charinstanceName[GS3D_COMMON_STRING_MAX_SIZE];

}GS3D_InstanceProperties;

说明:

Instance属性信息结构体,应用程序可用以获取Instance详细属性

成员:

next预留指针

GS3DVersionInstance实现的GSGF3D规范版本号

5

T/TAF264—2025

instanceVersionInstance自身版本号

instanceNameInstance实现者名称

6.3.3.3[函数]GS3D_GetInstanceProperties(获取Instance属性)

GS3D_ResultGS3D_GetInstanceProperties

(GS3D_Instanceinstance,

GS3D_InstanceProperties*instanceProperties

);

说明:

获取GSGF3DInstance实现者的属性信息

参数:

[in]instanceGS3D_Instance句柄,由GS3D_CreateInstance获取

[out]instanceProperties指向GS3D_InstanceProperties结构体

返回值:

GS3D_Result_Success

GS3D_Error_Operation_Failed

GS3D_Error_API_Unsupported

GS3D_Error_Handle_Invalid

备注:

无

6.4GSGF3D事件处理

6.4.1概述

GS3D_Event为事件结构体,从事件轮询函数GS3D_PollEvent获取事件指针后,需要根据该

事件类型GS3D_EventType,进而获取存于GS3D_EventData中的事件成员数据。

6.4.2事件结构信息

6.4.3[结构体]GS3D_Event(事件信息)

typedefstructGS3D_Event

{void*next;

GS3D_EventTypeEnumtype;

GS3D_Timetimestamp;

uint8_tbuffer[GS3D_EVENT_BUFFER_MAX_SIZE];

GS3D_EventDataGS3DEventData;

}GS3D_Event;

说明:

Instance事件信息结构体,应用程序可通过事件轮询函数获取Instance即时事件

成员:

next预留指针

6

T/TAF264—2025

type事件类型

timestamp事件发生时间戳buffer预

留足够长度的事件数据缓存,以供储存事件指针转型后的事件结构成员

事件结构指针需要根据事件类型GS3D_EventType转为对应的事件结构指针,以下说明各事件

类型的分类及其对应事件结构体。

typedefunionGS3D_EventData{GS3D_DeviceStateEventDataInfo

devicestate_eventdata;GS3D_DeviceInputEventDataInfo

deviceinput_eventdata;GS3D_EyeDetectionEventDataInfo

eyedetection_eventdata;GS3D_DeviceIpdEventDataInfo

deviceipd_eventdata;

}GS3D_EventData;

6.5GSGF3D应用渲染

6.5.1概述

GSGF3D应用程序必须先完成渲染器的实例创建及初始,才可以提供GSGF3D应用程序后续渲染

循环所需求的功能。在GSGF3D应用程序不再使用此渲染器时,应用程序必须停止GSGF3D渲染

器并销毁实例,将资源返回系统,此流程即是GSGF3D渲染器的生命周期。

6.5.2创建及初始化渲染器实例

6.5.2.1[枚举]GS3D_Graphics_Type(图形API类型)

图形API类型定义见表1。

表1图形API类型

名称数值描述

GS3D_Graphics_OpenGLES0OpenGLES

6.5.2.2[结构体]GS3D_RendererHandleCreateInfo(渲染器初始信息)

typedefstructGS3D_RendererHandleCreateInfo

{void*next;

GS3D_Graphics_TypegraphicsType;

}GS3D_RendererHandleCreateInfo;

说明:

渲染器初始信息结构体,用以描述创建渲染器需求的初始信息

成员:

next预留指针

graphicsType图形API类型

7

T/TAF264—2025

6.5.2.3[函数]GS3D_CreateRendererHandle(创建渲染器)

GS3D_ResultGS3D_CreateRendererHandle

(GS3D_Instanceinstance,

constGS3D_RendererHandleCreateInfo*createInfo,

GS3D_RendererHandle*renderer

);

说明:

创建渲染器

参数:

[in]instanceGS3D_Instance句柄,由GS3D_CreateInstance获取

[in]createInfo指向GS3D_RendererHandleCreateInfo结构体,内含渲染器初始信息

[out]renderer指向GS3D_RendererHandle句柄的指针,渲染器创建成功输出一有效句柄,创建失败

输出GS3D_NULL_HANDLE

返回值:

GS3D_Result_Success

GS3D_Error_Operation_Failed

GS3D_Error_Function_Unsupported

GS3D_Error_Handle_Invalid

GS3D_Error_Argument_Invalid

GS3D_Error_Out_Of_Memory

GS3D_Error_Instance_Unavailable

备注:

无

6.5.3销毁渲染器实例

6.5.3.1[函数]GS3D_DestroyRendererHandle(销毁渲染器)

GS3D_ResultGS3D_DestroyRendererHandle

(GS3D_RendererHandlerenderer

);

说明:

销毁渲染器

参数:

[in]rendererGS3D_RendererHandle句柄,由GS3D_CreateRendererHandle获取

返回值:

GS3D_Result_Success

GS3D_Error_Operation_Failed

GS3D_Error_Handle_Invalid

GS3D_Error_Call_Flow_Invalid

GS3D_Error_Instance_Unavailable

备注:

8

T/TAF264—2025

无

6.5.4视图集配置

6.5.4.1[结构体]GS3D_ViewSetConfigurationInfo(视图集配置)

typedefstructGS3D_ViewSetConfigurationInfo

{void*next;

uint32_tdisplayWidth;

uint32_tdisplayHeight;

uint32_tfps;

uint32_tIpd;

floatfovHRad;

floatfovVRad;

}GS3D_ViewSetConfigurationInfo;

说明:

视图集配置结构体,用以描述对应于显示设备的视图参数

成员:

next预留指针

displayWidth显示器宽度

displayHeight显示器高度

fps渲染帧率

ipd瞳距单位毫米

fovHRad水平FOV单位弧度

fovVRad垂直Fov单位弧度

6.5.4.2[函数]GS3D_CheckViewSetConfiguration(查询视图集配置)

GS3D_ResultGS3D_CheckViewSetConfiguration

(GS3D_Instanceinstance,

GS3D_ViewSetConfigurationInfo*configurations

);

说明:

查询视图集配置

参数:

[in]instanceGS3D_Instance句柄,由GS3D_CreateInstance获取

[out]configurations视图集配置信息

返回值:

GS3D_Result_Success

GS3D_Error_Handle_Invalid

GS3D_Error_Instance_Unavailable

9

T/TAF264—2025

GS3D_Error_Renderer_Unavailable

备注:

无

6.5.5渲染循环的开始与停止

6.5.5.1[枚举]GS3D_ColorSpaceType(颜色空间)

颜色空间定义见表2。

表2颜色空间

名称数值描述

GS3D_ColorSpace_sRGB1sRGB

GS3D_ColorSpqce_Linear2Linear

6.5.5.2[结构体]GS3D_Render_Pipeline_Info(渲染循环管线信息结构体)

typedefstructGS3D_Render_Pipeline_Info

{void*next;

void*eglDisplay;

void*eglContext;

void*androsAppNativeWindow;

GS3D_ColorSpaceTypecolorSpace;

}GS3D_Render_Pipeline_Info;

说明:

渲染循环开始资讯结构体,用以描述渲染循环起始参数

成员:

next预留指针

eglDisplayOpenGLESEGLDisplay

eglContextOpenGLESEGLContext

androsAppNativeWindow应用的ANativeWindow

colorSpace应用的颜色空间配置

6.5.5.3[函数]GS3D_BeginRenderSession(开始渲染循环)

GS3D_ResultGS3D_BeginRenderSession

(GS3D_RendererHandlerendererHandle,

constGS3D_Render_Pipeline_Info*beginInfo,

GS3D_RenderSessionHandle*session

);

说明:

开始渲染循环

10

T/TAF264—2025

参数:

[in]rendererHandleGS3D_Renderer句柄,由GS3D_CreateRenderer获取

[in]beginInfo指向GS3D_Render_Pipeline_Info结构体,内含渲染管线信息

[out]session渲染循环创建成功输出一个有效句柄,创建失败输出GS3D_NULL_HANDLE

返回值:

GS3D_Result_Success

GS3D_Error_Operation_Failed

GS3D_Error_Handle_Invalid

GS3D_Error_Argument_Invalid

GS3D_Error_Out_Of_Memory

GS3D_Error_Instance_Unavailable

GS3D_Error_Renderer_Unavailable

备注:

无

6.5.5.4[函数]GS3D_EndRenderSession(停止渲染循环)

GS3D_ResultGS3D_EndRenderSession

(GS3D_RenderSessionHandlesessionHandle

);

说明:

停止渲染循环

参数:

[in]sessionGS3D_RenderSessionHandle句柄,由GS3D_BeginRenderSession获取

返回值:

GS3D_Result_Success

GS3D_Error_Operation_Failed

GS3D_Error_Handle_Invalid

GS3D_Error_Call_Flow_Invalid

GS3D_Error_Instance_Unavailable

GS3D_Error_Renderer_Unavailable

备注:

无

6.5.6帧同步与视图位姿

6.5.6.1[函数]GS3D_WaitRenderSession(等待调节帧渲染时机)

GS3D_ResultGS3D_WaitRenderSession

(GS3D_RenderSessionHandlesessionHandle,

GS3D_Time*predictedTime

);

说明:

11

T/TAF264—2025

等待调节帧渲染时机,并输出渲染帧的预测显示时间,GSGF3D应用需依据此时间获取对应姿态

进行渲染

参数:

[in]sessionHandleGS3D_RenderSessionHandle句柄,由GS3D_BeginRenderSession获取

[out]predictedTime输出应用渲染此帧后的预测显示时间

返回值:

GS3D_Result_Success

GS3D_Error_Operation_Failed

GS3D_Error_Handle_Invalid

GS3D_Error_Argument_Invalid

定制服务

    相似标准推荐

    更多>