Consequently, this removes:
- MOZ_LIBPRIO, which is now always enabled.
- non_msvc_compiler, which is now always true.
- The cl.py wrapper, since it's not used anymore.
- CL_INCLUDES_PREFIX, which was only used for the cl.py wrapper.
- NONASCII, which was only there to ensure CL_INCLUDES_PREFIX still
worked in non-ASCII cases.
This however keeps a large part of detecting and configuring for MSVC,
because we still do need it for at least headers, libraries, and midl.
Depends on D19614
Differential Revision: https://phabricator.services.mozilla.com/D19615
--HG--
extra : moz-landing-system : lando
This also moves the corresponding ASFLAGS from moz.build to python
configure.
Differential Revision: https://phabricator.services.mozilla.com/D16320
--HG--
extra : moz-landing-system : lando
In libavcodec 58 and later, the old avcodec_decode_video2 is broken and only return the first visible frame found after a VP9 super-frame.
This resulted in some YouTube videos for about 10% of the frames to never be returned.
Only the new API properly behaves so we upgrade our code to use it.
Differential Revision: https://phabricator.services.mozilla.com/D14682
--HG--
extra : moz-landing-system : lando
Includes changes to support nasm's stricter include paths.
Supports falling back to yasm if nasm is missing.
Differential Revision: https://phabricator.services.mozilla.com/D9972
--HG--
extra : moz-landing-system : lando
Specifically: without this fix, icecc + clang users will hit this clang bug when compiling stdatomics.h:
https://bugs.llvm.org/show_bug.cgi?id=26828
MozReview-Commit-ID: BJUN82HyXpF
--HG--
extra : rebase_source : 3f06d3401198de45240aa9f0c7c865e048f90b89
Specifically: without this fix, icecc + clang users will hit this clang bug when compiling stdatomics.h:
https://bugs.llvm.org/show_bug.cgi?id=26828
MozReview-Commit-ID: BJUN82HyXpF
--HG--
extra : rebase_source : dde23b590c3eebe9fb56dba2d81738059efde654
The system ffmpeg will be used instead or libvpx if not found.
MozReview-Commit-ID: GX5WWPOhPq9
--HG--
extra : rebase_source : 3eec2ee1bc3b66d88653b913d6d1b3ad1a5d5acd
It was incorrectly disabled during the last resync.
MozReview-Commit-ID: IP0T4Aq5Q2q
--HG--
extra : rebase_source : 77b3c792ddabfc5536b8c680010d0438a22699be
This mostly removes static strings declaration, replacing them with null pointers.
It does cause to switch to algorithms that are more geared toward space saving than speed gain. However, those are mostly in hash calculations, which the FLAC decoder doesn't use.
MozReview-Commit-ID: 6Kl6xxlBOnw
--HG--
extra : rebase_source : 051ac58cd1ed3b617684cda0bd4a93687bbc9924
Remove the VP8 and VP9 decoder and the subsequently unused functions.
This drops the size to libmozavcodec to around 1MB down from 4MB.
MozReview-Commit-ID: Ge57fauG35L
--HG--
extra : rebase_source : 3f667d7bf89036e9b059727d846af2504ce488b3
For now this is a C decoder only and FFmpeg isn't optimised to only decode flac (both vp8 and vp9 C decoders code is included, however they aren't enabled).
MozReview-Commit-ID: 7ulwvJDJqVg
--HG--
extra : rebase_source : 7090eee32ba394224ef8c3c1c31abf1543b69975
All the flac parser jobs are done by FlacDemuxer
MozReview-Commit-ID: L7VZG64gi52
--HG--
extra : rebase_source : 31cca110abd9f049923bf9d579cb2781ad38bedf
Structure of code was slightly modified so that it should be no longer necessary to re-generate the config_*.h files, greatly simplifying the resync process.
MozReview-Commit-ID: Ap6HpJAANT6
--HG--
extra : rebase_source : 52e5e3b9b2401644dc536d746219e5f3864c600c
This partially reverts commit e99d6caa3a3778c0bb1f2fa9f2b4222bba2eeafereverts
FFmpeg requires specific default values in AVCodecContext to be set. It is quickly becoming too complicated to track what those should be. AVOptions automatically set all the values to their default.
MozReview-Commit-ID: lDFeUvwTMg
--HG--
extra : rebase_source : 04c5df11e485bcbae4fbf41d8b5ed512316b4d1b