-
Notifications
You must be signed in to change notification settings - Fork 15
Expand file tree
/
Copy pathVisVideo.java
More file actions
102 lines (82 loc) · 3.54 KB
/
VisVideo.java
File metadata and controls
102 lines (82 loc) · 3.54 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
/* Libvisual - The audio visualisation framework.
*
* Copyright (C) 2004-2006 Dennis Smit <ds@nerds-incorporated.org>
* Copyright (C) 2012 Daniel Hiepler <daniel-lva@niftylight.de>
*
* Authors: Dennis Smit <ds@nerds-incorporated.org>
* Daniel Hiepler <daniel-lva@niftylight.de>
*
* This program is free software; you can redistribute it and/or modify
* it under the terms of the GNU Lesser General Public License as
* published by the Free Software Foundation; either version 2.1
* of the License, or (at your option) any later version.
*
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU Lesser General Public License for more details.
*
* You should have received a copy of the GNU Lesser General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
*/
package org.libvisual.android;
import android.util.Log;
import java.lang.Exception;
/** VisVideo wrapper */
public class VisVideo
{
private final static String TAG = "VisVideo";
public final static int VISUAL_VIDEO_DEPTH_NONE = 0; /**< No video surface flag. */
public final static int VISUAL_VIDEO_DEPTH_8BIT = 1; /**< 8 bits indexed surface flag. */
public final static int VISUAL_VIDEO_DEPTH_16BIT = 2; /**< 16 bits 5-6-5 surface flag. */
public final static int VISUAL_VIDEO_DEPTH_24BIT = 4; /**< 24 bits surface flag. */
public final static int VISUAL_VIDEO_DEPTH_32BIT = 8; /**< 32 bits surface flag. */
public final static int VISUAL_VIDEO_DEPTH_GL = 16; /**< openGL surface flag. */
public final static int VISUAL_VIDEO_DEPTH_ENDLIST = 32; /**< Used to mark the end of the depth list. */
public final static int VISUAL_VIDEO_DEPTH_ERROR = -1; /**< Used when there is an error. */
public final static int VISUAL_VIDEO_DEPTH_ALL = VISUAL_VIDEO_DEPTH_8BIT
| VISUAL_VIDEO_DEPTH_16BIT
| VISUAL_VIDEO_DEPTH_24BIT
| VISUAL_VIDEO_DEPTH_32BIT
| VISUAL_VIDEO_DEPTH_GL; /**< All graphical depths. */
/** implemented by visual.c */
private native int videoNew();
private native void videoUnref(int videoPtr);
private native void videoAllocateBuffer(int videoPtr);
private native void videoSetAttributes(int videoPtr, int width, int height, int stride, int depth);
private static native int videoGetHighestDepth(int depth);
private static native int videoGetHighestDepthNoGl(int depth);
private static native int videoBppFromDepth(int depth);
/* current VisVideo object */
public int VisVideo;
public VisVideo()
{
VisVideo = videoNew();
}
public void setAttributes(int width, int height, int stride, int depth)
{
videoSetAttributes(VisVideo, width, height, stride, depth);
}
public static int depthGetHighest(int depth)
{
return videoGetHighestDepth(depth);
}
public static int depthGetHighestNoGl(int depth)
{
return videoGetHighestDepthNoGl(depth);
}
public static int bppFromDepth(int depth)
{
return videoBppFromDepth(depth);
}
public void allocateBuffer()
{
videoAllocateBuffer(VisVideo);
}
@Override
public void finalize()
{
videoUnref(VisVideo);
}
}