Add HEVC decoder
[ffmpeg.git] / libavcodec / cabac_functions.h
index afc7c98..11c9646 100644 (file)
@@ -162,4 +162,24 @@ static int av_unused get_cabac_terminate(CABACContext *c){
     }
 }
 
     }
 }
 
+/**
+ * Skip @p n bytes and reset the decoder.
+ * @return the address of the first skipped byte or NULL if there's less than @p n bytes left
+ */
+static av_unused const uint8_t* skip_bytes(CABACContext *c, int n) {
+    const uint8_t *ptr = c->bytestream;
+
+    if (c->low & 0x1)
+        ptr--;
+#if CABAC_BITS == 16
+    if (c->low & 0x1FF)
+        ptr--;
+#endif
+    if ((int) (c->bytestream_end - ptr) < n)
+        return NULL;
+    ff_init_cabac_decoder(c, ptr + n, c->bytestream_end - ptr - n);
+
+    return ptr;
+}
+
 #endif /* AVCODEC_CABAC_FUNCTIONS_H */
 #endif /* AVCODEC_CABAC_FUNCTIONS_H */