summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorLeo Liu <[email protected]>2016-08-22 12:05:53 -0400
committerLeo Liu <[email protected]>2016-08-24 11:17:16 -0400
commit5277f25480a290b02c7bfe548c56288fce8404b5 (patch)
treea5f267e346d1b0d640fc310917595c77ad12267f
parent2c13abb49137d0f81b530b3c67f1ed79c58c796e (diff)
vl/rbsp: fix another three byte not detected
This happens when three byte "00 00 03" is partly loaded to vlc->buffer, thus at the bottom of buffer with valid bits is "00" or "00 00" and left like "00 03" or "03" in the data, so that it will not be detected by three byte emulation check. The reason for that is the escaped bit was set to 0 from the rbsp init. Signed-off-by: Leo Liu <[email protected]> Acked-by: Christian König <[email protected]>
-rw-r--r--src/gallium/auxiliary/vl/vl_rbsp.h2
1 files changed, 1 insertions, 1 deletions
diff --git a/src/gallium/auxiliary/vl/vl_rbsp.h b/src/gallium/auxiliary/vl/vl_rbsp.h
index c8bebff4de6..160b2f82773 100644
--- a/src/gallium/auxiliary/vl/vl_rbsp.h
+++ b/src/gallium/auxiliary/vl/vl_rbsp.h
@@ -56,7 +56,7 @@ static inline void vl_rbsp_init(struct vl_rbsp *rbsp, struct vl_vlc *nal, unsign
/* copy the position */
rbsp->nal = *nal;
- rbsp->escaped = 0;
+ rbsp->escaped = 16;
/* search for the end of the NAL unit */
while (vl_vlc_search_byte(nal, num_bits, 0x00)) {