]> git.sesse.net Git - ffmpeg/blobdiff - libavformat/segment.c
Merge commit 'ddc589ce98c2bba1e59318b5b0224717325eac46'
[ffmpeg] / libavformat / segment.c
index 2d42fe352bb311af4aa564a6cd16474b9d5da09d..05e29d427a9e9247b03ac54ffcc0aa927c467ce7 100644 (file)
@@ -319,6 +319,10 @@ static int segment_end(AVFormatContext *s, int write_trailer, int is_last)
         avio_flush(seg->list_pb);
     }
 
+    av_log(s, AV_LOG_VERBOSE, "segment:'%s' count:%d ended\n",
+           seg->avf->filename, seg->segment_count);
+    seg->segment_count++;
+
 end:
     avio_close(oc->pb);
 
@@ -659,12 +663,10 @@ static int seg_write_packet(AVFormatContext *s, AVPacket *pkt)
          (pkt->pts != AV_NOPTS_VALUE &&
           av_compare_ts(pkt->pts, st->time_base,
                         end_pts-seg->time_delta, AV_TIME_BASE_Q) >= 0))) {
-        ret = segment_end(s, seg->individual_header_trailer, 0);
-
-        if (!ret)
-            ret = segment_start(s, seg->individual_header_trailer);
+        if ((ret = segment_end(s, seg->individual_header_trailer, 0)) < 0)
+            goto fail;
 
-        if (ret)
+        if ((ret = segment_start(s, seg->individual_header_trailer)) < 0)
             goto fail;
 
         oc = seg->avf;