From patchwork Fri Feb 16 19:06:39 2018 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Aman Karmani X-Patchwork-Id: 7611 Delivered-To: ffmpegpatchwork@gmail.com Received: by 10.2.150.1 with SMTP id c1csp1063170jai; Fri, 16 Feb 2018 11:06:59 -0800 (PST) X-Google-Smtp-Source: AH8x225S3dvm3oAGk+cq8rTGrOq91VmPZRxQbpmBDinFtl4BKPP6zHNweP4Y2pb0sH7Vks0Tq21p X-Received: by 10.223.168.111 with SMTP id l102mr7072201wrc.84.1518808019921; Fri, 16 Feb 2018 11:06:59 -0800 (PST) ARC-Seal: i=1; a=rsa-sha256; t=1518808019; cv=none; d=google.com; s=arc-20160816; b=xxiAnJJz3moyf6j9GQ3/Loo8D++UkjMoqtanJCtdRyaH+CpOTVIfRDI/ApUd2rFMmd GuCOpIN2F4cWJovbZ/9Ip1RXLKbvN0gLeMDS2IQMyeq2Nf+QMoZucl3LPCtzCx6tA1AK qMhuJX4saxVUnRlM5WF+NtBZzuKlNTJwBREgnTwcxQMQOdmdaB3VCOxQO0plmKVs9Dcx I89HFEkj+4SYJmMHgayLUafDJQj7Alosdj5LTzIDfMqIlQH+fbeFbI1Ro3MR8ec8UVes TttdfiBDCY105zB242kcovRFRVVwj4yTHUV/nuHtaHRQ2gdt5K6y4YjziJeRVmKWHV+U oGQA== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=sender:errors-to:content-transfer-encoding:mime-version:cc:reply-to :list-subscribe:list-help:list-post:list-archive:list-unsubscribe :list-id:precedence:subject:references:in-reply-to:message-id:date :to:from:dkim-signature:delivered-to:arc-authentication-results; bh=u4PFi2Gfdu7rmvNKqEz8Dv80bvypa17ixk/YPATZTS0=; b=mzqH4Avm8V025NxH6emO0NQRGlvWz4/dCiPuDVyi70PPS1eZRyMKU3eFkr6DfbR1Fh LEOJvllhtfspSY7x9gscORAN4cD/bEeQkKv/JLWx8e58tiB8+2XxwLZAEYwPvergiVZv R/elt1iua9QWXC6W85CDZ6agb3CW6TD0YBd2Y7/MEuNt6FtPSPMu8I2RkQKHu/cacSI3 B7rThxMMfzIkGnCjw6dqNexbtPLyCpSF3tPceGbAAjcH6hPynF6YRWaWqMQgWfpYZIL2 Q7OPekkRnlK1//tESVk5AONlEfSDzR6Zp3wB82K9bCyIff4Q9aFoqaXuTRfduHERKClS kAYw== ARC-Authentication-Results: i=1; mx.google.com; dkim=neutral (body hash did not verify) header.i=@tmm1-net.20150623.gappssmtp.com header.s=20150623 header.b=1U1y4e4v; spf=pass (google.com: domain of ffmpeg-devel-bounces@ffmpeg.org designates 79.124.17.100 as permitted sender) smtp.mailfrom=ffmpeg-devel-bounces@ffmpeg.org Return-Path: Received: from ffbox0-bg.mplayerhq.hu (ffbox0-bg.ffmpeg.org. [79.124.17.100]) by mx.google.com with ESMTP id p21si10202127wmc.11.2018.02.16.11.06.59; Fri, 16 Feb 2018 11:06:59 -0800 (PST) Received-SPF: pass (google.com: domain of ffmpeg-devel-bounces@ffmpeg.org designates 79.124.17.100 as permitted sender) client-ip=79.124.17.100; Authentication-Results: mx.google.com; dkim=neutral (body hash did not verify) header.i=@tmm1-net.20150623.gappssmtp.com header.s=20150623 header.b=1U1y4e4v; spf=pass (google.com: domain of ffmpeg-devel-bounces@ffmpeg.org designates 79.124.17.100 as permitted sender) smtp.mailfrom=ffmpeg-devel-bounces@ffmpeg.org Received: from [127.0.1.1] (localhost [127.0.0.1]) by ffbox0-bg.mplayerhq.hu (Postfix) with ESMTP id 472C868A1E8; Fri, 16 Feb 2018 21:06:45 +0200 (EET) X-Original-To: ffmpeg-devel@ffmpeg.org Delivered-To: ffmpeg-devel@ffmpeg.org Received: from mail-pg0-f41.google.com (mail-pg0-f41.google.com [74.125.83.41]) by ffbox0-bg.mplayerhq.hu (Postfix) with ESMTPS id 2EFD968A16E for ; Fri, 16 Feb 2018 21:06:39 +0200 (EET) Received: by mail-pg0-f41.google.com with SMTP id m19so3137484pgn.1 for ; Fri, 16 Feb 2018 11:06:51 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=tmm1-net.20150623.gappssmtp.com; s=20150623; h=sender:from:to:cc:subject:date:message-id:in-reply-to:references; bh=OFhETUaUbs8pn/D/rDXoZVCYryZxJte72czkUa6DXP0=; b=1U1y4e4vjRIB3yZRcBqhqTZO+JOdslfSW56xn/H2Wo6DxdQaYoM4ctfpf1r5wekCw8 N11Isn96tLXkMP7mMdREafcFIdxfrXi974RQp4qXhHXZxZ/4uHSxQgLnTEbl27CycA7M EpHttKCXfFVaP7o8G4u0lwzol3VGfk6CMl/srrZyCcnKfRQzqfkVcQTUFhpVjy4TX5z4 3cNVRasdszj0pMkj8KOEwsLbzXyYMLpvVZsGP6Qor7UP/7zlFyjyH4Lkcl5boxWA5CFE J3xGJ4KiuOa/zymbbmt04lgvbb9N8UOUNRFilTOT/H72KbdK8WnwvkuMBh53JIRJIWcK CuDw== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:sender:from:to:cc:subject:date:message-id :in-reply-to:references; bh=OFhETUaUbs8pn/D/rDXoZVCYryZxJte72czkUa6DXP0=; b=FYRq7BobHlNRcWlBrvlROGWwUmONHetVhoWkvEky6MYcio9W8x3Qy4LiJbA1lRJEeh 8q4eZsoaE85ITuUf3srya2SKebBVcwdFV38i3sqdXNKI4IU1stp9FfZLl++cbSe23bLl 8xxox3H4FjFI9u1Fh2hN5G6xF138oFqZTxvfwwnmdAQVmaIgfcZnoEWm0GiiMlbwlDs0 wlnTsN4Uqhms14R/n/v5PxHA7jqEb7MsRpC/pip1cXs1DF3R8OdDGIS/nJv9d1D5Y4Wn wvHFFzxJJAToJ/3aluEjKIIKRMsZyrX3PCFKIDCGud8k0mg7cHL4J8AnQa/q99Sqa8Yb vnZg== X-Gm-Message-State: APf1xPDzD+YXA9Vo0HXSS+0zKTA42n5yN9ZxbwMdpgQ2iZLYPUvDpnlA wbOfyQAcH8q7QH/q9dWRXu7DDE6u X-Received: by 10.98.223.93 with SMTP id u90mr2001983pfg.13.1518808009703; Fri, 16 Feb 2018 11:06:49 -0800 (PST) Received: from localhost.localdomain (c-69-181-54-242.hsd1.ca.comcast.net. [69.181.54.242]) by smtp.gmail.com with ESMTPSA id l19sm30556523pgc.47.2018.02.16.11.06.48 (version=TLS1_2 cipher=ECDHE-RSA-AES128-SHA bits=128/128); Fri, 16 Feb 2018 11:06:49 -0800 (PST) From: Aman Gupta To: ffmpeg-devel@ffmpeg.org Date: Fri, 16 Feb 2018 11:06:39 -0800 Message-Id: <20180216190639.29118-1-ffmpeg@tmm1.net> X-Mailer: git-send-email 2.14.2 In-Reply-To: <535e01cf-33e8-21f3-320f-89339aaddcf8@gmx.de> References: <535e01cf-33e8-21f3-320f-89339aaddcf8@gmx.de> Subject: [FFmpeg-devel] [PATCH] avformat/mpegts: set AV_DISPOSITION_DEPENDENT for mix_type=0 supplementary audio X-BeenThere: ffmpeg-devel@ffmpeg.org X-Mailman-Version: 2.1.20 Precedence: list List-Id: FFmpeg development discussions and patches List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Reply-To: FFmpeg development discussions and patches Cc: Aman Gupta , basic.master@gmx.de MIME-Version: 1.0 Errors-To: ffmpeg-devel-bounces@ffmpeg.org Sender: "ffmpeg-devel" From: Aman Gupta --- fftools/ffmpeg.c | 1 + libavformat/avformat.h | 1 + libavformat/dump.c | 2 ++ libavformat/mpegts.c | 3 +++ 4 files changed, 7 insertions(+) diff --git a/fftools/ffmpeg.c b/fftools/ffmpeg.c index a37de2ff98..bea922b0aa 100644 --- a/fftools/ffmpeg.c +++ b/fftools/ffmpeg.c @@ -3592,6 +3592,7 @@ static int init_output_stream(OutputStream *ost, char *error, int error_len) { "clean_effects" , NULL, 0, AV_OPT_TYPE_CONST, { .i64 = AV_DISPOSITION_CLEAN_EFFECTS }, .unit = "flags" }, { "captions" , NULL, 0, AV_OPT_TYPE_CONST, { .i64 = AV_DISPOSITION_CAPTIONS }, .unit = "flags" }, { "descriptions" , NULL, 0, AV_OPT_TYPE_CONST, { .i64 = AV_DISPOSITION_DESCRIPTIONS }, .unit = "flags" }, + { "dependent" , NULL, 0, AV_OPT_TYPE_CONST, { .i64 = AV_DISPOSITION_DEPENDENT }, .unit = "flags" }, { "metadata" , NULL, 0, AV_OPT_TYPE_CONST, { .i64 = AV_DISPOSITION_METADATA }, .unit = "flags" }, { NULL }, }; diff --git a/libavformat/avformat.h b/libavformat/avformat.h index 4ea1b5ab72..78e87be8fb 100644 --- a/libavformat/avformat.h +++ b/libavformat/avformat.h @@ -845,6 +845,7 @@ typedef struct AVStreamInternal AVStreamInternal; #define AV_DISPOSITION_CAPTIONS 0x10000 #define AV_DISPOSITION_DESCRIPTIONS 0x20000 #define AV_DISPOSITION_METADATA 0x40000 +#define AV_DISPOSITION_DEPENDENT 0x80000 /** * Options for behavior on timestamp wrap detection. diff --git a/libavformat/dump.c b/libavformat/dump.c index ef143fd4e2..3a1379c356 100644 --- a/libavformat/dump.c +++ b/libavformat/dump.c @@ -547,6 +547,8 @@ static void dump_stream_format(AVFormatContext *ic, int i, av_log(NULL, AV_LOG_INFO, " (visual impaired)"); if (st->disposition & AV_DISPOSITION_CLEAN_EFFECTS) av_log(NULL, AV_LOG_INFO, " (clean effects)"); + if (st->disposition & AV_DISPOSITION_DEPENDENT) + av_log(NULL, AV_LOG_INFO, " (dependent)"); av_log(NULL, AV_LOG_INFO, "\n"); dump_metadata(NULL, st->metadata, " "); diff --git a/libavformat/mpegts.c b/libavformat/mpegts.c index e5d0e1eefb..5f547b591b 100644 --- a/libavformat/mpegts.c +++ b/libavformat/mpegts.c @@ -1904,6 +1904,9 @@ int ff_parse_mpeg2_descriptor(AVFormatContext *fc, AVStream *st, int stream_type return AVERROR_INVALIDDATA; flags = get8(pp, desc_end); + if ((flags & 0x80) == 0) /* mix_type */ + st->disposition |= AV_DISPOSITION_DEPENDENT; + switch ((flags >> 2) & 0x1F) { case 0x01: st->disposition |= AV_DISPOSITION_VISUAL_IMPAIRED;