Android is a VP8 codec when P2P

I tested it on, but for P2P on Android, the codec is VP8.
After 3 users join, it will switch to VP9 even on the same Android device.

Is there a setting to VP9 for P2P on Android?

There can be different settings for codec on P2P and bridge, but that’s not the case on, and it can’t be differentiated from the server depending on the client. My guess is that when using P2P the available bandwidth is higher, so much that your device is switching to VP8 because quality would be as good as VP9 while not straining as much the CPU. VP9 tends to heat phones quite a bit, usually there is no fan in phones…

thank you for your reply.

p2p > preferredCodec: VP9 didn’t seem to work on Android.

Are you testing with Firefox mobile on the Android device?

preferred means just that. The final decision is done by the client device. The server can’t force the client to do something it don’t want, short of disabling the unwanted codec altogether. But you can’t do that on And if you had your own server, risk is that the device was right to not pick vp9 and the end result would have been disappointing.

The test device is a Pixel 5, Galaxy A21.

Yes, but are you using the Android app or a mobile browser? It works fine for me on Android - I even ran a few tests earlier just to confirm. If I connect using the mobile app, I get VP9. If I connect with mobile Chrome browser, I get VP9. However, if I connect with mobile Firefox browser, it drops to VP8. I think Firefox made a decision to disallow VP9 on mobile devices without hardware acceleration at one point (I don’t know if that’s still the case though).

As follows, the mobile browser was VP9 even in P2P.

That’s not my finding. Using the Jitsi Android app in a 2-party call, codec was VP9

Screen Shot 2022-02-20 at 11.30.45 PM

On my Pixel 5, when I join a meeting using the Jitsi Meet mobile app(, 2 users seem to be VP8.

What android version is your Pixel 5 running? Maybe that plays a role.
Do you have another Android device you can test with?

I was able to confirm this behavior with following devices using Jitsi Meet mobile app(

  • Pixel 5 - Android 12
  • AQUOS 706SH - Android 10
  • Galaxy A21 - Android 10

Aaaah I see it! You’re right. I was testing with an older version of the Mobile app - in that, it shows up as VP9 as expected.

But I downloaded the latest version in the app store and indeed, it does show up as VP8 in P2P. However, I strongly suspect this to just be a mislabeling of some sort. Because AFAIK, you can’t have a mix of codecs (the desktop browser in the meeting still shows VP9) and once a VP9 client comes in, everyone is switched to VP8 (unless VP9 is enforced per config.js).

So, my guess is, you’re still getting VP9 in the Android device, but it’s showing up as VP8.