cisco / openh264

Open Source H.264 Codec
BSD 2-Clause "Simplified" License
5.58k stars 1.8k forks source link

Cisco Webex support #3442

Open hackerb9 opened 3 years ago

hackerb9 commented 3 years ago

Hello!

Today I ran into an odd issue when I was invited to a video conferencing system I'd never used before called "Cisco Webex". The pre-meeting screen had seemed fine, but when I tried to actually join the meeting, Webex told me I did not have h.264 installed and I would need to install the Webex extension for Firefox. I presume it is just OpenH264 wrapped up for Firefox, but I installed it anyhow. It failed with the same error, saying h.264 was not found.¹

Background: I have been using Firefox ESR (Mozilla's Extended Support Release) on Debian GNU/Linux (current stable version) and it has been working for me for quite some time for video conferencing and watching videos on YouTube, Netflix, etc. I have not paid attention to what codec it has been using, but I thought Firefox had OpenH264 included by default. However, I searched my list of extensions and could not find it there nor at addons.mozilla.org.

So, I decided I'd just install it by hand from this github repository. Unfortunately, the README.md is vague on actual usage. I downloaded the Latest Release, but it is just a shared library with no accompanying documentation.

Two Three questions:

  1. Am I even barking up the right tree here?
  2. Do programs like Firefox typically detect libopenh264.so and use it as needed?
  3. How can I test it is working before my next Webex meeting in a week?

Thank you and I apologize if this is the wrong place to be asking these questions.


¹ Perhaps not relevant, but I also tried Webex using Chromium, but that failed with a similar error (only this time it didn't mention there being any extension that would help).

pschwager commented 3 years ago

I have exactly the same problems since a few weeks, on a debian sid system, but didn't found a solution till today.

hackerb9 commented 3 years ago

Don't leave us hanging in suspense... how did you get it to work?

pschwager commented 3 years ago

"....but didn't found a solution till today" or in other words: I'm also looking forward to find a solution for the exactly same problem!

hackerb9 commented 3 years ago

I see. "Till" is short for "until", which may mean something different than you think.

I also have not found a solution, even to this day. So, to use another English idiom, we are in the same boat.😃

huili2 commented 3 years ago

Thanks for your information! Just to make things clear: did you attend meeting by "Webex App" or by web? If you are using Webex App, we'll turn to Cisco Webex for help. Otherwise (website using webRTC), we may turn to Firefox for help. The former one has bundled libopenh264.so in their installation.

hackerb9 commented 3 years ago

I did not install or use the app. I used Firefox and Chromium and neither worked, both claiming I needed to enable h.264.

How can I test if OpenH264 is working in a web browser?

I think I may have figured out the problem: the operating system I use, Debian, defaults to only using Free Software, which OpenH264 does not appear to be. Unless I'm mistaken, any project that compiles the source code is required to pay royalties. (Cisco is paying the royalties only for the binaries they compile.)

Because of that, I believe Debian defaults to setting the OpenH264 plugin to Disabled. The reason I could not find OpenH264 in Firefox's Extensions (nor at addons.mozilla.org) is because it is not an extension. It is bundled with Firefox as a "Plugin."

To enable it, one must go to about:addons and then click on the Plugins option on the left. In the upper right hand corner of the OpenH264 box, click on the three dots overflow menu and select Always Activate.

Or, at least, I think that would fix it, but I have no way of testing it. Do you have any suggestions?

huili2 commented 3 years ago

@hackerb9 I'm not familiar with Debian GNU/Linux system, but what you said about "free software" sounds reasonable. If that's the case, maybe guys in Mozilla may have a solution of that, or your manual operation can do, too. Actually I also have no idea if openh264 if used or not...

hackerb9 commented 3 years ago

Yup, definitely OpenH264. How does one test if OpenH264 is working in a web browser?

Screenshot from 2021-11-17 13-48-23

I think Mozilla should change the extensions search in Firefox and on addons.mozilla.org to specifically recognize someone trying to install h.264 and direct them to the plugins page. The way it is now, it looks like it is simply not available and the only solution is to download libopenh264.so from this project.

pschwager commented 3 years ago

One update: After updating to the latest debian sid updates, the webex client works again on firefox, but still fails on chromium. So maybe after the next chromium update it would also work there again.

hackerb9 commented 3 years ago

Just tried Webex using the method I described above to enable the OpenH264 plugin in Firefox. It worked.

I also found a way to test if OpenH264 is working a web browser. One can use Cisco's test page here:

https://www.webex.com/test-meeting.html

It would be nice if someone added those two pieces of information to the OpenH264 FAQ.

Webxorcist commented 2 years ago

I am still having this exact issue on openSuse Tumbleweed with FF 95.0.2 The Cisco plugin is Always activated. It stopped working with FF 93

huili2 commented 1 year ago

This issue should be involved into brower development?

jrmuizel commented 1 year ago

@Webxorcist do you still see this?

mikerossiter commented 6 months ago

Just tried Webex using the method I described above to enable the OpenH264 plugin in Firefox. It worked.

I also found a way to test if OpenH264 is working a web browser. One can use Cisco's test page here:

https://www.webex.com/test-meeting.html

It would be nice if someone added those two pieces of information to the OpenH264 FAQ.

Ditto! I just had to self test for an upcoming meeting and had this very problem. I went to about:addons > Plugins (down the right hand side) > OpenH264 Video Codec (preinstalled for me on Debian Firefox) > Select ... (three dots) and choose Always Activate. My camera magically appeared in the meeting I was still testing from in Webex.