From patchwork Mon Jan 13 04:11:25 2020 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Andriy Gelman X-Patchwork-Id: 17312 Return-Path: X-Original-To: patchwork@ffaux-bg.ffmpeg.org Delivered-To: patchwork@ffaux-bg.ffmpeg.org Received: from ffbox0-bg.mplayerhq.hu (ffbox0-bg.ffmpeg.org [79.124.17.100]) by ffaux.localdomain (Postfix) with ESMTP id 408A7449E4D for ; Mon, 13 Jan 2020 06:18:12 +0200 (EET) Received: from [127.0.1.1] (localhost [127.0.0.1]) by ffbox0-bg.mplayerhq.hu (Postfix) with ESMTP id 0E63068B0A3; Mon, 13 Jan 2020 06:18:12 +0200 (EET) X-Original-To: ffmpeg-devel@ffmpeg.org Delivered-To: ffmpeg-devel@ffmpeg.org Received: from mail-qt1-f196.google.com (mail-qt1-f196.google.com [209.85.160.196]) by ffbox0-bg.mplayerhq.hu (Postfix) with ESMTPS id 9A74D68B0A3 for ; Mon, 13 Jan 2020 06:18:04 +0200 (EET) Received: by mail-qt1-f196.google.com with SMTP id v25so8027368qto.7 for ; Sun, 12 Jan 2020 20:18:04 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20161025; h=from:to:cc:subject:date:message-id:mime-version :content-transfer-encoding; bh=TkGXTUo3OWDz27YTWD32pxNayFmIiXb9ogGkth6URko=; b=lgqd5sP+skg/op9PCK5/75Go0TN6cwKccUfCih1gkW+rUXWJa5+WGRpY5ydQ0Sm7aA BpxCQEV1yXsBf6eN5iUp5XaYFyB1y5FP3S/CILc2FEcY9uAKp8AdH8wFia5WUe7SO0Rb Qw5LuQhHnEWSSbCWAqQwxdKNHSXdVg8vPgL6ziRELHUy06bmlkWLOA7zacSY3K8JiRQD VptMvGv7zqZ6GBTP8ePq2rRXbtwOW8jXUzIJOXbOQPsKygk91fk/Tnf3aBvx9A90sN9y lxQTiQ0upPtwFAVXncXfk1UConj6UBGVWPjHRiiKocLmUmie6rje2r6tRBfDg/gAb6R3 n7Sw== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:from:to:cc:subject:date:message-id:mime-version :content-transfer-encoding; bh=TkGXTUo3OWDz27YTWD32pxNayFmIiXb9ogGkth6URko=; b=WaZYzNZdU/PQSE7Fh7zmsnmVBdKWgBu5r8qOs7ORJ2jBA+q45Dp0pAer+DWXLbQJFO SS1rskc0vrglwvJ33jF5/PcgzXuQUu5iOgFbJtqKk9XIJ+Z9wXrPWkJVlO8LAX9patr2 SSxfZlThiXkZR7AN0fhTYk2zMqYFuPLp01ADXPiSz/OQnfsmdUQVmOrv2E+t0GFPKHlg Jpa0XC+HXQOTIUtIzU2OfLc3yrU1+DiIEynTV3W7+ZAaqvGLVAIQxxkrwZ8Mon4iD8Jf TUqxjLDkbtVbIOJa316+tCRJBdfo5BALm0b8/Fg1Ng8c4QtJDluuU6EvjS4a6mCy96NS c2HA== X-Gm-Message-State: APjAAAX3ClJ9Qsl2GOjeczAwXVzTHrtm7U1G6FX9cbcgPxmTzmgmDn5g bwFoW4Rv5sRXu1j0DNRdvPkzx/2T X-Google-Smtp-Source: APXvYqzckTYWwQyEmKOjxLt6ZdybB5erTlfGmNw+2cpt4SXKp9Af65qIHdhCbwhHIfgYTkMF1QyHsQ== X-Received: by 2002:ac8:33ab:: with SMTP id c40mr12615738qtb.250.1578888714404; Sun, 12 Jan 2020 20:11:54 -0800 (PST) Received: from localhost.localdomain (c-71-232-27-28.hsd1.ma.comcast.net. [71.232.27.28]) by smtp.gmail.com with ESMTPSA id u57sm5087630qth.68.2020.01.12.20.11.53 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Sun, 12 Jan 2020 20:11:54 -0800 (PST) From: Andriy Gelman X-Google-Original-From: Andriy Gelman To: ffmpeg-devel@ffmpeg.org Date: Sun, 12 Jan 2020 23:11:25 -0500 Message-Id: <20200113041130.30126-1-andriy.gelman@gmail.com> X-Mailer: git-send-email 2.24.0 MIME-Version: 1.0 Subject: [FFmpeg-devel] [PATCH 1/6] doc/v4l2_m2m: Add documentation 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: Andriy Gelman Errors-To: ffmpeg-devel-bounces@ffmpeg.org Sender: "ffmpeg-devel" From: Andriy Gelman Signed-off-by: Andriy Gelman --- doc/decoders.texi | 12 ++++++++++++ doc/encoders.texi | 27 +++++++++++++++++++++++++++ 2 files changed, 39 insertions(+) diff --git a/doc/decoders.texi b/doc/decoders.texi index f18226b3504..222f681810b 100644 --- a/doc/decoders.texi +++ b/doc/decoders.texi @@ -86,6 +86,18 @@ AVS2-P2/IEEE1857.4 video decoder wrapper. This decoder allows libavcodec to decode AVS2 streams with davs2 library. +@section v4l2m2m + +@command{ffmpeg} supports a set of v4l2m2m wrappers for interfacing with +hardware decoders. Depending on the hardware's capabilties the following decoders may be selected: +h264, hevc, mpeg1, mpeg2, mpeg4, h263, vc1, vp8, and vp9. + +To use a specifix decoder append a _v4l2m2m suffix. For example to select h264 +decoder use: +@example +ffmpeg -codec:v h264_v4l2m2m -i INPUT OUTPUT +@end example + @c man end VIDEO DECODERS @chapter Audio Decoders diff --git a/doc/encoders.texi b/doc/encoders.texi index 61e674cf968..6cb43aedbce 100644 --- a/doc/encoders.texi +++ b/doc/encoders.texi @@ -3117,6 +3117,33 @@ required to produce a stream usable with all decoders. @end table +@section v4l2m2m + +@command{ffmpeg} supports a set of v4l2m2m wrappers for interfacing with hardware encoders. +Depending on the hardware's capabilties the following encoders may be selected: +mpeg4, h263, h264, hevc, and vp8. + +To use a specific encoder append _v4l2m2m suffix. For example to select h264 use: +@example +ffmpeg -i INPUT [-pix_fmt pixfmt] -codec:v h264_v4l2m2m OUTPUT +@end example +In some cases, it may be necessary to insert a pixel format conversion with +@code{-pix_fmt} option. This is required if the pixel format of the input does not +match the format of the encoder. If there is a mismatch, @command{ffmpeg} will +exit and specify the required pixfmt to use. + +The following standard libavcodec options are supported: +@itemize +@item +@option{g} / @option{gop_size} +@item +@option{qpel} +@item +@option{qmin} +@item +@option{qmax} +@end itemize + @section vc2 SMPTE VC-2 (previously BBC Dirac Pro). This codec was primarily aimed at