From patchwork Mon Nov 28 17:44:09 2022 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Basel Sayeh X-Patchwork-Id: 39527 Delivered-To: ffmpegpatchwork2@gmail.com Received: by 2002:a05:6a21:999a:b0:a4:2148:650a with SMTP id ve26csp7821889pzb; Mon, 28 Nov 2022 09:44:26 -0800 (PST) X-Google-Smtp-Source: AA0mqf5KW0yzVBsp/tSov9lB/Pk5OBqv3JHzwbdL1z/pgSPBlcGEO2/2mvte3oZphyH/x0MTs5m5 X-Received: by 2002:a05:6402:c84:b0:46b:98:f0f0 with SMTP id cm4-20020a0564020c8400b0046b0098f0f0mr9238166edb.38.1669657466269; Mon, 28 Nov 2022 09:44:26 -0800 (PST) Return-Path: Received: from ffbox0-bg.mplayerhq.hu (ffbox0-bg.ffmpeg.org. [79.124.17.100]) by mx.google.com with ESMTP id cs9-20020a170906dc8900b0078db594808dsi10641592ejc.588.2022.11.28.09.44.25; Mon, 28 Nov 2022 09:44:26 -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=@hotmail.com header.s=selector1 header.b=me5UFnEv; arc=fail (body hash mismatch); 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 sp=NONE dis=NONE) header.from=hotmail.com Received: from [127.0.1.1] (localhost [127.0.0.1]) by ffbox0-bg.mplayerhq.hu (Postfix) with ESMTP id 5F50068B2F6; Mon, 28 Nov 2022 19:44:22 +0200 (EET) X-Original-To: ffmpeg-devel@ffmpeg.org Delivered-To: ffmpeg-devel@ffmpeg.org Received: from EUR04-DB3-obe.outbound.protection.outlook.com (mail-db3eur04olkn2019.outbound.protection.outlook.com [40.92.74.19]) by ffbox0-bg.mplayerhq.hu (Postfix) with ESMTPS id 5599568ADF2 for ; Mon, 28 Nov 2022 19:44:16 +0200 (EET) ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=Fu04jSuymzbVJs6QjI8NGb0hcEducw2mKDGNMZHBlsHgIkM5l0B80UX3qpyaC0lrzfYrGq4VsNI/rLzmyONNJSfU49FXCc/KSNYRyaZscJrjN0W0W6rsxhysS7sYCDejA67fyVd47JEn6dPt4AneSfL8LUOSFgEaYGpQOF90IRZ/udhgH+CNJJmyMxi4KEm6G+x3dk858gH805124JpojloDR6E1XUCJFHBz6ZdORJ89+6SPp/xRVgHwf9cmH3LpkoVLRbWa48xQCuLcSwtfteKC7VOBgWL7DjN95sVWTN8peuo09HFgyBBx62TZsVbolcerGqNfKXv9rW5npD4PdA== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com; s=arcselector9901; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1; bh=hsLoxyrqxzGkASqBnSSW0xzwpiqZD5tfbWrSqYWFngc=; b=G4j/DSEM71vyAu085HOrSpW9MR353o0DPP4rV/J6ZvePjsrNtcVbwoqGAGMCHz8I1m3lyPqkzAijEKNODfFI7a7Qyn6rEerZDftKvJXbpVYdgmWc+n/KR9+8sLindo7szpTDJEp8ohMOqltQN5uasrJFPikpKz9GsfPAn6MaB4ZjHQBd+GCncJldDr29YR4hQgYeOHge3uWO95VTIkmRUT+rpMWHXD7ThiLhnhladf23Rxm4Y3QdnUoIa9pNDhckL1r7vk1FfLS1SgAMbEr1Y+H61yGamAb3PXofqRfK7deFzDKDh58c5q28Mvvme/wYJugj8cndyVixZ+lhTKi9AQ== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=none; dmarc=none; dkim=none; arc=none DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=hotmail.com; s=selector1; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=hsLoxyrqxzGkASqBnSSW0xzwpiqZD5tfbWrSqYWFngc=; b=me5UFnEvv6glD/ZhNyjo+is5ya96th4giZf842DOBIjAl+zwVuR2/G7wmtH4hCzRLh5wgYeAemBpvXPBu7r1qgK7JaRfksfSFz6zLACeKh3vcarC7VX/QMQQ0GCQxJTXGepnPrfZwVeDJWM8qYJP+0cDBOtoc0YKzZ+VOtbdE+Dl+z0PFl+VvF40u8443wA8P25f2nTTMkafJEgifKCTaR0wo+JCph9CY18pCLFbflr3MqoL+kJOvCJ3QvDuYSW1SDCK+ODoFAxTgsqI1yfbKiwzK8JhT64FrplUt1ULpFnnQfWWyxmWe/E80AW2qUPM3sJa/ZxHiTZUQ29VtPWyhw== Received: from DB9P191MB1482.EURP191.PROD.OUTLOOK.COM (2603:10a6:10:224::19) by PRAP191MB2067.EURP191.PROD.OUTLOOK.COM (2603:10a6:102:29e::13) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.5857.23; Mon, 28 Nov 2022 17:44:14 +0000 Received: from DB9P191MB1482.EURP191.PROD.OUTLOOK.COM ([fe80::5e68:48d2:6fc6:5443]) by DB9P191MB1482.EURP191.PROD.OUTLOOK.COM ([fe80::5e68:48d2:6fc6:5443%7]) with mapi id 15.20.5857.023; Mon, 28 Nov 2022 17:44:14 +0000 Message-ID: Date: Mon, 28 Nov 2022 20:44:09 +0300 User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:102.0) Gecko/20100101 Thunderbird/102.5.0 From: Basel Sayeh To: ffmpeg-devel@ffmpeg.org Content-Language: en-US X-TMN: [UToHJRExSCnc9jzeSw/1EN6fXjHfOdxhubp6zla8ETUbckDRtfo/p+HW4ZSS4lKo] X-ClientProxiedBy: DX2P273CA0014.AREP273.PROD.OUTLOOK.COM (2603:1086:300:8::26) To DB9P191MB1482.EURP191.PROD.OUTLOOK.COM (2603:10a6:10:224::19) X-Microsoft-Original-Message-ID: MIME-Version: 1.0 X-MS-Exchange-MessageSentRepresentingType: 1 X-MS-PublicTrafficType: Email X-MS-TrafficTypeDiagnostic: DB9P191MB1482:EE_|PRAP191MB2067:EE_ X-MS-Office365-Filtering-Correlation-Id: f788b76f-bf7f-42f7-2bca-08dad1682a4a X-Microsoft-Antispam: BCL:0; X-Microsoft-Antispam-Message-Info: Hhp6DstA7y0eIe0uzejNpJukfh3eUeWL8xE5a0N17qUzQo/hCHK4AZFBzxZr0aKY3g3ABWLGj0XMbqRPNIJlCe0/w1J0d0T1gYcbwyYRcWnCd+vvZYpl9sUtJpiIxUZxisBJHuso2gf1Ajo/rNLZzHted3U3tx+HE0XM62H2WQz7P/XYtk4Dp6WPqHZnw83spZvtCUiMTL2IaA+Q3OaAvLOVIsBabVD6sXMmgiB3cxXlGq0bQVq643AjvKE7DIZaeEaBMYmG6nYDv+CBLpXxeLMOMNcmti+TlebkmeWi6+frMoAOg06+6foGF4uiVaiPiN1L927r25arTHl5j8xbQ9Z/eD3loLQUGjhy42mnJdD1cGJd4KIJDSsapzbtkvj+GADmBSNTUVMY42HqJQSpNFr+Jhvfclq6DW2okkiW4qv7EeckuOvfAj89rxoj7hytV3VpVRL5daESYumoU+AN97ckDmaVXr40BbG5d+rbMrixB5ncqOJ5Wi+8XX7xUN2swAunglu4XXVxPcZBWQQgvu4MwCYYGmCNnmild7w/3azqzIBiGcQnJkh/BATkki0EeH43XKO7/4BJITPlTWcN4yNCr8RjKj1j2FmG2uv4Q3E= X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1 X-MS-Exchange-AntiSpam-MessageData-0: =?utf-8?q?smdKe35i/OedqcG/tFdH9Txb5XPA?= =?utf-8?q?4w3TYY3kEJ3Gpjjf4oA+DBoAXc4Sa61yjY/a54NyjANogYYfyuA9K8cR7SrAaY8dj?= =?utf-8?q?sFAOROjdr7/KWOD+tmjX/oKuR0g9IM8rkdojMJc1ATz6vPFsH6CXcyRjZtUgBpGDF?= =?utf-8?q?qC5rSEdELOnoVIW2JA5g1cHuw5Y4Ftp6160YDAzld/4O/Un6JMPI6kqzWHuuANxCB?= =?utf-8?q?d7gMsFGrp87Xrh3Yjb/3wEUrXH3vSmUUAjJUb1SSrhNTZsOqzDOd3t1qlfdcvyzjN?= =?utf-8?q?Z1eaU9AHN3O+etm+c0SRb4j71EKkezi/8bybwdMrOv4X1ZEd8C9RwwcdobQVy7AfN?= =?utf-8?q?AtvQNJ6IgfU5xh54udHWhv0Jln/5N08BtODcYC11lQqCXGAPrqN2EYz9USyiYTIB4?= =?utf-8?q?QbGsOwPQEnXY9LcrnZzprdcXff1N6nkJv9DuDQewzjukml0dMt5dHXkwngURVoRKj?= =?utf-8?q?ETeBHTCj/vgtSkIOBUYxF2N2/NPisPHBxaX+gYCoL4oRB9ig2ENgYIEebF1y5pHq2?= =?utf-8?q?jzLPLxf44q62i/JAjFerJcQYSbPEBssrR3XZOWgsoSR+ZmfGa56NhmO8pt3aLjmo/?= =?utf-8?q?judtG542Y4XNxDQhE91nI6trQYYu0l8EQIQc8I9PFTyUhvErLpimo02ZCYPYPiW44?= =?utf-8?q?tA4u3znrmp0zCTdWh2AOdlftFzu5mWwB5Ow4aXVkTyMbGf/5gKd7hLJ/IeWXV+DH2?= =?utf-8?q?RUe5I5Wt3KwRTNbv8n3tb54eeB/leFPiKyQQlRctqF7tvlvdpQPh5BdIr5XGM5Pby?= =?utf-8?q?IMHpB+XedVEwwFTn5gaGayeVvOhk9txtUT1rbcLEa2x+7azPrplV8la3kic2rkLuv?= =?utf-8?q?cANZ+6hJcRV2Sf2D4vLgoWF7tR8flPGBNtR2NH9CcUQG5a5PQ8Bh3k8I0pF8EP5hC?= =?utf-8?q?ULK10jLW629RXJUTPyto2W/9pQnQ1rF2B6VJW8IERX3Ut+bBxyJs8gjJsgOhym/Ol?= =?utf-8?q?H1+207369wlr/Bj0LJ3rHRc4C+nTXHSITlS3u0NuEsiaoxFzbMPIo/7qCe70MFGdf?= =?utf-8?q?4bdOS5GE6lc/+dNWmGUL78WTAsZ93FyJGtKKIgikFyNC0XiOvPB4FEeNdq2FcHxE1?= =?utf-8?q?2V5SjMkMj8V7aupUFCUQSLy85x3u4HL7FpSf7orX8ox0IVoiTSc+DrdLP7PpROY3H?= =?utf-8?q?WONYW2F/2hPMjiXYVrytGUEvM9TIUWUMFarpeetopOekFA5NfzlWf5LJuXZokkm06?= =?utf-8?q?iXlFTL2OO7Eddr8LOEkboexe3yEGy975xOUlerRiyR7JOOO8gCdtasVUI69Gf5vHJ?= =?utf-8?q?7AglsnacU0greZ/w8mhyjT8uO0JNJfBgPJkIeA=3D=3D?= X-OriginatorOrg: sct-15-20-4755-11-msonline-outlook-50200.templateTenant X-MS-Exchange-CrossTenant-Network-Message-Id: f788b76f-bf7f-42f7-2bca-08dad1682a4a X-MS-Exchange-CrossTenant-AuthSource: DB9P191MB1482.EURP191.PROD.OUTLOOK.COM X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-OriginalArrivalTime: 28 Nov 2022 17:44:14.5779 (UTC) X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted X-MS-Exchange-CrossTenant-Id: 84df9e7f-e9f6-40af-b435-aaaaaaaaaaaa X-MS-Exchange-CrossTenant-RMS-PersistedConsumerOrg: 00000000-0000-0000-0000-000000000000 X-MS-Exchange-Transport-CrossTenantHeadersStamped: PRAP191MB2067 Subject: [FFmpeg-devel] [PATCH 2/2] libavformat/dashenc: Enable HTTP persistent connections for dashenc_delete_file X-BeenThere: ffmpeg-devel@ffmpeg.org X-Mailman-Version: 2.1.29 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 Errors-To: ffmpeg-devel-bounces@ffmpeg.org Sender: "ffmpeg-devel" X-TUID: WNkgncwHwiNR Signed-off-by: Basel Sayeh --- libavformat/dashenc.c | 14 ++++++++++---- 1 file changed, 10 insertions(+), 4 deletions(-) *s, char *filename) { int http_base_proto = ff_is_http_proto(filename); if (http_base_proto) { - AVIOContext *out = NULL; AVDictionary *http_opts = NULL; set_http_options(&http_opts, c); av_dict_set(&http_opts, "method", "DELETE", 0); - if (dashenc_io_open(s, &out, filename, &http_opts) < 0) { + if (dashenc_io_open(s, &c->http_delete, filename, &http_opts) < 0) { av_log(s, AV_LOG_ERROR, "failed to delete %s\n", filename); + } else { + //Nothing to write + avio_flush(c->http_delete); + dashenc_io_close(s, &c->http_delete, filename); } - av_dict_free(&http_opts); - ff_format_io_close(s, &out); + + if (!c->http_persistent) + ff_format_io_close(s, &c->http_delete); } else { int res = ffurl_delete(filename); if (res < 0) { diff --git a/libavformat/dashenc.c b/libavformat/dashenc.c index 9c1bcad9e3..ba0eb913a1 100644 --- a/libavformat/dashenc.c +++ b/libavformat/dashenc.c @@ -179,6 +179,7 @@ typedef struct DASHContext { int master_playlist_created; AVIOContext *mpd_out; AVIOContext *m3u8_out; + AVIOContext *http_delete; int streaming; int64_t timeout; int index_correction; @@ -642,6 +643,7 @@ static void dash_free(AVFormatContext *s) ff_format_io_close(s, &c->mpd_out); ff_format_io_close(s, &c->m3u8_out); + ff_format_io_close(s, &c->http_delete); } static void output_segment_list(OutputStream *os, AVIOContext *out, AVFormatContext *s, @@ -1855,18 +1857,22 @@ static void dashenc_delete_file(AVFormatContext