Skip to content
Projects
Groups
Snippets
Help
Loading...
Help
Support
Keyboard shortcuts
?
Submit feedback
Contribute to GitLab
Sign in
Toggle navigation
V
vlc-1.1
Project overview
Project overview
Details
Activity
Releases
Repository
Repository
Files
Commits
Branches
Tags
Contributors
Graph
Compare
Issues
0
Issues
0
List
Boards
Labels
Milestones
Redmine
Redmine
Merge Requests
0
Merge Requests
0
CI / CD
CI / CD
Pipelines
Jobs
Schedules
Operations
Operations
Metrics
Environments
Analytics
Analytics
CI / CD
Repository
Value Stream
Wiki
Wiki
Snippets
Snippets
Members
Members
Collapse sidebar
Close sidebar
Activity
Graph
Create a new issue
Jobs
Commits
Issue Boards
Open sidebar
videolan
vlc-1.1
Commits
72f3bf6b
Commit
72f3bf6b
authored
Apr 03, 2006
by
Filippo Carone
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
audio / video libvlc functions binded.
parent
fcd621cc
Changes
2
Show whitespace changes
Inline
Side-by-side
Showing
2 changed files
with
419 additions
and
150 deletions
+419
-150
bindings/java/org/videolan/jvlc/JVLC.java
bindings/java/org/videolan/jvlc/JVLC.java
+71
-35
bindings/java/vlc-libvlc-jni.cc
bindings/java/vlc-libvlc-jni.cc
+348
-115
No files found.
bindings/java/org/videolan/jvlc/JVLC.java
View file @
72f3bf6b
/*****************************************************************************
/*****************************************************************************
* JVLC.java: Main Java Class, represents a libvlc_instance_t object
* JVLC.java: Main Java Class, represents a libvlc_instance_t object
*****************************************************************************
*****************************************************************************
*
* Copyright (C) 1998-2006 the VideoLAN team
* Copyright (C) 1998-2006 the VideoLAN team
*
*
*
$Id$
*
Author: Filippo Carone <filippo@carone.org>
*
*
*
Authors: Filippo Carone <filippo@carone.org>
*
Created on 28-feb-2006
*
*
* This program is free software; you can redistribute it and/or modify
* $Id$
* it under the terms of the GNU General Public License as published by
* the Free Software Foundation; either version 2 of the License, or
* (at your option) any later version.
*
*
* This program is
distributed in the hope that it will be useful,
* This program is
free software; you can redistribute it
*
but WITHOUT ANY WARRANTY; without even the implied warranty of
*
and/or modify it under the terms of the GNU General Public License
*
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See
the
*
as published by the Free Software Foundation; either version 2 of
the
*
GNU General Public License for more details
.
*
License, or (at your option) any later version
.
*
*
* You should have received a copy of the GNU General Public License
* This program is distributed in the hope that it will be useful, but
* along with this program; if not, write to the Free Software
* WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
* General Public License for more details.
*
* You should have received a copy of the GNU General Public
* License along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston MA 02110-1301, USA.
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston MA 02110-1301, USA.
*****************************************************************************/
*
*/
/**
* @author Filippo Carone <filippo@carone.org>
*/
package
org.videolan.jvlc
;
package
org.videolan.jvlc
;
public
class
JVLC
implements
JLibVLC
{
public
class
JVLC
implements
JLibVLC
{
static
{
static
{
System
.
load
(
System
.
getProperty
(
"user.dir"
)
+
"/libjvlc.so"
);
System
.
load
(
System
.
getProperty
(
"user.dir"
)
+
"/libjvlc.so"
);
}
}
...
@@ -36,50 +43,72 @@ public class JVLC implements JLibVLC {
...
@@ -36,50 +43,72 @@ public class JVLC implements JLibVLC {
public
JVLC
()
{
public
JVLC
()
{
_instance
=
createInstance
();
_instance
=
createInstance
();
playlist
=
new
Playlist
(
_instance
);
playlist
=
new
Playlist
(
_instance
);
}
}
public
JVLC
(
String
[]
args
)
{
public
JVLC
(
String
[]
args
)
{
_instance
=
createInstance
(
args
);
_instance
=
createInstance
(
args
);
playlist
=
new
Playlist
(
_instance
);
playlist
=
new
Playlist
(
_instance
);
}
}
/*
* Core methods
*/
private
native
long
createInstance
();
private
native
long
createInstance
();
private
native
long
createInstance
(
String
[]
args
);
private
native
long
createInstance
(
String
[]
args
);
public
void
getMute
()
{
/*
* Audio native methods
*/
private
native
boolean
_getMute
();
private
native
void
_setMute
(
boolean
value
);
private
native
void
_toggleMute
();
private
native
int
_getVolume
();
private
native
void
_setVolume
(
int
volume
);
/*
* Video native methods
*/
private
native
void
_toggleFullscreen
();
private
native
void
_setFullscreen
(
boolean
value
);
private
native
boolean
_getFullscreen
();
public
boolean
getMute
()
{
// TODO Auto-generated method stub
// TODO Auto-generated method stub
return
_getMute
();
}
}
public
void
setMute
()
{
public
void
setMute
(
boolean
value
)
{
// TODO Auto-generated method stub
_setMute
(
value
);
}
}
public
void
getVolume
()
{
public
void
toggleMute
()
{
// TODO Auto-generated method stub
_toggleMute
();
}
public
int
getVolume
()
{
return
_getVolume
();
}
}
public
void
setVolume
()
{
public
void
setVolume
(
int
volume
)
{
// TODO Auto-generated method stub
_setVolume
(
volume
);
}
}
public
void
toggleFullscreen
()
{
public
void
toggleFullscreen
()
{
// TODO Auto-generated method stub
_toggleFullscreen
();
}
}
public
void
setFullscreen
()
{
public
void
setFullscreen
(
boolean
value
)
{
// TODO Auto-generated method stub
_setFullscreen
(
value
);
}
}
public
void
getFullscreen
()
{
public
boolean
getFullscreen
()
{
// TODO Auto-generated method stub
return
_getFullscreen
();
}
}
public
void
getLength
()
{
public
void
getLength
()
{
...
@@ -111,4 +140,11 @@ public class JVLC implements JLibVLC {
...
@@ -111,4 +140,11 @@ public class JVLC implements JLibVLC {
return
_instance
;
return
_instance
;
}
}
/*
* Getters and setters
*/
public
Playlist
getPlaylist
()
{
return
playlist
;
}
}
}
bindings/java/vlc-libvlc-jni.cc
View file @
72f3bf6b
/*****************************************************************************
/*****************************************************************************
* JVLC.java: JNI interface for vlc Java Bindings
* JVLC.java: JNI interface for vlc Java Bindings
*****************************************************************************
*****************************************************************************
* Copyright (C) 1998-2005 the VideoLAN team
* Copyright (C) 1998-2006 the VideoLAN team
*
* $Id$
*
*
* Authors: Filippo Carone <filippo@carone.org>
* Authors: Filippo Carone <filippo@carone.org>
*
*
* $Id$
*
* This program is free software; you can redistribute it and/or modify
* This program is free software; you can redistribute it and/or modify
* it under the terms of the GNU General Public License as published by
* it under the terms of the GNU General Public License as published by
* the Free Software Foundation; either version 2 of the License, or
* the Free Software Foundation; either version 2 of the License, or
...
@@ -40,16 +40,22 @@ jlong getPlaylistInstance (JNIEnv *env, jobject _this);
...
@@ -40,16 +40,22 @@ jlong getPlaylistInstance (JNIEnv *env, jobject _this);
JNIEXPORT
jlong
JNICALL
Java_org_videolan_jvlc_JVLC_createInstance__
(
JNIEnv
*
env
,
jobject
_this
)
{
JNIEXPORT
jlong
JNICALL
Java_org_videolan_jvlc_JVLC_createInstance__
(
JNIEnv
*
env
,
jobject
_this
)
{
// res is the pointer to libvlc_instance_t
long
res
;
long
res
;
libvlc_exception_t
*
exception
=
(
libvlc_exception_t
*
)
malloc
(
sizeof
(
libvlc_exception_t
));
libvlc_exception_t
*
exception
=
(
libvlc_exception_t
*
)
malloc
(
sizeof
(
libvlc_exception_t
));
libvlc_exception_init
(
exception
);
libvlc_exception_init
(
exception
);
res
=
(
long
)
libvlc_new
(
0
,
NULL
,
exception
);
res
=
(
long
)
libvlc_new
(
0
,
NULL
,
exception
);
if
(
libvlc_exception_raised
(
exception
))
{
///\TODO: raise java exception
printf
(
"%s
\n
"
,
libvlc_exception_get_message
(
exception
));
}
free
(
exception
);
free
(
exception
);
return
res
;
return
res
;
}
}
JNIEXPORT
jlong
JNICALL
Java_org_videolan_jvlc_JVLC_createInstance___3Ljava_lang_String_2
(
JNIEnv
*
env
,
jobject
_this
,
jobjectArray
args
)
{
JNIEXPORT
jlong
JNICALL
Java_org_videolan_jvlc_JVLC_createInstance___3Ljava_lang_String_2
(
JNIEnv
*
env
,
jobject
_this
,
jobjectArray
args
)
{
...
@@ -79,6 +85,233 @@ JNIEXPORT jlong JNICALL Java_org_videolan_jvlc_JVLC_createInstance___3Ljava_lang
...
@@ -79,6 +85,233 @@ JNIEXPORT jlong JNICALL Java_org_videolan_jvlc_JVLC_createInstance___3Ljava_lang
}
}
/*
* Audio native functions
*/
JNIEXPORT
jboolean
JNICALL
Java_org_videolan_jvlc_JVLC__1getMute
(
JNIEnv
*
env
,
jobject
_this
)
{
// res is the final result
jboolean
res
;
long
instance
=
0
;
libvlc_exception_t
*
exception
=
(
libvlc_exception_t
*
)
malloc
(
sizeof
(
libvlc_exception_t
));
libvlc_exception_init
(
exception
);
instance
=
getPlaylistInstance
(
env
,
_this
);
res
=
(
jboolean
)
libvlc_audio_get_mute
(
(
libvlc_instance_t
*
)
instance
,
exception
);
if
(
libvlc_exception_raised
(
exception
))
{
///\TODO: raise java exception
printf
(
"%s
\n
"
,
libvlc_exception_get_message
(
exception
));
}
free
(
exception
);
return
res
;
}
JNIEXPORT
void
JNICALL
Java_org_videolan_jvlc_JVLC__1setMute
(
JNIEnv
*
env
,
jobject
_this
,
jboolean
value
)
{
long
instance
=
0
;
libvlc_exception_t
*
exception
=
(
libvlc_exception_t
*
)
malloc
(
sizeof
(
libvlc_exception_t
));
libvlc_exception_init
(
exception
);
instance
=
getPlaylistInstance
(
env
,
_this
);
libvlc_audio_set_mute
(
(
libvlc_instance_t
*
)
instance
,
value
,
exception
);
if
(
libvlc_exception_raised
(
exception
))
{
///\TODO: raise java exception
printf
(
"%s
\n
"
,
libvlc_exception_get_message
(
exception
));
}
free
(
exception
);
}
JNIEXPORT
void
JNICALL
Java_org_videolan_jvlc_JVLC__1toggleMute
(
JNIEnv
*
env
,
jobject
_this
)
{
long
instance
=
0
;
libvlc_exception_t
*
exception
=
(
libvlc_exception_t
*
)
malloc
(
sizeof
(
libvlc_exception_t
));
libvlc_exception_init
(
exception
);
instance
=
getPlaylistInstance
(
env
,
_this
);
///\TODO: NO, this is not what we want.
libvlc_audio_get_mute
(
(
libvlc_instance_t
*
)
instance
,
exception
);
if
(
libvlc_exception_raised
(
exception
))
{
///\TODO: raise java exception
printf
(
"%s
\n
"
,
libvlc_exception_get_message
(
exception
));
}
free
(
exception
);
}
JNIEXPORT
jint
JNICALL
Java_org_videolan_jvlc_JVLC__1getVolume
(
JNIEnv
*
env
,
jobject
_this
)
{
// res is the final result
jboolean
res
;
long
instance
=
0
;
libvlc_exception_t
*
exception
=
(
libvlc_exception_t
*
)
malloc
(
sizeof
(
libvlc_exception_t
));
libvlc_exception_init
(
exception
);
instance
=
getPlaylistInstance
(
env
,
_this
);
res
=
(
jboolean
)
libvlc_audio_get_mute
(
(
libvlc_instance_t
*
)
instance
,
exception
);
if
(
libvlc_exception_raised
(
exception
))
{
///\TODO: raise java exception
printf
(
"%s
\n
"
,
libvlc_exception_get_message
(
exception
));
}
free
(
exception
);
return
res
;
}
JNIEXPORT
jint
JNICALL
Java_org_videolan_jvlc_JVLC__1getVolume
(
JNIEnv
*
env
,
jobject
_this
,
jboolean
value
)
{
jint
res
=
0
;
long
instance
=
0
;
libvlc_exception_t
*
exception
=
(
libvlc_exception_t
*
)
malloc
(
sizeof
(
libvlc_exception_t
));
libvlc_exception_init
(
exception
);
instance
=
getPlaylistInstance
(
env
,
_this
);
res
=
libvlc_audio_get_volume
(
(
libvlc_instance_t
*
)
instance
,
exception
);
if
(
libvlc_exception_raised
(
exception
))
{
///\TODO: raise java exception
printf
(
"%s
\n
"
,
libvlc_exception_get_message
(
exception
));
}
free
(
exception
);
return
res
;
}
JNIEXPORT
void
JNICALL
Java_org_videolan_jvlc_JVLC__1setVolume
(
JNIEnv
*
env
,
jobject
_this
,
jint
volume
)
{
long
instance
=
0
;
libvlc_exception_t
*
exception
=
(
libvlc_exception_t
*
)
malloc
(
sizeof
(
libvlc_exception_t
));
libvlc_exception_init
(
exception
);
instance
=
getPlaylistInstance
(
env
,
_this
);
libvlc_audio_set_volume
(
(
libvlc_instance_t
*
)
instance
,
volume
,
exception
);
if
(
libvlc_exception_raised
(
exception
))
{
///\TODO: raise java exception
printf
(
"%s
\n
"
,
libvlc_exception_get_message
(
exception
));
}
free
(
exception
);
}
/*
* Video native functions
*/
JNIEXPORT
void
JNICALL
Java_org_videolan_jvlc_JVLC__1toggleFullscreen
(
JNIEnv
*
env
,
jobject
_this
)
{
long
instance
=
0
;
libvlc_input_t
*
input
;
libvlc_exception_t
*
exception
=
(
libvlc_exception_t
*
)
malloc
(
sizeof
(
libvlc_exception_t
));
libvlc_exception_init
(
exception
);
instance
=
getPlaylistInstance
(
env
,
_this
);
input
=
libvlc_playlist_get_input
(
(
libvlc_instance_t
*
)
instance
,
exception
);
libvlc_toggle_fullscreen
(
input
,
exception
);
if
(
libvlc_exception_raised
(
exception
))
{
///\TODO: raise java exception
printf
(
"%s
\n
"
,
libvlc_exception_get_message
(
exception
));
}
free
(
exception
);
}
JNIEXPORT
void
JNICALL
Java_org_videolan_jvlc_JVLC__1setFullscreen
(
JNIEnv
*
env
,
jobject
_this
,
jboolean
value
)
{
long
instance
=
0
;
libvlc_input_t
*
input
;
libvlc_exception_t
*
exception
=
(
libvlc_exception_t
*
)
malloc
(
sizeof
(
libvlc_exception_t
));
libvlc_exception_init
(
exception
);
instance
=
getPlaylistInstance
(
env
,
_this
);
input
=
libvlc_playlist_get_input
(
(
libvlc_instance_t
*
)
instance
,
exception
);
libvlc_set_fullscreen
(
input
,
value
,
exception
);
if
(
libvlc_exception_raised
(
exception
))
{
///\TODO: raise java exception
printf
(
"%s
\n
"
,
libvlc_exception_get_message
(
exception
));
}
free
(
exception
);
}
JNIEXPORT
jboolean
JNICALL
Java_org_videolan_jvlc_JVLC__1getFullscreen
(
JNIEnv
*
env
,
jobject
_this
)
{
int
res
=
0
;
libvlc_input_t
*
input
;
long
instance
=
0
;
libvlc_exception_t
*
exception
=
(
libvlc_exception_t
*
)
malloc
(
sizeof
(
libvlc_exception_t
));
libvlc_exception_init
(
exception
);
instance
=
getPlaylistInstance
(
env
,
_this
);
input
=
libvlc_playlist_get_input
(
(
libvlc_instance_t
*
)
instance
,
exception
);
res
=
libvlc_get_fullscreen
(
input
,
exception
);
if
(
libvlc_exception_raised
(
exception
))
{
///\TODO: raise java exception
printf
(
"%s
\n
"
,
libvlc_exception_get_message
(
exception
));
}
free
(
exception
);
return
res
;
}
/*
/*
* Playlist native functions
* Playlist native functions
...
...
Write
Preview
Markdown
is supported
0%
Try again
or
attach a new file
Attach a file
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Cancel
Please
register
or
sign in
to comment