Update to Openh264 plugin release v1.8.1
Categories
(Core :: WebRTC: Audio/Video, enhancement, P1)
Tracking
()
People
(Reporter: dminor, Assigned: dminor)
References
(Blocks 1 open bug)
Details
Attachments
(7 files, 2 obsolete files)
|
47 bytes,
text/x-phabricator-request
|
Details | Review | |
|
47 bytes,
text/x-phabricator-request
|
Details | Review | |
|
47 bytes,
text/x-phabricator-request
|
Details | Review | |
|
47 bytes,
text/x-phabricator-request
|
Details | Review | |
|
47 bytes,
text/x-phabricator-request
|
Details | Review | |
|
47 bytes,
text/x-phabricator-request
|
Details | Review | |
|
47 bytes,
text/x-phabricator-request
|
Details | Review |
| Assignee | ||
Comment 2•7 years ago
|
||
| Assignee | ||
Comment 3•7 years ago
|
||
Comment 4•7 years ago
|
||
| Assignee | ||
Comment 5•7 years ago
|
||
| Assignee | ||
Comment 6•7 years ago
|
||
| Assignee | ||
Comment 7•7 years ago
|
||
Comment 8•7 years ago
|
||
Updated•7 years ago
|
Comment 9•7 years ago
|
||
Comment 10•7 years ago
|
||
| Assignee | ||
Comment 11•7 years ago
|
||
| Assignee | ||
Comment 12•7 years ago
|
||
After a long delay, I've started working on this again. I have builds for all platforms now.
I had a few oddities with win64 though. If I attempt to upload a directory as an artifact, I get an exception and no logs [1]. Uploading a file works fine [2]. There seems to be something that expects an artifact at public/build [3]. I worked around that last one by creating an empty directory there, but it seems weird. Any suggestions on these would be appreciated.
I had to make some modifications to the openh264 Makefiles to get clang on windows working, so I'll have to get those upstreamed. I also have a bunch of warnings that would be nice to fix. Upstream supports clang on Android, but support was added after 1.8.1, so we'll have to target a newer version, or get the support backported.
Next step would be to get the symbols available. Just to confirm, before I spend time on this, we do use those somewhere?
Thanks!
[1] https://treeherder.mozilla.org/#/jobs?repo=try&revision=be9bbce7a7a15a4c36fdf2668be676e358560dff&selectedJob=225465463
[2] https://treeherder.mozilla.org/#/jobs?repo=try&revision=434ca218c0f25c805147523a58b3dd5fc1b3fbc8&selectedJob=225502484
[3] https://treeherder.mozilla.org/#/jobs?repo=try&revision=c763d0e4688d33e0e5a07a025f9354a8ddda5dc2&selectedJob=225489870
Comment 13•7 years ago
|
||
(In reply to Dan Minor [:dminor] from comment #12)
I had a few oddities with win64 though. If I attempt to upload a directory as an artifact, I get an exception and no logs [1]. Uploading a file works fine [2]. There seems to be something that expects an artifact at public/build [3]. I worked around that last one by creating an empty directory there, but it seems weird. Any suggestions on these would be appreciated.
Leaving n-i so I can look into this part before I disperse myself (I'll have to look more on this part on monday)
Next step would be to get the symbols available. Just to confirm, before I spend time on this, we do use those somewhere?
I was previously asked to be sure I uploaded symbols to our symbol server for openh264, I suspect Socorro reports on them somehow. I don't have any further insight than that as I don't do crash analysis nor do I know which teams would have seen openh264 crash reports to tell us about them.
If I need to go digging in my old bugmail for further details I can, but that is what I know offhand.
Comment 14•7 years ago
|
||
(In reply to Dan Minor [:dminor] from comment #12)
After a long delay, I've started working on this again. I have builds for all platforms now.
I had a few oddities with win64 though. If I attempt to upload a directory as an artifact, I get an exception and no logs [1].
The log shows:
[taskcluster:error] &errors.errorString{s:"Rel: can't make build\\openh264\\artifacts relative to /build/openh264/artifacts"}
[taskcluster:error] Rel: can't make build\openh264\artifacts relative to /build/openh264/artifacts
This is due to the task payload declaring the following artifact:
{
"name": "private/openh264",
"path": "/build/openh264/artifacts",
"type": "directory"
},
The path is relative to the task directory, so shouldn't have a leading / (i.e. I think you need "build/openh264/artifacts"). I think if you remove it, that should fix the problem.
Uploading a file works fine [2]. There seems to be something that expects an artifact at public/build [3]. I worked around that last one by creating an empty directory there, but it seems weird. Any suggestions on these would be appreciated.
Similarly, there is an artifact declared in the task payload:
{
"name": "public/build",
"path": "public/build",
"type": "directory"
}
This tells the worker that it should find a directory there for uploading. If you remove this from task definition, that should solve the problem.
| Assignee | ||
Comment 16•7 years ago
|
||
Hi Pete,
Thank you for having a look! Removing the forward slash from my artifact path did fix things for using a directory, strange that it worked for a file.
The "public/build" artifact is not a part of my kind.yml file [1], it must be coming from somewhere else, but I can work around that.
[1] https://hg.mozilla.org/try/file/434ca218c0f2/taskcluster/ci/openh264-plugin/kind.yml
| Assignee | ||
Comment 17•7 years ago
|
||
Try run here: https://treeherder.mozilla.org/#/jobs?repo=try&revision=762348d38f37cbb2079af16dd008a8c48796f8c7
It turns out that all builds look for "public/build", but it's only an error on windows. I'll just create an empty directory for that.
I'm waiting on an upstream pull request: https://github.com/cisco/openh264/pull/3095. Once that lands, we'll have to decide whether we want to ask for a backport the Android clang support to 1.8.1 or maintain the differences (just one Makefile) as a local patch.
I've done some limited testing of the plugins built on treeherder on my Linux and Windows systems and they look good so far.
| Assignee | ||
Comment 18•7 years ago
|
||
I discussed it with Nils yesterday and we don't want to delay this any further. I've produced a backport of the required patch and my pull request and updated kind.yml to point to that for the Android builds. I've forked it to github.com/dminor/openh264. If that's a concern, we can probably move it to the mozilla organization without too much trouble.
Try run here: https://treeherder.mozilla.org/#/jobs?repo=try&revision=ae1dfc36a29f85c263f2a557736b45abb01159b6
I've disabled running the gtests. The tests won't run on the Linux builders due to a glibc mismatch, won't run on Windows without getting git added to the build machines, OS X is now a cross-compile and we never ran them on Android anyway. We do local testing of the builds anyway, so I don't think this is a huge concern.
| Assignee | ||
Comment 19•7 years ago
|
||
| Assignee | ||
Comment 20•7 years ago
|
||
Depends on D19817
Comment 21•7 years ago
|
||
Comment 22•7 years ago
|
||
Comment 23•7 years ago
|
||
Updated•7 years ago
|
Comment 24•7 years ago
|
||
| bugherder | ||
Comment 25•7 years ago
|
||
Comment 26•7 years ago
|
||
Comment 27•7 years ago
|
||
when we can get the new FF with openh264 1.8.1?
Comment 28•7 years ago
|
||
(In reply to Elliot from comment #27)
when we can get the new FF with openh264 1.8.1?
The best answer I can give at this time is "soon" we're pretty close to being able to finalize what is needed here, there will be some Quality Assurance steps to make sure nothing is wrong of course along the way.
Comment 29•7 years ago
|
||
which nightly build I can test? I want to make sure Webex webapp can work normally. thanks.
Comment 30•7 years ago
|
||
Comment 31•7 years ago
|
||
Updated•7 years ago
|
Comment 32•7 years ago
|
||
Comment 33•7 years ago
|
||
| bugherder | ||
Comment 34•7 years ago
|
||
Comment 35•7 years ago
|
||
Comment 36•7 years ago
|
||
| bugherder | ||
| Comment hidden (Intermittent Failures Robot) |
Comment 38•7 years ago
|
||
Debugging Symbols are on our server now, for all platforms as of this writing.
Comment 39•7 years ago
|
||
Status Update: Binaries all sent over for hosting, there seems to be some issues (internally) with Android, which may prompt a new build. We plan to ship the desktop versions as-is at this time. Once we are able to serve them to users we'll update this bug so that interested people can follow along.
Comment 40•7 years ago
|
||
Is there any plan to tag v1.8.1 for those who build the plugin from source?
| Assignee | ||
Comment 41•7 years ago
|
||
(In reply to Elliot from comment #29)
which nightly build I can test? I want to make sure Webex webapp can work normally. thanks.
Hi Elliot, this is now available on the 'nightlytest' update channel. You need to edit the channel-prefs.js file in your Firefox installation and change the value there to be 'nightlytest'. If you already have a copy of the openh264 plugin, you will want to remove the 'media.gmp-manager.lastCheck' pref in about:config to force it to do check for updates. Otherwise, I think it only checks for updates once a day. Please let us know if you run into any problems.
Comment 42•7 years ago
|
||
(In reply to Dan Minor [:dminor] from comment #41)
(In reply to Elliot from comment #29)
which nightly build I can test? I want to make sure Webex webapp can work normally. thanks.
Hi Elliot, this is now available on the 'nightlytest' update channel. You need to edit the channel-prefs.js file in your Firefox installation and change the value there to be 'nightlytest'. If you already have a copy of the openh264 plugin, you will want to remove the 'media.gmp-manager.lastCheck' pref in about:config to force it to do check for updates. Otherwise, I think it only checks for updates once a day. Please let us know if you run into any problems.
still not get the 1.8.1 plugin as I followed your steps.
Comment 43•7 years ago
|
||
(In reply to Elliot from comment #42)
(In reply to Dan Minor [:dminor] from comment #41)
(In reply to Elliot from comment #29)
which nightly build I can test? I want to make sure Webex webapp can work normally. thanks.
Hi Elliot, this is now available on the 'nightlytest' update channel. You need to edit the channel-prefs.js file in your Firefox installation and change the value there to be 'nightlytest'. If you already have a copy of the openh264 plugin, you will want to remove the 'media.gmp-manager.lastCheck' pref in about:config to force it to do check for updates. Otherwise, I think it only checks for updates once a day. Please let us know if you run into any problems.
still not get the 1.8.1 plugin as I followed your steps.
You should do the following:
- Exit Firefox completely
- Change the .js file that holds the update prefs (in the application folder, not profile) for app.update.channel to be 'nightlytest' instead of 'nightly' and save this file
- Launch firefox
- delete 'media.gmp-manager.lastCheck' preference in about:config
- (maybe restart firefox, not sure how often we would check for openh264 otherwise)
and you should get 1.8.1, if you are on Desktop. If you do not and still end up with 1.7.1 I'd like to know what OS you are on and some more details so I can try to track down why.
Updated•7 years ago
|
Comment 44•7 years ago
|
||
This was just rolled out to Nightly users, and will remain Nightly Only for now. Android is not updated yet.
| Assignee | ||
Comment 45•7 years ago
|
||
For all platforms, Firefox 67 and later will have 1.8.1. I'm going to call this done.
Comment 46•6 years ago
|
||
Hello, i dunno if this is the right place but would it be possible to update to 2.0.0 https://github.com/cisco/openh264/commit/5f76764444393f333b6a6e3d64f72ee454b3f612
Comment 47•6 years ago
|
||
Greg, the major change in 2.0.0 is the B-Frame support. It's rarely used in RTC, so the Cisco Openh264 team didn't ask Firefox to pick up this release.
Comment 48•6 years ago
|
||
(In reply to Hank Peng from comment #47)
Greg, the major change in 2.0.0 is the B-Frame support. It's rarely used in RTC, so the Cisco Openh264 team didn't ask Firefox to pick up this release.
ok.
Updated•6 years ago
|
Comment 49•6 years ago
|
||
2.1.0 has been released: https://github.com/cisco/openh264/commit/032f97db96827f9c4c183de5bc3794fce7b76bf6
Comment 50•6 years ago
|
||
And now the release notes:
v2.1.0
- Experimentally support for multi-thread decoding(default disabled,and may result in random problems if enabled)
- Assembly optimization for loongson platform
- Update meson version to 5
- Some minor bug fixes
Considering 2.0.0 was out since last July and skipped over for current FF, maybe about time and in time for 76?
| Assignee | ||
Comment 51•6 years ago
|
||
(In reply to Arthur K. from comment #50)
And now the release notes:
v2.1.0
- Experimentally support for multi-thread decoding(default disabled,and may result in random problems if enabled)
- Assembly optimization for loongson platform
- Update meson version to 5
- Some minor bug fixes
Considering 2.0.0 was out since last July and skipped over for current FF, maybe about time and in time for 76?
I've filed Bug 1619988 for this.
Updated•4 years ago
|
Updated•4 years ago
|
Updated•4 years ago
|
Updated•1 year ago
|
Updated•1 year ago
|
Updated•10 months ago
|
Description
•