Chromium on Fedora is unable to stream H264 video

This is not really a question, but more a FYI, as it has already been diagnosed on the discussion of Chromium issue 1519639 that its inability to dynamically load openH264 libs on Fedora makes it unable to stream video (camera feed and screen sharing) on MS Teams video and other sites that depend on the H264 codec. There is a MR opened more than a year ago about this, but is still awaiting approval.

It seems Chrome has H264 decoding built-in, so for the time being it seems to be the only option for the poor souls like me that have to use MS Teams for work meetings :disappointed: (Firefox unfortunately is not an option since MS marked it as incompatible :face_with_diagonal_mouth: )

1 Like

Is libavcodec-freeworld from RPM Fusion an option?

Unfortunately no, I have it installed as well, along with

openh264-2.3.1-2.fc39.x86_64
mozilla-openh264-2.3.1-2.fc39.x86_64
gstreamer1-plugin-openh264-1.22.1-1.fc39.x86_64

(not sure if I should have all of them installed together, but since there seems to be no conflict among them…)

I was using a snap version of teams on my employers ubuntu laptop about 6 months ago.
It worked well enough. I think, maybe(?), I used teams in firefox as well.

No longer have that setup to refer to anymore.

Yeah, I’ve been using Teams on Firefox for quite some time until very recently. But then MS decided to come up with “New Teams” or something like it, and now when you try to access it using Firefox, it says “your browser is unsupported” :face_with_diagonal_mouth: There is a “Teams for Linux” unofficial (not supported by MS) flatpak, but I’d rather use Chrome for that, and concentrate all my work-related browsing there (I was previously doing this with a separate Firefox profile, which was all I needed)

1 Like

I must have been using the “classic” teams i guess.

Probably (more on Teams compatibility below). However, my warning here is that Chromium on Fedora is somewhat crippled and inferior to Chrome because as it is it simply cannot handle H264 even if the necessary libraries are installed, which is bad IMHO. I hope Chromium devs fix this in the near future.

Coming back to the Teams versions topic: I just confirmed I can still access corporate/school accounts using Firefox, these types of account haven’t migrated to New Teams yet – but according to this schedule, they will before March 31st. Personal accounts have already migrated (they redirect to teams.live.com instead of teams.microsoft.com), and currently don’t open on Firefox (“Hmm. Your browser version isn’t supported. Here’s what works: Chrome and Edge”)

The page mentioned above states that support for “New Teams for Web for Firefox and Safari” and “Progressive Web App (PWA) support on Linux” should be available sometime before March 31st.

So, best case scenario, Firefox will soon be supported by New Teams, and I will be able to freely choose which browser I want to use on Linux (although I must confess I like being able to use it as a PWA, which is impossible with Firefox).

1 Like

Can you use the flatpak?

1 Like

I probably could, but I also need (not by choice :wink: ) to use other “apps” from the MS Office 365 suite (eg. Outlook), so it makes sense they all run from the same browser (SSO, links opening with the necessary permissions etc.).

The question here is really not about how to run Teams on Fedora (even though this is a valid debate), but rather to raise attention to the fact that Chromium currently is an inferior alternative to Chrome on Fedora because it cannot stream H264 content even if the corresponding libraries are installed.

Firefox could be an option in the long term once it becomes compatible with New Teams, but it won’t allow it to run as a PWA. To do so, I would rather user Chromium instead of Chrome, but this will not be possible until this H264 issue is resolved.

1 Like

I’ve also bumped into a similar problem with Teams and H264 on Fedora 39. It worked fine with chromium-freeworld, but it is discontinued in Fedora 38+ (the latest version has known vulnerabilities) as the regular chromium should be able to load the H264 codec…

Thanks @ocosta for track down the problem and link related issues.

Btw, frustrated, I’ve just switched from Chromium to Brave to use Teams (because Firefox is not “fully supported” there). Today, both video and screen sharing worked flawlessly. Hopefully, it will continue when Teams in my organization are migrated to “new Teams”.

Status update: the original issue I created on Chromium’s issue tracker was marked as “fixed” with a change in Teams to better handle H264 not being available. This totally misses the point, so I created a new issue with a more specific title hoping this could bring more attention to the actual root cause of this problem.

I guess if other people could vote “+1” on this new issue, this would help raise awareness :wink:

1 Like

Well, guess what? The new bug was closed as "Won’t fix – intended behavior’, and they’ve thrown the problem to Fedora. I guess I don’t have an option besides filing a bug report here on Fedora’s end. This is very frustrating :unamused:

Edit: just filed issue https://bugzilla.redhat.com/show_bug.cgi?id=2264332

1 Like

if you are not averse to it you could use microsoft edge for linux.

Sure, that’s definitely an option – in fact, I have already used it for a while not too long ago. But personally I guess I’d rather stick to Chromium or, if not possible, Chrome.

1 Like

I have downloaded chromium SRPM, and it applies a lot of patches – some specific to ffmpeg handling. So, I must say I got confused whether it was supposed to work or not on Fedora :thinking: (see comment 1 on my bug report on Fedora’s Bugzilla)

This bug caused me to be embarassed a couple of times during meetings. Until it is fixed, I am compiling Chromium with proprietary codecs built in.

I do this by tweaking the .spec file to enable bundleffmpegfree and disable patches of things related to codecs, even though I haven’t really checked what they do (ffmpeg-5.x-duration, prop-codecs, sigtrap_system_ffmpeg, system-old-ffmpeg disable-FFmpegAllowLists). I also set ffmpeg_branding="Chrome", proprietary_codecs=true and unset media_use_openh264=false and rtc_use_h264=false. I also use the source package provided by Google, rather than the one from Fedora since it seems to be scrubbed of the needed ffmpeg codecs.

Note that with earlier versions of fedora ffmpeg was not included but came from other sources, including the rpmfusion repo with all codecs included. With Fedora 39 the ffmpeg-free package and supporting codecs were bundled in, BUT were stripped of the restricted codecs that fedora cannot distribute.

To have all the restricted codecs installed the users still have to install the ffmpeg and ffmpeg-libs packages (or the libavcodec-freeworld package) from rpmfusion. The users can also install both those multimedia packages if they choose.

I suspect that chromium may have adequate support for the codecs by installing the above noted multimedia codec packages from rpmfusion without doing a self-compiled version.

1 Like

I had tried all of those packages (and more) but it never worked. The only thing that did work was compiling it myself unfortunately.

Second on @computersavvy s comment.

Or try to use the Flathub Flatpak of Chromium.