shithub: libvpx

Download patch

ref: 0afcc7697120e5197a03b8129dc9a4ed0de56a8e
parent: b2d9700f5313770957878fa36f9971c367f479df
author: Attila Nagy <attilanagy@google.com>
date: Wed Jul 20 10:09:42 EDT 2011

encoder: don't set the fragment bit for the last partition

Change-Id: Icb4e4f0d7c3074a8507852178be87541a1cb5bac

--- a/vp8/vp8_cx_iface.c
+++ b/vp8/vp8_cx_iface.c
@@ -806,6 +806,9 @@
                     int i;
                     const int num_partitions =
                             (1 << cpi->common.multi_token_partition) + 1;
+
+                    pkt.data.frame.flags |= VPX_FRAME_IS_FRAGMENT;
+
                     for (i = 0; i < num_partitions; ++i)
                     {
                         pkt.data.frame.buf = cx_data;
@@ -812,8 +815,8 @@
                         pkt.data.frame.sz = cpi->partition_sz[i];
                         pkt.data.frame.partition_id = i;
                         /* don't set the fragment bit for the last partition */
-                        if (i < num_partitions - 1)
-                            pkt.data.frame.flags |= VPX_FRAME_IS_FRAGMENT;
+                        if (i == (num_partitions - 1))
+                            pkt.data.frame.flags &= ~VPX_FRAME_IS_FRAGMENT;
                         vpx_codec_pkt_list_add(&ctx->pkt_list.head, &pkt);
                         cx_data += cpi->partition_sz[i];
                         cx_data_sz -= cpi->partition_sz[i];