| ARX 1.0 The next-generation open source augmented reality toolkit.

Loading...
Searching...
No Matches
videoExternal.h
Go to the documentation of this file.
1/*
2 * videoExternal.h
3 * artoolkitX
4 *
5 * This file is part of artoolkitX.
6 *
7 * artoolkitX is free software: you can redistribute it and/or modify
8 * it under the terms of the GNU Lesser General Public License as published by
9 * the Free Software Foundation, either version 3 of the License, or
10 * (at your option) any later version.
11 *
12 * artoolkitX is distributed in the hope that it will be useful,
13 * but WITHOUT ANY WARRANTY; without even the implied warranty of
14 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
15 * GNU Lesser General Public License for more details.
16 *
17 * You should have received a copy of the GNU Lesser General Public License
18 * along with artoolkitX. If not, see <http://www.gnu.org/licenses/>.
19 *
20 * As a special exception, the copyright holders of this library give you
21 * permission to link this library with independent modules to produce an
22 * executable, regardless of the license terms of these independent modules, and to
23 * copy and distribute the resulting executable under terms of your choice,
24 * provided that you also meet, for each linked independent module, the terms and
25 * conditions of the license of that module. An independent module is a module
26 * which is neither derived from nor based on this library. If you modify this
27 * library, you may extend this exception to your version of the library, but you
28 * are not obligated to do so. If you do not wish to do so, delete this exception
29 * statement from your version.
30 *
31 * Copyright 2023 Philip Lamb
32 *
33 * Author(s): Philip Lamb
34 *
35 */
36
37#ifndef AR_VIDEO_EXTERNAL_H
38#define AR_VIDEO_EXTERNAL_H
39
40
41#include <ARX/ARVideo/video.h>
42
43#ifdef __cplusplus
44 extern "C" {
45#endif
46
47 typedef struct _AR2VideoParamExternalT AR2VideoParamExternalT;
48
49#define AR_VIDEO_EXTERNAL_FOCAL_LENGTH_DEFAULT 0.3 // Metres.
50
51 int ar2VideoDispOptionExternal (void);
52 AR2VideoParamExternalT *ar2VideoOpenAsyncExternal (const char *config, void (*callback)(void *), void *userdata);
53 int ar2VideoCloseExternal (AR2VideoParamExternalT *vid);
54 int ar2VideoGetIdExternal (AR2VideoParamExternalT *vid, ARUint32 *id0, ARUint32 *id1);
55 int ar2VideoGetSizeExternal (AR2VideoParamExternalT *vid, int *x,int *y);
56AR_PIXEL_FORMAT ar2VideoGetPixelFormatExternal (AR2VideoParamExternalT *vid);
57 AR2VideoBufferT *ar2VideoGetImageExternal (AR2VideoParamExternalT *vid);
58 int ar2VideoCapStartExternal (AR2VideoParamExternalT *vid);
59 int ar2VideoCapStopExternal (AR2VideoParamExternalT *vid);
60
61 int ar2VideoGetParamiExternal (AR2VideoParamExternalT *vid, int paramName, int *value);
62 int ar2VideoSetParamiExternal (AR2VideoParamExternalT *vid, int paramName, int value);
63 int ar2VideoGetParamdExternal (AR2VideoParamExternalT *vid, int paramName, double *value);
64 int ar2VideoSetParamdExternal (AR2VideoParamExternalT *vid, int paramName, double value);
65 int ar2VideoGetParamsExternal (AR2VideoParamExternalT *vid, const int paramName, char **value);
66 int ar2VideoSetParamsExternal (AR2VideoParamExternalT *vid, const int paramName, const char *value);
67
68 int ar2VideoPushInitExternal(AR2VideoParamExternalT *vid, int width, int height, const char *pixelFormat, int cameraIndex, int cameraPosition);
69 int ar2VideoPushExternal(AR2VideoParamExternalT *vid,
70 ARUint8 *buf0p, int buf0Size, int buf0PixelStride, int buf0RowStride,
71 ARUint8 *buf1p, int buf1Size, int buf1PixelStride, int buf1RowStride,
72 ARUint8 *buf2p, int buf2Size, int buf2PixelStride, int buf2RowStride,
73 ARUint8 *buf3p, int buf3Size, int buf3PixelStride, int buf3RowStride);
74 int ar2VideoPushFinalExternal(AR2VideoParamExternalT *vid);
75
76
77#ifdef __cplusplus
78}
79#endif
80#endif // AR_VIDEO_EXTERNAL_H
ARUint8
unsigned char ARUint8
Definition: ar.h:92
ARUint32
unsigned int ARUint32
Definition: ar.h:94
AR2VideoBufferT
A structure which carries information about a video frame retrieved by the video library.
Definition: ar.h:148
video.h
ar2VideoCapStopExternal
int ar2VideoCapStopExternal(AR2VideoParamExternalT *vid)
ar2VideoPushExternal
int ar2VideoPushExternal(AR2VideoParamExternalT *vid, ARUint8 *buf0p, int buf0Size, int buf0PixelStride, int buf0RowStride, ARUint8 *buf1p, int buf1Size, int buf1PixelStride, int buf1RowStride, ARUint8 *buf2p, int buf2Size, int buf2PixelStride, int buf2RowStride, ARUint8 *buf3p, int buf3Size, int buf3PixelStride, int buf3RowStride)
ar2VideoCloseExternal
int ar2VideoCloseExternal(AR2VideoParamExternalT *vid)
ar2VideoSetParamiExternal
int ar2VideoSetParamiExternal(AR2VideoParamExternalT *vid, int paramName, int value)
ar2VideoGetParamiExternal
int ar2VideoGetParamiExternal(AR2VideoParamExternalT *vid, int paramName, int *value)
ar2VideoGetPixelFormatExternal
AR_PIXEL_FORMAT ar2VideoGetPixelFormatExternal(AR2VideoParamExternalT *vid)
ar2VideoOpenAsyncExternal
AR2VideoParamExternalT * ar2VideoOpenAsyncExternal(const char *config, void(*callback)(void *), void *userdata)
ar2VideoGetParamdExternal
int ar2VideoGetParamdExternal(AR2VideoParamExternalT *vid, int paramName, double *value)
AR2VideoParamExternalT
struct _AR2VideoParamExternalT AR2VideoParamExternalT
Definition: videoExternal.h:47
ar2VideoSetParamsExternal
int ar2VideoSetParamsExternal(AR2VideoParamExternalT *vid, const int paramName, const char *value)
ar2VideoSetParamdExternal
int ar2VideoSetParamdExternal(AR2VideoParamExternalT *vid, int paramName, double value)
ar2VideoDispOptionExternal
int ar2VideoDispOptionExternal(void)
ar2VideoPushInitExternal
int ar2VideoPushInitExternal(AR2VideoParamExternalT *vid, int width, int height, const char *pixelFormat, int cameraIndex, int cameraPosition)
ar2VideoGetIdExternal
int ar2VideoGetIdExternal(AR2VideoParamExternalT *vid, ARUint32 *id0, ARUint32 *id1)
ar2VideoGetSizeExternal
int ar2VideoGetSizeExternal(AR2VideoParamExternalT *vid, int *x, int *y)
ar2VideoGetImageExternal
AR2VideoBufferT * ar2VideoGetImageExternal(AR2VideoParamExternalT *vid)
ar2VideoPushFinalExternal
int ar2VideoPushFinalExternal(AR2VideoParamExternalT *vid)
ar2VideoGetParamsExternal
int ar2VideoGetParamsExternal(AR2VideoParamExternalT *vid, const int paramName, char **value)
ar2VideoCapStartExternal
int ar2VideoCapStartExternal(AR2VideoParamExternalT *vid)