Update rules to serve OpenH264 2.3.2
Categories
(Release Engineering :: General, task)
Tracking
(Not tracked)
People
(Reporter: aosmond, Assigned: jcristau)
References
Details
I've manually verified the new OpenH264 2.3.1 binaries and Cisco has deployed them to their web server. We are ready to start testing with a wider audience.
Initially we would like to ship to nightly only for a while to test this out, and then to all supported channels, similar to what we did with Widevine.
Reporter | ||
Comment 1•2 years ago
|
||
Could we please setup a nightlytest
rule for our initial verification pass?
Here is the output from https://searchfox.org/mozilla-central/source/dom/media/tools/generateGmpJson.py that produces the new JSON:
{
"hashFunction": "sha512",
"name": "OpenH264-2.3.1",
"schema_version": 1000,
"vendors": {
"gmp-gmpopenh264": {
"platforms": {
"Darwin_aarch64-gcc3": {
"fileUrl": "http://ciscobinary.openh264.org/openh264-macosx64-aarch64-0a48f4d2e9be2abb4fb01b4c3be83cf44ce91a6e.zip",
"filesize": 497958,
"hashValue": "11cbabf535f2220415c8dcbec35725bc92d8fc6a3d1306503842b027ea92d305d69769998c291e01a1cc65529fa599fd0f762bf91e6e6753268bff12e0d1e03a"
},
"Darwin_x86_64-gcc3": {
"fileUrl": "http://ciscobinary.openh264.org/openh264-macosx64-0a48f4d2e9be2abb4fb01b4c3be83cf44ce91a6e.zip",
"filesize": 555529,
"hashValue": "d884a692d302ef530cce238e5352d5bf691efe0ab9671a2cfd1bd6a6fffc55745d39088499677c3aca770de53a8973c3c42f2dc8b5498ce47c6846f7b1b7c0df"
},
"Linux_x86-gcc3": {
"fileUrl": "http://ciscobinary.openh264.org/openh264-linux32-0a48f4d2e9be2abb4fb01b4c3be83cf44ce91a6e.zip",
"filesize": 626513,
"hashValue": "a005ff7be6147034798f14ee71e2a9f055dad3568b2fffc3957f2a9b0969ac94c4d01fa718b6b546a5a3c3306f9f85f29c26ef04c74e450e5a505bced5a3f46d"
},
"Linux_x86_64-gcc3": {
"fileUrl": "http://ciscobinary.openh264.org/openh264-linux64-0a48f4d2e9be2abb4fb01b4c3be83cf44ce91a6e.zip",
"filesize": 592082,
"hashValue": "c7172c690b27466d3e9bd019136d7e88bcb6c55c5ede908ebfb84006aa1a7e073337f09a215f9ea8542ee767329bf396e396e6b811a7f37ba4b921697cc0d91d"
},
"Linux_x86_64-gcc3-asan": {
"alias": "Linux_x86_64-gcc3"
},
"Linux_aarch64-gcc3": {
"fileUrl": "http://ciscobinary.openh264.org/openh264-linux64-aarch64-0a48f4d2e9be2abb4fb01b4c3be83cf44ce91a6e.zip",
"filesize": 535700,
"hashValue": "ce89fd301ab1760a43fb47f3b7641d6bda9b30fc15556ef00f727984a4f8fc872af8d77301a28018340c24800946917717f977058cbdbec807e84914b27dd7f7"
},
"WINNT_aarch64-msvc-aarch64": {
"fileUrl": "http://ciscobinary.openh264.org/openh264-win64-aarch64-0a48f4d2e9be2abb4fb01b4c3be83cf44ce91a6e.zip",
"filesize": 410681,
"hashValue": "4689da381a5a84d254852510d9aa29990220413220884bcfb5aec8a3b67e9fb92e97dcb9fad51a490264594056b8500d6c5f42fbee2abd3be070c3e308ec2c10"
},
"WINNT_x86-msvc": {
"fileUrl": "http://ciscobinary.openh264.org/openh264-win32-0a48f4d2e9be2abb4fb01b4c3be83cf44ce91a6e.zip",
"filesize": 471886,
"hashValue": "da80c7e7d61149bb2c75e1d777b9b06a0bbe034fc5164d902e774f2fceb4808e8499ffb95aedc3831684d6c70ccdd92925e85d8a6044ca71bf68619a0a329be3"
},
"WINNT_x86-msvc-x64": {
"alias": "WINNT_x86-msvc"
},
"WINNT_x86-msvc-x86": {
"alias": "WINNT_x86-msvc"
},
"WINNT_x86_64-msvc": {
"fileUrl": "http://ciscobinary.openh264.org/openh264-win64-0a48f4d2e9be2abb4fb01b4c3be83cf44ce91a6e.zip",
"filesize": 494665,
"hashValue": "221514d2bace79787b19fc316756a83bf7579293b8893b17ccf11e14e4e3ba5cf13f76d5070482d1ab97b786d8541ade428c6286027ba054f3408135eea03c87"
},
"WINNT_x86_64-msvc-x64": {
"alias": "WINNT_x86_64-msvc"
},
"WINNT_x86_64-msvc-x64-asan": {
"alias": "WINNT_x86_64-msvc"
}
},
"version": "2.3.1"
}
}
}
Reporter | ||
Updated•2 years ago
|
Assignee | ||
Updated•2 years ago
|
Assignee | ||
Comment 2•2 years ago
|
||
Comparing with the existing 1.8.1.2 json I notice android is gone, which I assume is intentional given bug 1548679.
On the other hand, 1.8.1.2 is missing linux and windows asan, which the blob from comment 1 adds.
This is also adding Linux_aarch64, which seems fine/harmless.
Rule added to serve 2.3.1 on the nightlytest channel: https://aus-api.mozilla.org/api/v1/rules/17807
Reporter | ||
Comment 3•2 years ago
|
||
Yes, I decided we should streamline Widevine and OpenH264 rules when possible (there is no Linux ARM64 yet for Widevine) since the plugins should work for the same context. Android was deprecated long ago, so I don't see a need to update those rules (we could keep the balrog rules in place, I'm not sure what our deprecation strategy is....).
Comment 4•2 years ago
|
||
I verified that OpenH264 2.3.1 is downloaded and it works for video decoding on KDE Wayland, Debian Testing.
app.update.channel:"nightlytest" doesn't seem to work, but replacing %CHANNEL% with nightlytest in media.gmp-manager.url works:
STR:
-
$ MOZ_LOG="GMP:5,PlatformDecoderModule:5" mozregression --launch 2023-04-11 --pref media.gmp.decoder.enabled:true media.gmp.decoder.preferred:true media.gmp-manager.url:"https://aus5.mozilla.org/update/3/GMP/%VERSION%/%BUILD_ID%/%BUILD_TARGET%/%LOCALE%/nightlytest/%OS_VERSION%/%DISTRIBUTION%/%DISTRIBUTION_VERSION%/update.xml" -P stdout -a about:addons -a "https://player.twitch.tv/?channel=virtualjapan&enableExtensions=true&muted=true&parent=twitch.tv&player=popout&quality=chunked&volume=0.08"
-
Go to Plugins > click on wheel > Search for updates
-
Switch to twitch tab, play
-
terminal log shows that GMP-OpenH264 is used for video decoding:
0:43.57 INFO: b'[Parent 30690: GMPThread]: D/GMP GMPParent[7faec7ff4100|childPid=0] LoadProcess: for /tmp/tmp1wzsk8rd.mozrunner/gmp-gmpopenh264/2.3.1'
0:43.68 INFO: b'[GMP 31099: Main Thread]: D/GMP GMPChild[pid=31099] Init pluginPath=/tmp/tmp1wzsk8rd.mozrunner/gmp-gmpopenh264/2.3.1'
0:45.85 INFO: b'[Child 30856: GMPThread]: V/GMP GMPVideoDecoderParent[7f330db87450]::RecvDecoded() timestamp=2211000 frameCount=1'
0:45.85 INFO: b'[Child 30856: GMPThread]: D/GMP GMPVideoDecoder::Decoded'
Reporter | ||
Comment 5•2 years ago
|
||
Could we please update the nightlytest rule for the updated library?
Here is the output from https://searchfox.org/mozilla-central/source/dom/media/tools/generateGmpJson.py that produces the new JSON:
{
"hashFunction": "sha512",
"name": "OpenH264-2.3.2",
"schema_version": 1000,
"vendors": {
"gmp-gmpopenh264": {
"platforms": {
"Darwin_aarch64-gcc3": {
"fileUrl": "http://ciscobinary.openh264.org/openh264-macosx64-aarch64-31c4d2e4a037526fd30d4e5c39f60885986cf865.zip",
"filesize": 477938,
"hashValue": "391efb184373d533713a9e99a9e63c3bbaf614e8d8bdfdd84d4d5e53b9a737e75032187309dd00e58b58bb1033ab68d199f994744f6add57dd08f5fbb654d2f3"
},
"Darwin_x86_64-gcc3": {
"fileUrl": "http://ciscobinary.openh264.org/openh264-macosx64-31c4d2e4a037526fd30d4e5c39f60885986cf865.zip",
"filesize": 552074,
"hashValue": "c649bfa20c48406ccbae1917d7478773cd5250ef995828b58cc56cc4db0a3c7ce3f89eb187bd1b3d26cda0e5e65322b710cfd66a2953adeea0e4361c51488add"
},
"Linux_x86-gcc3": {
"fileUrl": "http://ciscobinary.openh264.org/openh264-linux32-31c4d2e4a037526fd30d4e5c39f60885986cf865.zip",
"filesize": 623151,
"hashValue": "d80508260c6419acc09c9fde539b18e9231899786df549bc8c86e564d1fb8c500327adb96bba204a386326dd5213ae907108c9ca4fc64ae385fbb2291e0e8cc5"
},
"Linux_x86_64-gcc3": {
"fileUrl": "http://ciscobinary.openh264.org/openh264-linux64-31c4d2e4a037526fd30d4e5c39f60885986cf865.zip",
"filesize": 583674,
"hashValue": "53a58bfb4c8124ad4f7655b99bfdea290033a085e0796b19245b33b91c0948fdac9f0c3e817130b352493a65d9a7a0fc8a7c1eedc618cdaa2b4580734a11cd9c"
},
"Linux_x86_64-gcc3-asan": {
"alias": "Linux_x86_64-gcc3"
},
"Linux_aarch64-gcc3": {
"fileUrl": "http://ciscobinary.openh264.org/openh264-linux64-aarch64-31c4d2e4a037526fd30d4e5c39f60885986cf865.zip",
"filesize": 537296,
"hashValue": "eab3fca253c10739c4930bdaf83ca7a9a0a3580937e0e945dde3a45bcdb39b6240ae0d7133ebfb10029442322f4ce6e8647917d15afea601351dc8a5f0dbf3ec"
},
"WINNT_aarch64-msvc-aarch64": {
"fileUrl": "http://ciscobinary.openh264.org/openh264-win64-aarch64-31c4d2e4a037526fd30d4e5c39f60885986cf865.zip",
"filesize": 412806,
"hashValue": "cc3306873d6ad8ea6a27096c8ce75831463633a530d8f1794ae3eba3efd4a572459b6b0f3ac73f46552a7d6c7a29b152e299d862a2f76420eee07d1d39979182"
},
"WINNT_x86-msvc": {
"fileUrl": "http://ciscobinary.openh264.org/openh264-win32-31c4d2e4a037526fd30d4e5c39f60885986cf865.zip",
"filesize": 472465,
"hashValue": "b5c8290bbee9503b6f9d2fcc3cbcf94f9b2d4e8ee143e37cfc8c68de593c8189aecfe447b811accecdb564c8788bd05e116f4eda62ac29b3c6b8a6fa5f564ee0"
},
"WINNT_x86-msvc-x64": {
"alias": "WINNT_x86-msvc"
},
"WINNT_x86-msvc-x86": {
"alias": "WINNT_x86-msvc"
},
"WINNT_x86_64-msvc": {
"fileUrl": "http://ciscobinary.openh264.org/openh264-win64-31c4d2e4a037526fd30d4e5c39f60885986cf865.zip",
"filesize": 491284,
"hashValue": "b667086ed49579592d435df2b486fe30ba1b62ddd169f19e700cd079239747dd3e20058c285fa9c10a533e34f22b5198ed9b1f92ae560a3067f3e3feacc724f1"
},
"WINNT_x86_64-msvc-x64": {
"alias": "WINNT_x86_64-msvc"
},
"WINNT_x86_64-msvc-x64-asan": {
"alias": "WINNT_x86_64-msvc"
}
},
"version": "2.3.2"
}
}
Reporter | ||
Updated•2 years ago
|
Comment hidden (obsolete) |
Comment 7•2 years ago
|
||
The stuttering I saw in comment 6 is a Nightly regression, OpenH264 2.3.1 and 2.3.2 themselves seem to be fine: bug 1831342
Reporter | ||
Updated•2 years ago
|
Reporter | ||
Updated•2 years ago
|
![]() |
||
Comment 8•2 years ago
|
||
nightlytest rule has been updated to 2.3.2.
Reporter | ||
Comment 9•2 years ago
|
||
Could we please apply the configuration in comment 5 to the nightly
channel for version 115 and later? Thanks!
![]() |
||
Comment 10•2 years ago
|
||
2.3.2 is now available on nightly for version 115.0 and later.
Comment 11•2 years ago
|
||
(In reply to Geoff Brown [:gbrown] from comment #10)
2.3.2 is now available on nightly for version 115.0 and later.
No, it's not. Tested with:
- Nightly 115.0a1 20230516042430 Linux x64 (KDE Wayland, Debian Testing).
- mozregression --launch 2023-05-16
about:addons > Plugins > gearwheel icon > Search for updates.OpenH264 Video Codec provided by Cisco Systems, Inc.
Version 1.8.1.2
Last Updated May 16, 2023
Reporter | ||
Comment 12•2 years ago
|
||
Are you sure? Balrog is serving it as best I can tell:
https://aus5.mozilla.org/update/3/GMP/115.0/20230515094256/WINNT_x86_64-msvc-x64/en-US/nightly/Windows_NT%2010.0.0.0.18362.418%20(x64)/default/default/update.xml
https://aus5.mozilla.org/update/3/GMP/115.0/20230515094256/Linux_x86_64-gcc3/en-US/nightly/Linux/default/default/update.xml
![]() |
||
Comment 13•2 years ago
|
||
Sorry! There was a problem with the "115.0a1" case. Should be fixed now.
Comment 14•2 years ago
|
||
Confirmed, thank you.
Fixed for Linux Nightly and mozregression --launch 2023-05-16
about:addons > Plugins > gearwheel icon > Search for updates (to force immediate installation):
OpenH264 Video Codec provided by Cisco Systems, Inc.
Version 2.3.2
Last Updated May 16, 2023
Comment 15•2 years ago
|
||
This bug was fixed per comment 14.
Assignee | ||
Comment 16•2 years ago
|
||
No it wasn't, it's still nightly only AFAICT.
Comment 17•2 years ago
|
||
Oops, thanks for catching that. Marking the severity as N/A
since this ticket is a task.
Reporter | ||
Comment 18•2 years ago
|
||
Could we roll this out to 115 beta as well now? Thanks!
![]() |
||
Comment 19•2 years ago
|
||
2.3.2 is now also available on beta for version 115.0 and later.
Comment 20•2 years ago
|
||
Confirmed with 115.0b2.
Version 2.3.2
Reporter | ||
Comment 21•2 years ago
|
||
Could we roll this out to 115 release and ESR now? Effectively that should be all channels for releases 115 and later. Thanks!
Reporter | ||
Comment 22•2 years ago
|
||
I realize 115 isn't in release yet, but we should roll out with the RC based on QA testing / green light.
Assignee | ||
Comment 23•2 years ago
|
||
This is ready for relman signoff (I'll delete the nightly rule afterwards).
Assignee | ||
Comment 24•2 years ago
|
||
All done now, I think.
Rule 939 (https://aus-api.mozilla.org/api/v1/rules/939) serves 1.8.1.2 to versions < 115.0, all channels.
Rule 17820 (https://aus-api.mozilla.org/api/v1/rules/17820) serves 2.3.2 to higher versions, all channels.
Reporter | ||
Updated•4 months ago
|
Reporter | ||
Updated•4 months ago
|
Description
•