sudo systemctl stop webcamd
Ran into a few errors when prepping to test the plugin version of your changes on an octopi 0.18 install. Figured out that pip needed to be upgraded in the venv using pip install --upgrade pip, but that didn't seem to resolve the setup process completely. Had to install rust using curl https://sh.rustup.rs -sSf | sh and pip install setuptools_rust before python setup.py install in your instructions.
Installed /home/pi/aiortc/venv/lib/python3.7/site-packages/aiortc-1.2.1-py3.7-linux-armv6l.egg
Processing dependencies for aiortc==1.2.1
Searching for cryptography>=2.2
Reading https://pypi.org/simple/cryptography/
Downloading https://files.pythonhosted.org/packages/cc/98/8a258ab4787e6f835d350639792527d2eb7946ff9fc0caca9c3f4cf5dcfe/cryptography-3.4.8.tar.gz#sha256=94cc5ed4ceaefcbe5bf38c8fba6a21fc1d365bb8fb826ea1688e3370b2e24a1c
Best match: cryptography 3.4.8
Processing cryptography-3.4.8.tar.gz
Writing /tmp/easy_install-_neis07t/cryptography-3.4.8/setup.cfg
Running cryptography-3.4.8/setup.py -q bdist_egg --dist-dir /tmp/easy_install-_neis07t/cryptography-3.4.8/egg-dist-tmp-40ehcvdg
        =============================DEBUG ASSISTANCE==========================
        If you are seeing an error here please try the following to
        successfully install cryptography:
        Upgrade to the latest pip and try again. This will fix errors for most
        users. See: https://pip.pypa.io/en/stable/installing/#upgrading-pip
        =============================DEBUG ASSISTANCE==========================
Traceback (most recent call last):
  File "/home/pi/aiortc/venv/lib/python3.7/site-packages/setuptools/sandbox.py", line 154, in save_modules
    yield saved
  File "/home/pi/aiortc/venv/lib/python3.7/site-packages/setuptools/sandbox.py", line 195, in setup_context
    yield
  File "/home/pi/aiortc/venv/lib/python3.7/site-packages/setuptools/sandbox.py", line 250, in run_setup
    _execfile(setup_script, ns)
  File "/home/pi/aiortc/venv/lib/python3.7/site-packages/setuptools/sandbox.py", line 45, in _execfile
    exec(code, globals, locals)
  File "/tmp/easy_install-_neis07t/cryptography-3.4.8/setup.py", line 14, in <module>
    long_description = f.read()
ModuleNotFoundError: No module named 'setuptools_rust'
During handling of the above exception, another exception occurred:
Traceback (most recent call last):
  File "setup.py", line 71, in <module>
    extras_require=extras_require,
  File "/home/pi/aiortc/venv/lib/python3.7/site-packages/setuptools/__init__.py", line 145, in setup
    return distutils.core.setup(**attrs)
  File "/usr/lib/python3.7/distutils/core.py", line 148, in setup
    dist.run_commands()
  File "/usr/lib/python3.7/distutils/dist.py", line 966, in run_commands
    self.run_command(cmd)
  File "/usr/lib/python3.7/distutils/dist.py", line 985, in run_command
    cmd_obj.run()
  File "/home/pi/aiortc/venv/lib/python3.7/site-packages/setuptools/command/install.py", line 67, in run
    self.do_egg_install()
  File "/home/pi/aiortc/venv/lib/python3.7/site-packages/setuptools/command/install.py", line 117, in do_egg_install
    cmd.run()
  File "/home/pi/aiortc/venv/lib/python3.7/site-packages/setuptools/command/easy_install.py", line 443, in run
    self.easy_install(spec, not self.no_deps)
  File "/home/pi/aiortc/venv/lib/python3.7/site-packages/setuptools/command/easy_install.py", line 685, in easy_install
    return self.install_item(None, spec, tmpdir, deps, True)
  File "/home/pi/aiortc/venv/lib/python3.7/site-packages/setuptools/command/easy_install.py", line 732, in install_item
    self.process_distribution(spec, dist, deps)
  File "/home/pi/aiortc/venv/lib/python3.7/site-packages/setuptools/command/easy_install.py", line 777, in process_distribution
    [requirement], self.local_index, self.easy_install
  File "/home/pi/aiortc/venv/lib/python3.7/site-packages/pkg_resources/__init__.py", line 782, in resolve
    replace_conflicting=replace_conflicting
  File "/home/pi/aiortc/venv/lib/python3.7/site-packages/pkg_resources/__init__.py", line 1065, in best_match
    return self.obtain(req, installer)
  File "/home/pi/aiortc/venv/lib/python3.7/site-packages/pkg_resources/__init__.py", line 1077, in obtain
    return installer(requirement)
  File "/home/pi/aiortc/venv/lib/python3.7/site-packages/setuptools/command/easy_install.py", line 704, in easy_install
    return self.install_item(spec, dist.location, tmpdir, deps)
  File "/home/pi/aiortc/venv/lib/python3.7/site-packages/setuptools/command/easy_install.py", line 730, in install_item
    dists = self.install_eggs(spec, download, tmpdir)
  File "/home/pi/aiortc/venv/lib/python3.7/site-packages/setuptools/command/easy_install.py", line 915, in install_eggs
    return self.build_and_install(setup_script, setup_base)
  File "/home/pi/aiortc/venv/lib/python3.7/site-packages/setuptools/command/easy_install.py", line 1183, in build_and_install
    self.run_setup(setup_script, setup_base, args)
  File "/home/pi/aiortc/venv/lib/python3.7/site-packages/setuptools/command/easy_install.py", line 1169, in run_setup
    run_setup(setup_script, args)
  File "/home/pi/aiortc/venv/lib/python3.7/site-packages/setuptools/sandbox.py", line 253, in run_setup
    raise
  File "/usr/lib/python3.7/contextlib.py", line 130, in __exit__
    self.gen.throw(type, value, traceback)
  File "/home/pi/aiortc/venv/lib/python3.7/site-packages/setuptools/sandbox.py", line 195, in setup_context
    yield
  File "/usr/lib/python3.7/contextlib.py", line 130, in __exit__
    self.gen.throw(type, value, traceback)
  File "/home/pi/aiortc/venv/lib/python3.7/site-packages/setuptools/sandbox.py", line 166, in save_modules
    saved_exc.resume()
  File "/home/pi/aiortc/venv/lib/python3.7/site-packages/setuptools/sandbox.py", line 141, in resume
    six.reraise(type, exc, self._tb)
  File "/home/pi/aiortc/venv/lib/python3.7/site-packages/setuptools/_vendor/six.py", line 685, in reraise
    raise value.with_traceback(tb)
  File "/home/pi/aiortc/venv/lib/python3.7/site-packages/setuptools/sandbox.py", line 154, in save_modules
    yield saved
  File "/home/pi/aiortc/venv/lib/python3.7/site-packages/setuptools/sandbox.py", line 195, in setup_context
    yield
  File "/home/pi/aiortc/venv/lib/python3.7/site-packages/setuptools/sandbox.py", line 250, in run_setup
    _execfile(setup_script, ns)
  File "/home/pi/aiortc/venv/lib/python3.7/site-packages/setuptools/sandbox.py", line 45, in _execfile
    exec(code, globals, locals)
  File "/tmp/easy_install-_neis07t/cryptography-3.4.8/setup.py", line 14, in <module>
    long_description = f.read()
ModuleNotFoundError: No module named 'setuptools_rust'
The setup install process is still running on my pi zero w. I know not ideal, but that's what I have a raspicam on that supports h264. It is giving loads of cyan/magenta messages during the setup install (example below) but it's not erroring out, so I haven't been able to fully test the plugin version of the OctoPrint changes, but it definitely didn't break the control tab with mjpgstreamer.
https://github.com/jneilliii/OctoPrint-Webrtc
In file included from /usr/include/openssl/e_os2.h:13,
                 from build/temp.linux-armv6l-3.7/_openssl.c:589:
/usr/include/openssl/x509.h:728:1: note: declared here
 DEPRECATEDIN_1_1_0(ASN1_TIME *X509_CRL_get_nextUpdate(X509_CRL *crl))
 ^~~~~~~~~~~~~~~~~~
build/temp.linux-armv6l-3.7/_openssl.c: At top level:
build/temp.linux-armv6l-3.7/_openssl.c:777:13: warning: ‘ERR_load_Cryptography_OSRandom_strings’ declared ‘static’ but never defined [-Wunused-function]
 static void ERR_load_Cryptography_OSRandom_strings(void);