summaryrefslogtreecommitdiffstats
path: root/src/gallium/state_trackers/vdpau/decode.c
diff options
context:
space:
mode:
authorChristian König <christian.koenig@amd.com>2013-09-09 03:58:53 -0600
committerChristian König <christian.koenig@amd.com>2013-09-25 10:58:58 +0200
commit34b5a4e0d867760bd51042d1a751b8a8aeba1150 (patch)
tree35a56b88cc38e56308bf715658e640e03fab2448 /src/gallium/state_trackers/vdpau/decode.c
parenteb1cb253b7d621d1c24c7c942a244932209db7fd (diff)
downloadexternal_mesa3d-34b5a4e0d867760bd51042d1a751b8a8aeba1150.zip
external_mesa3d-34b5a4e0d867760bd51042d1a751b8a8aeba1150.tar.gz
external_mesa3d-34b5a4e0d867760bd51042d1a751b8a8aeba1150.tar.bz2
st/vdpau: use new vlc function to serach for VC-1 start codes
Signed-off-by: Christian König <christian.koenig@amd.com>
Diffstat (limited to 'src/gallium/state_trackers/vdpau/decode.c')
-rw-r--r--src/gallium/state_trackers/vdpau/decode.c3
1 files changed, 1 insertions, 2 deletions
diff --git a/src/gallium/state_trackers/vdpau/decode.c b/src/gallium/state_trackers/vdpau/decode.c
index b144b83..e884fb2 100644
--- a/src/gallium/state_trackers/vdpau/decode.c
+++ b/src/gallium/state_trackers/vdpau/decode.c
@@ -410,14 +410,13 @@ vlVdpDecoderFixVC1Startcode(uint32_t *num_buffers, const void *buffers[], unsign
/* search the first 64 bytes for a startcode */
vl_vlc_init(&vlc, *num_buffers, buffers, sizes);
- for (i = 0; i < 64 && vl_vlc_bits_left(&vlc) >= 32; ++i) {
+ while (vl_vlc_search_byte(&vlc, 64*8, 0x00) && vl_vlc_bits_left(&vlc) >= 32) {
uint32_t value = vl_vlc_peekbits(&vlc, 32);
if (value == 0x0000010D ||
value == 0x0000010C ||
value == 0x0000010B)
return;
vl_vlc_eatbits(&vlc, 8);
- vl_vlc_fillbits(&vlc);
}
/* none found, ok add one manually */