From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from ffbox0-bg.ffmpeg.org (ffbox0-bg.ffmpeg.org [79.124.17.100]) by master.gitmailbox.com (Postfix) with ESMTPS id D2F384E283 for ; Thu, 15 Jan 2026 22:57:15 +0000 (UTC) Authentication-Results: ffbox; dkim=fail (body hash mismatch (got b'5bo0jYCU4wSMAqBrf4PlYiGRGTLix+U3Usf4evFstrI=', expected b'7E2GA5ebg51MxNuFOU6JtvKNQP2SrKoR2gMDsjCxOAo=')) header.d=ffmpeg.org header.i=@ffmpeg.org header.a=rsa-sha256 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=ffmpeg.org; i=@ffmpeg.org; q=dns/txt; s=mail; t=1768517779; h=mime-version : to : date : message-id : reply-to : subject : list-id : list-archive : list-archive : list-help : list-owner : list-post : list-subscribe : list-unsubscribe : from : cc : content-type : content-transfer-encoding : from; bh=5bo0jYCU4wSMAqBrf4PlYiGRGTLix+U3Usf4evFstrI=; b=KZfqSz7zu7np1/2LtBCzqIMWTdoBcY6/aK29pb76m7bXbHeKHXqA8Z0LEKOt5URwxG27U SVkE8C2vN9abNdii6uMTdmeaT6XhJMUT7jrlkARDjJVWMKdCnNSrE4ODsiSxRi9mS5uuQAA inedBNFxHQLvsb1k/dBvHMBCZj6gu1WlJ0U7IPXZAcfbYKr+AVP8IHgCYJQu14/3aaSpcrl QMKM3l2Ies9JJkEzKzuDPr49mK+od/xKgjDEK9NaQA0fBmiKwThkLFmBhTevo7lx1My61rC urU543DJ9+jnFvYReqK7v8+Vv6Ls+bHsaWg1Ny8iNcXaYIfr1byO3Wlw9M+A== Received: from [172.20.0.4] (unknown [172.20.0.4]) by ffbox0-bg.ffmpeg.org (Postfix) with ESMTP id 23358690E46; Fri, 16 Jan 2026 00:56:19 +0200 (EET) ARC-Seal: i=1; cv=none; a=rsa-sha256; d=ffmpeg.org; s=arc; t=1768517757; b=smXrVskyTJrkc8uRn6LLkKfTMOiIsKf5q/qRwdONCO1P5sq2d3GqPmr1gWj2kCi9K+wrU EUVya+Nk1cNFGiWlivEh4Ba3yh37Ofyht/Gm4rcI4hQ+cOtQEI80u5geh5dl7G7R107EZrY K1mVDainHKIgCInJ0LLVObIPkV0Rw3r3f8EV/lHa3IFVCUK68TBUzhy8h1Bjj53my/S2nap J4pSZQYbYVX0xmYUJ3xGctiEUay+x/5Pz8SKml76DUQm6vLSAHh7nCuNxBrXcnUkOvhL8Rr JkDr5KU1bd++d1O3Bu4xXYE5GDJyZIRZLWO6wsbv/dLNZjBAYBfea9E5FDdA== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=ffmpeg.org; s=arc; t=1768517757; h=from : sender : reply-to : subject : date : message-id : to : cc : mime-version : content-type : content-transfer-encoding : content-id : content-description : resent-date : resent-from : resent-sender : resent-to : resent-cc : resent-message-id : in-reply-to : references : list-id : list-help : list-unsubscribe : list-subscribe : list-post : list-owner : list-archive; bh=TjXPBVm28PBGw25vetDbQVZd4t7vL4CeoiBQVqoCYr0=; b=LXxPqHuowGHtFjWi7l55EocfgWcKqnO6T9MDnBBusnBs2D6y14G1npOP7NueJsZRQCywH m2lzYsRa2bfFiCv6w4r++uw06yYwNb8eLrKKuXBMTsQJrnUgGIRWccl5rz7Zp3srpK1dtVk j4EVWA8Z9o2cvfgm7k/MaYMncd45eMmTdfwwJ+pVV+1fkz5ocrLJEz64hvfJtRp4Ph+N/BF cVVfaGBtsHb/Rbsb+y2GdRqfQo//rx2pMkadbjysVBUYqv0+5kRL5vGoT1nK2nRaxJ0lBEM X8u4MjK0J3GlCsiwwzjMZWS8+VSoBXjaB9f0Rt2YLN098dnzDdtWI7cwMMBQ== ARC-Authentication-Results: i=1; ffmpeg.org; dkim=pass header.d=ffmpeg.org header.i=@ffmpeg.org; arc=none; dmarc=pass header.from=ffmpeg.org policy.dmarc=quarantine Authentication-Results: ffmpeg.org; dkim=pass header.d=ffmpeg.org header.i=@ffmpeg.org; arc=none (Message is not ARC signed); dmarc=pass (Used From Domain Record) header.from=ffmpeg.org policy.dmarc=quarantine DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=ffmpeg.org; i=@ffmpeg.org; q=dns/txt; s=mail; t=1768517746; h=content-type : mime-version : content-transfer-encoding : from : to : reply-to : subject : date : from; bh=7E2GA5ebg51MxNuFOU6JtvKNQP2SrKoR2gMDsjCxOAo=; b=ge/ml2GSdmK/LKFJObdhdwdFKlr4MvfXSjdKPj8pJek1eKzyO64Ppb78TAW8tBUXh+NS5 PrfMb55Xbz9k+c0XcBha+urMpO0Cox3rwLBrRE0Jh1LuqaHSaQgKtasxODvwayt7KhQfN27 YkNDXGgQzXix1+cfeQnEMFqpeNblhC5kmH/76MvSo9B8L3j6xb7pQt/z8GQVUPRFAVDTpdI +lajpX/T/Gpy4kM1DbOUx3UV/xHLDaokTjOBa7ZnoCwXEKTN6mUTfNK1mOn3HUIwLtPl6OS h7YahxZuwyMi+aVR8BJT6i4B7DkC81DFKFTu38c/PjeY96MFR49qpV2wGWPA== Received: from 69dab402ede7 (code.ffmpeg.org [188.245.149.3]) by ffbox0-bg.ffmpeg.org (Postfix) with ESMTPS id B324F690DA6 for ; Fri, 16 Jan 2026 00:55:46 +0200 (EET) MIME-Version: 1.0 To: ffmpeg-devel@ffmpeg.org Date: Thu, 15 Jan 2026 22:55:46 -0000 Message-ID: <176851774696.25.1613431023617096194@4457048688e7> Message-ID-Hash: BFPOQC3K3QHDNNGT7QZUYBNEOMDNM2T6 X-Message-ID-Hash: BFPOQC3K3QHDNNGT7QZUYBNEOMDNM2T6 X-MailFrom: code@ffmpeg.org X-Mailman-Rule-Hits: nonmember-moderation X-Mailman-Rule-Misses: dmarc-mitigation; no-senders; approved; loop; banned-address; header-match-ffmpeg-devel.ffmpeg.org-0; header-match-ffmpeg-devel.ffmpeg.org-1; header-match-ffmpeg-devel.ffmpeg.org-2; header-match-ffmpeg-devel.ffmpeg.org-3; emergency; member-moderation X-Mailman-Version: 3.3.10 Precedence: list Reply-To: FFmpeg development discussions and patches Subject: [FFmpeg-devel] [PR] avformat/dashenc: fix SegmentTemplate timescale with use_timeline 0 (PR #21481) List-Id: FFmpeg development discussions and patches Archived-At: Archived-At: List-Archive: List-Archive: List-Help: List-Owner: List-Post: List-Subscribe: List-Unsubscribe: From: zotan via ffmpeg-devel Cc: zotan Content-Type: text/plain; charset="us-ascii" Content-Transfer-Encoding: 7bit Archived-At: List-Archive: List-Post: PR #21481 opened by zotan URL: https://code.ffmpeg.org/FFmpeg/FFmpeg/pulls/21481 Patch URL: https://code.ffmpeg.org/FFmpeg/FFmpeg/pulls/21481.patch The DASH specification stipulates that "All Representations shall have equal timescale values in all @timescale attributes and 'tkhd' timescale fields in Initialization Segments". This commit makes sure ffmpeg implements this behavior. This fixes https://trac.ffmpeg.org/ticket/10134 >>From bddd0b670aa4383ce868257775b053e2bea8751d Mon Sep 17 00:00:00 2001 From: Laura Hausmann Date: Thu, 15 Jan 2026 23:37:12 +0100 Subject: [PATCH] avformat/dashenc: fix SegmentTemplate timescale with use_timeline 0 The DASH specification stipulates that "All Representations shall have equal timescale values in all @timescale attributes and 'tkhd' timescale fields in Initialization Segments". This commit makes sure ffmpeg implements this behavior. --- libavformat/dashenc.c | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/libavformat/dashenc.c b/libavformat/dashenc.c index da7725fc3f..425d489460 100644 --- a/libavformat/dashenc.c +++ b/libavformat/dashenc.c @@ -518,10 +518,10 @@ static void output_segment_list(OutputStream *os, AVIOContext *out, AVFormatCont get_start_index_number(os, c, &start_index, &start_number); if (c->use_template) { - int timescale = c->use_timeline ? os->ctx->streams[0]->time_base.den : AV_TIME_BASE; + int timescale = os->ctx->streams[0]->time_base.den; avio_printf(out, "\t\t\t\tuse_timeline) { - avio_printf(out, "duration=\"%"PRId64"\" ", os->seg_duration); + avio_printf(out, "duration=\"%"PRId64"\" ", os->seg_duration / AV_TIME_BASE * timescale); if (c->streaming && os->availability_time_offset) avio_printf(out, "availabilityTimeOffset=\"%.3f\" ", os->availability_time_offset); -- 2.52.0 _______________________________________________ ffmpeg-devel mailing list -- ffmpeg-devel@ffmpeg.org To unsubscribe send an email to ffmpeg-devel-leave@ffmpeg.org