diff mbox

[FFmpeg-devel] avformat/segment: fix muxing tmcd tracks in MOV

Message ID 3c1934eb-df13-00f8-baee-22f136500eee@gyani.pro
State Accepted
Commit 91f5950f833fd48f12de769374129334f8c6b237
Headers show

Commit Message

Gyan Doshi June 18, 2019, 2:09 p.m. UTC
Fixes crash when muxing tmcd tracks.

Gyan
From d056439a43989c4f2f2e2fdf23ed1e780b56f7f4 Mon Sep 17 00:00:00 2001
From: Gyan Doshi <ffmpeg@gyani.pro>
Date: Tue, 18 Jun 2019 19:22:16 +0530
Subject: [PATCH] avformat/segment: fix muxing tmcd tracks in MOV

avformat/movenc still relies on AVCodecContext time_base to mux tmcd
tracks and segment muxer did not copy that field to inner streams
leading to SIGFPE in the child muxer instance.
---
 libavformat/segment.c | 6 ++++++
 1 file changed, 6 insertions(+)

Comments

Gyan Doshi June 20, 2019, 4:31 a.m. UTC | #1
On 18-06-2019 07:39 PM, Gyan wrote:
>
> Fixes crash when muxing tmcd tracks.

Will push soon.
Gyan Doshi June 20, 2019, 12:35 p.m. UTC | #2
On 20-06-2019 10:01 AM, Gyan wrote:
>
>
> On 18-06-2019 07:39 PM, Gyan wrote:
>>
>> Fixes crash when muxing tmcd tracks.
>
> Will push soon.

Pushed as 91f5950f833fd48f12de769374129334f8c6b237

Gyan
diff mbox

Patch

diff --git a/libavformat/segment.c b/libavformat/segment.c
index 99f048aa39..e3082063d8 100644
--- a/libavformat/segment.c
+++ b/libavformat/segment.c
@@ -181,6 +181,12 @@  static int segment_mux_init(AVFormatContext *s)
         st->sample_aspect_ratio = s->streams[i]->sample_aspect_ratio;
         st->time_base = s->streams[i]->time_base;
         st->avg_frame_rate = s->streams[i]->avg_frame_rate;
+#if FF_API_LAVF_AVCTX
+FF_DISABLE_DEPRECATION_WARNINGS
+        if (s->streams[i]->codecpar->codec_tag == MKTAG('t','m','c','d'))
+            st->codec->time_base = s->streams[i]->codec->time_base;
+FF_ENABLE_DEPRECATION_WARNINGS
+#endif
         av_dict_copy(&st->metadata, s->streams[i]->metadata, 0);
     }