Merge commit '88058d9a994f42e4e9ed4e67baf696bbfe53128c'
authorMichael Niedermayer <michaelni@gmx.at>
Thu, 11 Oct 2012 12:28:18 +0000 (14:28 +0200)
committerMichael Niedermayer <michaelni@gmx.at>
Thu, 11 Oct 2012 12:28:18 +0000 (14:28 +0200)
* commit '88058d9a994f42e4e9ed4e67baf696bbfe53128c':
  vc1dec: Set chroma reference field from REFFIELD for 1REF field pictures
  segment: support applehttp style list

Conflicts:
libavformat/segment.c

Merged-by: Michael Niedermayer <michaelni@gmx.at>
libavcodec/vc1dec.c
libavformat/segment.c

index 33ca4bf..f954a2a 100644 (file)
@@ -795,6 +795,7 @@ static void vc1_mc_4mv_chroma(VC1Context *v, int dir)
     /* calculate chroma MV vector from four luma MVs */
     if (!v->field_mode || (v->field_mode && !v->numref)) {
         valid_count = get_chroma_mv(mvx, mvy, intra, 0, &tx, &ty);
+        chroma_ref_type = v->reffield;
         if (!valid_count) {
             s->current_picture.f.motion_val[1][s->block_index[0] + v->blocks_off][0] = 0;
             s->current_picture.f.motion_val[1][s->block_index[0] + v->blocks_off][1] = 0;
index ad9770e..b6697e0 100644 (file)
@@ -494,13 +494,15 @@ static int seg_write_trailer(struct AVFormatContext *s)
     AVFormatContext *oc = seg->avf;
     int ret;
     if (!seg->write_header_trailer) {
-        ret = segment_end(s, 0);
+        if ((ret = segment_end(s, 0)) < 0)
+            goto fail;
         open_null_ctx(&oc->pb);
-        av_write_trailer(oc);
+        ret = av_write_trailer(oc);
         close_null_ctx(oc->pb);
     } else {
         ret = segment_end(s, 1);
     }
+fail:
     if (seg->list)
         segment_list_close(s);
 
@@ -527,6 +529,7 @@ static const AVOption options[] = {
     { "csv",  "csv format",      0, AV_OPT_TYPE_CONST, {.i64=LIST_TYPE_CSV  }, INT_MIN, INT_MAX, 0, "list_type" },
     { "ext",  "extended format", 0, AV_OPT_TYPE_CONST, {.i64=LIST_TYPE_EXT  }, INT_MIN, INT_MAX, 0, "list_type" },
     { "m3u8", "M3U8 format",     0, AV_OPT_TYPE_CONST, {.i64=LIST_TYPE_M3U8 }, INT_MIN, INT_MAX, 0, "list_type" },
+    { "hls", "Apple HTTP Live Streaming compatible",     0, AV_OPT_TYPE_CONST, {.i64=LIST_TYPE_M3U8 }, INT_MIN, INT_MAX, 0, "list_type" },
     { "segment_time",      "set segment duration",                       OFFSET(time_str),AV_OPT_TYPE_STRING, {.str = NULL},  0, 0,       E },
     { "segment_time_delta","set approximation value used for the segment times", OFFSET(time_delta_str), AV_OPT_TYPE_STRING, {.str = "0"}, 0, 0, E },
     { "segment_times",     "set segment split time points",              OFFSET(times_str),AV_OPT_TYPE_STRING,{.str = NULL},  0, 0,       E },