Received: by 2002:ad5:474a:0:0:0:0:0 with SMTP id i10csp7124777imu; Tue, 22 Jan 2019 00:28:23 -0800 (PST) X-Google-Smtp-Source: ALg8bN6Em+nvWU9cIfzOVVBH6784m0Icat15MFFjZaCCrRUJ8DOLRanQamKIIzpz3iazEIHA1KZ1 X-Received: by 2002:a63:6bc1:: with SMTP id g184mr31692355pgc.25.1548145703925; Tue, 22 Jan 2019 00:28:23 -0800 (PST) ARC-Seal: i=1; a=rsa-sha256; t=1548145703; cv=none; d=google.com; s=arc-20160816; b=uNCnG3ihspQtw1PHd78XMIJmUGvVJL09HaCj802DyJCAnsjEidRfAjEujzUeQqiLeM fIp19kB6FZOU+nQ4bmaDJhog92bxYr/tmRXJrF2gIQpHLIdeeduRMqU/qJEN/mk7Tvqr bC5VyDvwTT/90NboxmA86+hVCG0oGDfEDyVwk1Xok6MNCwd/gSPm5hsj6G+i8KGeTkRU me0M8pZrhmvUfWngtbZ62I+tyKtB8pD6Wo+mrk5Uwg3vyvkqYILRkjqtfZKVk6VUVN82 OSznnVB0IqJiWu94KsQqeP1cgKk7dEh4YoJmB6AvP3gT1JywCLBP1QHxoNOOgWkWC0Pc rq0A== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=list-id:precedence:sender:cc:to:subject:message-id:date:from :in-reply-to:references:mime-version:dkim-signature; bh=e8yrVWYsJdctJ97rGJyUpzzNa0v8dkbbCNdmkxPFP2M=; b=W+sHK5aQ3RzK3wgclf4LfhbFilEIWKqSFZidDpmbTHc0/lFmv04ouQzcpyyMrgPUr2 YnvI9SEG6qgkFC1TU3VBL/vYdpblyfFUpooQngWhE1yQSt3q1t3CjSmBqyK7/HxHunXZ U6sFAJ+Ng6C/bevrCdsQwlDSp7M44Untff8xlns9j4RA+HRLCLeDofkW52yqxOS8o2Xg gyImaazBdr83Yinle5nWztHow5RN0KSV+46LiOOuF2HdJ8HM7LTgHuWxBTAjaBwgzxkt 9EHTBc8kP11vUhpnFPzOwOLw1A2WmvKTTkuwZNvKUDcvxPuc5iUymMYXW25sbTqs6R9y okYw== ARC-Authentication-Results: i=1; mx.google.com; dkim=pass header.i=@chromium.org header.s=google header.b=dEEFCyxr; spf=pass (google.com: best guess record for domain of linux-kernel-owner@vger.kernel.org designates 209.132.180.67 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org; dmarc=pass (p=NONE sp=NONE dis=NONE) header.from=chromium.org Return-Path: Received: from vger.kernel.org (vger.kernel.org. [209.132.180.67]) by mx.google.com with ESMTP id d142si14602115pfd.93.2019.01.22.00.28.07; Tue, 22 Jan 2019 00:28:23 -0800 (PST) Received-SPF: pass (google.com: best guess record for domain of linux-kernel-owner@vger.kernel.org designates 209.132.180.67 as permitted sender) client-ip=209.132.180.67; Authentication-Results: mx.google.com; dkim=pass header.i=@chromium.org header.s=google header.b=dEEFCyxr; spf=pass (google.com: best guess record for domain of linux-kernel-owner@vger.kernel.org designates 209.132.180.67 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org; dmarc=pass (p=NONE sp=NONE dis=NONE) header.from=chromium.org Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1727558AbfAVIZz (ORCPT + 99 others); Tue, 22 Jan 2019 03:25:55 -0500 Received: from mail-ot1-f66.google.com ([209.85.210.66]:35008 "EHLO mail-ot1-f66.google.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1727467AbfAVIZx (ORCPT ); Tue, 22 Jan 2019 03:25:53 -0500 Received: by mail-ot1-f66.google.com with SMTP id 81so22938396otj.2 for ; Tue, 22 Jan 2019 00:25:53 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=chromium.org; s=google; h=mime-version:references:in-reply-to:from:date:message-id:subject:to :cc; bh=e8yrVWYsJdctJ97rGJyUpzzNa0v8dkbbCNdmkxPFP2M=; b=dEEFCyxrAuT0f8t0EBWJmZvcEIJ6LMw6NgJxy1jvRxjb2lo1q7wFhwv8QLAwkH9oej ls8One2BlkMKyJqIcQnLXvDOAYGq3Vcgj5ie0qkW0Xx71eBHBjEFpHNm5n5NyMbELRvB WQBOHYGE/ULZtbgReIMn1hKNu1swlmHv6jn6c= X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:mime-version:references:in-reply-to:from:date :message-id:subject:to:cc; bh=e8yrVWYsJdctJ97rGJyUpzzNa0v8dkbbCNdmkxPFP2M=; b=fude0nx5g1wNoSkXaeWs0bkrnvoxmZK/ZsMlxGZe0jFQ+2nP67OO/AWeG7qhH1N8Uj tWkSJGPbcHRZEK5Baf9xY0mj3aCCd/G1NVnNl0w3hRp5stViESGjD1MCYIxWkpnlguGL 2lblmWPgJ1WT8OIETiydES8sOZFG03ZhhdLiczuPApIG8DaBwbhuHmKbJr0IUwKNCzcM qHnYl6O22DQWbKnwym2ObE2+zT8zqX2KvIFj9NVvFVue5PR1HVFQZ17JpBrrsuUAbrmg /iayfQMM8992TfiWUtKjtl1i93Pb7KehIcNTH8KRHT+Joi5u3Snjt9Fpeq6KQliTZPWl LrDQ== X-Gm-Message-State: AJcUukcWvWEIY5kB+PLrBaloysLdznzbeW9ZxLhpGwvDDbfl5UNwoUSn GNsoTJy8VlSggvzbpJPEPw2yu4GLIp/CIg== X-Received: by 2002:a9d:6847:: with SMTP id c7mr22204846oto.120.1548145552752; Tue, 22 Jan 2019 00:25:52 -0800 (PST) Received: from mail-ot1-f43.google.com (mail-ot1-f43.google.com. [209.85.210.43]) by smtp.gmail.com with ESMTPSA id z18sm6570669otp.41.2019.01.22.00.25.51 for (version=TLS1_2 cipher=ECDHE-RSA-AES128-GCM-SHA256 bits=128/128); Tue, 22 Jan 2019 00:25:52 -0800 (PST) Received: by mail-ot1-f43.google.com with SMTP id s5so22886316oth.7 for ; Tue, 22 Jan 2019 00:25:51 -0800 (PST) X-Received: by 2002:a9d:1d65:: with SMTP id m92mr11972217otm.65.1548145550896; Tue, 22 Jan 2019 00:25:50 -0800 (PST) MIME-Version: 1.0 References: <20190122062616.164838-1-acourbot@chromium.org> <9c6ceddc-62c4-e4e7-9e27-b8213d8adb42@xs4all.nl> In-Reply-To: From: Tomasz Figa Date: Tue, 22 Jan 2019 17:25:40 +0900 X-Gmail-Original-Message-ID: Message-ID: Subject: Re: [PATCH v2] media: docs-rst: Document m2m stateless video decoder interface To: Alexandre Courbot Cc: Hans Verkuil , Paul Kocialkowski , Maxime Ripard , Mauro Carvalho Chehab , Pawel Osciak , Linux Media Mailing List , LKML Content-Type: text/plain; charset="UTF-8" Sender: linux-kernel-owner@vger.kernel.org Precedence: bulk List-ID: X-Mailing-List: linux-kernel@vger.kernel.org On Tue, Jan 22, 2019 at 5:19 PM Alexandre Courbot wrote: > > On Tue, Jan 22, 2019 at 5:06 PM Hans Verkuil wrote: > > > > On 01/22/2019 07:26 AM, Alexandre Courbot wrote: > > > Documents the protocol that user-space should follow when > > > communicating with stateless video decoders. > > > > > > The stateless video decoding API makes use of the new request and tags > > > APIs. While it has been implemented with the Cedrus driver so far, it > > > should probably still be considered staging for a short while. > > > > > > Signed-off-by: Alexandre Courbot > > > --- > > > Changes since v1: > > > > > > * Use timestamps instead of tags to reference frames, > > > * Applied Paul's suggestions to not require one frame worth of data per OUTPUT > > > buffer > > > > > > One of the effects of requiring sub-frame units to be submitted per request is > > > that the stateless decoders are not exactly "stateless" anymore: if a frame is > > > made of several slices, then the decoder must keep track of the buffer in which > > > the current frame is being decoded between requests, and all the slices for the > > > current frame must be submitted before we can consider decoding the next one. > > > > > > Also if we decide to force clients to submit one slice per request, then doesn't > > > some of the H.264 controls need to change? For instance, in the current v2 > > > there is still a v4l2_ctrl_h264_decode_param::num_slices member. It is used in > > > Chromium to specify the number of slices given to the > > > V4L2_CID_MPEG_VIDEO_H264_SLICE_PARAMS control, but is apparently ignored by the > > > Cedrus driver. Maxime, can you comment on this? > > > > > > Documentation/media/uapi/v4l/dev-codec.rst | 5 + > > > .../media/uapi/v4l/dev-stateless-decoder.rst | 378 ++++++++++++++++++ > > > 2 files changed, 383 insertions(+) > > > create mode 100644 Documentation/media/uapi/v4l/dev-stateless-decoder.rst > > > > > > > Thank you! I have uploaded a version of the V4L2 spec with this and the two older > > stateful codec patches applied: > > > > https://hverkuil.home.xs4all.nl/codec-api/uapi/v4l/dev-codec.html > > Thanks! A v3 will likely be necessary (and I'll likely be more > reactive producing it) because of that one-slice-per-request > requirement. After discussing with Tomasz we think it would be > safer/simpler to require one frame per request in a first time, as we > initially agreed. > > Anyway, we can discuss the details once Tomasz chimes in. I've replied in the v1 thread, in reply to Paul's email. Best regards, Tomasz