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 1A40A426D8 for ; Mon, 25 Apr 2022 20:24:25 +0000 (UTC) Received: from [127.0.1.1] (localhost [127.0.0.1]) by ffbox0-bg.mplayerhq.hu (Postfix) with ESMTP id C616768B070; Mon, 25 Apr 2022 23:24:22 +0300 (EEST) Received: from mail-ej1-f47.google.com (mail-ej1-f47.google.com [209.85.218.47]) by ffbox0-bg.mplayerhq.hu (Postfix) with ESMTPS id 4CA7368AECD for ; Mon, 25 Apr 2022 23:24:16 +0300 (EEST) Received: by mail-ej1-f47.google.com with SMTP id l7so31921668ejn.2 for ; Mon, 25 Apr 2022 13:24:16 -0700 (PDT) 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; bh=0E9PH21eEnWEo1W9UA9u0jWmD4hXdpNH+taLX0qgxX0=; b=Nv9QGqYNcr5P18aiKPmUgOyvs9W368oldHNByvaYq/m5yY6IAh6a2DbpB4yUGbMU0g BZwU9LMg65+8oZRG7GXdGhmZGQKI+RbYH7JvNDg790ol9cDEr48GzEHOXFzQqDI0hibI X0qhgN9cSUhW3TNugOZBfzwyjcip6h3cp5Z3CN6EVp8ertI/oktLp4qKvZOjNdsVYXJj FHl/k2gLPPItd/CjmY4cYMsPYuDClgIt8PZdaeHHHiGnKn8oOOack1r1osAh7Fe8bCKz uj5l20+FpDjl68C/j9j2vazrkpCPIS/LBwkkO1KEzkYrJsDACHnhr+No83QrS9EDLCrV 8MiA== 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; bh=0E9PH21eEnWEo1W9UA9u0jWmD4hXdpNH+taLX0qgxX0=; b=pR4rUGGFjVJQ7bqXyScVIIPSBAxhvSSydFd3S7oU54jfEHwFQo4YlyEw0/ypV76qZi 7G5R+auzprkGwiHY4R/SlPyfUgnrZAwf4KIN9Yhh+R+5ZJ7xBen87mZUDDqClw6UfUyS D2cSZxeM1HhLoc4ckR+AsjlBxSAnyhgUt2xRqNPdqDT+khfo+ENxrHbZeuQXAqPuHX7a iiJrWwptJ3DZydxwcNJAjZ9Ux8icnyoTOdiMIB3nkCo20fzJSZCXjuVADZF33YmtZq11 9W+kouSSZnBPCvGXi2K0bJG+/HGLxi5cC67JeJClI1rrCP09K46ySC+luxqW4mhqxeVm HIxw== X-Gm-Message-State: AOAM531a7HfuRZbqi+JZ+KN6vqSPjONLwhdWVIjsD2bMFLQNRjWKEIRO YadIv4cD3TB5z9xuPUqGxzjKt1yAb7Nj2ot/DOXjnHhTyhs= X-Google-Smtp-Source: ABdhPJxBT/GznwYq+njESgqvf4ppwIVV62CklfZ9IjdUGH45VWSSSAf/fX1O57W5Y5gQfzHQ0KUE3FCJmKp52EP1NfA= X-Received: by 2002:a17:906:49d4:b0:6d6:e5ec:9a23 with SMTP id w20-20020a17090649d400b006d6e5ec9a23mr18103973ejv.79.1650918255630; Mon, 25 Apr 2022 13:24:15 -0700 (PDT) MIME-Version: 1.0 References: <20220330121806.822-1-dcnieho@gmail.com> In-Reply-To: <20220330121806.822-1-dcnieho@gmail.com> From: "Diederick C. Niehorster" Date: Mon, 25 Apr 2022 22:23:57 +0200 Message-ID: To: FFmpeg development discussions and patches Subject: Re: [FFmpeg-devel] [PATCH v5 00/21] avdevice (mostly dshow) enhancements 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 Content-Type: text/plain; charset="us-ascii" Content-Transfer-Encoding: 7bit Errors-To: ffmpeg-devel-bounces@ffmpeg.org Sender: "ffmpeg-devel" Archived-At: List-Archive: List-Post: Ping for the series, especially the first commit in the series which should spark some discussion. Thanks! Dee On Wed, Mar 30, 2022 at 2:18 PM Diederick Niehorster wrote: > > This patch series implements a series of features, mostly enhancing the > dshow avdevice, but also adding new functionality to avformat. > This whole patchset enabled users of the FFmpeg API to fully > query and control a dshow device, making FFmpeg a nice backend for any > program that needs access to, e.g., a webcam. > > Different from v3 and v4, part of the patches has now been accepted, so > only remaining features are in this set. Importantly, as per discussion > on the list ( > https://ffmpeg.org/pipermail/ffmpeg-devel/2021-June/281513.html, see > especially https://ffmpeg.org/pipermail/ffmpeg-devel/2021-June/281586.html), > to resolve the the unholy ABI-relationship between libavdevice and > libavformat and allow easier working on the part of the avdevice API > that lives in avformat, avdevice is now locked to a specific major and minor > version of avformat. This is documented in libavdevice/avdevice.h. > > Regarding new functionality added to avformat: > Querying the capabilities of a dshow device is also possible on a > device that is already opened. I expect/guess however that it may not be > possible to achieve that for all of the avdevices, so in principle it is > important that this patchset adds the ability to create an allocated but > unopened AVFormatContext+AVInputFormat with the new function > avformat_alloc_input_context(). This is tested in the new > device_get_capabilities example. > > Diederick Niehorster (21): > avdevice: lock to minor version of avformat > avformat: add control_message function to AVInputFormat > avdevice/dshow: implement control_message interface > avdevice: add control message requesting to show config dialog > avdevice/dshow: accept show config dialog control message > avdevice/dshow: add config dialog command for crossbar and tv tuner > avdevice/avdevice: Revert "Deprecate AVDevice Capabilities API" > avdevice/avdevice: clean up avdevice_capabilities_create > avdevice: capabilities API details no longer public > avutil/opt: document AVOptionRange min_value > max_value > avdevice: Add internal helpers for querying device capabilities > avdevice: change device capabilities option type > avdevice: improve capabilities' option API > avdevice/dshow: move audio format helpers > avdevice/dshow: when closing, set context fields back to zero > avdevice/dshow: implement capabilities API > avdevice/dshow: cosmetics > avformat: add avformat_alloc_input_context() > doc/examples: adding device_get_capabilities example > Makefile/examples: cosmetics > avdevice/dshow: capabilities query also works on opened device > > configure | 2 + > doc/examples/.gitignore | 1 + > doc/examples/Makefile | 47 +- > doc/examples/Makefile.example | 1 + > doc/examples/device_get_capabilities.c | 243 ++++++++++ > doc/indevs.texi | 34 ++ > libavdevice/avdevice.c | 177 ++++++- > libavdevice/avdevice.h | 111 ++--- > libavdevice/dshow.c | 641 +++++++++++++++++++++++-- > libavdevice/dshow_capture.h | 14 + > libavdevice/dshow_crossbar.c | 91 ++-- > libavdevice/internal.h | 66 +++ > libavdevice/utils.c | 48 ++ > libavdevice/version.h | 15 +- > libavdevice/version_major.h | 2 +- > libavformat/avformat.h | 59 ++- > libavformat/demux.c | 74 ++- > libavformat/utils.c | 5 + > libavformat/version.h | 14 +- > libavutil/avutil.h | 3 + > libavutil/macros.h | 3 + > libavutil/opt.c | 2 +- > libavutil/opt.h | 5 + > 23 files changed, 1462 insertions(+), 196 deletions(-) > create mode 100644 doc/examples/device_get_capabilities.c > > -- > 2.28.0.windows.1 > _______________________________________________ ffmpeg-devel mailing list ffmpeg-devel@ffmpeg.org https://ffmpeg.org/mailman/listinfo/ffmpeg-devel To unsubscribe, visit link above, or email ffmpeg-devel-request@ffmpeg.org with subject "unsubscribe".