Fix decoder caps to report codec aliases.

This commit is contained in:
gb 2010-05-16 21:17:49 +00:00 committed by Gwenole Beauchesne
parent adfed50a90
commit fa6385cd39
3 changed files with 19 additions and 10 deletions

1
NEWS
View file

@ -3,6 +3,7 @@ Copyright (C) 2010 Splitted-Desktop Systems
Version 0.2.3 - DD.May.2010
* Fix memory leak of encoded buffers
* Fix decoder caps to report codec aliases
* Fix VC-1 decoding through the playbin2 pipeline
Version 0.2.2 - 14.May.2010

1
README
View file

@ -71,4 +71,3 @@ Caveats
-------
* No ad-hoc parser, vaapidecoder currently relies on FFmpeg
* MPEG-4 Part-2 (DivX) has decoding bugs

View file

@ -285,18 +285,27 @@ gst_vaapi_profile_get_va_profile(GstVaapiProfile profile)
GstCaps *
gst_vaapi_profile_get_caps(GstVaapiProfile profile)
{
const GstVaapiProfileMap * const m = get_profiles_map(profile);
GstCaps *caps;
const GstVaapiProfileMap *m;
GstCaps *out_caps, *caps;
if (!m)
out_caps = gst_caps_new_empty();
if (!out_caps)
return NULL;
for (m = gst_vaapi_profiles; m->profile; m++) {
if (m->profile != profile)
continue;
caps = gst_caps_from_string(m->caps_str);
if (!caps)
return NULL;
gst_caps_set_simple(caps, "profile", G_TYPE_STRING, m->profile_str, NULL);
return caps;
continue;
gst_caps_set_simple(
caps,
"profile", G_TYPE_STRING, m->profile_str,
NULL
);
gst_caps_merge(out_caps, caps);
}
return out_caps;
}
/**