From patchwork Wed Aug 31 11:35:58 2016 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 8bit X-Patchwork-Submitter: erkki.seppala.ext@nokia.com X-Patchwork-Id: 354 Delivered-To: ffmpegpatchwork@gmail.com Received: by 10.103.140.134 with SMTP id o128csp327836vsd; Wed, 31 Aug 2016 04:36:55 -0700 (PDT) X-Received: by 10.194.184.148 with SMTP id eu20mr9541422wjc.137.1472643415197; Wed, 31 Aug 2016 04:36:55 -0700 (PDT) Return-Path: Received: from ffbox0-bg.mplayerhq.hu (ffbox0-bg.ffmpeg.org. [79.124.17.100]) by mx.google.com with ESMTP id je3si20167326wjb.147.2016.08.31.04.36.52; Wed, 31 Aug 2016 04:36:55 -0700 (PDT) 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=@nokia.onmicrosoft.com; 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; dmarc=fail (p=NONE dis=NONE) header.from=nokia.com Received: from [127.0.1.1] (localhost [127.0.0.1]) by ffbox0-bg.mplayerhq.hu (Postfix) with ESMTP id 9FD42689AC3; Wed, 31 Aug 2016 14:36:10 +0300 (EEST) X-Original-To: ffmpeg-devel@ffmpeg.org Delivered-To: ffmpeg-devel@ffmpeg.org Received: from EUR03-DB5-obe.outbound.protection.outlook.com (mail-eopbgr40125.outbound.protection.outlook.com [40.107.4.125]) by ffbox0-bg.mplayerhq.hu (Postfix) with ESMTPS id 53921689A67 for ; Wed, 31 Aug 2016 14:36:06 +0300 (EEST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=nokia.onmicrosoft.com; s=selector1-nokia-com; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version; bh=Je+250GBAFRU+M3aJQLqFBiphZ5nn273WBiIB/hxEV8=; b=tTykL0VPzV0VUa3EQIrsM+S4KhEVsEF9vKdFkpA3dIakLxeww4+qyi29LLbX2A4GLZboJnqcChTgxkP7m0G9cGcAmXLQekI/Z16hkCn7sEEDg5jdZqbffKOpO/ObAuDfvhtTe1Sdh1sk7DO8el209J/hCUSRpIC0xT0C6NsilAE= Authentication-Results: spf=none (sender IP is ) smtp.mailfrom=erkki.seppala.ext@nokia.com; Received: from erkkise-laptop.vincit.intranet (131.228.2.27) by DB6PR0701MB2534.eurprd07.prod.outlook.com (10.168.76.22) with Microsoft SMTP Server (version=TLS1_0, cipher=TLS_ECDHE_RSA_WITH_AES_256_CBC_SHA_P384) id 15.1.599.9; Wed, 31 Aug 2016 11:36:10 +0000 Received: by erkkise-laptop.vincit.intranet (Postfix, from userid 1000) id 009234CB95C; Wed, 31 Aug 2016 14:36:01 +0300 (EEST) From: =?UTF-8?q?Erkki=20Sepp=C3=A4l=C3=A4?= To: Date: Wed, 31 Aug 2016 14:35:58 +0300 Message-ID: <1472643361-10118-16-git-send-email-erkki.seppala.ext@nokia.com> X-Mailer: git-send-email 2.7.4 In-Reply-To: <1472643361-10118-1-git-send-email-erkki.seppala.ext@nokia.com> References: <1471943019-14136-1-git-send-email-erkki.seppala.ext@nokia.com> MIME-Version: 1.0 X-Originating-IP: [131.228.2.27] X-ClientProxiedBy: VI1PR0901CA0059.eurprd09.prod.outlook.com (10.167.203.155) To DB6PR0701MB2534.eurprd07.prod.outlook.com (10.168.76.22) X-MS-Office365-Filtering-Correlation-Id: 3f87962e-2554-4604-fbdd-08d3d19301d7 X-Microsoft-Exchange-Diagnostics: 1; DB6PR0701MB2534; 2:qwpTz6JZoC0s9FJ2TBGicxV8eqSnSGgxr1OCfHeGookbmGGVQ6uIXkWf7h1y83OZJBv/tdu8ZrH9Z/SjcUNwLA9EDNn1Wmqypk+ZscC5pYVFzR4TBrfBf1PG1E9Zble5VijBXUudbIELzP/D3uVJy+NRu7E8PergJdmSy+7Yy6LVaYdAZZRDN1Nc4mTZACmy; 3:egP8lmvXmjirnomwWvGWMX7aW81TkWjibFmXt0If2225h9M90LXGQuDX79dSMNvQuQWbRjxAZZGX8sEqIsAvxckPsQrO9mVEjbgjyfL8eVD0Pf3J+zeiNFc/aV8pw8go X-Microsoft-Antispam: UriScan:;BCL:0;PCL:0;RULEID:;SRVR:DB6PR0701MB2534; X-Microsoft-Exchange-Diagnostics: 1; DB6PR0701MB2534; 25:0b/nmY2S+PAxwW+MQolX1iei8EPXKfWZ/EoKt0Tx5Oqgggi+BvSJ59YdoJNVQ5i/gnIT8o62aQM6tOF8Z4Vw4m82gPRL59WawWgdPwkOuikJs6EISpsqk57GVVhjydDJErjV2l/1z7qnqgsQK63snRVHQ143unmU8/453hjBRQ/yZkjP9y6sNSWa5RYAyGQDVut9AhxY28vmJ5kHe/4hm3DQldKftv5pJ2T1Yus52RT+8SJSIT/RI6TXJd9iMTG8lf3HqxudzhPLZTyYiaLfFJga+RPrwOva1YBxXpmsz7jSKYJh7AwlVHTa1GPSXu6Q9XQyQx/Sru7fW+1iNCsBKEuwY4o62bO+73UyZpdECEwygwbBcwZolxqi9oNfqITYWW2M/attyewAszd5tE3fcEWk2RvC1VxZJbNvXK/M0VLq3B224jX8aZ0dcwzsgR1hRYQWhQEsWmZ1KYredAPK39kZlg+nHBiQa4YOW8NB2xg6aATQi/3rbljRlpiGc8b8L5/BJlG6D3910DbjJpNjPt4G6LqYHZfQFmXGg0XEvtYU558kjpNWcbvChIvTs8KKznDofIDYw8yExqXmbPq+w4XdzSPO5k1K0bVwFn6z9Dj/EggnSWhDYYf4oIIYriZzVw1BXvDFam1mCvXpm94YoiLDxMNTVmbxwACY8oQHCJobJM1bPEJFRpFNv+TVYYkehXsyRYU71Hn0+GXOEsXQDZfVIs+MylokZw7RdH4ByeI= X-Microsoft-Exchange-Diagnostics: 1; DB6PR0701MB2534; 31:XzhhURNDn5yw8GyLmHbdiV6mg5QeOX4DK1gv7/jFoidssCC1BKkBrl9Y7TsHO+VO09hjCoisc/eQK8N4bIZWIkOmZ5i/i/bwRK21xJ/IYTKKg0ONQwAHLFIW6ONvqVOXK6WMPc9FXv1HxZfnAMH5XRCAduTJ8+I9mYPDw1oXxWfIg8LuDnICqfDi6t6J+V17c1hrZkbwB++evktGA9IJvGGeMerS0ngVXHBdFYuQKIM=; 20:GF6ezdG8oV9orw+v4hBAL6FXX+aCftfgPYqCtOr4nZMJWWDWGqiOHY4nEuuS1JLze4kkZmvG5FBcV7T+L0RJjKJ/hdrg+yKP1bn9cnplz1jevYY55j8rSWd6DzEA0ekoPMjgL/OpK4p9xxaaY71LXHKZ7Ju3lX9egGj15H4NKeLqXYXtWyEWQ5yMPxMEEo/TMmX0k0SWGD2x/EHJ0RyJiyI6dDpuUx8x/qUYrnFTdHpP5tE4zZHO5WLYVUCkwoOrxOCgr2mOgu9fElgMU8vEtteWQ5soMJWya1U23XcfCDzGXqAmDgCiFKYC5DesvX+uoV9O+EprbQlRDw7a5ASzCafzlXNsJWEegsDeM6WkpJL6DXeyM7kT7SpJNRZsO4cNPnYz3QHFPBF6W8eiXduUFG2kza9XchsgVD3CMfaD/OmjXyFSTYH5/RJs8xUrLI7Yjfmi9yAn8ZBzYmUW1Ax+Zd87qW45lq9rY2sW0angU/O34oQKJD+WSFbfvSiASqYO X-Microsoft-Antispam-PRVS: X-Exchange-Antispam-Report-Test: UriScan:(82608151540597); X-Exchange-Antispam-Report-CFA-Test: BCL:0; PCL:0; RULEID:(6040176)(601004)(2401047)(8121501046)(5005006)(10201501046)(3002001)(6055026); SRVR:DB6PR0701MB2534; BCL:0; PCL:0; RULEID:; SRVR:DB6PR0701MB2534; X-Microsoft-Exchange-Diagnostics: 1; DB6PR0701MB2534; 4:/wmg/Vwd3ddzkqTTpD1NX3l+GoPp8wJHJsz1V9G6yrCb+6uIfEOQ+6dkS5lS+CoIpu8jABgai4l+aDTBvhQY8jniagW9clpiglzia8CkHhYMVncOd0sXa00JpGy3T5afYkBdL6sqsjh2QhYk/dtnEZtjLrpYTBY4YtyBvTyr/0Zh3Aeiex1FbIN+fAGl9Kkktg14cMihjXPJdYbVm0G+9Jpmae3Kor8M1Qna5f+Mf/jmttSAYemgMW8iikI2Er/0ShtoSnW6nFA9LS1G8cMn2+CTzqBgvHLD4PrvKT0ucqX/6jZ4oZ72rdL/XcbL63RKcOMBFK7VdgFnpKgc2oODmfhL8PrdyG868sDCC0Rubh6/vAor3agLg9JpDTFMn3LhzLt3bh8jRmzKp3oVxqm2mUkL8QSE/f1v4PY2ttr4PLBnTM6o5yLW93eDbAro5b8wzv17M1/UKYlAHriWH7A4YA== X-Forefront-PRVS: 00514A2FE6 X-Forefront-Antispam-Report: SFV:NSPM; SFS:(10019020)(4630300001)(6009001)(7916002)(199003)(189002)(81156014)(5820100001)(36756003)(81166006)(50226002)(8676002)(46386002)(107886002)(97736004)(68736007)(189998001)(101416001)(45336002)(19580395003)(50986999)(23676002)(105586002)(106356001)(5660300001)(19580405001)(76176999)(2906002)(4326007)(2870700001)(110136002)(2351001)(7736002)(33646002)(305945005)(4001430100002)(586003)(122856001)(42186005)(90966002)(47776003)(52956003)(50466002)(229853001)(2950100001)(92566002)(6116002)(3846002)(66066001)(7846002)(86362001); DIR:OUT; SFP:1102; SCL:1; SRVR:DB6PR0701MB2534; H:erkkise-laptop.vincit.intranet; FPR:; SPF:None; PTR:InfoNoRecords; A:1; MX:1; LANG:en; Received-SPF: None (protection.outlook.com: nokia.com does not designate permitted sender hosts) X-Microsoft-Exchange-Diagnostics: =?utf-8?B?MTtEQjZQUjA3MDFNQjI1MzQ7MjM6Z3BNa08vVk1vekVrUG9HUTdETXFKaXZM?= =?utf-8?B?MDl5RlZZSUJJUmpWNVIyWHBrdTNqUmFMTUNSVnNxSjllWUNKWDg1WTRoWWZh?= =?utf-8?B?YkgwMDViNnZDVzhxREpkdUYvT3h0MzZXUjlCaWRrQkdISVd3K2t1SnlEeVZk?= =?utf-8?B?a0QrcWVzSDRqdjRJb1VsTHc4SFlBZGxZUVoycjNidTVwdjJRTEh2SDloUmZv?= =?utf-8?B?RFhONmtHLzMxOHRVQWZHcHBtdnU0bHpqZUs2OVdGcEtaRVNLb1NuWlBBYjlJ?= =?utf-8?B?WVNXb1dRTk5EUWhWU2EwdWlQUFdTcmM0Rml4OVl2cUcvQ2RKNFBSNXhJdEdO?= =?utf-8?B?Qk03TnJCUWk4U1huSmhBQ2JYbEg2SUlqUVVlQitHNkxMK05EWklnUjIrc1hk?= =?utf-8?B?d2ZKQUxuWU92QjBpZ28rRERrMms3UGovRCtnOFd1ZTg1S09OVzNWT29LL2xk?= =?utf-8?B?dDlodlZ0U2xXQXJHM1FoaE8yRzFnOGNUU2lVN0xwY3FLMUZNN1RzcHM3eERT?= =?utf-8?B?MEM5bTVuanl3Z0hmTW5xUUpYa3R3Yld0QVZ2TmhHcGUrRDBVbldybUV4cGpS?= =?utf-8?B?cFpKcGRHWmgyKzczYUNoaWxvZmtlQ2h6b2NIbWpLR0RudUdjV0lBU0I3S0kr?= =?utf-8?B?VkJ2NXJDZnU2UWk4NCszY092d2x4KzUzeWNUQ1ZmS0VUS3hWcHo1ZVdFOUVj?= =?utf-8?B?dFpwTEwwZklhUTBNL3l0ZzlvSUlmTllOYksxN2pVb1hTNXVPMm1XUmk0ZFpk?= =?utf-8?B?VDgzVnpjTUs5aDJleFdIeml6Qk5zYTRVUHQ2bUJtTFIySXNFb0xJelZaVC9G?= =?utf-8?B?VmZlRFlBTUJOVHdnalY5VVdhTU1JaG14T2lQSzl6Q1N6aUhoQ2VlbkcxN3dP?= =?utf-8?B?dnZsTkZET3JJc2ZXUkEvMEtWZ2F0c1pQcGpIN2R4ZElLVkR6QjdxQkRBNTM0?= =?utf-8?B?ZnpqWTFVQWs3OXlsNW1NcnVxR1Z2V3MrS1NpM3FxRk9oZk41dzF5NDZzNXUx?= =?utf-8?B?cnlTTVhieHV2QXF2cW95eG9XTFNSbVRwOEFRYjdmN2R4dVUxdC9PR1ArVXpX?= =?utf-8?B?S3NFdFZUZlVWK0lzcGpZWDNJM3lab1FidEFJUHcyYUVPZnF5YUdGS0dKZFRO?= =?utf-8?B?SmMvbUJjVHNxY29aV2xRZWl6TS81QlJ3b3JTSExFaFJGbEd5UE9kL2ZsdG03?= =?utf-8?B?TkQ3a210WU5LZVUvTkFpSWFLUkFuVmtlN0FVd0hQUnF5aGhQam9ad1ZPdUpV?= =?utf-8?B?Ly9iOWUyVlVNWWdhbUcxMXBwd1AwbnhGUmxTMmtLeXVsWVVHSGhlbm1YWFpw?= =?utf-8?B?U21nNC9ZRUI1eWdhUW4wQUVsdHkvcklNSE9YMWZTdXR3YXl2ZWVYY21xQXA5?= =?utf-8?B?M0M3bjJCQXRWSHNESVEyQlNXVnU4eHR4MjNtekdUSmNiQ3FxOHVDbytVMXVP?= =?utf-8?B?TDFCTXNOOWNqd0NNdzN4aE1tTTIrT3NKQ1RvOTVnTEd5MXhSTnNkOE1lenY2?= =?utf-8?B?c1lkV000eGZmVmpVTGtKTGJWV2w0SXMvNjliQnRHSDNlUTk1V1FwTm43VGtz?= =?utf-8?B?Yi8xd3Y4NWdwMkNKaW9YTE55VjJybFBvRHhORHN3andPNTVGcFlDdElTT1JV?= =?utf-8?B?TnZtVG1RRThCSGJlb1lIckwrUjBGb1ZqUHQ0eVJ0b2FYQllsVUt2ZUM5NWJ3?= =?utf-8?Q?MUhhGJ5WmTfW9OzbGxKA=3D?= X-Microsoft-Exchange-Diagnostics: 1; DB6PR0701MB2534; 6:Pq0P/smBeEqN/OqC5KEN9AUy476Cb+u2kwXb35z7JrSLw8kxlalfOZIv/3JNWLkAwAJVBKpxfnGAeHZ6+dK0gbq7mLyV30RMyWD2ADdVFgEfLm4oYnIXxbhVzDIHyY0tUVuv4cSBEIKRJzVRaAacE5Z/GhG2V6cS2Rw7LDg4wd0iEyaiSTUok+y49kTkmPbDmE35e46lGWB1XY3SjP4JFxyaKpO0JdnfIDS0r8i1twyq30suRQRN4p5qMKw4mn9klx9BCMrziNWWZeqNEze10wmXSTzI8fukHE2tzCF9TXsbf/5pXj5ssVCyacEfsVaQvKkfUUTtM/DwW69VZp805Q==; 5:Df0gjTFD0i/6yCTEu9P35TT1nA8XaARt4lpmd+6Fwlp2EV2z86r2p9jKI8STDd81pNF1tabnCx4IGUCUpr2c4peFSBqjw1o1FUbFlrdw03+8UqVcwpUmx8w7TWkqk5ub1bhSpGBJBub6Tl5gFKXg9Q==; 24:SLozGNAnzVzisuUvmEMq0l4/6C+V/Y+9GtwlNerZ5lhZRfHFYV+dxfpFTlS0f1u6NTMqsy+XQ7DCfmzdeY7rFS2MR9DuChJFLiDIJj9rrzQ=; 7:Onqkc+w7FyX4Snev6whEC2evdzY6dF3s+1rr79Kvn1iAbC8ZAA/r1Qt+r5R0ZK54QiTw8MQxOWhIHAnjmQ1EOYENOiIEOK2APXcfuKNp6uOfc5Ud6WFdv5MBoS6r2iVVch0zvCp4h8AWakHtF7CnER0fkiXdTNiuFJ2Ki/hivSgoLvDbWixXHGV8MHi9S8enGH39nGCUha6E2VW+H70js3IWkFNNedcs5kNrw50lIK3zMB8GfDsawDAlpGe0LUnR SpamDiagnosticOutput: 1:99 SpamDiagnosticMetadata: NSPM X-OriginatorOrg: nokia.com X-MS-Exchange-CrossTenant-OriginalArrivalTime: 31 Aug 2016 11:36:10.9830 (UTC) X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted X-MS-Exchange-Transport-CrossTenantHeadersStamped: DB6PR0701MB2534 Subject: [FFmpeg-devel] [PATCH v2 15/18] avformat/movenc: mov_write_audio_tag can write the proper number of channels, not the hardcoded 2 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: =?UTF-8?q?Erkki=20Sepp=C3=A4l=C3=A4?= , Yusuke Nakamura , OZOPlayer Errors-To: ffmpeg-devel-bounces@ffmpeg.org Sender: "ffmpeg-devel" It does it only when the chnl box is to be written. The specification for the chnl box (ISO 14496-12) requires proper number of channels to be written here is it is used, and without the proper number of channels available it becomes tricky to parse the data, as the number of channels in this box comes from that value. Signed-off-by: Erkki Seppälä Signed-off-by: OZOPlayer --- libavformat/movenc.c | 8 +++++++- 1 file changed, 7 insertions(+), 1 deletion(-) diff --git a/libavformat/movenc.c b/libavformat/movenc.c index 6e179ef..bbd176f 100644 --- a/libavformat/movenc.c +++ b/libavformat/movenc.c @@ -1031,7 +1031,13 @@ static int mov_write_audio_tag(AVFormatContext *s, AVIOContext *pb, MOVMuxContex avio_wb16(pb, 16); avio_wb16(pb, track->audio_vbr ? -2 : 0); /* compression ID */ } else { /* reserved for mp4/3gp */ - avio_wb16(pb, 2); + /* parsing chln box requires the proper number of channels having been + written into the audio header */ + if (av_stream_get_side_data(track->st, AV_PKT_DATA_AUDIO_TRACK_CHANNEL_LAYOUT, + NULL)) + avio_wb16(pb, track->par->channels); + else + avio_wb16(pb, 2); avio_wb16(pb, 16); avio_wb16(pb, 0); }