Widewine not working with ungoogled chromium

I'm using ungoogled chromium 122.0.6261.111. I'm on 14.0-RELEASE-p6 with quarterly release branch. All packages are up to date. Some facts:

Bash:
$ pkg info|grep cdm
foreign-cdm-20231217_3         CDM agent for Chromium
linux-widevine-cdm-4.10.2710.0 Widevine CDM plugin as provided by Google

$ cat /etc/fstab
...
linprocfs       /compat/linux/proc      linprocfs       rw,late 0       0
linsysfs        /compat/linux/sys       linsysfs        rw,late 0       0
tmpfs           /compat/linux/dev/shm   tmpfs rw,mode=1777,late 0       0
fdescfs         /compat/linux/dev/fd    fdescfs         rw,late 0       0

$ cat /etc/rc.conf|grep linux
linux_enable="YES"

I installed linux_base-c7. Netflix is not working. If I run chromium in terminal, there are no messages related to CDM. What am I missing? Thank you!
 
I just tried regular Chromium, exactly the same result. Here is the terminal output:
Bash:
$ chromium
[1851:-1411309568:0329/153801.158472:ERROR:policy_logger.cc(157)] :components/enterprise/browser/controller/chrome_browser_cloud_management_controller.cc(161) Cloud management controller initialization aborted as CBCM is not enabled. Please use the `--enable-chrome-browser-cloud-management` command line flag to enable it if you are not using the official Google Chrome build.
amdgpu: os_same_file_description couldn't determine if two DRM fds reference the same file description.
If they do, bad things may happen!
[1851:-1411302400:0329/153802.144219:ERROR:ev_root_ca_metadata.cc(162)] Failed to decode OID: 0
[1851:-1411309568:0329/153802.464260:ERROR:interface_endpoint_client.cc(707)] Message 3 rejected by interface blink.mojom.Widget
Maybe it has something to do with Mesa / amdgpu? In any case, hardware acceleration generally works.
 
have you installed linux-widevine-cdm as well as foreign-cdm


 
that site does detect if widevine is installed
shows widevine enabled on chromium for me

i have been trying to get firefox working with widevine
by copying across the manifest.json and libwidevinecdm.so to the firefox profile

the site shows widevine is enabled on firefox but the plugin crashes

playing drm video on chromium and then running mount list these directories

Code:
tmpfs on /var/run/user/1001/.fcdm-jail (tmpfs, local, noexec, read-only)
/compat/linux/bin on /var/run/user/1001/.fcdm-jail/bin (nullfs, local, noatime, nosuid, read-only, nfsv4acls)
/compat/linux/etc on /var/run/user/1001/.fcdm-jail/etc (nullfs, local, noatime, nosuid, read-only, nfsv4acls)
/compat/linux/lib on /var/run/user/1001/.fcdm-jail/lib (nullfs, local, noatime, nosuid, read-only, nfsv4acls)
/compat/linux/lib64 on /var/run/user/1001/.fcdm-jail/lib64 (nullfs, local, noatime, nosuid, read-only, nfsv4acls)
/compat/linux/usr on /var/run/user/1001/.fcdm-jail/usr (nullfs, local, noatime, nosuid, read-only, nfsv4acls)
devfs on /var/run/user/1001/.fcdm-jail/dev (devfs)
linprocfs on /var/run/user/1001/.fcdm-jail/proc (linprocfs, local)
linsysfs on /var/run/user/1001/.fcdm-jail/sys (linsysfs, local)
/usr/local/lib/WidevineCdm/_platform_specific/linux_x64/libwidevinecdm.so on /var/run/user/1001/.fcdm-jail/opt/cdm.so (nullfs, local, noatime, nosuid, read-only, nfsv4acls)
/usr/local/libexec/fcdm-worker on /var/run/user/1001/.fcdm-jail/opt/worker (nullfs, local, noatime, nosuid, read-only, nfsv4acls)
.whatever on /var/run/user/1001/.fcdm-jail/.setup-done (nullfs, local, noexec)

trying to play drm videos with firefox with widevine installed doesnt mount those directories

i wonder if mounting those directories and then starting firefox would fix the issue
only one way to find out, create a script that mounts those directories
 
No, there are no more lines in the terminal. For some reason fcdm-jail and fcdm-worker are not starting.
 
I saw in my profile that I have no karma. Maybe that's the reason for my bad luck? ;-) Nothing exotic here:
Bash:
$ uname -a && freebsd-version -kru
FreeBSD eventhorizon 14.0-RELEASE-p6 FreeBSD 14.0-RELEASE-p6 #0: Tue Mar 26 20:26:20 UTC 2024     root@amd64-builder.daemonology.net:/usr/obj/usr/src/amd64.amd64/sys/GENERIC amd64
14.0-RELEASE-p6
14.0-RELEASE-p6
14.0-RELEASE-p6
 
I got it working! I have done the following steps. I don't know which step fixed it:
1) Set symlink from /usr/local/share/chromium/WidevineCdm to /usr/local/share/ungoogled-chromium/WidevineCdm (removed later)
2) called chrome://components/ in the browser (nothing else)
3) called chrome://flags/ in the browser and enabled #cdm-storage-database and #cdm-storage-database-migration (later set both to default again)
 
The step 1 fixed it, once it see the WidevineCdm plugins, it save the path location of WidevineCdm. So if you used a symlink it resolved it to the chromium path, if you copy it it should use the ungoogled-chromium path.
 
The symlink is relevant for fixing the case of ungoogled-chromium (which is the title).
For regular chromium, maybe by checking which components exists, chromium decided to check again for widevine ?
 
Back
Top