From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from mp0 ([2001:41d0:2:4a6f::]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits)) by ms11 with LMTPS id EbVLKz3Q9l+5dAAA0tVLHw (envelope-from ) for ; Thu, 07 Jan 2021 09:11:25 +0000 Received: from aspmx1.migadu.com ([2001:41d0:2:4a6f::]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits)) by mp0 with LMTPS id mEulJj3Q9l9iJwAA1q6Kng (envelope-from ) for ; Thu, 07 Jan 2021 09:11:25 +0000 Received: from lists.gnu.org (lists.gnu.org [209.51.188.17]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by aspmx1.migadu.com (Postfix) with ESMTPS id 716629403D2 for ; Thu, 7 Jan 2021 09:11:25 +0000 (UTC) Received: from localhost ([::1]:47064 helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1kxRKG-00085s-Dx for larch@yhetil.org; Thu, 07 Jan 2021 04:11:24 -0500 Received: from eggs.gnu.org ([2001:470:142:3::10]:35976) by lists.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1kxQWY-0003QQ-Sq for guix-patches@gnu.org; Thu, 07 Jan 2021 03:20:02 -0500 Received: from debbugs.gnu.org ([209.51.188.43]:34689) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_128_GCM_SHA256:128) (Exim 4.90_1) (envelope-from ) id 1kxQWY-0006KK-Fo for guix-patches@gnu.org; Thu, 07 Jan 2021 03:20:02 -0500 Received: from Debian-debbugs by debbugs.gnu.org with local (Exim 4.84_2) (envelope-from ) id 1kxQWY-0002qF-Ad for guix-patches@gnu.org; Thu, 07 Jan 2021 03:20:02 -0500 X-Loop: help-debbugs@gnu.org Subject: [bug#45707] [PATCH v2] gnu: Add obs-v4l2sink. Resent-From: Alexey Abramov Original-Sender: "Debbugs-submit" Resent-CC: guix-patches@gnu.org Resent-Date: Thu, 07 Jan 2021 08:20:02 +0000 Resent-Message-ID: Resent-Sender: help-debbugs@gnu.org X-GNU-PR-Message: followup 45707 X-GNU-PR-Package: guix-patches X-GNU-PR-Keywords: patch To: Evan Received: via spool by 45707-submit@debbugs.gnu.org id=B45707.161000756610879 (code B ref 45707); Thu, 07 Jan 2021 08:20:02 +0000 Received: (at 45707) by debbugs.gnu.org; 7 Jan 2021 08:19:26 +0000 Received: from localhost ([127.0.0.1]:46235 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1kxQVy-0002pO-L6 for submit@debbugs.gnu.org; Thu, 07 Jan 2021 03:19:26 -0500 Received: from mx4.mail.mmer.org ([178.22.66.29]:33676) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1kxQVw-0002pG-QA for 45707@debbugs.gnu.org; Thu, 07 Jan 2021 03:19:25 -0500 Received: from delta.lan (unknown [10.147.19.73]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by mx4.mail.mmer.org (Postfix) with ESMTPSA id E83DE9CC35; Thu, 7 Jan 2021 07:48:38 +0000 (UTC) From: Alexey Abramov References: <87turt4ogl.fsf@gmail.com> Date: Thu, 07 Jan 2021 09:19:16 +0100 In-Reply-To: (Evan's message of "Thu, 7 Jan 2021 04:37:45 +0000 (UTC)") Message-ID: <87turt2m7v.fsf@delta.lan> User-Agent: Gnus/5.13 (Gnus v5.13) Emacs/27.1 (gnu/linux) MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: quoted-printable X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.18 Precedence: list X-Mailman-Approved-At: Thu, 07 Jan 2021 04:11:16 -0500 X-BeenThere: guix-patches@gnu.org List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Cc: 45707@debbugs.gnu.org Errors-To: guix-patches-bounces+larch=yhetil.org@gnu.org Sender: "Guix-patches" X-Migadu-Flow: FLOW_IN X-Migadu-Spam-Score: -2.34 Authentication-Results: aspmx1.migadu.com; dkim=none; dmarc=none; spf=pass (aspmx1.migadu.com: domain of guix-patches-bounces@gnu.org designates 209.51.188.17 as permitted sender) smtp.mailfrom=guix-patches-bounces@gnu.org X-Migadu-Queue-Id: 716629403D2 X-Spam-Score: -2.34 X-Migadu-Scanner: scn0.migadu.com X-TUID: fJ0QyvfergEc Hi Evan, You can make it work.=20 In order to provide plugins for obs via $XDG_CONFIG_HOME (~/.config) you ne= ed to provide the following structure: "$XDG_CONFIG_HOME/obs-studio/plugins//bin//" As it implemented in obs-studio (~/obs-studio/UI/window-basic-main.cpp) --8<---------------cut here---------------start------------->8--- static void AddExtraModulePaths() { char base_module_dir[512]; #if defined(_WIN32) || defined(__APPLE__) int ret =3D GetProgramDataPath(base_module_dir, sizeof(base_modul= e_dir), "obs-studio/plugins/%module%"); #else int ret =3D GetConfigPath(base_module_dir, sizeof(base_module_dir= ), "obs-studio/plugins/%module%"); #endif if (ret <=3D 0) return; string path =3D base_module_dir; #if defined(__APPLE__) obs_add_module_path((path + "/bin").c_str(), (path + "/data").c_s= tr()); BPtr config_bin =3D os_get_config_path_ptr("obs-studio/plugins/%module%/bin"); BPtr config_data =3D os_get_config_path_ptr("obs-studio/plugins/%module%/data"= ); obs_add_module_path(config_bin, config_data); #elif ARCH_BITS =3D=3D 64 obs_add_module_path((path + "/bin/64bit").c_str(), (path + "/data").c_str()); #else obs_add_module_path((path + "/bin/32bit").c_str(), (path + "/data").c_str()); #endif } --8<---------------cut here---------------end--------------->8--- So what I am currently have is this: --8<---------------cut here---------------start------------->8--- =CE=BB find ~/.config/obs-studio/plugins=20 /home/levenson/.config/obs-studio/plugins /home/levenson/.config/obs-studio/plugins/v4l2sink /home/levenson/.config/obs-studio/plugins/v4l2sink/bin /home/levenson/.config/obs-studio/plugins/v4l2sink/bin/64bit /home/levenson/.config/obs-studio/plugins/v4l2sink/bin/64bit/v4l2sink.so --8<---------------cut here---------------end--------------->8--- where the library is a symlink v4l2sink.so -> /home/levenson/.guix-profile/lib/obs-plugins/v4l2sink.so --=20 Alexey