diff options
author | Gwenole Beauchesne <gwenole.beauchesne@intel.com> | 2011-08-12 10:21:19 +0200 |
---|---|---|
committer | Gwenole Beauchesne <gwenole.beauchesne@intel.com> | 2012-01-16 11:40:50 +0100 |
commit | 8f0eda896440812820b8e206edaf999e1c92e8f2 (patch) | |
tree | eab7efb0aca3a40c6916939db162535fbeae190d /tests/test-decode.c | |
parent | 3360f7f3e369bc28c4c39c153b052c9ff8d2305d (diff) | |
download | gst-vaapi-8f0eda896440812820b8e206edaf999e1c92e8f2.tar.gz |
Allow conditional build of GStreamer/FFmpeg bitstream parsers.
Diffstat (limited to 'tests/test-decode.c')
-rw-r--r-- | tests/test-decode.c | 34 |
1 files changed, 31 insertions, 3 deletions
diff --git a/tests/test-decode.c b/tests/test-decode.c index 0aece942..67b00db9 100644 --- a/tests/test-decode.c +++ b/tests/test-decode.c @@ -19,16 +19,22 @@ * Boston, MA 02110-1301 USA */ +#include "config.h" #include <string.h> #include <gst/vaapi/gstvaapidisplay_x11.h> #include <gst/vaapi/gstvaapiwindow_x11.h> #include <gst/vaapi/gstvaapidecoder.h> -#include <gst/vaapi/gstvaapidecoder_ffmpeg.h> #include <gst/vaapi/gstvaapisurface.h> #include "test-mpeg2.h" #include "test-h264.h" #include "test-vc1.h" +#if USE_FFMPEG +# include <gst/vaapi/gstvaapidecoder_ffmpeg.h> +#endif +#if USE_CODEC_PARSERS +#endif + /* Set to 1 to check display cache works (shared VA display) */ #define CHECK_DISPLAY_CACHE 1 @@ -66,12 +72,21 @@ static inline void pause(void) } static gchar *g_codec_str; +static gboolean g_use_ffmpeg = FALSE; static GOptionEntry g_options[] = { { "codec", 'c', 0, G_OPTION_ARG_STRING, &g_codec_str, "codec to test", NULL }, + { "ffmpeg", 0, + 0, + G_OPTION_ARG_NONE, &g_use_ffmpeg, + "use ffmpeg", NULL }, + { "codecparsers", 0, + G_OPTION_FLAG_REVERSE, + G_OPTION_ARG_NONE, &g_use_ffmpeg, + "use codec parsers", NULL }, { NULL, } }; @@ -137,9 +152,22 @@ main(int argc, char *argv[]) NULL ); - decoder = gst_vaapi_decoder_ffmpeg_new(display, decoder_caps); + if (g_use_ffmpeg) { +#if USE_FFMPEG + decoder = gst_vaapi_decoder_ffmpeg_new(display, decoder_caps); +#endif + } + else { +#if USE_CODEC_PARSERS + switch (gst_vaapi_profile_get_codec(info.profile)) { + default: + decoder = NULL; + break; + } +#endif + } if (!decoder) - g_error("could not create FFmpeg decoder"); + g_error("could not create decoder"); gst_caps_unref(decoder_caps); buffer = gst_buffer_new(); |