Commit Graph

141 Commits

Author SHA1 Message Date
Jean-Yves Avenard
e73c9ba70f Bug 1320705: P6. Fix codec mimetypes. r=gerald
MozReview-Commit-ID: FozWtbvDNnA

--HG--
extra : rebase_source : b256424224a10af4957fe4b8ed73347e3608f198
2016-12-02 12:23:23 +11:00
Jean-Yves Avenard
48ed291b22 Bug 1320705: P5. Pass discard padding information from ogg container. r=kinetik
MozReview-Commit-ID: 8UKSVM0F0xF

--HG--
extra : rebase_source : e96927ebfd9d8c15322b8dbecc98c6e9ce946ae4
2016-11-30 17:44:49 +11:00
Jean-Yves Avenard
4aca82e728 Bug 1320705: P1. Fix function prototyping. r=gerald
Returning already_AddRefed is by convention preferred.

MozReview-Commit-ID: 1UyIcyBm923

--HG--
extra : rebase_source : c2896b6e7935d53eec77188d16657fbe1e925ca4
2016-11-30 17:18:58 +11:00
Gerald Squelart
038cba7f2e Bug 1313497 - Pass TimeUnit by const& in MediaDataDemuxer - r=jya
Thanks to the previous patch, MediaDataDemuxer::Seek and
SkipToNextRandomAccessPoint (and all overrides in derived demuxers) can now
take their TimeUnit parameter by const&.

MozReview-Commit-ID: 6CqfjAXZ7Yk

--HG--
extra : rebase_source : c3453e4432d9e0281cf5eba55217b0c1d6312f5b
2016-11-13 15:13:51 +11:00
Jean-Yves Avenard
87a107c468 Bug 1313632: P2. Cleaner Ogg related headers. r=kaku
MozReview-Commit-ID: DpnezpZw27H

--HG--
extra : rebase_source : 3700dbccbc98ae2aadd29fcf3fbef3e38fdec13c
2016-11-09 12:19:06 +11:00
Jean-Yves Avenard
d3a0f99985 Bug 1313632: P1. Remove unused OggReader. r=kaku
Also remove related preference.

MozReview-Commit-ID: D5pkyPXAoG9

--HG--
extra : rebase_source : 845d14a7059ae54d939300bb0f7f51664da05ff4
2016-11-09 11:54:41 +11:00
Jean-Yves Avenard
20dc9102e8 Bug 1299072: P12. Use MediaResult for MediaDataDemuxer promises. r=gerald
MozReview-Commit-ID: JeQrmoHbb8m

--HG--
extra : rebase_source : 1f4581e5789f18b358a6f5bb5f8595cc7a75110b
2016-09-12 12:22:20 +10:00
Paul Adenot
ee6b91ee10 Bug 1301518 - Support mapping family 255 when playing an Opus file, for use with the Web Audio API. r=jya
MozReview-Commit-ID: AaTCp16m6ks
2016-09-09 17:10:09 +02:00
Nicholas Nethercote
b71747b2ac Bug 1299727 - Rename NS_WARN_IF_FALSE as NS_WARNING_ASSERTION. r=erahm.
The new name makes the sense of the condition much clearer. E.g. compare:

  NS_WARN_IF_FALSE(!rv.Failed());

with:

  NS_WARNING_ASSERTION(!rv.Failed());

The new name also makes it clearer that it only has effect in debug builds,
because that's standard for assertions.

--HG--
extra : rebase_source : 886e57a9e433e0cb6ed635cc075b34b7ebf81853
2016-09-01 15:01:16 +10:00
Randell Jesup
b21f1c6ba5 Bug 1294753: encode all available audio on each cycle instead of one 'packet' r=rillian
Also fixes some accesses to mEndOfStream outside the monitor
2016-08-18 00:31:11 -04:00
Jean-Yves Avenard
47733b46b7 Bug 1195723: [ogg/flac] P3. Add flac support in ogg. r=kamidphish
This feature is intended to debug the flac parser only and is behind a hidden pref.
There's lots of redundant code in OggCodecState, there's need for a serious cleanup there.

MozReview-Commit-ID: 9H4efd2cfuE

--HG--
extra : rebase_source : d6af6a028f50dea7c562cf62fac71ae23b1d5e01
2016-08-04 17:21:53 +10:00
Jean-Yves Avenard
5dd2775ab5 Bug 1195723: [ogg] P2. Refactor mimetype parsing for ogg. r=kamidphish
Make it just like MP4, WebM and all the others new demuxers.
Additionally, make the ogg related preferences part of MediaPrefs.

MozReview-Commit-ID: DTedHyIMv9I

--HG--
extra : rebase_source : 5ab806335b4ad17b04a20e37caf87eeb37f68bed
2016-08-04 17:14:28 +10:00
James Cheng
0593e89ea0 Bug 1293194 - Building with --disable-eme fails with GMPDecoderModule.cpp:15:30: fatal error: mozilla/EMEUtils.h: No such file or directory. r=cpearce
MozReview-Commit-ID: VUGdiaLqkV

--HG--
extra : rebase_source : 3439ba2f7a81ad80f9db514f21c6091cc3e5711a
2016-08-09 12:13:30 +08:00
Matt Woodrow
f323872778 Bug 1292032 - Clean up VideoData static constructor methods. r=jya
--HG--
extra : rebase_source : e025c9a15ad00e970f9027f72c78b5d6effbc301
2016-08-04 15:31:52 +12:00
ctai
b7fcb47572 Bug 1201363 - Replace VideoFrameContainer with MediaStreamVideoSink in MSG. r=jesup
Replace the pointer of VideoFrameContainer with the pointer of MediaStreamVideoSink.

MozReview-Commit-ID: 5bqEMpemwuR

--HG--
extra : transplant_source : %008z%D8W%EE%87%8E%E9/%2CT%26%EBvo%AE%099%A6
2016-05-27 14:33:48 +08:00
Sebastian Hengst
120f502e2a Backed out changeset 3851902daa94 (bug 1201363) 2016-08-03 19:33:25 +02:00
ctai
e28782c9ba Bug 1201363 - Replace VideoFrameContainer with MediaStreamVideoSink in MSG. r=jesup
Replace the pointer of VideoFrameContainer with the pointer of MediaStreamVideoSink.

MozReview-Commit-ID: 5bqEMpemwuR

--HG--
extra : amend_source : 7eb1e87fdcbc61f2f9831fa3a6d803cc50306604
2016-05-27 14:33:48 +08:00
Carsten "Tomcat" Book
7e324b6cdb Backed out changeset b018ce9d1484 (bug 1201363) 2016-08-02 12:53:59 +02:00
ctai
0948ae3f3a Bug 1201363 - Replace VideoFrameContainer with MediaStreamVideoSink in MSG. r=jesup
Replace the pointer of VideoFrameContainer with the pointer of MediaStreamVideoSink.

MozReview-Commit-ID: 5bqEMpemwuR

--HG--
extra : transplant_source : %9D%86%93%A6%DF%D5%9Ep%20%DF%FD%C1%E2%BA%A3Gq%1A%7E%A3
2016-05-27 14:33:48 +08:00
Jean-Yves Avenard
8a0dfdfdb4 Bug 1288329: [ogg] P5. Fix coding style. r=gerald,jwwang
MozReview-Commit-ID: 1bAE92BECRD

--HG--
extra : rebase_source : bc53d84623f2d76c2eed796af1ca273c30efb369
2016-07-29 10:47:03 +10:00
Jean-Yves Avenard
3d8830b7ab Bug 1288329: [ogg] P4. Don't assume we can't seek in resource if transport isn't seekable. r=gerald
We can seek in cached data, we will rely on the seek operation to fail instead to determine if we can't or not

MozReview-Commit-ID: 3Ac7c1nTZTH

--HG--
extra : rebase_source : 569fc9dab9b50b416d29ffc902facf302845755b
2016-07-31 13:31:54 +10:00
Jean-Yves Avenard
90ebc0deea Bug 1288329: [ogg] P3. Never take into considerations frames prior the first keyframe. r=gerald
MozReview-Commit-ID: 1aJSbJb9kQW

--HG--
extra : rebase_source : 9853a92e7ca129305f28e68a1a6e9e2508f9e3a9
2016-07-29 10:38:36 +10:00
Jean-Yves Avenard
5d0a764769 Bug 1288329: [ogg/vorbis] P2. Pass extra information to the decoder so that it can perform proper trimmer. r=gerald,jwwang
The OggReader always passed a complete ogg_packet to the vorbis decoder, ensuring that the right number of frames was be returned. In the conversion to the new architecture, this information got lost making the vorbis decoder always return more frames than normal on the last packet.

MozReview-Commit-ID: HYHxqXfYntJ

--HG--
extra : rebase_source : 3d2a59b011ec1e996ab7aaf29e16baa495f7d31c
2016-07-29 02:19:21 +10:00
Jean-Yves Avenard
49ac56ce9a Bug 1288329: [ogg] P1. Add support for metadata chaining in OggDemuxer. r=gerald,jwwang
This is not the cleanest approach, but ensures identical behavior with the OggReader when it comes to firing loadedmetadata event and handling the change of seekability.

A more universal solution could be considered involving the MediaFormatReader and changing the MediaDataDemuxer API, of interest would be adding support for a new event fired whenever we have a change of content or metadata (useful with MSE or recorded webm of a WebRTC session

MozReview-Commit-ID: BojB2r1CtA3

--HG--
extra : rebase_source : 352fa61b62316264d1a2c8669f427d75f15ca19b
2016-07-28 15:32:11 +10:00
Wes Kocher
8f0a108b9a Backed out 6 changesets (bug 1288329) for wpt failures a=backout
Backed out changeset f33cb032cc9f (bug 1288329)
Backed out changeset 49ea83d00a77 (bug 1288329)
Backed out changeset 1406c14098f1 (bug 1288329)
Backed out changeset 936b73eb37c6 (bug 1288329)
Backed out changeset a1c4d9b9de32 (bug 1288329)
Backed out changeset a76b6e559777 (bug 1288329)

--HG--
extra : amend_source : 4e054fc4af62693934a4ae450a9595443b6a961d
2016-07-29 12:36:20 -07:00
Jean-Yves Avenard
cf4fb9d4df Bug 1288329: [ogg] P4. Fix coding style. r=gerald,jwwang
MozReview-Commit-ID: 1bAE92BECRD

--HG--
extra : rebase_source : 586e6b91e374bdc49fe4b2e6b72cf2c90a563cf2
2016-07-29 10:47:03 +10:00
Jean-Yves Avenard
e884bc2dfb Bug 1288329: [ogg] P3. Never take into considerations frames prior the first keyframe. r=gerald
MozReview-Commit-ID: 1aJSbJb9kQW

--HG--
extra : rebase_source : d80d8ff96cf23a15a48f9a08eb7e034ffc096d98
2016-07-29 10:38:36 +10:00
Jean-Yves Avenard
eba49ebd1c Bug 1288329: [ogg/vorbis] P2. Pass extra information to the decoder so that it can perform proper trimmer. r=gerald,jwwang
The OggReader always passed a complete ogg_packet to the vorbis decoder, ensuring that the right number of frames was be returned. In the conversion to the new architecture, this information got lost making the vorbis decoder always return more frames than normal on the last packet.

MozReview-Commit-ID: HYHxqXfYntJ

--HG--
extra : rebase_source : 3aa215576fe77357dd9a484626c0e5759aeedb3c
2016-07-29 02:19:21 +10:00
Jean-Yves Avenard
eabdba0469 Bug 1288329: [ogg] P1. Add support for metadata chaining in OggDemuxer. r=gerald,jwwang
This is not the cleanest approach, but ensures identical behavior with the OggReader when it comes to firing loadedmetadata event and handling the change of seekability.

A more universal solution could be considered involving the MediaFormatReader and changing the MediaDataDemuxer API, of interest would be adding support for a new event fired whenever we have a change of content or metadata (useful with MSE or recorded webm of a WebRTC session

MozReview-Commit-ID: BojB2r1CtA3

--HG--
extra : rebase_source : 04704c13bfbdc83fe7c03505876deb8cda2043e6
2016-07-28 15:32:11 +10:00
Jean-Yves Avenard
4d168d7572 Bug 1289438: [ogg] P5. Don't seek back to first buffered position during reset. r=gerald
A call to reset is always followed by a call to Seek; seeking is an heavy operation with ogg so let's minimize the number of times we are actually seeking.

MozReview-Commit-ID: Jz7dL9IFM14

--HG--
extra : rebase_source : b4c861b5963647292e3c8d8c8b8ac7ce097112fa
2016-07-27 17:57:22 +10:00
Jean-Yves Avenard
9ac2a30001 Bug 1289438: [ogg] P4. Use SaferMultDiv where appropriate. r=gerald
MozReview-Commit-ID: 3AWTGciNj4D

--HG--
extra : rebase_source : 0ac681e9733d581a0a44af5376c74826c4302f09
2016-07-27 17:17:21 +10:00
Jean-Yves Avenard
cee6294430 Bug 1289438: [ogg] P3 Fix code style. r=gerald
MozReview-Commit-ID: K6qpPVgsIi7

--HG--
extra : rebase_source : 879a2f3c3cddb54ab13a1dd2f070199e58e7cf5b
2016-07-27 17:01:27 +10:00
Jean-Yves Avenard
90527cf816 Bug 1289438: [ogg] P1. Always seek to the closest keyframe. r=brion+1012
MozReview-Commit-ID: 1IGFgU1GFz5

--HG--
extra : rebase_source : 2f84397152bc5c142aef104e59862a5a0aeb264f
2016-07-27 16:19:03 +10:00
Jean-Yves Avenard
d8e3cd1eab Bug 1288331: [ogg] P1. Seek audio track and video track independently from one another. r=brion+1012
MozReview-Commit-ID: 3ZOuzLNbPiq

Bug 1288331: [ogg] P1 amend

MozReview-Commit-ID: BoeDuGziBX5

--HG--
extra : rebase_source : 54220233aa4e0d54154edbb32c879935866f4745
2016-07-26 23:03:36 +10:00
Jean-Yves Avenard
d9896af911 Bug 1289059: P1. Add MediaDemuxer generic logging. r=cpearce
MozReview-Commit-ID: 453QrMX1nWp

--HG--
extra : rebase_source : 679586d22a380e57c19c1e78b29e71282c08ecbf
2016-07-24 22:30:07 +10:00
Jean-Yves Avenard
2de6846418 Bug 1168674: [ogg] P8. Fix metadata retrieval. r=brion+1012
MozReview-Commit-ID: BMUNy4zyWMz

--HG--
extra : rebase_source : 6bd1242b5195d1d2093df670797fcabbb6f8cc98
2016-07-27 12:22:31 +10:00
Jean-Yves Avenard
b0edcccd34 Bug 1168674: [ogg] P7. Properly mark overridden methods. r=gerald
MozReview-Commit-ID: 5aICN1aQwgC

--HG--
extra : rebase_source : a5ab7663bb831153d8c984e0f55ff338f574bb23
2016-07-26 16:39:44 +10:00
Jean-Yves Avenard
1125dc098d Bug 1168674: [ogg] P5. Use common demuxing methods. r=brion+1012
This ensure that the first sample demuxed will be identical to the first
one demuxed following a seek to the beginning.
Also, only demux the next packet when none is queued rather than all the time.

MozReview-Commit-ID: 5wtFVLiCAW

--HG--
extra : rebase_source : ce73d35f68fb800608a1182843de1d4abd469081
2016-07-25 19:06:20 +10:00
Jean-Yves Avenard
928589a0d1 Bug 1168674: [ogg] P4. Skip over header packets when seeking close to the start. r=brion+1012
MozReview-Commit-ID: F0Ezo0yfOyo

--HG--
extra : rebase_source : aac013a5b6065efed696e9929c63789f72ee1f5d
2016-07-21 17:56:01 +10:00
Brion Vibber
847a1df7ea Bug 1168674: [ogg] P2. Hook up new OggDemuxer. r=me
Not on by default yet. use media.format-reader.ogg preference

MozReview-Commit-ID: 7pH67XERTbW

--HG--
extra : rebase_source : 9868f07f622782b4859b95f237f7ee516345c2b2
2016-07-21 11:34:42 +10:00
Brion Vibber
173a4b9f77 Bug 1168674: [ogg] P1. Add OggDemuxer object. r=me
MozReview-Commit-ID: ChEceup4MYh

--HG--
extra : rebase_source : 0dc2c481c3bb3554484aac4227e92261c2341c66
2016-07-21 11:28:47 +10:00
Gerald Squelart
7bea2e1262 Bug 1289668 - Refactor FrameStatistics writers to use Data struct - r=kamidphish
Decoders now use FrameStatisticsData to gather data for their frame-related
notifications. This will ease introducing new members later on.

MozReview-Commit-ID: DWdOSPX3JM

--HG--
extra : rebase_source : a3e05f34353a397d1c82b3f4d935c0864f90556e
2016-07-18 10:41:40 +10:00
Tom Tromey
5538d692d3 Bug 1286877 - do not set c-basic-offset for python-mode; r=gps
This removes the unnecessary setting of c-basic-offset from all
python-mode files.

This was automatically generated using

    perl -pi -e 's/; *c-basic-offset: *[0-9]+//'

... on the affected files.

The bulk of these files are moz.build files but there a few others as
well.

MozReview-Commit-ID: 2pPf3DEiZqx

--HG--
extra : rebase_source : 0a7dcac80b924174a2c429b093791148ea6ac204
2016-07-14 10:16:42 -06:00
Jonathan Watt
b15368cfcb Bug 1279451 - Remove a lot of unnecessary includes of nsAutoPtr.h. rs=sparky 2016-06-07 21:10:18 +01:00
Dan Glastonbury
eaa1d08d90 Bug 1276570: Replace TargetQueues enum with bitwise-or flags. r=jwwang
MozReview-Commit-ID: 95rnjumeBf

--HG--
extra : rebase_source : bffaaa632cbe2f9d27f82746a85f2089ede6301a
2016-05-31 14:32:37 +10:00
Chris Peterson
ed15e4ee96 Bug 1276523 - Fix -Wshadow warnings in dom/media/ogg/. r=gerald
dom/media/ogg/OggReader.cpp:625:9 [-Wshadow-compatible-local] declaration of 'samples' shadows a previous local
dom/media/ogg/OggReader.cpp:656:9 [-Wshadow-compatible-local] declaration of 'samples' shadows a previous local
dom/media/ogg/OggReader.cpp:1344:14 [-Wshadow-compatible-local] declaration of 'res' shadows a previous local
dom/media/ogg/OggReader.cpp:1700:22 [-Wshadow-local] declaration of 'res' shadows a previous local
dom/media/ogg/OggReader.cpp:1894:22 [-Wshadow-local] declaration of 'res' shadows a previous local

dom/media/ogg/OpusParser.cpp:185:17 [-Wshadow-compatible-local] declaration of 'i' shadows a previous local
2016-05-30 22:17:35 -07:00
Chris Peterson
11ef78ae89 Bug 1275016 - Rename Endian.h to EndianUtils.h to avoid #include confusion with Android's endian.h stdlib header. r=froydnj
--HG--
rename : mfbt/Endian.h => mfbt/EndianUtils.h
2016-05-22 13:31:11 -07:00
Chris Peterson
353ee65255 Bug 1272513 - Part 1: Suppress -Wshadow warnings-as-errors in some directories. r=glandium 2016-05-11 00:00:01 -07:00
Dan Glastonbury
526fdd85f6 Bug 1224973 - Part 5: Implement suspend decoding for background video. r=cpearce,jwwang,jya
Implemented by short-circuiting calls to RequestVideoData in MDSM so no
frames are decoded. Resuming playback when video moves to foreground by
using the SeekTask/SeekJob/Seek in MDSM with result of GetMediaTime().

Special consideration is made to only seek the video part of Seek() to
remove an audible glitch in the audio playback when the video becomes
visible again.

MozReview-Commit-ID: 7YFDTanslXu
2016-05-12 09:54:15 +10:00
JW Wang
0c694cb31b Bug 1246051 - have MediaQueue<T>::Peek/PeekFront return a RefPtr<> to avoid dangling pointers per comment 0. r=gerald.
MozReview-Commit-ID: JhPVlqMWsTu
2016-04-25 14:36:07 +08:00