Class VRTrackedCamera
- java.lang.Object
-
- org.lwjgl.openvr.VRTrackedCamera
-
public class VRTrackedCamera extends java.lang.Object
-
-
Method Summary
All Methods Static Methods Concrete Methods Modifier and Type Method Description static intnVRTrackedCamera_AcquireVideoStreamingService(int nDeviceIndex, long pHandle)Unsafe version of:AcquireVideoStreamingServicestatic longnVRTrackedCamera_GetCameraErrorNameFromEnum(int eCameraError)Unsafe version of:GetCameraErrorNameFromEnumstatic intnVRTrackedCamera_GetCameraFrameSize(int nDeviceIndex, int eFrameType, long pnWidth, long pnHeight, long pnFrameBufferSize)Unsafe version of:GetCameraFrameSizestatic intnVRTrackedCamera_GetCameraIntrinsics(int nDeviceIndex, int nCameraIndex, int eFrameType, long pFocalLength, long pCenter)Unsafe version of:GetCameraIntrinsicsstatic intnVRTrackedCamera_GetCameraProjection(int nDeviceIndex, int nCameraIndex, int eFrameType, float flZNear, float flZFar, long pProjection)Unsafe version of:GetCameraProjectionstatic intnVRTrackedCamera_GetVideoStreamFrameBuffer(long hTrackedCamera, int eFrameType, long pFrameBuffer, int nFrameBufferSize, long pFrameHeader, int nFrameHeaderSize)Unsafe version of:GetVideoStreamFrameBufferstatic intnVRTrackedCamera_GetVideoStreamTextureD3D11(long hTrackedCamera, int eFrameType, long pD3D11DeviceOrResource, long ppD3D11ShaderResourceView, long pFrameHeader, int nFrameHeaderSize)Unsafe version of:GetVideoStreamTextureD3D11static intnVRTrackedCamera_GetVideoStreamTextureGL(long hTrackedCamera, int eFrameType, long pglTextureId, long pFrameHeader, int nFrameHeaderSize)Unsafe version of:GetVideoStreamTextureGLstatic intnVRTrackedCamera_GetVideoStreamTextureSize(int nDeviceIndex, int eFrameType, long pTextureBounds, long pnWidth, long pnHeight)Unsafe version of:GetVideoStreamTextureSizestatic intnVRTrackedCamera_HasCamera(int nDeviceIndex, long pHasCamera)Unsafe version of:HasCamerastatic intVRTrackedCamera_AcquireVideoStreamingService(int nDeviceIndex, java.nio.LongBuffer pHandle)Acquiring streaming service permits video streaming for the caller.static java.lang.StringVRTrackedCamera_GetCameraErrorNameFromEnum(int eCameraError)Returns a string for an error.static intVRTrackedCamera_GetCameraFrameSize(int nDeviceIndex, int eFrameType, java.nio.IntBuffer pnWidth, java.nio.IntBuffer pnHeight, java.nio.IntBuffer pnFrameBufferSize)Gets size of the image frame.static intVRTrackedCamera_GetCameraIntrinsics(int nDeviceIndex, int nCameraIndex, int eFrameType, HmdVector2.Buffer pFocalLength, HmdVector2.Buffer pCenter)static intVRTrackedCamera_GetCameraProjection(int nDeviceIndex, int nCameraIndex, int eFrameType, float flZNear, float flZFar, HmdMatrix44 pProjection)static intVRTrackedCamera_GetVideoStreamFrameBuffer(long hTrackedCamera, int eFrameType, java.nio.ByteBuffer pFrameBuffer, CameraVideoStreamFrameHeader pFrameHeader)Copies the image frame into a caller's provided buffer.static intVRTrackedCamera_GetVideoStreamTextureD3D11(long hTrackedCamera, int eFrameType, long pD3D11DeviceOrResource, org.lwjgl.PointerBuffer ppD3D11ShaderResourceView, CameraVideoStreamFrameHeader pFrameHeader)Access a shared D3D11 texture for the specified tracked camera stream.static intVRTrackedCamera_GetVideoStreamTextureD3D11(long hTrackedCamera, int eFrameType, long pD3D11DeviceOrResource, org.lwjgl.PointerBuffer ppD3D11ShaderResourceView, CameraVideoStreamFrameHeader pFrameHeader, int nFrameHeaderSize)Access a shared D3D11 texture for the specified tracked camera stream.static intVRTrackedCamera_GetVideoStreamTextureGL(long hTrackedCamera, int eFrameType, java.nio.IntBuffer pglTextureId, CameraVideoStreamFrameHeader pFrameHeader)Access a shared GL texture for the specified tracked camera stream.static intVRTrackedCamera_GetVideoStreamTextureGL(long hTrackedCamera, int eFrameType, java.nio.IntBuffer pglTextureId, CameraVideoStreamFrameHeader pFrameHeader, int nFrameHeaderSize)Access a shared GL texture for the specified tracked camera stream.static intVRTrackedCamera_GetVideoStreamTextureSize(int nDeviceIndex, int eFrameType, VRTextureBounds pTextureBounds, java.nio.IntBuffer pnWidth, java.nio.IntBuffer pnHeight)Gets size of the image frame.static intVRTrackedCamera_HasCamera(int nDeviceIndex, java.nio.ByteBuffer pHasCamera)For convenience, same as tracked property requestVR.ETrackedDeviceProperty_Prop_HasCamera_Bool.static intVRTrackedCamera_ReleaseVideoStreamingService(long hTrackedCamera)static intVRTrackedCamera_ReleaseVideoStreamTextureGL(long hTrackedCamera, int glTextureId)
-
-
-
Method Detail
-
nVRTrackedCamera_GetCameraErrorNameFromEnum
public static long nVRTrackedCamera_GetCameraErrorNameFromEnum(int eCameraError)
Unsafe version of:GetCameraErrorNameFromEnum
-
VRTrackedCamera_GetCameraErrorNameFromEnum
@Nullable public static java.lang.String VRTrackedCamera_GetCameraErrorNameFromEnum(int eCameraError)
Returns a string for an error.- Parameters:
eCameraError- one of:
-
nVRTrackedCamera_HasCamera
public static int nVRTrackedCamera_HasCamera(int nDeviceIndex, long pHasCamera)Unsafe version of:HasCamera
-
VRTrackedCamera_HasCamera
public static int VRTrackedCamera_HasCamera(int nDeviceIndex, java.nio.ByteBuffer pHasCamera)For convenience, same as tracked property requestVR.ETrackedDeviceProperty_Prop_HasCamera_Bool.
-
nVRTrackedCamera_GetCameraFrameSize
public static int nVRTrackedCamera_GetCameraFrameSize(int nDeviceIndex, int eFrameType, long pnWidth, long pnHeight, long pnFrameBufferSize)Unsafe version of:GetCameraFrameSize
-
VRTrackedCamera_GetCameraFrameSize
public static int VRTrackedCamera_GetCameraFrameSize(int nDeviceIndex, int eFrameType, java.nio.IntBuffer pnWidth, java.nio.IntBuffer pnHeight, java.nio.IntBuffer pnFrameBufferSize)Gets size of the image frame.
-
nVRTrackedCamera_GetCameraIntrinsics
public static int nVRTrackedCamera_GetCameraIntrinsics(int nDeviceIndex, int nCameraIndex, int eFrameType, long pFocalLength, long pCenter)Unsafe version of:GetCameraIntrinsics
-
VRTrackedCamera_GetCameraIntrinsics
public static int VRTrackedCamera_GetCameraIntrinsics(int nDeviceIndex, int nCameraIndex, int eFrameType, HmdVector2.Buffer pFocalLength, HmdVector2.Buffer pCenter)
-
nVRTrackedCamera_GetCameraProjection
public static int nVRTrackedCamera_GetCameraProjection(int nDeviceIndex, int nCameraIndex, int eFrameType, float flZNear, float flZFar, long pProjection)Unsafe version of:GetCameraProjection
-
VRTrackedCamera_GetCameraProjection
public static int VRTrackedCamera_GetCameraProjection(int nDeviceIndex, int nCameraIndex, int eFrameType, float flZNear, float flZFar, HmdMatrix44 pProjection)
-
nVRTrackedCamera_AcquireVideoStreamingService
public static int nVRTrackedCamera_AcquireVideoStreamingService(int nDeviceIndex, long pHandle)Unsafe version of:AcquireVideoStreamingService
-
VRTrackedCamera_AcquireVideoStreamingService
public static int VRTrackedCamera_AcquireVideoStreamingService(int nDeviceIndex, java.nio.LongBuffer pHandle)Acquiring streaming service permits video streaming for the caller. Releasing hints the system that video services do not need to be maintained for this client. If the camera has not already been activated, a one time spin up may incur some auto exposure as well as initial streaming frame delays. The camera should be considered a global resource accessible for shared consumption but not exclusive to any caller. The camera may go inactive due to lack of active consumers or headset idleness.
-
VRTrackedCamera_ReleaseVideoStreamingService
public static int VRTrackedCamera_ReleaseVideoStreamingService(long hTrackedCamera)
-
nVRTrackedCamera_GetVideoStreamFrameBuffer
public static int nVRTrackedCamera_GetVideoStreamFrameBuffer(long hTrackedCamera, int eFrameType, long pFrameBuffer, int nFrameBufferSize, long pFrameHeader, int nFrameHeaderSize)Unsafe version of:GetVideoStreamFrameBuffer
-
VRTrackedCamera_GetVideoStreamFrameBuffer
public static int VRTrackedCamera_GetVideoStreamFrameBuffer(long hTrackedCamera, int eFrameType, java.nio.ByteBuffer pFrameBuffer, CameraVideoStreamFrameHeader pFrameHeader)Copies the image frame into a caller's provided buffer. The image data is currently provided as RGBA data, 4 bytes per pixel. A caller can provide null for the framebuffer or frameheader if not desired. Requesting the frame header first, followed by the frame buffer allows the caller to determine if the frame as advanced per the frame header sequence. If there is no frame available yet, due to initial camera spinup or re-activation, the error will beVR.EVRTrackedCameraError_VRTrackedCameraError_NoFrameAvailable. Ideally a caller should be polling at ~16ms intervals.
-
nVRTrackedCamera_GetVideoStreamTextureSize
public static int nVRTrackedCamera_GetVideoStreamTextureSize(int nDeviceIndex, int eFrameType, long pTextureBounds, long pnWidth, long pnHeight)Unsafe version of:GetVideoStreamTextureSize
-
VRTrackedCamera_GetVideoStreamTextureSize
public static int VRTrackedCamera_GetVideoStreamTextureSize(int nDeviceIndex, int eFrameType, VRTextureBounds pTextureBounds, java.nio.IntBuffer pnWidth, java.nio.IntBuffer pnHeight)Gets size of the image frame.
-
nVRTrackedCamera_GetVideoStreamTextureD3D11
public static int nVRTrackedCamera_GetVideoStreamTextureD3D11(long hTrackedCamera, int eFrameType, long pD3D11DeviceOrResource, long ppD3D11ShaderResourceView, long pFrameHeader, int nFrameHeaderSize)Unsafe version of:GetVideoStreamTextureD3D11
-
VRTrackedCamera_GetVideoStreamTextureD3D11
public static int VRTrackedCamera_GetVideoStreamTextureD3D11(long hTrackedCamera, int eFrameType, long pD3D11DeviceOrResource, org.lwjgl.PointerBuffer ppD3D11ShaderResourceView, CameraVideoStreamFrameHeader pFrameHeader, int nFrameHeaderSize) public static int VRTrackedCamera_GetVideoStreamTextureD3D11(long hTrackedCamera, int eFrameType, long pD3D11DeviceOrResource, org.lwjgl.PointerBuffer ppD3D11ShaderResourceView, CameraVideoStreamFrameHeader pFrameHeader)Access a shared D3D11 texture for the specified tracked camera stream.The camera frame type
VR.EVRTrackedCameraFrameType_VRTrackedCameraFrameType_Undistortedis not supported directly as a shared texture. It is an interior subregion of the shared textureVR.EVRTrackedCameraFrameType_VRTrackedCameraFrameType_MaximumUndistorted. Instead, useGetVideoStreamTextureSizewithVRTrackedCameraFrameType_Undistortedto determine the proper interior subregion bounds along withGetVideoStreamTextureD3D11()withVRTrackedCameraFrameType_MaximumUndistortedto provide the texture. TheVRTrackedCameraFrameType_MaximumUndistortedwill yield an image where the invalid regions are decoded by the alpha channel having a zero component. The valid regions all have a non-zero alpha component. The subregion as described byVRTrackedCameraFrameType_Undistortedguarantees a rectangle where all pixels are valid.
-
nVRTrackedCamera_GetVideoStreamTextureGL
public static int nVRTrackedCamera_GetVideoStreamTextureGL(long hTrackedCamera, int eFrameType, long pglTextureId, long pFrameHeader, int nFrameHeaderSize)Unsafe version of:GetVideoStreamTextureGL
-
VRTrackedCamera_GetVideoStreamTextureGL
public static int VRTrackedCamera_GetVideoStreamTextureGL(long hTrackedCamera, int eFrameType, java.nio.IntBuffer pglTextureId, CameraVideoStreamFrameHeader pFrameHeader, int nFrameHeaderSize) public static int VRTrackedCamera_GetVideoStreamTextureGL(long hTrackedCamera, int eFrameType, java.nio.IntBuffer pglTextureId, CameraVideoStreamFrameHeader pFrameHeader)Access a shared GL texture for the specified tracked camera stream.
-
VRTrackedCamera_ReleaseVideoStreamTextureGL
public static int VRTrackedCamera_ReleaseVideoStreamTextureGL(long hTrackedCamera, int glTextureId)
-
-