Allow using our own ffvp9 even if system FFmpeg is installed

RESOLVED FIXED in Firefox 46

Status

()

defect
RESOLVED FIXED
4 years ago
4 years ago

People

(Reporter: jya, Assigned: jya)

Tracking

(Depends on 1 bug)

45 Branch
mozilla46
Points:
---
Dependency tree / graph

Firefox Tracking Flags

(firefox46 fixed)

Details

Attachments

(4 attachments)

Right now, we can only have a single FFmpeg PDM loaded.

If a libavcodec shared library is found to be installed in the system, it will be used and the built-in ffvpx decoder will be bypassed.

Unfortunately, this means that if the system libavcodec is of an older version, there could be regressions over the use of ffvpx.

Additionally, it also means that different linux distribution would give different results.

We should have a way to load both ffvpx and system FFmpeg at the same time and prefer our ffvpx for VP9 and VP8 decoding.
Depends on: 1240649
This allows support for linking to two different version of libavcodec: our own and the system one if found.
ffvpx symbols are loaded within the namespace mozilla::ffvpx.
Attachment #8709364 - Flags: review?(ajones)
Add new preference media.ffvpx.enabled to control FFVPX PDM being enabled.
Attachment #8709365 - Flags: review?(ajones)
This is a partial revert of bug 1214462 part2. We don't need FFmpeg support on Android or Windows anymore; instead the functionality is provided by the FFVPX PDM.
Remove support for FFmpeg on Windows.
Attachment #8709366 - Flags: review?(ajones)
The days we used to only be able to use the FFmpeg decoder for H264 are long gone. It can do H264, VP6, VP8 and VP9.
Attachment #8709367 - Flags: review?(ajones)
Assignee: nobody → jyavenard
Attachment #8709364 - Flags: review?(ajones) → review+
Attachment #8709365 - Flags: review?(ajones) → review+
Attachment #8709366 - Flags: review?(ajones) → review+
Attachment #8709367 - Flags: review?(ajones) → review+
I would prefer to see a struct of function pointers be passed around instead of the namespaces.
Blocks: 1240995
Flags: needinfo?(jyavenard)
Blocks: 1241660
Flags: needinfo?(jyavenard)
You need to log in before you can comment on or make changes to this bug.