You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
I Just wanted to document and share my process of getting OvenMediaEngine working on Alpine Linux with QuickSync in a container using Incus in case it helps anyone that wants to do similar.
Background:
I recently got a new mini-pc with an Intel N100 for HomeAssistant and decided to leverage the intel CPU's ability to use Quicksync with OME
Host OS:
Arch Linux using Incus as my container platform
Container OS:
Alpine Linux 3.20
Steps:
It wasn't too hard to get this working, it just required installing the dependencies of OME, quicksync and editing three files that were downloaded from the github repository to allow compiling of OME on Alpine Linux.
COMP_zlib_cleanup(); Replaced with OPENSSL_NO_COMP
malloc_trim(0); Comment it out //malloc_trim(0);
("Trim result: %d", malloc_trim(0));Edited to ("Trim result: %d");
To make it easier I created a script to download, compile and install OME if anyone wants it, it can be found at the following, replace JOBS=2 with the number of jobs your system can handle.
You should now be able to run OME with /usr/share/ovenmediaengine/OvenMediaEngine
The Sever.xml config is located at: /usr/share/ovenmediaengine/conf/Server.xml
I probably could have ran OME using docker within the Alpine container but I'm not a fan of docker for home use and prefer to avoid it when possible, I also decided on Alpine so it would have the smallest footprint possible on the system.
The total install size of the container with OME and QuickSync is 197MB
reacted with thumbs up emoji reacted with thumbs down emoji reacted with laugh emoji reacted with hooray emoji reacted with confused emoji reacted with heart emoji reacted with rocket emoji reacted with eyes emoji
-
I Just wanted to document and share my process of getting OvenMediaEngine working on Alpine Linux with QuickSync in a container using Incus in case it helps anyone that wants to do similar.
Background:
I recently got a new mini-pc with an Intel N100 for HomeAssistant and decided to leverage the intel CPU's ability to use Quicksync with OME
Host OS:
Arch Linux using Incus as my container platform
Container OS:
Alpine Linux 3.20
Steps:
It wasn't too hard to get this working, it just required installing the dependencies of OME, quicksync and editing three files that were downloaded from the github repository to allow compiling of OME on Alpine Linux.
The three files edited were:
src/projects/monitoring/server_metrics.cpp
src/projects/main/signals.cpp
~The edits done were the following lines
COMP_zlib_cleanup();
Replaced withOPENSSL_NO_COMP
malloc_trim(0);
Comment it out//malloc_trim(0);
("Trim result: %d", malloc_trim(0));
Edited to("Trim result: %d");
To make it easier I created a script to download, compile and install OME if anyone wants it, it can be found at the following, replace JOBS=2 with the number of jobs your system can handle.
https://pastebin.com/x0hjNfmx
QuickSync support:
If you want Quicksync you also need the following packages for Intel Gen 11 and above
apk add intel-media-driver
apk add onevpl-intel-gpu --repository=http://dl-cdn.alpinelinux.org/alpine/edge/testing/
For below 11th gen you probably need
intel-media-sdk
but I haven't confirmed or tested this.To allow the container to use the GPU you need to do the following for incus and it should be similar for LXC/LXD or other container managers.
On the host run the following:
getent group render | cut -d: -f3
Replace gid with the number that was presented from the first command.
incus config device add "YOUR INSTANCE" gpu gpu gid=989
You should now be able to run OME with
/usr/share/ovenmediaengine/OvenMediaEngine
The Sever.xml config is located at:
/usr/share/ovenmediaengine/conf/Server.xml
I probably could have ran OME using docker within the Alpine container but I'm not a fan of docker for home use and prefer to avoid it when possible, I also decided on Alpine so it would have the smallest footprint possible on the system.
The total install size of the container with OME and QuickSync is 197MB
Beta Was this translation helpful? Give feedback.
All reactions