You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@trafficserver.apache.org by so...@apache.org on 2015/06/13 17:51:36 UTC

[3/3] trafficserver git commit: TS-3282: Add to CHANGES and clang-format

TS-3282: Add to CHANGES and clang-format


Project: http://git-wip-us.apache.org/repos/asf/trafficserver/repo
Commit: http://git-wip-us.apache.org/repos/asf/trafficserver/commit/2c3f8790
Tree: http://git-wip-us.apache.org/repos/asf/trafficserver/tree/2c3f8790
Diff: http://git-wip-us.apache.org/repos/asf/trafficserver/diff/2c3f8790

Branch: refs/heads/master
Commit: 2c3f87907131ff21bb1831acd12901b57003696d
Parents: a0ab302
Author: Phil Sorber <so...@apache.org>
Authored: Sat Jun 13 09:50:51 2015 -0600
Committer: Phil Sorber <so...@apache.org>
Committed: Sat Jun 13 09:50:51 2015 -0600

----------------------------------------------------------------------
 CHANGES                               |   2 +
 plugins/experimental/mp4/mp4.cc       | 172 ++++-----
 plugins/experimental/mp4/mp4_common.h |  48 ++-
 plugins/experimental/mp4/mp4_meta.cc  | 552 +++++++++++++--------------
 plugins/experimental/mp4/mp4_meta.h   | 582 ++++++++++++++---------------
 5 files changed, 641 insertions(+), 715 deletions(-)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/trafficserver/blob/2c3f8790/CHANGES
----------------------------------------------------------------------
diff --git a/CHANGES b/CHANGES
index 0ac270c..bfe7985 100644
--- a/CHANGES
+++ b/CHANGES
@@ -1,6 +1,8 @@
                                                          -*- coding: utf-8 -*-
 Changes with Apache Traffic Server 6.0.0
 
+  *) [TS-3282] Add mp4 streaming plugin.
+
   *) [TS-3477] Change the default thread affinity to 1 (NUMA node).
 
   *) [TS-481] Remove proxy.config.url_remap.url_remap_mode config.

http://git-wip-us.apache.org/repos/asf/trafficserver/blob/2c3f8790/plugins/experimental/mp4/mp4.cc
----------------------------------------------------------------------
diff --git a/plugins/experimental/mp4/mp4.cc b/plugins/experimental/mp4/mp4.cc
index fcd5a6b..706977e 100644
--- a/plugins/experimental/mp4/mp4.cc
+++ b/plugins/experimental/mp4/mp4.cc
@@ -19,7 +19,7 @@
 #include "mp4_common.h"
 
 
-static char * ts_arg(const char *param, size_t param_len, const char *key, size_t key_len, size_t *val_len);
+static char *ts_arg(const char *param, size_t param_len, const char *key, size_t key_len, size_t *val_len);
 static int mp4_handler(TSCont contp, TSEvent event, void *edata);
 static void mp4_cache_lookup_complete(Mp4Context *mc, TSHttpTxn txnp);
 static void mp4_read_response(Mp4Context *mc, TSHttpTxn txnp);
@@ -46,7 +46,7 @@ TSRemapInit(TSRemapInterface *api_info, char *errbuf, int errbuf_size)
 }
 
 TSReturnCode
-TSRemapNewInstance(int argc, char** /* argv ATS_UNUSED */, void** ih, char* errbuf, int errbuf_size)
+TSRemapNewInstance(int argc, char ** /* argv ATS_UNUSED */, void **ih, char *errbuf, int errbuf_size)
 {
   if (argc > 2) {
     snprintf(errbuf, errbuf_size, "[TSRemapNewInstance] - Argument should be removed");
@@ -57,26 +57,26 @@ TSRemapNewInstance(int argc, char** /* argv ATS_UNUSED */, void** ih, char* errb
 }
 
 void
-TSRemapDeleteInstance(void* /* ih ATS_UNUSED */)
+TSRemapDeleteInstance(void * /* ih ATS_UNUSED */)
 {
   return;
 }
 
 TSRemapStatus
-TSRemapDoRemap(void* /* ih ATS_UNUSED */, TSHttpTxn rh, TSRemapRequestInfo *rri)
+TSRemapDoRemap(void * /* ih ATS_UNUSED */, TSHttpTxn rh, TSRemapRequestInfo *rri)
 {
-  const char          *method, *query, *path;
-  int                 method_len, query_len, path_len;
-  size_t              val_len;
-  const char          *val;
-  int                 ret;
-  float               start;
-  char                buf[1024];
-  int                 buf_len;
-  int                 left, right;
-  TSMLoc              ae_field, range_field;
-  TSCont              contp;
-  Mp4Context          *mc;
+  const char *method, *query, *path;
+  int method_len, query_len, path_len;
+  size_t val_len;
+  const char *val;
+  int ret;
+  float start;
+  char buf[1024];
+  int buf_len;
+  int left, right;
+  TSMLoc ae_field, range_field;
+  TSCont contp;
+  Mp4Context *mc;
 
   method = TSHttpHdrMethodGet(rri->requestBufp, rri->requestHdrp, &method_len);
   if (method != TS_HTTP_METHOD_GET) {
@@ -96,7 +96,7 @@ TSRemapDoRemap(void* /* ih ATS_UNUSED */, TSHttpTxn rh, TSRemapRequestInfo *rri)
   start = 0;
   query = TSUrlHttpQueryGet(rri->requestBufp, rri->requestUrl, &query_len);
 
-  val = ts_arg(query, query_len, "start", sizeof("start")-1, &val_len);
+  val = ts_arg(query, query_len, "start", sizeof("start") - 1, &val_len);
   if (val != NULL) {
     ret = sscanf(val, "%f", &start);
     if (ret != 1)
@@ -108,7 +108,7 @@ TSRemapDoRemap(void* /* ih ATS_UNUSED */, TSHttpTxn rh, TSRemapRequestInfo *rri)
 
   } else if (start < 0) {
     TSHttpTxnSetHttpRetStatus(rh, TS_HTTP_STATUS_BAD_REQUEST);
-    TSHttpTxnErrorBodySet(rh, TSstrdup("Invalid request."), sizeof("Invalid request.")-1, NULL);
+    TSHttpTxnErrorBodySet(rh, TSstrdup("Invalid request."), sizeof("Invalid request.") - 1, NULL);
   }
 
   // reset args
@@ -123,20 +123,18 @@ TSRemapDoRemap(void* /* ih ATS_UNUSED */, TSHttpTxn rh, TSRemapRequestInfo *rri)
     right--;
   }
 
-  buf_len = sprintf(buf, "%.*s%.*s", left, query, right, query+query_len-right);
+  buf_len = sprintf(buf, "%.*s%.*s", left, query, right, query + query_len - right);
   TSUrlHttpQuerySet(rri->requestBufp, rri->requestUrl, buf, buf_len);
 
   // remove Accept-Encoding
-  ae_field = TSMimeHdrFieldFind(rri->requestBufp, rri->requestHdrp,
-      TS_MIME_FIELD_ACCEPT_ENCODING, TS_MIME_LEN_ACCEPT_ENCODING);
+  ae_field = TSMimeHdrFieldFind(rri->requestBufp, rri->requestHdrp, TS_MIME_FIELD_ACCEPT_ENCODING, TS_MIME_LEN_ACCEPT_ENCODING);
   if (ae_field) {
     TSMimeHdrFieldDestroy(rri->requestBufp, rri->requestHdrp, ae_field);
     TSHandleMLocRelease(rri->requestBufp, rri->requestHdrp, ae_field);
   }
 
   // remove Range
-  range_field = TSMimeHdrFieldFind(rri->requestBufp, rri->requestHdrp,
-      TS_MIME_FIELD_RANGE, TS_MIME_LEN_RANGE);
+  range_field = TSMimeHdrFieldFind(rri->requestBufp, rri->requestHdrp, TS_MIME_FIELD_RANGE, TS_MIME_LEN_RANGE);
   if (range_field) {
     TSMimeHdrFieldDestroy(rri->requestBufp, rri->requestHdrp, range_field);
     TSHandleMLocRelease(rri->requestBufp, rri->requestHdrp, range_field);
@@ -155,29 +153,28 @@ TSRemapDoRemap(void* /* ih ATS_UNUSED */, TSHttpTxn rh, TSRemapRequestInfo *rri)
 static int
 mp4_handler(TSCont contp, TSEvent event, void *edata)
 {
-  TSHttpTxn       txnp;
-  Mp4Context      *mc;
+  TSHttpTxn txnp;
+  Mp4Context *mc;
 
   txnp = (TSHttpTxn)edata;
-  mc = (Mp4Context*)TSContDataGet(contp);
+  mc = (Mp4Context *)TSContDataGet(contp);
 
   switch (event) {
+  case TS_EVENT_HTTP_CACHE_LOOKUP_COMPLETE:
+    mp4_cache_lookup_complete(mc, txnp);
+    break;
 
-    case TS_EVENT_HTTP_CACHE_LOOKUP_COMPLETE:
-      mp4_cache_lookup_complete(mc, txnp);
-      break;
+  case TS_EVENT_HTTP_READ_RESPONSE_HDR:
+    mp4_read_response(mc, txnp);
+    break;
 
-    case TS_EVENT_HTTP_READ_RESPONSE_HDR:
-      mp4_read_response(mc, txnp);
-      break;
-
-    case TS_EVENT_HTTP_TXN_CLOSE:
-      delete mc;
-      TSContDestroy(contp);
-      break;
+  case TS_EVENT_HTTP_TXN_CLOSE:
+    delete mc;
+    TSContDestroy(contp);
+    break;
 
-    default:
-      break;
+  default:
+    break;
   }
 
   TSHttpTxnReenable(txnp, TS_EVENT_HTTP_CONTINUE);
@@ -187,12 +184,12 @@ mp4_handler(TSCont contp, TSEvent event, void *edata)
 static void
 mp4_cache_lookup_complete(Mp4Context *mc, TSHttpTxn txnp)
 {
-  TSMBuffer       bufp;
-  TSMLoc          hdrp;
-  TSMLoc          cl_field;
-  TSHttpStatus    code;
-  int             obj_status;
-  int64_t         n;
+  TSMBuffer bufp;
+  TSMLoc hdrp;
+  TSMLoc cl_field;
+  TSHttpStatus code;
+  int obj_status;
+  int64_t n;
 
   if (TSHttpTxnCacheLookupStatusGet(txnp, &obj_status) == TS_ERROR) {
     TSError("[%s] Couldn't get cache status of object", __FUNCTION__);
@@ -234,11 +231,11 @@ release:
 static void
 mp4_read_response(Mp4Context *mc, TSHttpTxn txnp)
 {
-  TSMBuffer       bufp;
-  TSMLoc          hdrp;
-  TSMLoc          cl_field;
-  TSHttpStatus    status;
-  int64_t         n;
+  TSMBuffer bufp;
+  TSMLoc hdrp;
+  TSMLoc cl_field;
+  TSHttpStatus status;
+  int64_t n;
 
   if (TSHttpTxnServerRespGet(txnp, &bufp, &hdrp) != TS_SUCCESS) {
     TSError("[%s] could not get request os data", __FUNCTION__);
@@ -270,7 +267,7 @@ release:
 static void
 mp4_add_transform(Mp4Context *mc, TSHttpTxn txnp)
 {
-  TSVConn     connp;
+  TSVConn connp;
 
   if (mc->transform_added)
     return;
@@ -288,10 +285,10 @@ mp4_add_transform(Mp4Context *mc, TSHttpTxn txnp)
 }
 
 static int
-mp4_transform_entry(TSCont contp, TSEvent event, void* /* edata ATS_UNUSED */)
+mp4_transform_entry(TSCont contp, TSEvent event, void * /* edata ATS_UNUSED */)
 {
-  TSVIO        input_vio;
-  Mp4Context   *mc = (Mp4Context*)TSContDataGet(contp);
+  TSVIO input_vio;
+  Mp4Context *mc = (Mp4Context *)TSContDataGet(contp);
 
   if (TSVConnClosedGet(contp)) {
     TSContDestroy(contp);
@@ -299,20 +296,19 @@ mp4_transform_entry(TSCont contp, TSEvent event, void* /* edata ATS_UNUSED */)
   }
 
   switch (event) {
-
-    case TS_EVENT_ERROR:
-      input_vio = TSVConnWriteVIOGet(contp);
-      TSContCall(TSVIOContGet(input_vio), TS_EVENT_ERROR, input_vio);
-      break;
-
-    case TS_EVENT_VCONN_WRITE_COMPLETE:
-      TSVConnShutdown(TSTransformOutputVConnGet(contp), 0, 1);
-      break;
-
-    case TS_EVENT_VCONN_WRITE_READY:
-    default:
-      mp4_transform_handler(contp, mc);
-      break;
+  case TS_EVENT_ERROR:
+    input_vio = TSVConnWriteVIOGet(contp);
+    TSContCall(TSVIOContGet(input_vio), TS_EVENT_ERROR, input_vio);
+    break;
+
+  case TS_EVENT_VCONN_WRITE_COMPLETE:
+    TSVConnShutdown(TSTransformOutputVConnGet(contp), 0, 1);
+    break;
+
+  case TS_EVENT_VCONN_WRITE_READY:
+  default:
+    mp4_transform_handler(contp, mc);
+    break;
   }
 
   return 0;
@@ -321,12 +317,12 @@ mp4_transform_entry(TSCont contp, TSEvent event, void* /* edata ATS_UNUSED */)
 static int
 mp4_transform_handler(TSCont contp, Mp4Context *mc)
 {
-  TSVConn             output_conn;
-  TSVIO               input_vio;
-  TSIOBufferReader    input_reader;
-  int64_t             avail, toread, need, upstream_done;
-  int                 ret;
-  bool                write_down;
+  TSVConn output_conn;
+  TSVIO input_vio;
+  TSIOBufferReader input_reader;
+  int64_t avail, toread, need, upstream_done;
+  int ret;
+  bool write_down;
   Mp4TransformContext *mtc;
 
   mtc = mc->mtc;
@@ -354,7 +350,6 @@ mp4_transform_handler(TSCont contp, Mp4Context *mc)
   write_down = false;
 
   if (!mtc->parse_over) {
-
     ret = mp4_parse_meta(mtc, toread <= 0);
     if (ret == 0)
       goto trans;
@@ -383,7 +378,6 @@ mp4_transform_handler(TSCont contp, Mp4Context *mc)
     }
 
   } else {
-
     // copy the new meta data
     if (mtc->total < mtc->meta_length) {
       TSIOBufferCopy(mtc->output.buffer, mtc->mm.out_handle.reader, mtc->meta_length, 0);
@@ -439,11 +433,11 @@ trans:
 static int
 mp4_parse_meta(Mp4TransformContext *mtc, bool body_complete)
 {
-  int                 ret;
-  int64_t             avail, bytes;
-  TSIOBufferBlock     blk;
-  const char          *data;
-  Mp4Meta             *mm;
+  int ret;
+  int64_t avail, bytes;
+  TSIOBufferBlock blk;
+  const char *data;
+  Mp4Meta *mm;
 
   mm = &mtc->mm;
 
@@ -463,7 +457,7 @@ mp4_parse_meta(Mp4TransformContext *mtc, bool body_complete)
 
   ret = mm->parse_meta(body_complete);
 
-  if (ret > 0) {                      // meta success
+  if (ret > 0) { // meta success
     mtc->tail = mm->start_pos;
     mtc->content_length = mm->content_length;
     mtc->meta_length = TSIOBufferReaderAvail(mm->out_handle.reader);
@@ -480,8 +474,8 @@ mp4_parse_meta(Mp4TransformContext *mtc, bool body_complete)
 static char *
 ts_arg(const char *param, size_t param_len, const char *key, size_t key_len, size_t *val_len)
 {
-  const char  *p, *last;
-  const char  *val;
+  const char *p, *last;
+  const char *val;
 
   *val_len = 0;
 
@@ -491,25 +485,23 @@ ts_arg(const char *param, size_t param_len, const char *key, size_t key_len, siz
   p = param;
   last = p + param_len;
 
-  for ( ; p < last; p++) {
-
-    p = (char*)memmem(p, last-p, key, key_len);
+  for (; p < last; p++) {
+    p = (char *)memmem(p, last - p, key, key_len);
 
     if (p == NULL)
       return NULL;
 
     if ((p == param || *(p - 1) == '&') && *(p + key_len) == '=') {
-
       val = p + key_len + 1;
 
-      p = (char*)memchr(p, '&', last-p);
+      p = (char *)memchr(p, '&', last - p);
 
       if (p == NULL)
         p = param + param_len;
 
       *val_len = p - val;
 
-      return (char*)val;
+      return (char *)val;
     }
   }
 

http://git-wip-us.apache.org/repos/asf/trafficserver/blob/2c3f8790/plugins/experimental/mp4/mp4_common.h
----------------------------------------------------------------------
diff --git a/plugins/experimental/mp4/mp4_common.h b/plugins/experimental/mp4/mp4_common.h
index 7c36fa2..bd0ef94 100644
--- a/plugins/experimental/mp4/mp4_common.h
+++ b/plugins/experimental/mp4/mp4_common.h
@@ -34,7 +34,7 @@
 class IOHandle
 {
 public:
-  IOHandle(): vio(NULL), buffer(NULL), reader(NULL) { };
+  IOHandle() : vio(NULL), buffer(NULL), reader(NULL){};
 
   ~IOHandle()
   {
@@ -50,17 +50,16 @@ public:
   }
 
 public:
-  TSVIO               vio;
-  TSIOBuffer          buffer;
-  TSIOBufferReader    reader;
+  TSVIO vio;
+  TSIOBuffer buffer;
+  TSIOBufferReader reader;
 };
 
 class Mp4TransformContext
 {
 public:
   Mp4TransformContext(float offset, int64_t cl)
-    : total(0), tail(0), pos(0), content_length(0),
-      parse_over(false), raw_transform(false)
+    : total(0), tail(0), pos(0), content_length(0), parse_over(false), raw_transform(false)
   {
     res_buffer = TSIOBufferCreate();
     res_reader = TSIOBufferReaderAlloc(res_buffer);
@@ -86,27 +85,26 @@ public:
   }
 
 public:
-  IOHandle            output;
-  Mp4Meta             mm;
-  int64_t             total;
-  int64_t             tail;
-  int64_t             pos;
-  int64_t             content_length;
-  int64_t             meta_length;
-
-  TSIOBuffer          res_buffer;
-  TSIOBufferReader    res_reader;
-  TSIOBufferReader    dup_reader;
-
-  bool                parse_over;
-  bool                raw_transform;
+  IOHandle output;
+  Mp4Meta mm;
+  int64_t total;
+  int64_t tail;
+  int64_t pos;
+  int64_t content_length;
+  int64_t meta_length;
+
+  TSIOBuffer res_buffer;
+  TSIOBufferReader res_reader;
+  TSIOBufferReader dup_reader;
+
+  bool parse_over;
+  bool raw_transform;
 };
 
 class Mp4Context
 {
 public:
-  Mp4Context(float s)
-    : start(s), cl(0), mtc(NULL), transform_added(false) { };
+  Mp4Context(float s) : start(s), cl(0), mtc(NULL), transform_added(false){};
 
   ~Mp4Context()
   {
@@ -117,12 +115,12 @@ public:
   }
 
 public:
-  float       start;
-  int64_t     cl;
+  float start;
+  int64_t cl;
 
   Mp4TransformContext *mtc;
 
-  bool        transform_added;
+  bool transform_added;
 };
 
 #endif

http://git-wip-us.apache.org/repos/asf/trafficserver/blob/2c3f8790/plugins/experimental/mp4/mp4_meta.cc
----------------------------------------------------------------------
diff --git a/plugins/experimental/mp4/mp4_meta.cc b/plugins/experimental/mp4/mp4_meta.cc
index ebf7918..cd7c993 100644
--- a/plugins/experimental/mp4/mp4_meta.cc
+++ b/plugins/experimental/mp4/mp4_meta.cc
@@ -19,52 +19,40 @@
 #include "mp4_meta.h"
 
 
-static mp4_atom_handler mp4_atoms[] = {
-  { "ftyp", &Mp4Meta::mp4_read_ftyp_atom },
-  { "moov", &Mp4Meta::mp4_read_moov_atom },
-  { "mdat", &Mp4Meta::mp4_read_mdat_atom },
-  { NULL, NULL }
-};
-
-static mp4_atom_handler mp4_moov_atoms[] = {
-  { "mvhd", &Mp4Meta::mp4_read_mvhd_atom },
-  { "trak", &Mp4Meta::mp4_read_trak_atom },
-  { "cmov", &Mp4Meta::mp4_read_cmov_atom },
-  { NULL, NULL }
-};
-
-static mp4_atom_handler mp4_trak_atoms[] = {
-  { "tkhd", &Mp4Meta::mp4_read_tkhd_atom },
-  { "mdia", &Mp4Meta::mp4_read_mdia_atom },
-  { NULL, NULL }
-};
-
-static mp4_atom_handler mp4_mdia_atoms[] = {
-  { "mdhd", &Mp4Meta::mp4_read_mdhd_atom },
-  { "hdlr", &Mp4Meta::mp4_read_hdlr_atom },
-  { "minf", &Mp4Meta::mp4_read_minf_atom },
-  { NULL, NULL }
-};
-
-static mp4_atom_handler mp4_minf_atoms[] = {
-  { "vmhd", &Mp4Meta::mp4_read_vmhd_atom },
-  { "smhd", &Mp4Meta::mp4_read_smhd_atom },
-  { "dinf", &Mp4Meta::mp4_read_dinf_atom },
-  { "stbl", &Mp4Meta::mp4_read_stbl_atom },
-  { NULL, NULL }
-};
-
-static mp4_atom_handler mp4_stbl_atoms[] = {
-  { "stsd", &Mp4Meta::mp4_read_stsd_atom },
-  { "stts", &Mp4Meta::mp4_read_stts_atom },
-  { "stss", &Mp4Meta::mp4_read_stss_atom },
-  { "ctts", &Mp4Meta::mp4_read_ctts_atom },
-  { "stsc", &Mp4Meta::mp4_read_stsc_atom },
-  { "stsz", &Mp4Meta::mp4_read_stsz_atom },
-  { "stco", &Mp4Meta::mp4_read_stco_atom },
-  { "co64", &Mp4Meta::mp4_read_co64_atom },
-  { NULL, NULL }
-};
+static mp4_atom_handler mp4_atoms[] = {{"ftyp", &Mp4Meta::mp4_read_ftyp_atom},
+                                       {"moov", &Mp4Meta::mp4_read_moov_atom},
+                                       {"mdat", &Mp4Meta::mp4_read_mdat_atom},
+                                       {NULL, NULL}};
+
+static mp4_atom_handler mp4_moov_atoms[] = {{"mvhd", &Mp4Meta::mp4_read_mvhd_atom},
+                                            {"trak", &Mp4Meta::mp4_read_trak_atom},
+                                            {"cmov", &Mp4Meta::mp4_read_cmov_atom},
+                                            {NULL, NULL}};
+
+static mp4_atom_handler mp4_trak_atoms[] = {{"tkhd", &Mp4Meta::mp4_read_tkhd_atom},
+                                            {"mdia", &Mp4Meta::mp4_read_mdia_atom},
+                                            {NULL, NULL}};
+
+static mp4_atom_handler mp4_mdia_atoms[] = {{"mdhd", &Mp4Meta::mp4_read_mdhd_atom},
+                                            {"hdlr", &Mp4Meta::mp4_read_hdlr_atom},
+                                            {"minf", &Mp4Meta::mp4_read_minf_atom},
+                                            {NULL, NULL}};
+
+static mp4_atom_handler mp4_minf_atoms[] = {{"vmhd", &Mp4Meta::mp4_read_vmhd_atom},
+                                            {"smhd", &Mp4Meta::mp4_read_smhd_atom},
+                                            {"dinf", &Mp4Meta::mp4_read_dinf_atom},
+                                            {"stbl", &Mp4Meta::mp4_read_stbl_atom},
+                                            {NULL, NULL}};
+
+static mp4_atom_handler mp4_stbl_atoms[] = {{"stsd", &Mp4Meta::mp4_read_stsd_atom},
+                                            {"stts", &Mp4Meta::mp4_read_stts_atom},
+                                            {"stss", &Mp4Meta::mp4_read_stss_atom},
+                                            {"ctts", &Mp4Meta::mp4_read_ctts_atom},
+                                            {"stsc", &Mp4Meta::mp4_read_stsc_atom},
+                                            {"stsz", &Mp4Meta::mp4_read_stsz_atom},
+                                            {"stco", &Mp4Meta::mp4_read_stco_atom},
+                                            {"co64", &Mp4Meta::mp4_read_co64_atom},
+                                            {NULL, NULL}};
 
 
 static void mp4_reader_set_32value(TSIOBufferReader readerp, int64_t offset, uint32_t n);
@@ -77,7 +65,7 @@ static int64_t IOBufferReaderCopy(TSIOBufferReader readerp, void *buf, int64_t l
 int
 Mp4Meta::parse_meta(bool body_complete)
 {
-  int             ret, rc;
+  int ret, rc;
 
   meta_avail = TSIOBufferReaderAvail(meta_reader);
 
@@ -95,7 +83,6 @@ Mp4Meta::parse_meta(bool body_complete)
     return -1;
 
   } else if (ret == 0) {
-
     if (body_complete) {
       return -1;
 
@@ -125,11 +112,11 @@ Mp4Meta::mp4_meta_consume(int64_t size)
 int
 Mp4Meta::post_process_meta()
 {
-  off_t           start_offset, adjustment;
-  uint32_t        i, j;
-  int64_t         avail;
-  BufferHandle    *bh;
-  Mp4Trak         *trak;
+  off_t start_offset, adjustment;
+  uint32_t i, j;
+  int64_t avail;
+  BufferHandle *bh;
+  Mp4Trak *trak;
 
   if (this->trak_num == 0) {
     return -1;
@@ -143,13 +130,11 @@ Mp4Meta::post_process_meta()
   out_handle.reader = TSIOBufferReaderAlloc(out_handle.buffer);
 
   if (ftyp_atom.buffer) {
-    TSIOBufferCopy(out_handle.buffer, ftyp_atom.reader,
-        TSIOBufferReaderAvail(ftyp_atom.reader), 0);
+    TSIOBufferCopy(out_handle.buffer, ftyp_atom.reader, TSIOBufferReaderAvail(ftyp_atom.reader), 0);
   }
 
   if (moov_atom.buffer) {
-    TSIOBufferCopy(out_handle.buffer, moov_atom.reader,
-        TSIOBufferReaderAvail(moov_atom.reader), 0);
+    TSIOBufferCopy(out_handle.buffer, moov_atom.reader, TSIOBufferReaderAvail(moov_atom.reader), 0);
   }
 
   if (mvhd_atom.buffer) {
@@ -161,7 +146,6 @@ Mp4Meta::post_process_meta()
   start_offset = cl;
 
   for (i = 0; i < trak_num; i++) {
-
     trak = trak_vec[i];
 
     if (mp4_update_stts_atom(trak) != 0) {
@@ -183,7 +167,6 @@ Mp4Meta::post_process_meta()
     }
 
     if (trak->co64_data.buffer) {
-
       if (mp4_update_co64_atom(trak) != 0)
         return -1;
 
@@ -207,8 +190,7 @@ Mp4Meta::post_process_meta()
     bh = &(trak->trak_atom);
     for (j = 0; j <= MP4_LAST_ATOM; j++) {
       if (bh[j].buffer) {
-        TSIOBufferCopy(out_handle.buffer, bh[j].reader,
-            TSIOBufferReaderAvail(bh[j].reader), 0);
+        TSIOBufferCopy(out_handle.buffer, bh[j].reader, TSIOBufferReaderAvail(bh[j].reader), 0);
       }
     }
 
@@ -221,12 +203,10 @@ Mp4Meta::post_process_meta()
   mp4_reader_set_32value(moov_atom.reader, 0, this->moov_size);
   this->content_length += this->moov_size;
 
-  adjustment = this->ftyp_size + this->moov_size +
-    mp4_update_mdat_atom(start_offset) - start_offset;
+  adjustment = this->ftyp_size + this->moov_size + mp4_update_mdat_atom(start_offset) - start_offset;
 
 
-  TSIOBufferCopy(out_handle.buffer, mdat_atom.reader,
-      TSIOBufferReaderAvail(mdat_atom.reader), 0);
+  TSIOBufferCopy(out_handle.buffer, mdat_atom.reader, TSIOBufferReaderAvail(mdat_atom.reader), 0);
 
   for (i = 0; i < trak_num; i++) {
     trak = trak_vec[i];
@@ -252,15 +232,14 @@ Mp4Meta::post_process_meta()
 int
 Mp4Meta::parse_root_atoms()
 {
-  int         i, ret, rc;
-  int64_t     atom_size, atom_header_size;
-  char        buf[64];
-  char        *atom_header, *atom_name;
+  int i, ret, rc;
+  int64_t atom_size, atom_header_size;
+  char buf[64];
+  char *atom_header, *atom_name;
 
   memset(buf, 0, sizeof(buf));
 
   for (;;) {
-
     if (meta_avail < (int64_t)sizeof(uint32_t))
       return 0;
 
@@ -274,7 +253,6 @@ Mp4Meta::parse_root_atoms()
     atom_header = buf;
 
     if (atom_size < (int64_t)sizeof(mp4_atom_header)) {
-
       if (atom_size == 1) {
         if (meta_avail < (int64_t)sizeof(mp4_atom_header64)) {
           return 0;
@@ -287,9 +265,9 @@ Mp4Meta::parse_root_atoms()
       atom_size = mp4_get_64value(atom_header + 8);
       atom_header_size = sizeof(mp4_atom_header64);
 
-    } else {                                                     // regular atom
+    } else { // regular atom
 
-      if (meta_avail < (int64_t)sizeof(mp4_atom_header))       // not enough for atom header
+      if (meta_avail < (int64_t)sizeof(mp4_atom_header)) // not enough for atom header
         return 0;
 
       atom_header_size = sizeof(mp4_atom_header);
@@ -303,13 +281,12 @@ Mp4Meta::parse_root_atoms()
 
     for (i = 0; mp4_atoms[i].name; i++) {
       if (memcmp(atom_name, mp4_atoms[i].name, 4) == 0) {
-
-        ret = (this->*mp4_atoms[i].handler)(atom_header_size, atom_size - atom_header_size);           // -1: error, 0: unfinished, 1: success
+        ret = (this->*mp4_atoms[i].handler)(atom_header_size, atom_size - atom_header_size); // -1: error, 0: unfinished, 1: success
 
         if (ret <= 0) {
           return ret;
 
-        } else if (meta_complete) {             // success
+        } else if (meta_complete) { // success
           return 1;
         }
 
@@ -318,12 +295,12 @@ Mp4Meta::parse_root_atoms()
     }
 
     // nonsignificant atom box
-    rc = mp4_atom_next(atom_size, true);            // 0: unfinished, 1: success
+    rc = mp4_atom_next(atom_size, true); // 0: unfinished, 1: success
     if (rc == 0) {
       return rc;
     }
 
-next:
+  next:
     continue;
   }
 
@@ -354,17 +331,16 @@ Mp4Meta::mp4_atom_next(int64_t atom_size, bool wait)
 int
 Mp4Meta::mp4_read_atom(mp4_atom_handler *atom, int64_t size)
 {
-  int         i, ret, rc;
-  int64_t     atom_size, atom_header_size;
-  char        buf[32];
-  char        *atom_header, *atom_name;
+  int i, ret, rc;
+  int64_t atom_size, atom_header_size;
+  char buf[32];
+  char *atom_header, *atom_name;
 
-  if (meta_avail < size)    // data insufficient, not reasonable for internal atom box.
+  if (meta_avail < size) // data insufficient, not reasonable for internal atom box.
     return -1;
 
   while (size > 0) {
-
-    if (meta_avail < (int64_t)sizeof(uint32_t))            // data insufficient, not reasonable for internal atom box.
+    if (meta_avail < (int64_t)sizeof(uint32_t)) // data insufficient, not reasonable for internal atom box.
       return -1;
 
     IOBufferReaderCopy(meta_reader, buf, sizeof(mp4_atom_header64));
@@ -377,7 +353,6 @@ Mp4Meta::mp4_read_atom(mp4_atom_handler *atom, int64_t size)
     atom_header = buf;
 
     if (atom_size < (int64_t)sizeof(mp4_atom_header)) {
-
       if (atom_size == 1) {
         if (meta_avail < (int64_t)sizeof(mp4_atom_header64)) {
           return -1;
@@ -390,7 +365,7 @@ Mp4Meta::mp4_read_atom(mp4_atom_handler *atom, int64_t size)
       atom_size = mp4_get_64value(atom_header + 8);
       atom_header_size = sizeof(mp4_atom_header64);
 
-    } else {                                        // regular atom
+    } else { // regular atom
 
       if (meta_avail < (int64_t)sizeof(mp4_atom_header))
         return -1;
@@ -406,11 +381,10 @@ Mp4Meta::mp4_read_atom(mp4_atom_handler *atom, int64_t size)
 
     for (i = 0; atom[i].name; i++) {
       if (memcmp(atom_name, atom[i].name, 4) == 0) {
-
         if (meta_avail < atom_size)
           return -1;
 
-        ret = (this->*atom[i].handler)(atom_header_size, atom_size - atom_header_size);       // -1: error, 0: success.
+        ret = (this->*atom[i].handler)(atom_header_size, atom_size - atom_header_size); // -1: error, 0: success.
 
         if (ret < 0) {
           return ret;
@@ -426,7 +400,7 @@ Mp4Meta::mp4_read_atom(mp4_atom_handler *atom, int64_t size)
       return rc;
     }
 
-next:
+  next:
     size -= atom_size;
     continue;
   }
@@ -437,14 +411,14 @@ next:
 int
 Mp4Meta::mp4_read_ftyp_atom(int64_t atom_header_size, int64_t atom_data_size)
 {
-  int64_t         atom_size;
+  int64_t atom_size;
 
   if (atom_data_size > MP4_MIN_BUFFER_SIZE)
     return -1;
 
   atom_size = atom_header_size + atom_data_size;
 
-  if (meta_avail < atom_size) {               // data unsufficient, reasonable from the first level
+  if (meta_avail < atom_size) { // data unsufficient, reasonable from the first level
     return 0;
   }
 
@@ -463,10 +437,10 @@ Mp4Meta::mp4_read_ftyp_atom(int64_t atom_header_size, int64_t atom_data_size)
 int
 Mp4Meta::mp4_read_moov_atom(int64_t atom_header_size, int64_t atom_data_size)
 {
-  int64_t         atom_size;
-  int             ret;
+  int64_t atom_size;
+  int ret;
 
-  if (mdat_atom.buffer != NULL)       // not reasonable for streaming media
+  if (mdat_atom.buffer != NULL) // not reasonable for streaming media
     return -1;
 
   atom_size = atom_header_size + atom_data_size;
@@ -474,7 +448,7 @@ Mp4Meta::mp4_read_moov_atom(int64_t atom_header_size, int64_t atom_data_size)
   if (atom_data_size >= MP4_MAX_BUFFER_SIZE)
     return -1;
 
-  if (meta_avail < atom_size) {       // data unsufficient, wait
+  if (meta_avail < atom_size) { // data unsufficient, wait
     return 0;
   }
 
@@ -492,21 +466,21 @@ Mp4Meta::mp4_read_moov_atom(int64_t atom_header_size, int64_t atom_data_size)
 int
 Mp4Meta::mp4_read_mvhd_atom(int64_t atom_header_size, int64_t atom_data_size)
 {
-  int64_t             atom_size;
-  uint32_t            timescale;
-  mp4_mvhd_atom       *mvhd;
-  mp4_mvhd64_atom     mvhd64;
+  int64_t atom_size;
+  uint32_t timescale;
+  mp4_mvhd_atom *mvhd;
+  mp4_mvhd64_atom mvhd64;
 
   if (sizeof(mp4_mvhd_atom) - 8 > (size_t)atom_data_size)
     return -1;
 
   IOBufferReaderCopy(meta_reader, &mvhd64, sizeof(mp4_mvhd64_atom));
-  mvhd = (mp4_mvhd_atom*)&mvhd64;
+  mvhd = (mp4_mvhd_atom *)&mvhd64;
 
   if (mvhd->version[0] == 0) {
     timescale = mp4_get_32value(mvhd->timescale);
 
-  } else {        // 64-bit duration
+  } else { // 64-bit duration
     timescale = mp4_get_32value(mvhd64.timescale);
   }
 
@@ -526,8 +500,8 @@ Mp4Meta::mp4_read_mvhd_atom(int64_t atom_header_size, int64_t atom_data_size)
 int
 Mp4Meta::mp4_read_trak_atom(int64_t atom_header_size, int64_t atom_data_size)
 {
-  int             rc;
-  Mp4Trak         *trak;
+  int rc;
+  Mp4Trak *trak;
 
   if (trak_num >= MP4_MAX_TRAK_NUM - 1)
     return -1;
@@ -546,8 +520,7 @@ Mp4Meta::mp4_read_trak_atom(int64_t atom_header_size, int64_t atom_data_size)
   return rc;
 }
 
-int
-Mp4Meta::mp4_read_cmov_atom(int64_t /*atom_header_size ATS_UNUSED */, int64_t /* atom_data_size ATS_UNUSED */)
+int Mp4Meta::mp4_read_cmov_atom(int64_t /*atom_header_size ATS_UNUSED */, int64_t /* atom_data_size ATS_UNUSED */)
 {
   return -1;
 }
@@ -555,12 +528,12 @@ Mp4Meta::mp4_read_cmov_atom(int64_t /*atom_header_size ATS_UNUSED */, int64_t /*
 int
 Mp4Meta::mp4_read_tkhd_atom(int64_t atom_header_size, int64_t atom_data_size)
 {
-  int64_t             atom_size;
-  Mp4Trak             *trak;
+  int64_t atom_size;
+  Mp4Trak *trak;
 
   atom_size = atom_header_size + atom_data_size;
 
-  trak = trak_vec[trak_num-1];
+  trak = trak_vec[trak_num - 1];
   trak->tkhd_size = atom_size;
 
   trak->tkhd_atom.buffer = TSIOBufferCreate();
@@ -569,8 +542,7 @@ Mp4Meta::mp4_read_tkhd_atom(int64_t atom_header_size, int64_t atom_data_size)
   TSIOBufferCopy(trak->tkhd_atom.buffer, meta_reader, atom_size, 0);
   mp4_meta_consume(atom_size);
 
-  mp4_reader_set_32value(trak->tkhd_atom.reader,
-      offsetof(mp4_tkhd_atom, size), atom_size);
+  mp4_reader_set_32value(trak->tkhd_atom.reader, offsetof(mp4_tkhd_atom, size), atom_size);
 
   return 1;
 }
@@ -578,9 +550,9 @@ Mp4Meta::mp4_read_tkhd_atom(int64_t atom_header_size, int64_t atom_data_size)
 int
 Mp4Meta::mp4_read_mdia_atom(int64_t atom_header_size, int64_t atom_data_size)
 {
-  Mp4Trak             *trak;
+  Mp4Trak *trak;
 
-  trak = trak_vec[trak_num-1];
+  trak = trak_vec[trak_num - 1];
 
   trak->mdia_atom.buffer = TSIOBufferCreate();
   trak->mdia_atom.reader = TSIOBufferReaderAlloc(trak->mdia_atom.buffer);
@@ -594,14 +566,14 @@ Mp4Meta::mp4_read_mdia_atom(int64_t atom_header_size, int64_t atom_data_size)
 int
 Mp4Meta::mp4_read_mdhd_atom(int64_t atom_header_size, int64_t atom_data_size)
 {
-  int64_t             atom_size, duration;
-  uint32_t            ts;
-  Mp4Trak             *trak;
-  mp4_mdhd_atom       *mdhd;
-  mp4_mdhd64_atom     mdhd64;
+  int64_t atom_size, duration;
+  uint32_t ts;
+  Mp4Trak *trak;
+  mp4_mdhd_atom *mdhd;
+  mp4_mdhd64_atom mdhd64;
 
   IOBufferReaderCopy(meta_reader, &mdhd64, sizeof(mp4_mdhd64_atom));
-  mdhd = (mp4_mdhd_atom*)&mdhd64;
+  mdhd = (mp4_mdhd_atom *)&mdhd64;
 
   if (mdhd->version[0] == 0) {
     ts = mp4_get_32value(mdhd->timescale);
@@ -614,7 +586,7 @@ Mp4Meta::mp4_read_mdhd_atom(int64_t atom_header_size, int64_t atom_data_size)
 
   atom_size = atom_header_size + atom_data_size;
 
-  trak = trak_vec[trak_num-1];
+  trak = trak_vec[trak_num - 1];
   trak->mdhd_size = atom_size;
   trak->timescale = ts;
   trak->duration = duration;
@@ -625,8 +597,7 @@ Mp4Meta::mp4_read_mdhd_atom(int64_t atom_header_size, int64_t atom_data_size)
   TSIOBufferCopy(trak->mdhd_atom.buffer, meta_reader, atom_size, 0);
   mp4_meta_consume(atom_size);
 
-  mp4_reader_set_32value(trak->mdhd_atom.reader,
-      offsetof(mp4_mdhd_atom, size), atom_size);
+  mp4_reader_set_32value(trak->mdhd_atom.reader, offsetof(mp4_mdhd_atom, size), atom_size);
 
   return 1;
 }
@@ -634,12 +605,12 @@ Mp4Meta::mp4_read_mdhd_atom(int64_t atom_header_size, int64_t atom_data_size)
 int
 Mp4Meta::mp4_read_hdlr_atom(int64_t atom_header_size, int64_t atom_data_size)
 {
-  int64_t             atom_size;
-  Mp4Trak             *trak;
+  int64_t atom_size;
+  Mp4Trak *trak;
 
   atom_size = atom_header_size + atom_data_size;
 
-  trak = trak_vec[trak_num-1];
+  trak = trak_vec[trak_num - 1];
   trak->hdlr_size = atom_size;
 
   trak->hdlr_atom.buffer = TSIOBufferCreate();
@@ -654,9 +625,9 @@ Mp4Meta::mp4_read_hdlr_atom(int64_t atom_header_size, int64_t atom_data_size)
 int
 Mp4Meta::mp4_read_minf_atom(int64_t atom_header_size, int64_t atom_data_size)
 {
-  Mp4Trak             *trak;
+  Mp4Trak *trak;
 
-  trak = trak_vec[trak_num-1];
+  trak = trak_vec[trak_num - 1];
 
   trak->minf_atom.buffer = TSIOBufferCreate();
   trak->minf_atom.reader = TSIOBufferReaderAlloc(trak->minf_atom.buffer);
@@ -670,12 +641,12 @@ Mp4Meta::mp4_read_minf_atom(int64_t atom_header_size, int64_t atom_data_size)
 int
 Mp4Meta::mp4_read_vmhd_atom(int64_t atom_header_size, int64_t atom_data_size)
 {
-  int64_t             atom_size;
-  Mp4Trak             *trak;
+  int64_t atom_size;
+  Mp4Trak *trak;
 
   atom_size = atom_data_size + atom_header_size;
 
-  trak = trak_vec[trak_num-1];
+  trak = trak_vec[trak_num - 1];
   trak->vmhd_size += atom_size;
 
   trak->vmhd_atom.buffer = TSIOBufferCreate();
@@ -690,12 +661,12 @@ Mp4Meta::mp4_read_vmhd_atom(int64_t atom_header_size, int64_t atom_data_size)
 int
 Mp4Meta::mp4_read_smhd_atom(int64_t atom_header_size, int64_t atom_data_size)
 {
-  int64_t             atom_size;
-  Mp4Trak             *trak;
+  int64_t atom_size;
+  Mp4Trak *trak;
 
   atom_size = atom_data_size + atom_header_size;
 
-  trak = trak_vec[trak_num-1];
+  trak = trak_vec[trak_num - 1];
   trak->smhd_size += atom_size;
 
   trak->smhd_atom.buffer = TSIOBufferCreate();
@@ -710,12 +681,12 @@ Mp4Meta::mp4_read_smhd_atom(int64_t atom_header_size, int64_t atom_data_size)
 int
 Mp4Meta::mp4_read_dinf_atom(int64_t atom_header_size, int64_t atom_data_size)
 {
-  int64_t             atom_size;
-  Mp4Trak             *trak;
+  int64_t atom_size;
+  Mp4Trak *trak;
 
   atom_size = atom_data_size + atom_header_size;
 
-  trak = trak_vec[trak_num-1];
+  trak = trak_vec[trak_num - 1];
   trak->dinf_size += atom_size;
 
   trak->dinf_atom.buffer = TSIOBufferCreate();
@@ -730,9 +701,9 @@ Mp4Meta::mp4_read_dinf_atom(int64_t atom_header_size, int64_t atom_data_size)
 int
 Mp4Meta::mp4_read_stbl_atom(int64_t atom_header_size, int64_t atom_data_size)
 {
-  Mp4Trak             *trak;
+  Mp4Trak *trak;
 
-  trak = trak_vec[trak_num-1];
+  trak = trak_vec[trak_num - 1];
 
   trak->stbl_atom.buffer = TSIOBufferCreate();
   trak->stbl_atom.reader = TSIOBufferReaderAlloc(trak->stbl_atom.buffer);
@@ -746,12 +717,12 @@ Mp4Meta::mp4_read_stbl_atom(int64_t atom_header_size, int64_t atom_data_size)
 int
 Mp4Meta::mp4_read_stsd_atom(int64_t atom_header_size, int64_t atom_data_size)
 {
-  int64_t             atom_size;
-  Mp4Trak             *trak;
+  int64_t atom_size;
+  Mp4Trak *trak;
 
   atom_size = atom_data_size + atom_header_size;
 
-  trak = trak_vec[trak_num-1];
+  trak = trak_vec[trak_num - 1];
   trak->size += atom_size;
 
   trak->stsd_atom.buffer = TSIOBufferCreate();
@@ -767,10 +738,10 @@ Mp4Meta::mp4_read_stsd_atom(int64_t atom_header_size, int64_t atom_data_size)
 int
 Mp4Meta::mp4_read_stts_atom(int64_t atom_header_size, int64_t atom_data_size)
 {
-  int32_t         entries;
-  int64_t         esize;
-  mp4_stts_atom   stts;
-  Mp4Trak         *trak;
+  int32_t entries;
+  int64_t esize;
+  mp4_stts_atom stts;
+  Mp4Trak *trak;
 
   if (sizeof(mp4_stts_atom) - 8 > (size_t)atom_data_size)
     return -1;
@@ -802,10 +773,10 @@ Mp4Meta::mp4_read_stts_atom(int64_t atom_header_size, int64_t atom_data_size)
 int
 Mp4Meta::mp4_read_stss_atom(int64_t atom_header_size, int64_t atom_data_size)
 {
-  int32_t         entries;
-  int64_t         esize;
-  mp4_stss_atom   stss;
-  Mp4Trak         *trak;
+  int32_t entries;
+  int64_t esize;
+  mp4_stss_atom stss;
+  Mp4Trak *trak;
 
   if (sizeof(mp4_stss_atom) - 8 > (size_t)atom_data_size)
     return -1;
@@ -817,7 +788,7 @@ Mp4Meta::mp4_read_stss_atom(int64_t atom_header_size, int64_t atom_data_size)
   if (sizeof(mp4_stss_atom) - 8 + esize > (size_t)atom_data_size)
     return -1;
 
-  trak = trak_vec[trak_num-1];
+  trak = trak_vec[trak_num - 1];
   trak->sync_samples_entries = entries;
 
   trak->stss_atom.buffer = TSIOBufferCreate();
@@ -836,10 +807,10 @@ Mp4Meta::mp4_read_stss_atom(int64_t atom_header_size, int64_t atom_data_size)
 int
 Mp4Meta::mp4_read_ctts_atom(int64_t atom_header_size, int64_t atom_data_size)
 {
-  int32_t         entries;
-  int64_t         esize;
-  mp4_ctts_atom   ctts;
-  Mp4Trak         *trak;
+  int32_t entries;
+  int64_t esize;
+  mp4_ctts_atom ctts;
+  Mp4Trak *trak;
 
   if (sizeof(mp4_ctts_atom) - 8 > (size_t)atom_data_size)
     return -1;
@@ -870,10 +841,10 @@ Mp4Meta::mp4_read_ctts_atom(int64_t atom_header_size, int64_t atom_data_size)
 int
 Mp4Meta::mp4_read_stsc_atom(int64_t atom_header_size, int64_t atom_data_size)
 {
-  int32_t         entries;
-  int64_t         esize;
-  mp4_stsc_atom   stsc;
-  Mp4Trak         *trak;
+  int32_t entries;
+  int64_t esize;
+  mp4_stsc_atom stsc;
+  Mp4Trak *trak;
 
   if (sizeof(mp4_stsc_atom) - 8 > (size_t)atom_data_size)
     return -1;
@@ -904,10 +875,10 @@ Mp4Meta::mp4_read_stsc_atom(int64_t atom_header_size, int64_t atom_data_size)
 int
 Mp4Meta::mp4_read_stsz_atom(int64_t atom_header_size, int64_t atom_data_size)
 {
-  int32_t         entries, size;
-  int64_t         esize, atom_size;
-  mp4_stsz_atom   stsz;
-  Mp4Trak         *trak;
+  int32_t entries, size;
+  int64_t esize, atom_size;
+  mp4_stsz_atom stsz;
+  Mp4Trak *trak;
 
   if (sizeof(mp4_stsz_atom) - 8 > (size_t)atom_data_size)
     return -1;
@@ -926,7 +897,6 @@ Mp4Meta::mp4_read_stsz_atom(int64_t atom_header_size, int64_t atom_data_size)
   TSIOBufferCopy(trak->stsz_atom.buffer, meta_reader, sizeof(mp4_stsz_atom), 0);
 
   if (size == 0) {
-
     if (sizeof(mp4_stsz_atom) - 8 + esize > (size_t)atom_data_size)
       return -1;
 
@@ -948,10 +918,10 @@ Mp4Meta::mp4_read_stsz_atom(int64_t atom_header_size, int64_t atom_data_size)
 int
 Mp4Meta::mp4_read_stco_atom(int64_t atom_header_size, int64_t atom_data_size)
 {
-  int32_t         entries;
-  int64_t         esize;
-  mp4_stco_atom   stco;
-  Mp4Trak         *trak;
+  int32_t entries;
+  int64_t esize;
+  mp4_stco_atom stco;
+  Mp4Trak *trak;
 
   if (sizeof(mp4_stco_atom) - 8 > (size_t)atom_data_size)
     return -1;
@@ -982,10 +952,10 @@ Mp4Meta::mp4_read_stco_atom(int64_t atom_header_size, int64_t atom_data_size)
 int
 Mp4Meta::mp4_read_co64_atom(int64_t atom_header_size, int64_t atom_data_size)
 {
-  int32_t         entries;
-  int64_t         esize;
-  mp4_co64_atom   co64;
-  Mp4Trak         *trak;
+  int32_t entries;
+  int64_t esize;
+  mp4_co64_atom co64;
+  Mp4Trak *trak;
 
   if (sizeof(mp4_co64_atom) - 8 > (size_t)atom_data_size)
     return -1;
@@ -1013,8 +983,7 @@ Mp4Meta::mp4_read_co64_atom(int64_t atom_header_size, int64_t atom_data_size)
   return 1;
 }
 
-int
-Mp4Meta::mp4_read_mdat_atom(int64_t /* atom_header_size ATS_UNUSED */, int64_t /* atom_data_size ATS_UNUSED */)
+int Mp4Meta::mp4_read_mdat_atom(int64_t /* atom_header_size ATS_UNUSED */, int64_t /* atom_data_size ATS_UNUSED */)
 {
   mdat_atom.buffer = TSIOBufferCreate();
   mdat_atom.reader = TSIOBufferReaderAlloc(mdat_atom.buffer);
@@ -1026,12 +995,12 @@ Mp4Meta::mp4_read_mdat_atom(int64_t /* atom_header_size ATS_UNUSED */, int64_t /
 int
 Mp4Meta::mp4_update_stts_atom(Mp4Trak *trak)
 {
-  uint32_t            i, entries, count, duration, pass;
-  uint32_t            start_sample, left, start_count;
-  uint32_t            key_sample, old_sample;
-  uint64_t            start_time, sum;
-  int64_t             atom_size;
-  TSIOBufferReader    readerp;
+  uint32_t i, entries, count, duration, pass;
+  uint32_t start_sample, left, start_count;
+  uint32_t key_sample, old_sample;
+  uint64_t start_time, sum;
+  int64_t atom_size;
+  TSIOBufferReader readerp;
 
   if (trak->stts_data.buffer == NULL)
     return -1;
@@ -1052,7 +1021,7 @@ Mp4Meta::mp4_update_stts_atom(Mp4Trak *trak)
     count = (uint32_t)mp4_reader_get_32value(readerp, offsetof(mp4_stts_entry, count));
 
     if (start_time < (uint64_t)count * duration) {
-      pass = (uint32_t)(start_time/duration);
+      pass = (uint32_t)(start_time / duration);
       start_sample += pass;
       count -= pass;
 
@@ -1069,7 +1038,7 @@ found:
   TSIOBufferReaderFree(readerp);
 
   old_sample = start_sample;
-  key_sample = this->mp4_find_key_sample(start_sample, trak);      // find the last key frame before start_sample
+  key_sample = this->mp4_find_key_sample(start_sample, trak); // find the last key frame before start_sample
 
   if (old_sample != key_sample) {
     start_sample = key_sample - 1;
@@ -1098,7 +1067,7 @@ found:
   }
 
   if (this->rs == 0) {
-    this->rs = ((double)sum/trak->duration) * ((double)trak->duration/trak->timescale) * 1000;
+    this->rs = ((double)sum / trak->duration) * ((double)trak->duration / trak->timescale) * 1000;
   }
 
   left = entries - i;
@@ -1118,9 +1087,9 @@ found:
 int
 Mp4Meta::mp4_update_stss_atom(Mp4Trak *trak)
 {
-  int64_t             atom_size;
-  uint32_t            i, j, entries, sample, start_sample, left;
-  TSIOBufferReader    readerp;
+  int64_t atom_size;
+  uint32_t i, j, entries, sample, start_sample, left;
+  TSIOBufferReader readerp;
 
   if (trak->stss_data.buffer == NULL)
     return 0;
@@ -1130,7 +1099,7 @@ Mp4Meta::mp4_update_stss_atom(Mp4Trak *trak)
   start_sample = trak->start_sample + 1;
   entries = trak->sync_samples_entries;
 
-  for (i = 0; i < entries ; i++) {
+  for (i = 0; i < entries; i++) {
     sample = (uint32_t)mp4_reader_get_32value(readerp, 0);
 
     if (sample >= start_sample) {
@@ -1158,11 +1127,9 @@ found:
   atom_size = sizeof(mp4_stss_atom) + left * sizeof(uint32_t);
   trak->size += atom_size;
 
-  mp4_reader_set_32value(trak->stss_atom.reader, offsetof(mp4_stss_atom, size),
-      atom_size);
+  mp4_reader_set_32value(trak->stss_atom.reader, offsetof(mp4_stss_atom, size), atom_size);
 
-  mp4_reader_set_32value(trak->stss_atom.reader, offsetof(mp4_stss_atom, entries),
-      left);
+  mp4_reader_set_32value(trak->stss_atom.reader, offsetof(mp4_stss_atom, entries), left);
 
   TSIOBufferReaderConsume(trak->stss_data.reader, i * sizeof(uint32_t));
   TSIOBufferReaderFree(readerp);
@@ -1173,10 +1140,10 @@ found:
 int
 Mp4Meta::mp4_update_ctts_atom(Mp4Trak *trak)
 {
-  int64_t             atom_size;
-  uint32_t            i, entries, start_sample, left;
-  uint32_t            count;
-  TSIOBufferReader    readerp;
+  int64_t atom_size;
+  uint32_t i, entries, start_sample, left;
+  uint32_t count;
+  TSIOBufferReader readerp;
 
   if (trak->ctts_data.buffer == NULL)
     return 0;
@@ -1236,11 +1203,11 @@ found:
 int
 Mp4Meta::mp4_update_stsc_atom(Mp4Trak *trak)
 {
-  int64_t             atom_size;
-  uint32_t            i, entries, samples, start_sample;
-  uint32_t            chunk, next_chunk, n, id, j;
-  mp4_stsc_entry      *first;
-  TSIOBufferReader    readerp;
+  int64_t atom_size;
+  uint32_t i, entries, samples, start_sample;
+  uint32_t chunk, next_chunk, n, id, j;
+  mp4_stsc_entry *first;
+  TSIOBufferReader readerp;
 
   if (trak->stsc_data.buffer == NULL)
     return -1;
@@ -1248,7 +1215,7 @@ Mp4Meta::mp4_update_stsc_atom(Mp4Trak *trak)
   if (trak->sample_to_chunk_entries == 0)
     return -1;
 
-  start_sample = (uint32_t) trak->start_sample;
+  start_sample = (uint32_t)trak->start_sample;
   entries = trak->sample_to_chunk_entries - 1;
 
   readerp = TSIOBufferReaderClone(trak->stsc_data.reader);
@@ -1294,7 +1261,7 @@ found:
     return -1;
 
   readerp = TSIOBufferReaderClone(trak->stsc_data.reader);
-  TSIOBufferReaderConsume(readerp, sizeof(mp4_stsc_entry) * (i-1));
+  TSIOBufferReaderConsume(readerp, sizeof(mp4_stsc_entry) * (i - 1));
 
   trak->start_chunk = chunk - 1;
   trak->start_chunk += start_sample / samples;
@@ -1305,8 +1272,7 @@ found:
   mp4_reader_set_32value(readerp, offsetof(mp4_stsc_entry, chunk), 1);
 
   if (trak->chunk_samples && next_chunk - trak->start_chunk == 2) {
-    mp4_reader_set_32value(readerp, offsetof(mp4_stsc_entry, samples),
-        samples - trak->chunk_samples);
+    mp4_reader_set_32value(readerp, offsetof(mp4_stsc_entry, samples), samples - trak->chunk_samples);
 
   } else if (trak->chunk_samples) {
     first = &trak->stsc_chunk_entry;
@@ -1338,7 +1304,7 @@ found:
   mp4_reader_set_32value(trak->stsc_atom.reader, offsetof(mp4_stsc_atom, size), atom_size);
   mp4_reader_set_32value(trak->stsc_atom.reader, offsetof(mp4_stsc_atom, entries), entries);
 
-  TSIOBufferReaderConsume(trak->stsc_data.reader, (i-1) * sizeof(mp4_stsc_entry));
+  TSIOBufferReaderConsume(trak->stsc_data.reader, (i - 1) * sizeof(mp4_stsc_entry));
   TSIOBufferReaderFree(readerp);
 
   return 0;
@@ -1347,10 +1313,10 @@ found:
 int
 Mp4Meta::mp4_update_stsz_atom(Mp4Trak *trak)
 {
-  uint32_t            i;
-  int64_t             atom_size, avail;
-  uint32_t            pass;
-  TSIOBufferReader    readerp;
+  uint32_t i;
+  int64_t atom_size, avail;
+  uint32_t pass;
+  TSIOBufferReader readerp;
 
   if (trak->stsz_data.buffer == NULL)
     return 0;
@@ -1363,7 +1329,7 @@ Mp4Meta::mp4_update_stsz_atom(Mp4Trak *trak)
 
   pass = trak->start_sample * sizeof(uint32_t);
 
-  TSIOBufferReaderConsume(readerp, pass - sizeof(uint32_t)*(trak->chunk_samples));
+  TSIOBufferReaderConsume(readerp, pass - sizeof(uint32_t) * (trak->chunk_samples));
 
   for (i = 0; i < trak->chunk_samples; i++) {
     trak->chunk_samples_size += mp4_reader_get_32value(readerp, 0);
@@ -1373,10 +1339,8 @@ Mp4Meta::mp4_update_stsz_atom(Mp4Trak *trak)
   atom_size = sizeof(mp4_stsz_atom) + avail - pass;
   trak->size += atom_size;
 
-  mp4_reader_set_32value(trak->stsz_atom.reader, offsetof(mp4_stsz_atom, size),
-      atom_size);
-  mp4_reader_set_32value(trak->stsz_atom.reader, offsetof(mp4_stsz_atom, entries),
-      trak->sample_sizes_entries - trak->start_sample);
+  mp4_reader_set_32value(trak->stsz_atom.reader, offsetof(mp4_stsz_atom, size), atom_size);
+  mp4_reader_set_32value(trak->stsz_atom.reader, offsetof(mp4_stsz_atom, entries), trak->sample_sizes_entries - trak->start_sample);
 
   TSIOBufferReaderConsume(trak->stsz_data.reader, pass);
   TSIOBufferReaderFree(readerp);
@@ -1387,8 +1351,8 @@ Mp4Meta::mp4_update_stsz_atom(Mp4Trak *trak)
 int
 Mp4Meta::mp4_update_co64_atom(Mp4Trak *trak)
 {
-  int64_t             atom_size, avail, pass;
-  TSIOBufferReader    readerp;
+  int64_t atom_size, avail, pass;
+  TSIOBufferReader readerp;
 
   if (trak->co64_data.buffer == NULL)
     return -1;
@@ -1408,10 +1372,8 @@ Mp4Meta::mp4_update_co64_atom(Mp4Trak *trak)
   trak->start_offset += trak->chunk_samples_size;
   mp4_reader_set_64value(readerp, 0, trak->start_offset);
 
-  mp4_reader_set_32value(trak->co64_atom.reader, offsetof(mp4_co64_atom, size),
-      atom_size);
-  mp4_reader_set_32value(trak->co64_atom.reader, offsetof(mp4_co64_atom, entries),
-      trak->chunks - trak->start_chunk);
+  mp4_reader_set_32value(trak->co64_atom.reader, offsetof(mp4_co64_atom, size), atom_size);
+  mp4_reader_set_32value(trak->co64_atom.reader, offsetof(mp4_co64_atom, entries), trak->chunks - trak->start_chunk);
 
   return 0;
 }
@@ -1419,9 +1381,9 @@ Mp4Meta::mp4_update_co64_atom(Mp4Trak *trak)
 int
 Mp4Meta::mp4_update_stco_atom(Mp4Trak *trak)
 {
-  int64_t             atom_size, avail;
-  uint32_t            pass;
-  TSIOBufferReader    readerp;
+  int64_t atom_size, avail;
+  uint32_t pass;
+  TSIOBufferReader readerp;
 
   if (trak->stco_data.buffer == NULL)
     return -1;
@@ -1442,10 +1404,8 @@ Mp4Meta::mp4_update_stco_atom(Mp4Trak *trak)
   trak->start_offset += trak->chunk_samples_size;
   mp4_reader_set_32value(readerp, 0, trak->start_offset);
 
-  mp4_reader_set_32value(trak->stco_atom.reader, offsetof(mp4_stco_atom, size),
-      atom_size);
-  mp4_reader_set_32value(trak->stco_atom.reader, offsetof(mp4_stco_atom, entries),
-      trak->chunks - trak->start_chunk);
+  mp4_reader_set_32value(trak->stco_atom.reader, offsetof(mp4_stco_atom, size), atom_size);
+  mp4_reader_set_32value(trak->stco_atom.reader, offsetof(mp4_stco_atom, entries), trak->chunks - trak->start_chunk);
 
   return 0;
 }
@@ -1462,10 +1422,7 @@ Mp4Meta::mp4_update_stbl_atom(Mp4Trak *trak)
 int
 Mp4Meta::mp4_update_minf_atom(Mp4Trak *trak)
 {
-  trak->size += sizeof(mp4_atom_header) +
-                trak->vmhd_size +
-                trak->smhd_size +
-                trak->dinf_size;
+  trak->size += sizeof(mp4_atom_header) + trak->vmhd_size + trak->smhd_size + trak->dinf_size;
 
   mp4_reader_set_32value(trak->minf_atom.reader, 0, trak->size);
 
@@ -1493,8 +1450,8 @@ Mp4Meta::mp4_update_trak_atom(Mp4Trak *trak)
 int
 Mp4Meta::mp4_adjust_co64_atom(Mp4Trak *trak, off_t adjustment)
 {
-  int64_t             pos, avail, offset;
-  TSIOBufferReader    readerp;
+  int64_t pos, avail, offset;
+  TSIOBufferReader readerp;
 
   readerp = TSIOBufferReaderClone(trak->co64_data.reader);
   avail = TSIOBufferReaderAvail(readerp);
@@ -1514,8 +1471,8 @@ Mp4Meta::mp4_adjust_co64_atom(Mp4Trak *trak, off_t adjustment)
 int
 Mp4Meta::mp4_adjust_stco_atom(Mp4Trak *trak, int32_t adjustment)
 {
-  int64_t             pos, avail, offset;
-  TSIOBufferReader    readerp;
+  int64_t pos, avail, offset;
+  TSIOBufferReader readerp;
 
   readerp = TSIOBufferReaderClone(trak->stco_data.reader);
   avail = TSIOBufferReaderAvail(readerp);
@@ -1535,10 +1492,10 @@ Mp4Meta::mp4_adjust_stco_atom(Mp4Trak *trak, int32_t adjustment)
 int64_t
 Mp4Meta::mp4_update_mdat_atom(int64_t start_offset)
 {
-  int64_t     atom_data_size;
-  int64_t     atom_size;
-  int64_t     atom_header_size;
-  u_char      *atom_header;
+  int64_t atom_data_size;
+  int64_t atom_size;
+  int64_t atom_header_size;
+  u_char *atom_header;
 
   atom_data_size = this->cl - start_offset;
   this->start_pos = start_offset;
@@ -1548,8 +1505,7 @@ Mp4Meta::mp4_update_mdat_atom(int64_t start_offset)
   if (atom_data_size > 0xffffffff) {
     atom_size = 1;
     atom_header_size = sizeof(mp4_atom_header64);
-    mp4_set_64value(atom_header + sizeof(mp4_atom_header),
-        sizeof(mp4_atom_header64) + atom_data_size);
+    mp4_set_64value(atom_header + sizeof(mp4_atom_header), sizeof(mp4_atom_header64) + atom_data_size);
 
   } else {
     atom_size = sizeof(mp4_atom_header) + atom_data_size;
@@ -1573,9 +1529,9 @@ Mp4Meta::mp4_update_mdat_atom(int64_t start_offset)
 uint32_t
 Mp4Meta::mp4_find_key_sample(uint32_t start_sample, Mp4Trak *trak)
 {
-  uint32_t            i;
-  uint32_t            sample, prev_sample, entries;
-  TSIOBufferReader    readerp;
+  uint32_t i;
+  uint32_t sample, prev_sample, entries;
+  TSIOBufferReader readerp;
 
   if (trak->stss_data.buffer == NULL)
     return start_sample;
@@ -1605,10 +1561,10 @@ found:
 void
 Mp4Meta::mp4_update_mvhd_duration()
 {
-  int64_t             need;
-  uint64_t            duration, cut;
-  mp4_mvhd_atom       *mvhd;
-  mp4_mvhd64_atom     mvhd64;
+  int64_t need;
+  uint64_t duration, cut;
+  mp4_mvhd_atom *mvhd;
+  mp4_mvhd64_atom mvhd64;
 
   need = TSIOBufferReaderAvail(mvhd_atom.reader);
 
@@ -1616,7 +1572,7 @@ Mp4Meta::mp4_update_mvhd_duration()
     need = sizeof(mp4_mvhd64_atom);
 
   IOBufferReaderCopy(mvhd_atom.reader, &mvhd64, need);
-  mvhd = (mp4_mvhd_atom*)&mvhd64;
+  mvhd = (mp4_mvhd_atom *)&mvhd64;
 
   if (this->rs > 0) {
     cut = (uint64_t)(this->rs * this->timescale / 1000);
@@ -1630,7 +1586,7 @@ Mp4Meta::mp4_update_mvhd_duration()
     duration -= cut;
     mp4_reader_set_32value(mvhd_atom.reader, offsetof(mp4_mvhd_atom, duration), duration);
 
-  } else {        // 64-bit duration
+  } else { // 64-bit duration
     duration = mp4_get_64value(mvhd64.duration);
     duration -= cut;
     mp4_reader_set_64value(mvhd_atom.reader, offsetof(mp4_mvhd64_atom, duration), duration);
@@ -1640,10 +1596,10 @@ Mp4Meta::mp4_update_mvhd_duration()
 void
 Mp4Meta::mp4_update_tkhd_duration(Mp4Trak *trak)
 {
-  int64_t             need, cut;
-  mp4_tkhd_atom       *tkhd_atom;
-  mp4_tkhd64_atom     tkhd64_atom;
-  int64_t             duration;
+  int64_t need, cut;
+  mp4_tkhd_atom *tkhd_atom;
+  mp4_tkhd64_atom tkhd64_atom;
+  int64_t duration;
 
   need = TSIOBufferReaderAvail(trak->tkhd_atom.reader);
 
@@ -1651,7 +1607,7 @@ Mp4Meta::mp4_update_tkhd_duration(Mp4Trak *trak)
     need = sizeof(mp4_tkhd64_atom);
 
   IOBufferReaderCopy(trak->tkhd_atom.reader, &tkhd64_atom, need);
-  tkhd_atom = (mp4_tkhd_atom*)&tkhd64_atom;
+  tkhd_atom = (mp4_tkhd_atom *)&tkhd64_atom;
 
   if (this->rs > 0) {
     cut = (uint64_t)(this->rs * this->timescale / 1000);
@@ -1675,16 +1631,16 @@ Mp4Meta::mp4_update_tkhd_duration(Mp4Trak *trak)
 void
 Mp4Meta::mp4_update_mdhd_duration(Mp4Trak *trak)
 {
-  int64_t             duration, need, cut;
-  mp4_mdhd_atom       *mdhd;
-  mp4_mdhd64_atom     mdhd64;
+  int64_t duration, need, cut;
+  mp4_mdhd_atom *mdhd;
+  mp4_mdhd64_atom mdhd64;
 
   need = TSIOBufferReaderAvail(trak->mdhd_atom.reader);
   if (need > (int64_t)sizeof(mp4_mdhd64_atom))
     need = sizeof(mp4_mdhd64_atom);
 
   IOBufferReaderCopy(trak->mdhd_atom.reader, &mdhd64, need);
-  mdhd = (mp4_mdhd_atom*)&mdhd64;
+  mdhd = (mp4_mdhd_atom *)&mdhd64;
 
   if (this->rs > 0) {
     cut = (uint64_t)(this->rs * trak->timescale / 1000);
@@ -1709,29 +1665,27 @@ Mp4Meta::mp4_update_mdhd_duration(Mp4Trak *trak)
 static void
 mp4_reader_set_32value(TSIOBufferReader readerp, int64_t offset, uint32_t n)
 {
-  int                 pos;
-  int64_t             avail, left;
-  TSIOBufferBlock     blk;
-  const char          *start;
-  u_char              *ptr;
+  int pos;
+  int64_t avail, left;
+  TSIOBufferBlock blk;
+  const char *start;
+  u_char *ptr;
 
   pos = 0;
   blk = TSIOBufferReaderStart(readerp);
 
   while (blk) {
-
     start = TSIOBufferBlockReadStart(blk, readerp, &avail);
 
     if (avail <= offset) {
       offset -= avail;
 
     } else {
-
       left = avail - offset;
-      ptr = (u_char*)(const_cast<char*> (start) + offset);
+      ptr = (u_char *)(const_cast<char *>(start) + offset);
 
       while (pos < 4 && left > 0) {
-        *ptr++ = (u_char) ((n) >> ((3 - pos) * 8));
+        *ptr++ = (u_char)((n) >> ((3 - pos) * 8));
         pos++;
         left--;
       }
@@ -1749,29 +1703,27 @@ mp4_reader_set_32value(TSIOBufferReader readerp, int64_t offset, uint32_t n)
 static void
 mp4_reader_set_64value(TSIOBufferReader readerp, int64_t offset, uint64_t n)
 {
-  int                 pos;
-  int64_t             avail, left;
-  TSIOBufferBlock     blk;
-  const char          *start;
-  u_char              *ptr;
+  int pos;
+  int64_t avail, left;
+  TSIOBufferBlock blk;
+  const char *start;
+  u_char *ptr;
 
   pos = 0;
   blk = TSIOBufferReaderStart(readerp);
 
   while (blk) {
-
     start = TSIOBufferBlockReadStart(blk, readerp, &avail);
 
     if (avail <= offset) {
       offset -= avail;
 
     } else {
-
       left = avail - offset;
-      ptr = (u_char*)(const_cast<char*> (start) + offset);
+      ptr = (u_char *)(const_cast<char *>(start) + offset);
 
       while (pos < 8 && left > 0) {
-        *ptr++ = (u_char) ((n) >> ((7 - pos) * 8));
+        *ptr++ = (u_char)((n) >> ((7 - pos) * 8));
         pos++;
         left--;
       }
@@ -1789,36 +1741,34 @@ mp4_reader_set_64value(TSIOBufferReader readerp, int64_t offset, uint64_t n)
 static uint32_t
 mp4_reader_get_32value(TSIOBufferReader readerp, int64_t offset)
 {
-  int                 pos;
-  int64_t             avail, left;
-  TSIOBufferBlock     blk;
-  const char          *start;
-  const u_char        *ptr;
-  u_char              res[4];
+  int pos;
+  int64_t avail, left;
+  TSIOBufferBlock blk;
+  const char *start;
+  const u_char *ptr;
+  u_char res[4];
 
   pos = 0;
   blk = TSIOBufferReaderStart(readerp);
 
   while (blk) {
-
     start = TSIOBufferBlockReadStart(blk, readerp, &avail);
 
     if (avail <= offset) {
       offset -= avail;
 
     } else {
-
       left = avail - offset;
-      ptr = (u_char*)(start + offset);
+      ptr = (u_char *)(start + offset);
 
       while (pos < 4 && left > 0) {
-        res[3-pos] = *ptr++;
+        res[3 - pos] = *ptr++;
         pos++;
         left--;
       }
 
       if (pos >= 4) {
-        return *(uint32_t*)res;
+        return *(uint32_t *)res;
       }
 
       offset = 0;
@@ -1833,36 +1783,34 @@ mp4_reader_get_32value(TSIOBufferReader readerp, int64_t offset)
 static uint64_t
 mp4_reader_get_64value(TSIOBufferReader readerp, int64_t offset)
 {
-  int                 pos;
-  int64_t             avail, left;
-  TSIOBufferBlock     blk;
-  const char          *start;
-  u_char              *ptr;
-  u_char              res[8];
+  int pos;
+  int64_t avail, left;
+  TSIOBufferBlock blk;
+  const char *start;
+  u_char *ptr;
+  u_char res[8];
 
   pos = 0;
   blk = TSIOBufferReaderStart(readerp);
 
   while (blk) {
-
     start = TSIOBufferBlockReadStart(blk, readerp, &avail);
 
     if (avail <= offset) {
       offset -= avail;
 
     } else {
-
       left = avail - offset;
-      ptr = (u_char*)(start + offset);
+      ptr = (u_char *)(start + offset);
 
       while (pos < 8 && left > 0) {
-        res[7-pos] = *ptr++;
+        res[7 - pos] = *ptr++;
         pos++;
         left--;
       }
 
       if (pos >= 8) {
-        return *(uint64_t*)res;
+        return *(uint64_t *)res;
       }
 
       offset = 0;
@@ -1877,9 +1825,9 @@ mp4_reader_get_64value(TSIOBufferReader readerp, int64_t offset)
 static int64_t
 IOBufferReaderCopy(TSIOBufferReader readerp, void *buf, int64_t length)
 {
-  int64_t             avail, need, n;
-  const char          *start;
-  TSIOBufferBlock     blk;
+  int64_t avail, need, n;
+  const char *start;
+  TSIOBufferBlock blk;
 
   n = 0;
   blk = TSIOBufferReaderStart(readerp);
@@ -1889,7 +1837,7 @@ IOBufferReaderCopy(TSIOBufferReader readerp, void *buf, int64_t length)
     need = length < avail ? length : avail;
 
     if (need > 0) {
-      memcpy((char*)buf + n, start, need);
+      memcpy((char *)buf + n, start, need);
       length -= need;
       n += need;
     }

http://git-wip-us.apache.org/repos/asf/trafficserver/blob/2c3f8790/plugins/experimental/mp4/mp4_meta.h
----------------------------------------------------------------------
diff --git a/plugins/experimental/mp4/mp4_meta.h b/plugins/experimental/mp4/mp4_meta.h
index d1d4963..3391428 100644
--- a/plugins/experimental/mp4/mp4_meta.h
+++ b/plugins/experimental/mp4/mp4_meta.h
@@ -29,49 +29,41 @@
 
 #include <ts/ts.h>
 
-#define MP4_MAX_TRAK_NUM            6
-#define MP4_MAX_BUFFER_SIZE         (10 * 1024 * 1024)
-#define MP4_MIN_BUFFER_SIZE         1024
-
-#define DEBUG_TAG                   "ts_mp4"
-
-#define mp4_set_atom_name(p, n1, n2, n3, n4)                              \
-    ((u_char *) (p))[4] = n1;                                             \
-    ((u_char *) (p))[5] = n2;                                             \
-    ((u_char *) (p))[6] = n3;                                             \
-    ((u_char *) (p))[7] = n4
-
-#define mp4_get_32value(p)                                                \
-    ( ((uint32_t) ((u_char *) (p))[0] << 24)                              \
-    + (           ((u_char *) (p))[1] << 16)                              \
-    + (           ((u_char *) (p))[2] << 8)                               \
-    + (           ((u_char *) (p))[3]) )
-
-#define mp4_set_32value(p, n)                                             \
-    ((u_char *) (p))[0] = (u_char) ((n) >> 24);                           \
-    ((u_char *) (p))[1] = (u_char) ((n) >> 16);                           \
-    ((u_char *) (p))[2] = (u_char) ((n) >> 8);                            \
-    ((u_char *) (p))[3] = (u_char)  (n)
-
-#define mp4_get_64value(p)                                                \
-    ( ((uint64_t) ((u_char *) (p))[0] << 56)                              \
-    + ((uint64_t) ((u_char *) (p))[1] << 48)                              \
-    + ((uint64_t) ((u_char *) (p))[2] << 40)                              \
-    + ((uint64_t) ((u_char *) (p))[3] << 32)                              \
-    + ((uint64_t) ((u_char *) (p))[4] << 24)                              \
-    + (           ((u_char *) (p))[5] << 16)                              \
-    + (           ((u_char *) (p))[6] << 8)                               \
-    + (           ((u_char *) (p))[7]) )
-
-#define mp4_set_64value(p, n)                                             \
-    ((u_char *) (p))[0] = (u_char) ((uint64_t) (n) >> 56);                \
-    ((u_char *) (p))[1] = (u_char) ((uint64_t) (n) >> 48);                \
-    ((u_char *) (p))[2] = (u_char) ((uint64_t) (n) >> 40);                \
-    ((u_char *) (p))[3] = (u_char) ((uint64_t) (n) >> 32);                \
-    ((u_char *) (p))[4] = (u_char) (           (n) >> 24);                \
-    ((u_char *) (p))[5] = (u_char) (           (n) >> 16);                \
-    ((u_char *) (p))[6] = (u_char) (           (n) >> 8);                 \
-    ((u_char *) (p))[7] = (u_char)             (n)
+#define MP4_MAX_TRAK_NUM 6
+#define MP4_MAX_BUFFER_SIZE (10 * 1024 * 1024)
+#define MP4_MIN_BUFFER_SIZE 1024
+
+#define DEBUG_TAG "ts_mp4"
+
+#define mp4_set_atom_name(p, n1, n2, n3, n4) \
+  ((u_char *)(p))[4] = n1;                   \
+  ((u_char *)(p))[5] = n2;                   \
+  ((u_char *)(p))[6] = n3;                   \
+  ((u_char *)(p))[7] = n4
+
+#define mp4_get_32value(p) \
+  (((uint32_t)((u_char *)(p))[0] << 24) + (((u_char *)(p))[1] << 16) + (((u_char *)(p))[2] << 8) + (((u_char *)(p))[3]))
+
+#define mp4_set_32value(p, n)               \
+  ((u_char *)(p))[0] = (u_char)((n) >> 24); \
+  ((u_char *)(p))[1] = (u_char)((n) >> 16); \
+  ((u_char *)(p))[2] = (u_char)((n) >> 8);  \
+  ((u_char *)(p))[3] = (u_char)(n)
+
+#define mp4_get_64value(p)                                                                                              \
+  (((uint64_t)((u_char *)(p))[0] << 56) + ((uint64_t)((u_char *)(p))[1] << 48) + ((uint64_t)((u_char *)(p))[2] << 40) + \
+   ((uint64_t)((u_char *)(p))[3] << 32) + ((uint64_t)((u_char *)(p))[4] << 24) + (((u_char *)(p))[5] << 16) +           \
+   (((u_char *)(p))[6] << 8) + (((u_char *)(p))[7]))
+
+#define mp4_set_64value(p, n)                         \
+  ((u_char *)(p))[0] = (u_char)((uint64_t)(n) >> 56); \
+  ((u_char *)(p))[1] = (u_char)((uint64_t)(n) >> 48); \
+  ((u_char *)(p))[2] = (u_char)((uint64_t)(n) >> 40); \
+  ((u_char *)(p))[3] = (u_char)((uint64_t)(n) >> 32); \
+  ((u_char *)(p))[4] = (u_char)((n) >> 24);           \
+  ((u_char *)(p))[5] = (u_char)((n) >> 16);           \
+  ((u_char *)(p))[6] = (u_char)((n) >> 8);            \
+  ((u_char *)(p))[7] = (u_char)(n)
 
 
 typedef enum {
@@ -106,223 +98,223 @@ typedef enum {
 
 
 typedef struct {
-  u_char    size[4];
-  u_char    name[4];
+  u_char size[4];
+  u_char name[4];
 } mp4_atom_header;
 
 typedef struct {
-  u_char    size[4];
-  u_char    name[4];
-  u_char    size64[8];
+  u_char size[4];
+  u_char name[4];
+  u_char size64[8];
 } mp4_atom_header64;
 
 typedef struct {
-  u_char    size[4];
-  u_char    name[4];
-  u_char    version[1];
-  u_char    flags[3];
-  u_char    creation_time[4];
-  u_char    modification_time[4];
-  u_char    timescale[4];
-  u_char    duration[4];
-  u_char    rate[4];
-  u_char    volume[2];
-  u_char    reserved[10];
-  u_char    matrix[36];
-  u_char    preview_time[4];
-  u_char    preview_duration[4];
-  u_char    poster_time[4];
-  u_char    selection_time[4];
-  u_char    selection_duration[4];
-  u_char    current_time[4];
-  u_char    next_track_id[4];
+  u_char size[4];
+  u_char name[4];
+  u_char version[1];
+  u_char flags[3];
+  u_char creation_time[4];
+  u_char modification_time[4];
+  u_char timescale[4];
+  u_char duration[4];
+  u_char rate[4];
+  u_char volume[2];
+  u_char reserved[10];
+  u_char matrix[36];
+  u_char preview_time[4];
+  u_char preview_duration[4];
+  u_char poster_time[4];
+  u_char selection_time[4];
+  u_char selection_duration[4];
+  u_char current_time[4];
+  u_char next_track_id[4];
 } mp4_mvhd_atom;
 
 typedef struct {
-  u_char    size[4];
-  u_char    name[4];
-  u_char    version[1];
-  u_char    flags[3];
-  u_char    creation_time[8];
-  u_char    modification_time[8];
-  u_char    timescale[4];
-  u_char    duration[8];
-  u_char    rate[4];
-  u_char    volume[2];
-  u_char    reserved[10];
-  u_char    matrix[36];
-  u_char    preview_time[4];
-  u_char    preview_duration[4];
-  u_char    poster_time[4];
-  u_char    selection_time[4];
-  u_char    selection_duration[4];
-  u_char    current_time[4];
-  u_char    next_track_id[4];
+  u_char size[4];
+  u_char name[4];
+  u_char version[1];
+  u_char flags[3];
+  u_char creation_time[8];
+  u_char modification_time[8];
+  u_char timescale[4];
+  u_char duration[8];
+  u_char rate[4];
+  u_char volume[2];
+  u_char reserved[10];
+  u_char matrix[36];
+  u_char preview_time[4];
+  u_char preview_duration[4];
+  u_char poster_time[4];
+  u_char selection_time[4];
+  u_char selection_duration[4];
+  u_char current_time[4];
+  u_char next_track_id[4];
 } mp4_mvhd64_atom;
 
 typedef struct {
-  u_char    size[4];
-  u_char    name[4];
-  u_char    version[1];
-  u_char    flags[3];
-  u_char    creation_time[4];
-  u_char    modification_time[4];
-  u_char    track_id[4];
-  u_char    reserved1[4];
-  u_char    duration[4];
-  u_char    reserved2[8];
-  u_char    layer[2];
-  u_char    group[2];
-  u_char    volume[2];
-  u_char    reverved3[2];
-  u_char    matrix[36];
-  u_char    width[4];
-  u_char    heigth[4];
+  u_char size[4];
+  u_char name[4];
+  u_char version[1];
+  u_char flags[3];
+  u_char creation_time[4];
+  u_char modification_time[4];
+  u_char track_id[4];
+  u_char reserved1[4];
+  u_char duration[4];
+  u_char reserved2[8];
+  u_char layer[2];
+  u_char group[2];
+  u_char volume[2];
+  u_char reverved3[2];
+  u_char matrix[36];
+  u_char width[4];
+  u_char heigth[4];
 } mp4_tkhd_atom;
 
 typedef struct {
-  u_char    size[4];
-  u_char    name[4];
-  u_char    version[1];
-  u_char    flags[3];
-  u_char    creation_time[8];
-  u_char    modification_time[8];
-  u_char    track_id[4];
-  u_char    reserved1[4];
-  u_char    duration[8];
-  u_char    reserved2[8];
-  u_char    layer[2];
-  u_char    group[2];
-  u_char    volume[2];
-  u_char    reverved3[2];
-  u_char    matrix[36];
-  u_char    width[4];
-  u_char    heigth[4];
+  u_char size[4];
+  u_char name[4];
+  u_char version[1];
+  u_char flags[3];
+  u_char creation_time[8];
+  u_char modification_time[8];
+  u_char track_id[4];
+  u_char reserved1[4];
+  u_char duration[8];
+  u_char reserved2[8];
+  u_char layer[2];
+  u_char group[2];
+  u_char volume[2];
+  u_char reverved3[2];
+  u_char matrix[36];
+  u_char width[4];
+  u_char heigth[4];
 } mp4_tkhd64_atom;
 
 typedef struct {
-  u_char    size[4];
-  u_char    name[4];
-  u_char    version[1];
-  u_char    flags[3];
-  u_char    creation_time[4];
-  u_char    modification_time[4];
-  u_char    timescale[4];
-  u_char    duration[4];
-  u_char    language[2];
-  u_char    quality[2];
+  u_char size[4];
+  u_char name[4];
+  u_char version[1];
+  u_char flags[3];
+  u_char creation_time[4];
+  u_char modification_time[4];
+  u_char timescale[4];
+  u_char duration[4];
+  u_char language[2];
+  u_char quality[2];
 } mp4_mdhd_atom;
 
 typedef struct {
-  u_char    size[4];
-  u_char    name[4];
-  u_char    version[1];
-  u_char    flags[3];
-  u_char    creation_time[8];
-  u_char    modification_time[8];
-  u_char    timescale[4];
-  u_char    duration[8];
-  u_char    language[2];
-  u_char    quality[2];
+  u_char size[4];
+  u_char name[4];
+  u_char version[1];
+  u_char flags[3];
+  u_char creation_time[8];
+  u_char modification_time[8];
+  u_char timescale[4];
+  u_char duration[8];
+  u_char language[2];
+  u_char quality[2];
 } mp4_mdhd64_atom;
 
 typedef struct {
-  u_char    size[4];
-  u_char    name[4];
-  u_char    version[1];
-  u_char    flags[3];
-  u_char    entries[4];
-
-  u_char    media_size[4];
-  u_char    media_name[4];
+  u_char size[4];
+  u_char name[4];
+  u_char version[1];
+  u_char flags[3];
+  u_char entries[4];
+
+  u_char media_size[4];
+  u_char media_name[4];
 } mp4_stsd_atom;
 
 typedef struct {
-  u_char    size[4];
-  u_char    name[4];
-  u_char    version[1];
-  u_char    flags[3];
-  u_char    entries[4];
+  u_char size[4];
+  u_char name[4];
+  u_char version[1];
+  u_char flags[3];
+  u_char entries[4];
 } mp4_stts_atom;
 
 typedef struct {
-  u_char    count[4];
-  u_char    duration[4];
+  u_char count[4];
+  u_char duration[4];
 } mp4_stts_entry;
 
 typedef struct {
-  u_char    size[4];
-  u_char    name[4];
-  u_char    version[1];
-  u_char    flags[3];
-  u_char    entries[4];
+  u_char size[4];
+  u_char name[4];
+  u_char version[1];
+  u_char flags[3];
+  u_char entries[4];
 } mp4_stss_atom;
 
 typedef struct {
-  u_char    size[4];
-  u_char    name[4];
-  u_char    version[1];
-  u_char    flags[3];
-  u_char    entries[4];
+  u_char size[4];
+  u_char name[4];
+  u_char version[1];
+  u_char flags[3];
+  u_char entries[4];
 } mp4_ctts_atom;
 
 typedef struct {
-  u_char    count[4];
-  u_char    offset[4];
+  u_char count[4];
+  u_char offset[4];
 } mp4_ctts_entry;
 
 typedef struct {
-  u_char    size[4];
-  u_char    name[4];
-  u_char    version[1];
-  u_char    flags[3];
-  u_char    entries[4];
+  u_char size[4];
+  u_char name[4];
+  u_char version[1];
+  u_char flags[3];
+  u_char entries[4];
 } mp4_stsc_atom;
 
 typedef struct {
-  u_char    chunk[4];
-  u_char    samples[4];
-  u_char    id[4];
+  u_char chunk[4];
+  u_char samples[4];
+  u_char id[4];
 } mp4_stsc_entry;
 
 typedef struct {
-  u_char    size[4];
-  u_char    name[4];
-  u_char    version[1];
-  u_char    flags[3];
-  u_char    uniform_size[4];
-  u_char    entries[4];
+  u_char size[4];
+  u_char name[4];
+  u_char version[1];
+  u_char flags[3];
+  u_char uniform_size[4];
+  u_char entries[4];
 } mp4_stsz_atom;
 
 typedef struct {
-  u_char    size[4];
-  u_char    name[4];
-  u_char    version[1];
-  u_char    flags[3];
-  u_char    entries[4];
+  u_char size[4];
+  u_char name[4];
+  u_char version[1];
+  u_char flags[3];
+  u_char entries[4];
 } mp4_stco_atom;
 
 typedef struct {
-  u_char    size[4];
-  u_char    name[4];
-  u_char    version[1];
-  u_char    flags[3];
-  u_char    entries[4];
+  u_char size[4];
+  u_char name[4];
+  u_char version[1];
+  u_char flags[3];
+  u_char entries[4];
 } mp4_co64_atom;
 
 class Mp4Meta;
-typedef int (Mp4Meta::*Mp4AtomHandler) (int64_t atom_header_size, int64_t atom_data_size);
+typedef int (Mp4Meta::*Mp4AtomHandler)(int64_t atom_header_size, int64_t atom_data_size);
 
 typedef struct {
-  const char      *name;
-  Mp4AtomHandler  handler;
+  const char *name;
+  Mp4AtomHandler handler;
 } mp4_atom_handler;
 
 
 class BufferHandle
 {
 public:
-  BufferHandle(): buffer(NULL), reader(NULL) { };
+  BufferHandle() : buffer(NULL), reader(NULL){};
 
   ~BufferHandle()
   {
@@ -338,90 +330,85 @@ public:
   }
 
 public:
-  TSIOBuffer          buffer;
-  TSIOBufferReader    reader;
+  TSIOBuffer buffer;
+  TSIOBufferReader reader;
 };
 
 class Mp4Trak
 {
 public:
   Mp4Trak()
-    : timescale(0), duration(0), time_to_sample_entries(0), sample_to_chunk_entries(0),
-      sync_samples_entries(0), composition_offset_entries(0), sample_sizes_entries(0),
-      chunks(0), start_sample(0), start_chunk(0), chunk_samples(0),
-      chunk_samples_size(0), start_offset(0), tkhd_size(0), mdhd_size(0), hdlr_size(0),
-      vmhd_size(0), smhd_size(0), dinf_size(0), size(0)
+    : timescale(0), duration(0), time_to_sample_entries(0), sample_to_chunk_entries(0), sync_samples_entries(0),
+      composition_offset_entries(0), sample_sizes_entries(0), chunks(0), start_sample(0), start_chunk(0), chunk_samples(0),
+      chunk_samples_size(0), start_offset(0), tkhd_size(0), mdhd_size(0), hdlr_size(0), vmhd_size(0), smhd_size(0), dinf_size(0),
+      size(0)
   {
     memset(&stsc_chunk_entry, 0, sizeof(mp4_stsc_entry));
   }
 
-  ~Mp4Trak()
-  {
-  }
+  ~Mp4Trak() {}
 
 public:
-  uint32_t        timescale;
-  int64_t         duration;
-
-  uint32_t        time_to_sample_entries;       // stsc
-  uint32_t        sample_to_chunk_entries;      // stsc
-  uint32_t        sync_samples_entries;         // stss
-  uint32_t        composition_offset_entries;   // ctts
-  uint32_t        sample_sizes_entries;         // stsz
-  uint32_t        chunks;                       // stco, co64
-
-  uint32_t        start_sample;
-  uint32_t        start_chunk;
-  uint32_t        chunk_samples;
-  uint64_t        chunk_samples_size;
-  off_t           start_offset;
-
-  size_t          tkhd_size;
-  size_t          mdhd_size;
-  size_t          hdlr_size;
-  size_t          vmhd_size;
-  size_t          smhd_size;
-  size_t          dinf_size;
-  size_t          size;
-
-  BufferHandle    trak_atom;
-  BufferHandle    tkhd_atom;
-  BufferHandle    mdia_atom;
-  BufferHandle    mdhd_atom;
-  BufferHandle    hdlr_atom;
-  BufferHandle    minf_atom;
-  BufferHandle    vmhd_atom;
-  BufferHandle    smhd_atom;
-  BufferHandle    dinf_atom;
-  BufferHandle    stbl_atom;
-  BufferHandle    stsd_atom;
-  BufferHandle    stts_atom;
-  BufferHandle    stts_data;
-  BufferHandle    stss_atom;
-  BufferHandle    stss_data;
-  BufferHandle    ctts_atom;
-  BufferHandle    ctts_data;
-  BufferHandle    stsc_atom;
-  BufferHandle    stsc_chunk;
-  BufferHandle    stsc_data;
-  BufferHandle    stsz_atom;
-  BufferHandle    stsz_data;
-  BufferHandle    stco_atom;
-  BufferHandle    stco_data;
-  BufferHandle    co64_atom;
-  BufferHandle    co64_data;
-
-  mp4_stsc_entry  stsc_chunk_entry;
+  uint32_t timescale;
+  int64_t duration;
+
+  uint32_t time_to_sample_entries;     // stsc
+  uint32_t sample_to_chunk_entries;    // stsc
+  uint32_t sync_samples_entries;       // stss
+  uint32_t composition_offset_entries; // ctts
+  uint32_t sample_sizes_entries;       // stsz
+  uint32_t chunks;                     // stco, co64
+
+  uint32_t start_sample;
+  uint32_t start_chunk;
+  uint32_t chunk_samples;
+  uint64_t chunk_samples_size;
+  off_t start_offset;
+
+  size_t tkhd_size;
+  size_t mdhd_size;
+  size_t hdlr_size;
+  size_t vmhd_size;
+  size_t smhd_size;
+  size_t dinf_size;
+  size_t size;
+
+  BufferHandle trak_atom;
+  BufferHandle tkhd_atom;
+  BufferHandle mdia_atom;
+  BufferHandle mdhd_atom;
+  BufferHandle hdlr_atom;
+  BufferHandle minf_atom;
+  BufferHandle vmhd_atom;
+  BufferHandle smhd_atom;
+  BufferHandle dinf_atom;
+  BufferHandle stbl_atom;
+  BufferHandle stsd_atom;
+  BufferHandle stts_atom;
+  BufferHandle stts_data;
+  BufferHandle stss_atom;
+  BufferHandle stss_data;
+  BufferHandle ctts_atom;
+  BufferHandle ctts_data;
+  BufferHandle stsc_atom;
+  BufferHandle stsc_chunk;
+  BufferHandle stsc_data;
+  BufferHandle stsz_atom;
+  BufferHandle stsz_data;
+  BufferHandle stco_atom;
+  BufferHandle stco_data;
+  BufferHandle co64_atom;
+  BufferHandle co64_data;
+
+  mp4_stsc_entry stsc_chunk_entry;
 };
 
 class Mp4Meta
 {
 public:
   Mp4Meta()
-    : start(0), cl(0), content_length(0), meta_atom_size(0),
-      meta_avail(0), wait_next(0), need_size(0), rs(0), rate(0),
-      ftyp_size(0), moov_size(0), start_pos(0), timescale(0), trak_num(0),
-      passed(0), meta_complete(false)
+    : start(0), cl(0), content_length(0), meta_atom_size(0), meta_avail(0), wait_next(0), need_size(0), rs(0), rate(0),
+      ftyp_size(0), moov_size(0), start_pos(0), timescale(0), trak_num(0), passed(0), meta_complete(false)
   {
     meta_buffer = TSIOBufferCreate();
     meta_reader = TSIOBufferReaderAlloc(meta_buffer);
@@ -429,7 +416,7 @@ public:
 
   ~Mp4Meta()
   {
-    uint32_t    i;
+    uint32_t i;
 
     for (i = 0; i < trak_num; i++)
       delete trak_vec[i];
@@ -449,7 +436,7 @@ public:
 
   int post_process_meta();
   void mp4_meta_consume(int64_t size);
-  int mp4_atom_next(int64_t atom_size, bool wait=false);
+  int mp4_atom_next(int64_t atom_size, bool wait = false);
 
   int mp4_read_atom(mp4_atom_handler *atom, int64_t size);
   int parse_root_atoms();
@@ -505,41 +492,40 @@ public:
   void mp4_update_mdhd_duration(Mp4Trak *trak);
 
 public:
-
-  int64_t             start;                  // requested start time, measured in milliseconds.
-  int64_t             cl;                     // the total size of the mp4 file
-  int64_t             content_length;         // the size of the new mp4 file
-  int64_t             meta_atom_size;
-
-  TSIOBuffer          meta_buffer;            // meta data to be parsed
-  TSIOBufferReader    meta_reader;
-
-  int64_t             meta_avail;
-  int64_t             wait_next;
-  int64_t             need_size;
-
-  BufferHandle        meta_atom;
-  BufferHandle        ftyp_atom;
-  BufferHandle        moov_atom;
-  BufferHandle        mvhd_atom;
-  BufferHandle        mdat_atom;
-  BufferHandle        mdat_data;
-  BufferHandle        out_handle;
-
-  Mp4Trak             *trak_vec[MP4_MAX_TRAK_NUM];
-
-  double              rs;
-  double              rate;
-
-  int64_t             ftyp_size;
-  int64_t             moov_size;
-  int64_t             start_pos;              // start position of the new mp4 file
-  uint32_t            timescale;
-  uint32_t            trak_num;
-  int64_t             passed;
-
-  u_char              mdat_atom_header[16];
-  bool                meta_complete;
+  int64_t start;          // requested start time, measured in milliseconds.
+  int64_t cl;             // the total size of the mp4 file
+  int64_t content_length; // the size of the new mp4 file
+  int64_t meta_atom_size;
+
+  TSIOBuffer meta_buffer; // meta data to be parsed
+  TSIOBufferReader meta_reader;
+
+  int64_t meta_avail;
+  int64_t wait_next;
+  int64_t need_size;
+
+  BufferHandle meta_atom;
+  BufferHandle ftyp_atom;
+  BufferHandle moov_atom;
+  BufferHandle mvhd_atom;
+  BufferHandle mdat_atom;
+  BufferHandle mdat_data;
+  BufferHandle out_handle;
+
+  Mp4Trak *trak_vec[MP4_MAX_TRAK_NUM];
+
+  double rs;
+  double rate;
+
+  int64_t ftyp_size;
+  int64_t moov_size;
+  int64_t start_pos; // start position of the new mp4 file
+  uint32_t timescale;
+  uint32_t trak_num;
+  int64_t passed;
+
+  u_char mdat_atom_header[16];
+  bool meta_complete;
 };
 
 #endif