Commit 46814a09 authored by Thomas Guillem's avatar Thomas Guillem Committed by Jean-Baptiste Kempf

nativewindowpriv: add is_hw arg in setup

Signed-off-by: default avatarJean-Baptiste Kempf <jb@videolan.org>
parent 4c32c10f
...@@ -2223,6 +2223,7 @@ static int HwBuffer_AllocateBuffers( decoder_t *p_dec, OmxPort *p_port ) ...@@ -2223,6 +2223,7 @@ static int HwBuffer_AllocateBuffers( decoder_t *p_dec, OmxPort *p_port )
def->format.video.nFrameWidth, def->format.video.nFrameWidth,
def->format.video.nFrameHeight, def->format.video.nFrameHeight,
colorFormat, colorFormat,
true,
(int) i_hw_usage ) != 0 ) (int) i_hw_usage ) != 0 )
{ {
msg_Err( p_dec, "can't setup OMXHWBuffer" ); msg_Err( p_dec, "can't setup OMXHWBuffer" );
......
...@@ -27,6 +27,7 @@ ...@@ -27,6 +27,7 @@
#include <errno.h> #include <errno.h>
#include <stdio.h> #include <stdio.h>
#include <stdlib.h> #include <stdlib.h>
#include <stdbool.h>
#if ANDROID_API <= 13 #if ANDROID_API <= 13
#include <ui/android_native_buffer.h> #include <ui/android_native_buffer.h>
...@@ -113,7 +114,7 @@ int ANativeWindowPriv_disconnect( native_window_priv *priv ) ...@@ -113,7 +114,7 @@ int ANativeWindowPriv_disconnect( native_window_priv *priv )
return 0; return 0;
} }
int ANativeWindowPriv_setup( native_window_priv *priv, int w, int h, int hal_format, int hw_usage ) int ANativeWindowPriv_setup( native_window_priv *priv, int w, int h, int hal_format, bool is_hw, int hw_usage )
{ {
int usage = 0; int usage = 0;
status_t err; status_t err;
...@@ -121,7 +122,10 @@ int ANativeWindowPriv_setup( native_window_priv *priv, int w, int h, int hal_for ...@@ -121,7 +122,10 @@ int ANativeWindowPriv_setup( native_window_priv *priv, int w, int h, int hal_for
LOGD( "setup: %p, %d, %d, %X, %X\n", LOGD( "setup: %p, %d, %d, %X, %X\n",
priv->anw, w, h, hal_format, hw_usage ); priv->anw, w, h, hal_format, hw_usage );
usage |= hw_usage | GRALLOC_USAGE_HW_RENDER | GRALLOC_USAGE_HW_TEXTURE; if (is_hw)
usage = hw_usage | GRALLOC_USAGE_HW_RENDER | GRALLOC_USAGE_HW_TEXTURE;
else
usage= GRALLOC_USAGE_SW_READ_NEVER | GRALLOC_USAGE_SW_WRITE_OFTEN;
#if ANDROID_API >= 11 #if ANDROID_API >= 11
usage |= GRALLOC_USAGE_EXTERNAL_DISP; usage |= GRALLOC_USAGE_EXTERNAL_DISP;
#endif #endif
......
...@@ -54,7 +54,7 @@ void Manage(vout_display_t *); ...@@ -54,7 +54,7 @@ void Manage(vout_display_t *);
typedef struct native_window_priv native_window_priv; typedef struct native_window_priv native_window_priv;
typedef native_window_priv *(*ptr_ANativeWindowPriv_connect) (void *); typedef native_window_priv *(*ptr_ANativeWindowPriv_connect) (void *);
typedef int (*ptr_ANativeWindowPriv_disconnect) (native_window_priv *); typedef int (*ptr_ANativeWindowPriv_disconnect) (native_window_priv *);
typedef int (*ptr_ANativeWindowPriv_setup) (native_window_priv *, int, int, int, int ); typedef int (*ptr_ANativeWindowPriv_setup) (native_window_priv *, int, int, int, bool, int );
typedef int (*ptr_ANativeWindowPriv_getMinUndequeued) (native_window_priv *, unsigned int *); typedef int (*ptr_ANativeWindowPriv_getMinUndequeued) (native_window_priv *, unsigned int *);
typedef int (*ptr_ANativeWindowPriv_setBufferCount) (native_window_priv *, unsigned int ); typedef int (*ptr_ANativeWindowPriv_setBufferCount) (native_window_priv *, unsigned int );
typedef int (*ptr_ANativeWindowPriv_setCrop) (native_window_priv *, int, int, int, int); typedef int (*ptr_ANativeWindowPriv_setCrop) (native_window_priv *, int, int, int, int);
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment