summaryrefslogtreecommitdiffstats
path: root/src/jogl/native/libav/ffmpeg_static.c
diff options
context:
space:
mode:
authorSven Gothel <[email protected]>2013-08-29 22:46:57 +0200
committerSven Gothel <[email protected]>2013-08-29 22:46:57 +0200
commiteca6a5cb1e2beda84dfbafc31ed225e272f4f3fb (patch)
treec77750eac39a611bbc46b77f64e5ae5c123e9427 /src/jogl/native/libav/ffmpeg_static.c
parent9bf14f3c6bf98bd86913bec6e7feb54537f9b7d3 (diff)
Enhance GLMediaPlayer: Full FFMPeg support, 'dshow' camera support on windows, 2 more pixel formats, fail-safe data handling
- add support for ffmpeg 2 / libav 10 -> lavc55_lavf55_lavu52_lavr01 - add support for ffmpeg libswresample (similar to libavresample) - handle BGRA (GL type) and BGR24 (texture shader) - Change Camera URI semantics, drop 'host' and use 'path' for camera ID and use 'query' for options. - add support for Window's DShow camera selection - our camera id -> index of list of video-input devices, this gives us same behavior as w/ Linux - requires windows libs: strmiids, uuid, ole32, oleaut32 - Compiles w/ MingW64, works w/ libav/ffmpeg - TODO: test compilation w/ MingW 32bit ! - don't push data to texture if (linesize <= 0) this may happen due to buggy decoder / setup .. Tested manually on GNU/Linux x64 and Windows x64: - GNU/Linux libav 0.8, libav 9, libav 10, ffmpeg 1.2, ffmpeg 2.0 - Windows libav 0.8, libav 9, ffmpeg 2.0 - videos and camera
Diffstat (limited to 'src/jogl/native/libav/ffmpeg_static.c')
-rw-r--r--src/jogl/native/libav/ffmpeg_static.c32
1 files changed, 1 insertions, 31 deletions
diff --git a/src/jogl/native/libav/ffmpeg_static.c b/src/jogl/native/libav/ffmpeg_static.c
index 171dda6a7..f079ee841 100644
--- a/src/jogl/native/libav/ffmpeg_static.c
+++ b/src/jogl/native/libav/ffmpeg_static.c
@@ -28,9 +28,6 @@
#ifdef _WIN32
#include <windows.h>
- // __declspec(dllimport) void __stdcall Sleep(unsigned long dwMilliseconds);
-
- #define usleep(t) Sleep((t) / 1000)
#endif
#include <gluegen_stdint.h>
@@ -46,34 +43,7 @@
typedef unsigned (APIENTRYP AV_GET_VERSION)(void);
-JNIEXPORT jint JNICALL Java_jogamp_opengl_util_av_impl_FFMPEGStaticNatives_getAvUtilVersion0
- (JNIEnv *env, jclass clazz, jlong func) {
- if( 0 != func ) {
- return (jint) ((AV_GET_VERSION)func)();
- } else {
- return 0;
- }
-}
-
-JNIEXPORT jint JNICALL Java_jogamp_opengl_util_av_impl_FFMPEGStaticNatives_getAvFormatVersion0
- (JNIEnv *env, jclass clazz, jlong func) {
- if( 0 != func ) {
- return (jint) ((AV_GET_VERSION)func)();
- } else {
- return 0;
- }
-}
-
-JNIEXPORT jint JNICALL Java_jogamp_opengl_util_av_impl_FFMPEGStaticNatives_getAvCodecVersion0
- (JNIEnv *env, jclass clazz, jlong func) {
- if( 0 != func ) {
- return (jint) ((AV_GET_VERSION)func)();
- } else {
- return 0;
- }
-}
-
-JNIEXPORT jint JNICALL Java_jogamp_opengl_util_av_impl_FFMPEGStaticNatives_getAvResampleVersion0
+JNIEXPORT jint JNICALL Java_jogamp_opengl_util_av_impl_FFMPEGStaticNatives_getAvVersion0
(JNIEnv *env, jclass clazz, jlong func) {
if( 0 != func ) {
return (jint) ((AV_GET_VERSION)func)();