
Security News
Official Go SDK for MCP in Development, Stable Release Expected in August
The official Go SDK for the Model Context Protocol is in development, with a stable, production-ready release expected by August 2025.
How many connected users your favourite open source video conferencing solution can handle? That's the question that videodrone wants to answer. Empirically.
Videodrone tests popular WebRTC Platforms with Selenium HQ and Python, aiming to be a lightweight build system for load test orchestration.
At this moment only chrome driver was implemented and well tested on Debian based distributions, fill free to contribute with your "drone connector". See Drone Connectors for further informations.
Requirements:
Available drones:
You should know, that:
-url
parameter to overrideProvide a fully working python3 pip environment, with virtualenv
installed in.
You can even use build.sh
to build your videodrone project.
Prepare environment
apt install python3-pip wget chromium unzip
pip3 install --upgrade pip
pip3 install virtualenv
wget https://raw.githubusercontent.com/peppelinux/videodrone/master/build.sh -O build.sh
bash build.sh VideoDrone
You can even install videodrone by hands.
mkdir VideoDrones && cd VideoDrones
virtualenv -ppython3 env && source env/bin/activate
pip install videodrone
Create the following directories before executing videodrone
.
mkdir y4ms
wget https://media.xiph.org/video/derf/y4m/students_cif.y4m -O y4ms/students_cif.y4m
apt install lxc
CONTAINER_NAME=deb10
lxc-create -t download -n $CONTAINER_NAME -- -d debian -r buster -a armhf
lxc-start deb10
lxc-attach deb10
# then choose your preferred setup as show in the previous sections.
docker image build --tag videodrone .
# go in
# docker container run -it videodrone /bin/bash
# run the container with your preferred configuration
docker container run -dit -e VIDEODRONE_DRIVER=/usr/bin/chromedriver videodrone videodrone -room thatroom -c videodrone.drones.jitsi_chrome -y4m /VideoDrone/y4ms/ -lifetime 33 -n 4
VIDEODRONE_DRIVER
environment variable can override the default path, which is $VDPATH/drivers/chromedriver
.
example, this connector is configured to create a single drone to "https://meet.jit.si/thatroom":
VIDEODRONE_DRIVER=/usr/bin/chromedriver videodrone -c "videodrone.drones.jitsi_chrome" -r thatroom -y4m ./y4ms/
There will be a party of 4 drones in "thatroom":
videodrone -room thatroom -c "videodrone.drones.edumeet_garr_chrome" -y4m ./y4ms/ -n 4
Output
INFO:__name__:Started drone <Process name='Process-1' pid=25900 parent=25898 started>
INFO:__name__:Started drone <Process name='Process-2' pid=25960 parent=25898 started>
INFO:__name__:Started drone <Process name='Process-3' pid=26155 parent=25898 started>
INFO:__name__:Started drone <Process name='Process-4' pid=26373 parent=25898 started>
INFO:__name__:Drone destroyed
INFO:__name__:Drone destroyed
INFO:__name__:Drone destroyed
INFO:__name__:Drone destroyed
What happens
Another example with Garr BBB meet. headless
set to false means that the browser will run in foreground.
./videodrone -c "videodrone.drones.bbbmeet_garr_chrome" -room "/b/roomname -pin thatpin -y4m y4ms/ -headless 0 -lifetime 27
Drone connectors are selenium browser macros, written in python, as simple as possibile. Drone connectors must be packaged and installed or included in your PYTHONPATH (sys.path). You can even create a python local package folder, in your VideoDrone Project.
See videodrone.drones.jitsi_chrome for example.
FAQs
WebRTC python unit tests inspired to '80s
We found that videodrone demonstrated a healthy version release cadence and project activity because the last version was released less than a year ago. It has 1 open source maintainer collaborating on the project.
Did you know?
Socket for GitHub automatically highlights issues in each pull request and monitors the health of all your open source dependencies. Discover the contents of your packages and block harmful activity before you install or update your dependencies.
Security News
The official Go SDK for the Model Context Protocol is in development, with a stable, production-ready release expected by August 2025.
Security News
New research reveals that LLMs often fake understanding, passing benchmarks but failing to apply concepts or stay internally consistent.
Security News
Django has updated its security policies to reject AI-generated vulnerability reports that include fabricated or unverifiable content.