From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from ffbox0-bg.mplayerhq.hu (ffbox0-bg.ffmpeg.org [79.124.17.100]) by master.gitmailbox.com (Postfix) with ESMTP id 76C3A40E7D for ; Wed, 9 Feb 2022 05:57:06 +0000 (UTC) Received: from [127.0.1.1] (localhost [127.0.0.1]) by ffbox0-bg.mplayerhq.hu (Postfix) with ESMTP id 4648368B183; Wed, 9 Feb 2022 07:57:05 +0200 (EET) Received: from mail-qt1-f181.google.com (mail-qt1-f181.google.com [209.85.160.181]) by ffbox0-bg.mplayerhq.hu (Postfix) with ESMTPS id 81C1C68B140 for ; Wed, 9 Feb 2022 07:56:58 +0200 (EET) Received: by mail-qt1-f181.google.com with SMTP id y8so998723qtn.8 for ; Tue, 08 Feb 2022 21:56:58 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20210112; h=mime-version:references:in-reply-to:from:date:message-id:subject:to :cc:content-transfer-encoding; bh=yJCiJB4Hy7pENdNuK+AXnGOR/TdSlMIdDGwQhwdPBYQ=; b=ZttqQCd6LL3br3+Zktv1xNsQzpYyeEy2viwtBd3G24rZ6Eg7jqy/fSMAfE73mO387M Vr4pcX3C7hCYVLuS0xE5wI4EC7ZOISeltnXZro5Ucuk52x+QQeltMvsqqTOWzJ9KSs+6 GNEDL7M57vm3werdGIgdUCQ4KHBraIoo07YSJa2KuCFSdE4JbcopzHAxHDfX/+9lkZ2H FaTpCp7mzBJ/S0GuUH5LDXYXajTgxCjSDEZNqsoYkTbOj93nP5ijf4um7SBkieEKTIgw BzKYzpEhSiayQH03TeYkuxV/8lQh9UTZ6td+P5vp3AGBi8un+TB2k3XO/Kd1bIW9O1r7 JDiw== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20210112; h=x-gm-message-state:mime-version:references:in-reply-to:from:date :message-id:subject:to:cc:content-transfer-encoding; bh=yJCiJB4Hy7pENdNuK+AXnGOR/TdSlMIdDGwQhwdPBYQ=; b=vK4fzIp8RESqw0yE4pDaFpsEgRTJl/wWpzMPouUITe51zdwjSJXr+xhG1v0i/o3H8H vB5FgsHSCAtu5dtL2Shys+t7yMQfao3f0vYIWrRMnzK3g4esO8H3X1jSCpx2yyFacpwi F8otNXYb7eoNTs8yyAXVDBCdToF5fO4IqwHhkqEAZdsr6QDqQejF8ufHW1aDbf8ij1d8 RDXIcYSCME/ALd33SaWm+3/B+1u+s4oijh/VgZYSGe/FSFnaWFsO4+JKXxkIPLvmWkF4 W2lKRkwB0ggdL5lhe++LbegjXrBWm65scHUOlXVxCcH2BnhFOy/ECEPOMfsKe9bZMzEY VGEQ== X-Gm-Message-State: AOAM530apEPObSOc5YKfODua2l2RcIYTHCqsk0P8FGzZxD6Ex2bvKMlU k4QNpen9DREpm/oTnxUsay2Ycx1nyD+N3r+I/yvz5/l240dj6SeI X-Google-Smtp-Source: ABdhPJzsdJTgE8tA5fsLW8X9htpbb18qeHxE2x0BjuJcktrXk6NCVGz4vIB/yvDVn7buGgHGCutA22DW3tm4D0XdxBc= X-Received: by 2002:ac8:59c6:: with SMTP id f6mr340676qtf.343.1644386217165; Tue, 08 Feb 2022 21:56:57 -0800 (PST) MIME-Version: 1.0 References: <20220128185254.1662873-1-gustav.grusell@gmail.com> <20220128202320.1711694-1-gustav.grusell@gmail.com> In-Reply-To: From: Steven Liu Date: Wed, 9 Feb 2022 13:56:45 +0800 Message-ID: To: FFmpeg development discussions and patches Subject: Re: [FFmpeg-devel] [PATCH v4] avformat/hls: Implement support for using AVSEEK_FLAG_BACKWARD when seeking 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 Cc: Steven Liu , Gustav Grusell Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: base64 Errors-To: ffmpeg-devel-bounces@ffmpeg.org Sender: "ffmpeg-devel" Archived-At: List-Archive: List-Post: U3RldmVuIExpdSA8bHFAY2hpbmFmZm1wZWcub3JnPiDkuo4yMDIy5bm0MuaciDPml6Xlkajlm5sg MTg6MjLlhpnpgZPvvJoKPgo+Cj4KPiA+IDIwMjLlubQx5pyIMjnml6Ug5LiK5Y2INDoyM++8jEd1 c3RhdiBHcnVzZWxsIDxndXN0YXYuZ3J1c2VsbEBnbWFpbC5jb20+IOWGmemBk++8mgo+ID4KPiA+ IEJlZm9yZSwgc2Vla2luZyBpbiBobHMgc3RyZWFtcyB3b3VsZCBhbHdheXMgc2VlayB0byB0aGUg bmV4dCBrZXlmcmFtZQo+ID4gYWZ0ZXIgdGhlIGdpdmVuIHRpbWVzdGFtcC4gV2l0aCB0aGlzIGZp eCwgaWYgc2Vla2luZyBpbiB2aWRlb3N0cmVhbSBhbmQKPiA+IEFWU0VFS19GTEFHX0JBQ0tXQVJE IGlzIHNldCwgc2Vla2luZyB3aWxsIGJlIHRvIHRoZSBmaXJzdCBrZXlmcmFtZSBvZgo+ID4gdGhl IHNlZ21lbnQgY29udGFpbmluZyB0aGUgZ2l2ZW4gdGltZXN0YW1wLiBUaGlzIGZpeGVzICM3NDg1 Lgo+ID4KPiA+IFNpZ25lZC1vZmYtYnk6IEd1c3RhdiBHcnVzZWxsIDxndXN0YXYuZ3J1c2VsbEBn bWFpbC5jb20+Cj4gPiAtLS0KPiA+IGxpYmF2Zm9ybWF0L2hscy5jIHwgMjQgKysrKysrKysrKysr KysrKystLS0tLS0tCj4gPiAxIGZpbGUgY2hhbmdlZCwgMTcgaW5zZXJ0aW9ucygrKSwgNyBkZWxl dGlvbnMoLSkKPiA+Cj4gPiBkaWZmIC0tZ2l0IGEvbGliYXZmb3JtYXQvaGxzLmMgYi9saWJhdmZv cm1hdC9obHMuYwo+ID4gaW5kZXggNDU2OGU3MmNiMi4uNDRhZmRhYWI0MiAxMDA2NDQKPiA+IC0t LSBhL2xpYmF2Zm9ybWF0L2hscy5jCj4gPiArKysgYi9saWJhdmZvcm1hdC9obHMuYwo+ID4gQEAg LTE2NTMsNyArMTY1Myw4IEBAIHN0YXRpYyB2b2lkIGFkZF9tZXRhZGF0YV9mcm9tX3JlbmRpdGlv bnMoQVZGb3JtYXRDb250ZXh0ICpzLCBzdHJ1Y3QgcGxheWxpc3QgKnBsCj4gPiAvKiBpZiB0aW1l c3RhbXAgd2FzIGluIHZhbGlkIHJhbmdlOiByZXR1cm5zIDEgYW5kIHNldHMgc2VxX25vCj4gPiAg KiBpZiBub3Q6IHJldHVybnMgMCBhbmQgc2V0cyBzZXFfbm8gdG8gY2xvc2VzdCBzZWdtZW50ICov Cj4gPiBzdGF0aWMgaW50IGZpbmRfdGltZXN0YW1wX2luX3BsYXlsaXN0KEhMU0NvbnRleHQgKmMs IHN0cnVjdCBwbGF5bGlzdCAqcGxzLAo+ID4gLSAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgaW50NjRfdCB0aW1lc3RhbXAsIGludDY0X3QgKnNlcV9ubykKPiA+ICsgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGludDY0X3QgdGltZXN0YW1wLCBpbnQ2NF90 ICpzZXFfbm8sCj4gPiArICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBpbnQ2 NF90ICpzZWdfc3RhcnRfdHMpCj4gPiB7Cj4gPiAgICAgaW50IGk7Cj4gPiAgICAgaW50NjRfdCBw b3MgPSBjLT5maXJzdF90aW1lc3RhbXAgPT0gQVZfTk9QVFNfVkFMVUUgPwo+ID4gQEAgLTE2Njgs NiArMTY2OSw5IEBAIHN0YXRpYyBpbnQgZmluZF90aW1lc3RhbXBfaW5fcGxheWxpc3QoSExTQ29u dGV4dCAqYywgc3RydWN0IHBsYXlsaXN0ICpwbHMsCj4gPiAgICAgICAgIGludDY0X3QgZGlmZiA9 IHBvcyArIHBscy0+c2VnbWVudHNbaV0tPmR1cmF0aW9uIC0gdGltZXN0YW1wOwo+ID4gICAgICAg ICBpZiAoZGlmZiA+IDApIHsKPiA+ICAgICAgICAgICAgICpzZXFfbm8gPSBwbHMtPnN0YXJ0X3Nl cV9ubyArIGk7Cj4gPiArICAgICAgICAgICAgaWYgKHNlZ19zdGFydF90cykgewo+ID4gKyAgICAg ICAgICAgICAgICAqc2VnX3N0YXJ0X3RzID0gcG9zOwo+ID4gKyAgICAgICAgICAgIH0KPiA+ICAg ICAgICAgICAgIHJldHVybiAxOwo+ID4gICAgICAgICB9Cj4gPiAgICAgICAgIHBvcyArPSBwbHMt PnNlZ21lbnRzW2ldLT5kdXJhdGlvbjsKPiA+IEBAIC0xNjkxLDcgKzE2OTUsNyBAQCBzdGF0aWMg aW50NjRfdCBzZWxlY3RfY3VyX3NlcV9ubyhITFNDb250ZXh0ICpjLCBzdHJ1Y3QgcGxheWxpc3Qg KnBscykKPiA+ICAgICAgKiBwbGF5bGlzdCkgYW5kIHRoaXMgaXMgYSBjb21wbGV0ZSBmaWxlLCBm aW5kIHRoZSBtYXRjaGluZyBzZWdtZW50Cj4gPiAgICAgICogYnkgY291bnRpbmcgZHVyYXRpb25z LiAqLwo+ID4gICAgIGlmIChwbHMtPmZpbmlzaGVkICYmIGMtPmN1cl90aW1lc3RhbXAgIT0gQVZf Tk9QVFNfVkFMVUUpIHsKPiA+IC0gICAgICAgIGZpbmRfdGltZXN0YW1wX2luX3BsYXlsaXN0KGMs IHBscywgYy0+Y3VyX3RpbWVzdGFtcCwgJnNlcV9ubyk7Cj4gPiArICAgICAgICBmaW5kX3RpbWVz dGFtcF9pbl9wbGF5bGlzdChjLCBwbHMsIGMtPmN1cl90aW1lc3RhbXAsICZzZXFfbm8sIE5VTEwp Owo+ID4gICAgICAgICByZXR1cm4gc2VxX25vOwo+ID4gICAgIH0KPiA+Cj4gPiBAQCAtMjM2Miw3 ICsyMzY2LDcgQEAgc3RhdGljIGludCBobHNfcmVhZF9zZWVrKEFWRm9ybWF0Q29udGV4dCAqcywg aW50IHN0cmVhbV9pbmRleCwKPiA+ICAgICBpbnQgaSwgajsKPiA+ICAgICBpbnQgc3RyZWFtX3N1 YmRlbXV4ZXJfaW5kZXg7Cj4gPiAgICAgaW50NjRfdCBmaXJzdF90aW1lc3RhbXAsIHNlZWtfdGlt ZXN0YW1wLCBkdXJhdGlvbjsKPiA+IC0gICAgaW50NjRfdCBzZXFfbm87Cj4gPiArICAgIGludDY0 X3Qgc2VxX25vLCBzZWdfc3RhcnRfdHM7Cj4gPgo+ID4gICAgIGlmICgoZmxhZ3MgJiBBVlNFRUtf RkxBR19CWVRFKSB8fCAoYy0+Y3R4LT5jdHhfZmxhZ3MgJiBBVkZNVENUWF9VTlNFRUtBQkxFKSkK PiA+ICAgICAgICAgcmV0dXJuIEFWRVJST1IoRU5PU1lTKTsKPiA+IEBAIC0yMzcyLDggKzIzNzYs NyBAQCBzdGF0aWMgaW50IGhsc19yZWFkX3NlZWsoQVZGb3JtYXRDb250ZXh0ICpzLCBpbnQgc3Ry ZWFtX2luZGV4LAo+ID4KPiA+ICAgICBzZWVrX3RpbWVzdGFtcCA9IGF2X3Jlc2NhbGVfcm5kKHRp bWVzdGFtcCwgQVZfVElNRV9CQVNFLAo+ID4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgcy0+c3RyZWFtc1tzdHJlYW1faW5kZXhdLT50aW1lX2Jhc2UuZGVuLAo+ID4gLSAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGZsYWdzICYgQVZTRUVLX0ZMQUdfQkFDS1dB UkQgPwo+ID4gLSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIEFWX1JPVU5EX0RP V04gOiBBVl9ST1VORF9VUCk7Cj4gPiArICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgQVZfUk9VTkRfRE9XTik7Cj4gPgo+ID4gICAgIGR1cmF0aW9uID0gcy0+ZHVyYXRpb24gPT0g QVZfTk9QVFNfVkFMVUUgPwo+ID4gICAgICAgICAgICAgICAgMCA6IHMtPmR1cmF0aW9uOwo+ID4g QEAgLTIzOTQsOSArMjM5NywxNiBAQCBzdGF0aWMgaW50IGhsc19yZWFkX3NlZWsoQVZGb3JtYXRD b250ZXh0ICpzLCBpbnQgc3RyZWFtX2luZGV4LAo+ID4gICAgIH0KPiA+ICAgICAvKiBjaGVjayBp ZiB0aGUgdGltZXN0YW1wIGlzIHZhbGlkIGZvciB0aGUgcGxheWxpc3Qgd2l0aCB0aGUKPiA+ICAg ICAgKiBzcGVjaWZpZWQgc3RyZWFtIGluZGV4ICovCj4gPiAtICAgIGlmICghc2Vla19wbHMgfHwg IWZpbmRfdGltZXN0YW1wX2luX3BsYXlsaXN0KGMsIHNlZWtfcGxzLCBzZWVrX3RpbWVzdGFtcCwg JnNlcV9ubykpCj4gPiArICAgIGlmICghc2Vla19wbHMgfHwgIWZpbmRfdGltZXN0YW1wX2luX3Bs YXlsaXN0KGMsIHNlZWtfcGxzLCBzZWVrX3RpbWVzdGFtcCwgJnNlcV9ubywgJnNlZ19zdGFydF90 cykpCj4gPiAgICAgICAgIHJldHVybiBBVkVSUk9SKEVJTyk7Cj4gPgo+ID4gKyAgICBpZiAocy0+ c3RyZWFtc1tzdHJlYW1faW5kZXhdLT5jb2RlY3Bhci0+Y29kZWNfdHlwZSA9PSBBVk1FRElBX1RZ UEVfVklERU8gJiYKPiA+ICsgICAgICAgIGZsYWdzICYgQVZTRUVLX0ZMQUdfQkFDS1dBUkQgJiYg IShmbGFncyAmIEFWU0VFS19GTEFHX0FOWSkpIHsKPiA+ICsgICAgICAgIC8qIFNlZWtpbmcgdG8g c3RhcnQgb2Ygc2VnbWVudCBlbnN1cmVzIHdlIHNlZWsgdG8gYSBrZXlmcmFtZSBsb2NhdGVkCj4g PiArICAgICAgICAgKiBiZWZvcmUgdGhlIGdpdmVuIHRpbWVzdGFtcC4gKi8KPiA+ICsgICAgICAg IHNlZWtfdGltZXN0YW1wID0gc2VnX3N0YXJ0X3RzOwo+ID4gKyAgICB9Cj4gPiArCj4gPiAgICAg Lyogc2V0IHNlZ21lbnQgbm93IHNvIHdlIGRvIG5vdCBuZWVkIHRvIHNlYXJjaCBhZ2FpbiBiZWxv dyAqLwo+ID4gICAgIHNlZWtfcGxzLT5jdXJfc2VxX25vID0gc2VxX25vOwo+ID4gICAgIHNlZWtf cGxzLT5zZWVrX3N0cmVhbV9pbmRleCA9IHN0cmVhbV9zdWJkZW11eGVyX2luZGV4Owo+ID4gQEAg LTI0MjMsNyArMjQzMyw3IEBAIHN0YXRpYyBpbnQgaGxzX3JlYWRfc2VlayhBVkZvcm1hdENvbnRl eHQgKnMsIGludCBzdHJlYW1faW5kZXgsCj4gPgo+ID4gICAgICAgICBpZiAocGxzICE9IHNlZWtf cGxzKSB7Cj4gPiAgICAgICAgICAgICAvKiBzZXQgY2xvc2VzdCBzZWdtZW50IHNlcV9ubyBmb3Ig cGxheWxpc3RzIG5vdCBoYW5kbGVkIGFib3ZlICovCj4gPiAtICAgICAgICAgICAgZmluZF90aW1l c3RhbXBfaW5fcGxheWxpc3QoYywgcGxzLCBzZWVrX3RpbWVzdGFtcCwgJnBscy0+Y3VyX3NlcV9u byk7Cj4gPiArICAgICAgICAgICAgZmluZF90aW1lc3RhbXBfaW5fcGxheWxpc3QoYywgcGxzLCBz ZWVrX3RpbWVzdGFtcCwgJnBscy0+Y3VyX3NlcV9ubywgTlVMTCk7Cj4gPiAgICAgICAgICAgICAv KiBzZWVrIHRoZSBwbGF5bGlzdCB0byB0aGUgZ2l2ZW4gcG9zaXRpb24gd2l0aG91dCB0YWtpbmcK PiA+ICAgICAgICAgICAgICAqIGtleWZyYW1lcyBpbnRvIGFjY291bnQgc2luY2UgdGhpcyBwbGF5 bGlzdCBkb2VzIG5vdCBoYXZlIHRoZQo+ID4gICAgICAgICAgICAgICogc3BlY2lmaWVkIHN0cmVh bSB3aGVyZSB3ZSBzaG91bGQgbG9vayBmb3IgdGhlIGtleWZyYW1lcyAqLwo+ID4gLS0KPiA+IDIu MjUuMQo+ID4KPiA+IF9fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19f X19fCj4gPiBmZm1wZWctZGV2ZWwgbWFpbGluZyBsaXN0Cj4gPiBmZm1wZWctZGV2ZWxAZmZtcGVn Lm9yZwo+ID4gaHR0cHM6Ly9mZm1wZWcub3JnL21haWxtYW4vbGlzdGluZm8vZmZtcGVnLWRldmVs Cj4gPgo+ID4gVG8gdW5zdWJzY3JpYmUsIHZpc2l0IGxpbmsgYWJvdmUsIG9yIGVtYWlsCj4gPiBm Zm1wZWctZGV2ZWwtcmVxdWVzdEBmZm1wZWcub3JnIHdpdGggc3ViamVjdCAidW5zdWJzY3JpYmUi Lgo+ID4KPgo+IExHVE0KCkFwcGxpZWQgYXMgZTc4ZDA4MTBkMTc0MTUzNWM5NWU1YWUwZjE5ODk3 NzYyNmIxY2RmZgoKClRoYW5rcwpTdGV2ZW4KX19fX19fX19fX19fX19fX19fX19fX19fX19fX19f X19fX19fX19fX19fX19fX18KZmZtcGVnLWRldmVsIG1haWxpbmcgbGlzdApmZm1wZWctZGV2ZWxA ZmZtcGVnLm9yZwpodHRwczovL2ZmbXBlZy5vcmcvbWFpbG1hbi9saXN0aW5mby9mZm1wZWctZGV2 ZWwKClRvIHVuc3Vic2NyaWJlLCB2aXNpdCBsaW5rIGFib3ZlLCBvciBlbWFpbApmZm1wZWctZGV2 ZWwtcmVxdWVzdEBmZm1wZWcub3JnIHdpdGggc3ViamVjdCAidW5zdWJzY3JpYmUiLgo=