Граф коммитов

76 Коммитов

Автор SHA1 Сообщение Дата
alwu f18229c7fc Bug 1517199 - part1 : time stretching samples in AudioDecoderInputTrack. r=padenot
By using the soundtouch library, this patch implements the time stretching on the samples in AudioDecoderInputTrack when its playback rate is not 1.0f, in order to support changing playback rate on the captured media stream.

As the time stretcher has to be initialized by a fixed channel count, we would perform a realtime up-mix/down-mix for those audio chunks which have different channel count thant AudioDecoderInputTrack's initial channel count.

Differential Revision: https://phabricator.services.mozilla.com/D114560
2021-06-02 16:39:01 +00:00
Noemi Erli 3fe08775d6 Backed out 3 changesets (bug 1702646) for causing gtest failures CLOSED TREE
Backed out changeset 2b5f35e21e84 (bug 1702646)
Backed out changeset 13dc1577b2a0 (bug 1702646)
Backed out changeset f87a905f445a (bug 1702646)
2021-06-02 12:11:51 +03:00
Chun-Min Chang 92125abae4 Bug 1702646 - Share AudioSegments among AudioInputTrack r=padenot
Each AudioInputTrack has its own AudioSegments storing the input audio
data. When the AudioInputTrack is in pass-through mode, the AudioSegment
is just the data de-interleaved from its raw data, without any audio
processing magic applied on it. If there are multiple AudioInputTracks
in pass-through mode exist in the same graph, then all of their
AudioSegments are same.

Before this patch, each of these AudioInputTracks allocates its own
space to store its own AudioSegments even those data are same. This
patch makes it possible for these AudioInputTracks to share the same
AudioSegment data they need. By creating the AudioSegment in the
NativeInputTrack, which is mapped to one specific device and is
connected to the AudioInputTrack, the AudioInputTrack can fetch the
AudioSegment data when they need and then append shared-references of
the AudioChunk, inside the fetched AudioSegment, into their own
AudioSegment. Therefore, we can have some AudioChunks created by the
NativeInputTrack and shared among the AudioInputTracks in pass-through
mode.

Differential Revision: https://phabricator.services.mozilla.com/D114801
2021-06-02 01:05:20 +00:00
Andreas Pehrson 7b6488e143 Bug 1651745 - Memoize the max channel count in AudioSegment::MaxChannelCount(). r=padenot
When an AudioCallbackDriver starts a fallback SystemClockDriver is running in
its stead. The AudioTrack getting fed data from the input stream of the driver
will get real data while the AudioCallbackDriver is running, and silence while
the fallback driver is running.

If the MediaStreamTrack representing the microphone source is part of a
MediaStream being played by an HTMLMediaElement; and another MediaStreamTrack
representing another source with a lower channel count than the microphone is
part of another MediaStream being played by another HTMLMediaElement; then:
1. We start the graph with the other source's output channel count, and a
   fallback driver.
2. Once the audio driver has started, it adds data at a higher channel count
   than the graph's to its MediaTrack. The driver switches audio driver to
   match the new channel count.
3. The new driver starts with a fallback driver, which adds silence to the
   track. Silence has no channel count, so the graph sees only the channel
   count of the other source and switches audio driver to match this.
4. Go to 1.

This patch fixes makes us memoize a previously returned max channel count for an
AudioSegment for use when there is only null data (e.g., silence) present in the
segment. This applies to step 3 above, where no audio driver would be switched
because the graph still sees the mic's channel count.

Differential Revision: https://phabricator.services.mozilla.com/D95931
2020-11-05 15:34:04 +00:00
Paul Adenot 718b5288e8 Bug 1659244 - Remove audibility code from AudioSegment and AudioBlock. r=pehrsons
Same rationale as for AudioData, the audibility is best computed externally.

Differential Revision: https://phabricator.services.mozilla.com/D90432
2020-09-23 11:46:54 +00:00
Razvan Maries 655ae40b05 Backed out 7 changesets (bug 1659244) for DestinationNodeEngine related crashes. CLOSED TREE
Backed out changeset 50d7aabc075e (bug 1659244)
Backed out changeset da3af45b9195 (bug 1659244)
Backed out changeset 9e748be643e7 (bug 1659244)
Backed out changeset 47a5552dece7 (bug 1659244)
Backed out changeset 9c362f616f93 (bug 1659244)
Backed out changeset 4f1c72021ec9 (bug 1659244)
Backed out changeset 90f3b8edbd8b (bug 1659244)
2020-09-22 18:54:47 +03:00
Paul Adenot 9fcb6a67ad Bug 1659244 - Remove audibility code from AudioSegment and AudioBlock. r=pehrsons
Same rationale as for AudioData, the audibility is best computed externally.

Differential Revision: https://phabricator.services.mozilla.com/D90432
2020-09-21 17:40:58 +00:00
Simon Giesecke 96f3e7e019 Bug 1654992 - Use std::move instead of SwapElements where possible. r=froydnj
Differential Revision: https://phabricator.services.mozilla.com/D84807
2020-08-04 11:27:07 +00:00
Noemi Erli 381fca9783 Backed out 4 changesets (bug 1654992, bug 1654991) for causing timeous in mask-opacity-1e.html
Backed out changeset 11f0f54c6e0a (bug 1654992)
Backed out changeset a353dd5b3f08 (bug 1654991)
Backed out changeset 6a7964ba549f (bug 1654991)
Backed out changeset cf3bfb91d98c (bug 1654991)
2020-08-03 22:09:36 +03:00
Simon Giesecke 032d2ac9d3 Bug 1654992 - Use std::move instead of SwapElements where possible. r=froydnj
Differential Revision: https://phabricator.services.mozilla.com/D84807
2020-08-03 14:54:18 +00:00
Simon Giesecke f7f5462a4b Bug 1626570 - Improve handling of copying arrays in dom/media/. r=bryce
Differential Revision: https://phabricator.services.mozilla.com/D73627
2020-05-05 11:38:10 +00:00
Simon Giesecke 7e9a7de895 Bug 1620632 - Rename confusingly named types/macros for relocation handling of nsTArray. r=froydnj
Specifically, this renames
* nsTArray_CopyChooser to nsTArray_RelocationStrategy
* the Copy template argument of nsTArray_base to RelocationStrategy
* nsTArray_CopyWithConstructors to nsTArray_RelocateUsingMoveConstructor
* nsTArray_CopyWithMemutils to nsTArray_RelocateUsingMemutils
* DECLARE_USE_COPY_CONSTRUCTORS to MOZ_DECLARE_RELOCATE_USING_MOVE_CONSTRUCTOR

Differential Revision: https://phabricator.services.mozilla.com/D66243

--HG--
extra : moz-landing-system : lando
2020-03-20 17:04:27 +00:00
Simon Giesecke 88ead5d627 Bug 1613985 - Use default for equivalent-to-default constructors/destructors in dom/media. r=padenot
Differential Revision: https://phabricator.services.mozilla.com/D65178

--HG--
extra : moz-landing-system : lando
2020-03-04 15:39:20 +00:00
Simon Giesecke b50347f917 Bug 1611415 - Prefer using std::move over forget. r=froydnj
Differential Revision: https://phabricator.services.mozilla.com/D60980

--HG--
extra : moz-landing-system : lando
2020-02-13 14:38:48 +00:00
shindli 91aa0518dd Backed out changeset 0c982bc69cb3 (bug 1611415) for causing build bustages in /builds/worker/workspace/build/src/obj-firefox/dist/include/nsCOMPtr CLOSED TREE 2020-02-12 20:13:29 +02:00
Simon Giesecke f604a47fa5 Bug 1611415 - Applied FixItHints from mozilla-non-std-move. r=froydnj
Differential Revision: https://phabricator.services.mozilla.com/D60980

--HG--
extra : moz-landing-system : lando
2020-02-12 17:24:41 +00:00
Sylvestre Ledru 8d2f0d1b1f Bug 1519636 - Reformat recent changes to the Google coding style r=Ehsan
# ignore-this-changeset

Differential Revision: https://phabricator.services.mozilla.com/D54686

--HG--
extra : moz-landing-system : lando
2019-11-26 14:35:02 +00:00
Paul Adenot 4e89195064 Bug 1567949 - Move resampler setup one layer down to be able to set the channel count per chunk. r=pehrsons
It is technically possible to have different channel count per chunk, so we
should reinitialize the resampler when that happens. This is a bit awkward
because the rates are on the track, but the data is in the chunks, and the track
cannot access the chunks, so we have to plumb the resampler state down.

Differential Revision: https://phabricator.services.mozilla.com/D53806

--HG--
extra : moz-landing-system : lando
2019-11-19 18:48:50 +00:00
Paul Adenot 6e9afd6d25 Bug 1567949 - Clarify the semantics of AudioSegment::ChannelCount, and rename it. r=pehrsons
It is now the max channel count of the underlying chunks or 0 if there are no
segment.

Differential Revision: https://phabricator.services.mozilla.com/D51865

--HG--
extra : moz-landing-system : lando
2019-11-19 18:23:00 +00:00
Andreas Pehrson 1bdb34c6ec Bug 1454998 - Rename streams to tracks. r=padenot,karlt,smaug
This renames the following (in alphabetical order, non-exhaustive):

AudioCaptureStream -> AudioCaptureTrack
AudioNodeStream -> AudioNodeTrack
AudioNodeExternalInputStream -> AudioNodeExternalInputTrack
DirectMediaStreamTrackListener -> DirectMediaTrackListener
MediaStream -> MediaTrack
  - Note that there's also dom::MediaTrack. Namespaces differentiate them.
MediaStreamGraph -> MediaTrackGraph
MediaStreamTrackListener -> MediaTrackListener
MSG -> MTG (in comments)
ProcessedMediaStream -> ProcessedMediaTrack
SharedDummyStream -> SharedDummyTrack
SourceMediaStream -> SourceMediaTrack
StreamTime -> TrackTime
TrackUnionStream -> ForwardedInputTrack
  - Because this no longer takes a union of anything, but only a single track
    as input.

Other minor classes, members and comments have been updated to reflect these
name changes.

Differential Revision: https://phabricator.services.mozilla.com/D46146

--HG--
rename : dom/media/AudioCaptureStream.cpp => dom/media/AudioCaptureTrack.cpp
rename : dom/media/AudioCaptureStream.h => dom/media/AudioCaptureTrack.h
rename : dom/media/TrackUnionStream.cpp => dom/media/ForwardedInputTrack.cpp
rename : dom/media/TrackUnionStream.h => dom/media/ForwardedInputTrack.h
rename : dom/media/MediaStreamGraph.cpp => dom/media/MediaTrackGraph.cpp
rename : dom/media/MediaStreamGraph.h => dom/media/MediaTrackGraph.h
rename : dom/media/MediaStreamGraphImpl.h => dom/media/MediaTrackGraphImpl.h
rename : dom/media/MediaStreamListener.cpp => dom/media/MediaTrackListener.cpp
rename : dom/media/MediaStreamListener.h => dom/media/MediaTrackListener.h
rename : dom/media/webaudio/AudioNodeExternalInputStream.cpp => dom/media/webaudio/AudioNodeExternalInputTrack.cpp
rename : dom/media/webaudio/AudioNodeExternalInputStream.h => dom/media/webaudio/AudioNodeExternalInputTrack.h
rename : dom/media/webaudio/AudioNodeStream.cpp => dom/media/webaudio/AudioNodeTrack.cpp
rename : dom/media/webaudio/AudioNodeStream.h => dom/media/webaudio/AudioNodeTrack.h
extra : moz-landing-system : lando
2019-10-02 10:23:02 +00:00
Gurzau Raul 40dae37e00 Backed out 7 changesets (bug 1454998) for build bustages at MediaTrackGraph.h on a CLOSED TREE.
Backed out changeset 80417bdfa721 (bug 1454998)
Backed out changeset 8ff03f2f4ca2 (bug 1454998)
Backed out changeset ae6056b748d1 (bug 1454998)
Backed out changeset ab721cb2066b (bug 1454998)
Backed out changeset d0e8d413cd1c (bug 1454998)
Backed out changeset 3ce4dc7e9ae2 (bug 1454998)
Backed out changeset 6105a4176729 (bug 1454998)

--HG--
rename : dom/media/AudioCaptureTrack.cpp => dom/media/AudioCaptureStream.cpp
rename : dom/media/AudioCaptureTrack.h => dom/media/AudioCaptureStream.h
rename : dom/media/MediaTrackGraph.cpp => dom/media/MediaStreamGraph.cpp
rename : dom/media/MediaTrackGraph.h => dom/media/MediaStreamGraph.h
rename : dom/media/MediaTrackGraphImpl.h => dom/media/MediaStreamGraphImpl.h
rename : dom/media/MediaTrackListener.cpp => dom/media/MediaStreamListener.cpp
rename : dom/media/MediaTrackListener.h => dom/media/MediaStreamListener.h
rename : dom/media/ForwardedInputTrack.cpp => dom/media/TrackUnionStream.cpp
rename : dom/media/ForwardedInputTrack.h => dom/media/TrackUnionStream.h
rename : dom/media/webaudio/AudioNodeExternalInputTrack.cpp => dom/media/webaudio/AudioNodeExternalInputStream.cpp
rename : dom/media/webaudio/AudioNodeExternalInputTrack.h => dom/media/webaudio/AudioNodeExternalInputStream.h
rename : dom/media/webaudio/AudioNodeTrack.cpp => dom/media/webaudio/AudioNodeStream.cpp
rename : dom/media/webaudio/AudioNodeTrack.h => dom/media/webaudio/AudioNodeStream.h
2019-10-02 11:46:23 +03:00
Andreas Pehrson 36d89d91c8 Bug 1454998 - Rename streams to tracks. r=padenot,karlt,smaug
This renames the following (in alphabetical order, non-exhaustive):

AudioCaptureStream -> AudioCaptureTrack
AudioNodeStream -> AudioNodeTrack
AudioNodeExternalInputStream -> AudioNodeExternalInputTrack
DirectMediaStreamTrackListener -> DirectMediaTrackListener
MediaStream -> MediaTrack
  - Note that there's also dom::MediaTrack. Namespaces differentiate them.
MediaStreamGraph -> MediaTrackGraph
MediaStreamTrackListener -> MediaTrackListener
MSG -> MTG (in comments)
ProcessedMediaStream -> ProcessedMediaTrack
SharedDummyStream -> SharedDummyTrack
SourceMediaStream -> SourceMediaTrack
StreamTime -> TrackTime
TrackUnionStream -> ForwardedInputTrack
  - Because this no longer takes a union of anything, but only a single track
    as input.

Other minor classes, members and comments have been updated to reflect these
name changes.

Differential Revision: https://phabricator.services.mozilla.com/D46146

--HG--
rename : dom/media/AudioCaptureStream.cpp => dom/media/AudioCaptureTrack.cpp
rename : dom/media/AudioCaptureStream.h => dom/media/AudioCaptureTrack.h
rename : dom/media/TrackUnionStream.cpp => dom/media/ForwardedInputTrack.cpp
rename : dom/media/TrackUnionStream.h => dom/media/ForwardedInputTrack.h
rename : dom/media/MediaStreamGraph.cpp => dom/media/MediaTrackGraph.cpp
rename : dom/media/MediaStreamGraph.h => dom/media/MediaTrackGraph.h
rename : dom/media/MediaStreamGraphImpl.h => dom/media/MediaTrackGraphImpl.h
rename : dom/media/MediaStreamListener.cpp => dom/media/MediaTrackListener.cpp
rename : dom/media/MediaStreamListener.h => dom/media/MediaTrackListener.h
rename : dom/media/webaudio/AudioNodeExternalInputStream.cpp => dom/media/webaudio/AudioNodeExternalInputTrack.cpp
rename : dom/media/webaudio/AudioNodeExternalInputStream.h => dom/media/webaudio/AudioNodeExternalInputTrack.h
rename : dom/media/webaudio/AudioNodeStream.cpp => dom/media/webaudio/AudioNodeTrack.cpp
rename : dom/media/webaudio/AudioNodeStream.h => dom/media/webaudio/AudioNodeTrack.h
extra : moz-landing-system : lando
2019-10-02 08:18:16 +00:00
Ehsan Akhgari e5e885ae31 Bug 1521000 - Part 2: Adjust our clang-format rules to include spaces after the hash for nested preprocessor directives r=sylvestre
# ignore-this-changeset

--HG--
extra : amend_source : 7221c8d15a765df71171099468e7c7faa648f37c
extra : histedit_source : a0cce6015636202bff09e35a13f72e03257a7695
2019-01-18 10:16:18 +01:00
Sylvestre Ledru 804b8b8883 Bug 1204606 - Reformat of dom/media r=jya
# skip-blame

Differential Revision: https://phabricator.services.mozilla.com/D12251

--HG--
extra : moz-landing-system : lando
2018-11-19 13:25:37 +00:00
Paul Adenot 3f4724fcbb Bug 1487057 - Part 4 - Remove AsyncLatencyLogger and associated code. r=pehrsons
It's not maintained and probably does not work anymore.

Differential Revision: https://phabricator.services.mozilla.com/D5438

--HG--
extra : rebase_source : ccd622e40844dda5d16266e49991462d4ea94224
2018-08-30 17:11:57 +02:00
alwu 6ac9eb0021 Bug 1496496 - part1 : add IsAudible() to detect audible data. r=padenot
Add method to help us know whether audio block is audible or not, so that we won't
show the sound indicator for silent web audio.

Differential Revision: https://phabricator.services.mozilla.com/D7819

--HG--
extra : moz-landing-system : lando
2018-10-11 18:17:41 +00:00
Emilio Cobos Álvarez fffb25b74f Bug 1465585: Switch from mozilla::Move to std::move. r=froydnj
This was done automatically replacing:

  s/mozilla::Move/std::move/
  s/ Move(/ std::move(/
  s/(Move(/(std::move(/

Removing the 'using mozilla::Move;' lines.

And then with a few manual fixups, see the bug for the split series..

MozReview-Commit-ID: Jxze3adipUh
2018-06-01 10:45:27 +02:00
Andreas Pehrson 351446a16c Bug 1447273 - Consider all AudioChunk members in AudioChunk::CanCombineWithFollowing. r=padenot
MozReview-Commit-ID: 1Fz1GNxRF3P

--HG--
extra : rebase_source : 377a96799f159431f2ab9d34d200ba9110fb2fca
2018-03-26 18:33:42 +02:00
Andreas Pehrson 9b7bfe9819 Bug 1447273 - Reduce AudioChunk::CanCombineWithFollowing indentation. r=padenot
MozReview-Commit-ID: 9pk5xKrYoa6

--HG--
extra : rebase_source : 06dfaeab1e6d579aabd1a8ec02e8dd708396e821
2018-03-26 18:33:09 +02:00
Andreas Pehrson c90665389c Bug 1407549 - Copy AudioSegment by constructor. r=padenot
This allows static analysis to pass for AudioNodeExternalInputStream.cpp.

MozReview-Commit-ID: 9dvllnnODed

--HG--
extra : rebase_source : 0c7665a3240422d52b82c5c2eaa4942be522dcb9
2018-04-04 12:07:41 +02:00
Andreas Pehrson c213ba1025 Bug 1407549 - Avoid copying principal handles as much as possible. r=padenot
MozReview-Commit-ID: EMX2nf5nk1L

--HG--
extra : rebase_source : 4cbdfabcafb0bfb844dd022e6f56b425c4f6e87c
2018-03-29 16:15:51 +02:00
Paul Adenot 469073f238 Bug 1397793 - Add asserts for AudioChunk invariants. r=pehrsons
MozReview-Commit-ID: CFqyMPMMHyA

--HG--
extra : rebase_source : 47d1cef3a0052a17743cfb3f77442d416cb90e28
extra : source : a0d519ba5332cacfa2fa5c070f056318ef786a42
2017-11-29 19:22:00 +01:00
Sebastian Hengst fe440c72a7 Backed out bug 1423923 for crashes, requested by drno. r=backout a=backout
Backed out changesets:
b44e089bcfe7
a3d9aa2649b9
9e92591ba6dc
e92ff1339db1
bf8977e0f440
a781b123b252
2c7a56648de9
0107b3feb84b
d12894d77770
1cf542ff8687
771c95f2963b
16f44ac4978a
ea8d6efcf3ef
a0d519ba5332
81889a72ac45
c02fd9acc634

--HG--
extra : histedit_source : 1cc2bad6f9f291f76d6c2385a5c7fa4512b9c6e3%2C758892ad6f034b39773940602a1399f4e3c8f887
2017-12-11 12:34:23 +02:00
Paul Adenot 93fa5b007c Bug 1397793 - Add asserts for AudioChunk invariants. r=pehrsons
MozReview-Commit-ID: CFqyMPMMHyA

--HG--
extra : rebase_source : 6648d283e6da1cc3ad98616063e62542b9e7346d
extra : histedit_source : 8937ab1b4567fabc3c98802eefede9f00e9684a5
2017-11-29 19:22:00 +01:00
Karl Tomlinson 5ea2376fe3 bug 1404220 remove explicit unit volume AudioChunk settings, which are now initialized at construction r=padenot
MozReview-Commit-ID: EahkZtZAb18

--HG--
extra : rebase_source : 15e82320ed6712ebc642deabac9dc1e766c01836
2017-10-06 18:48:12 +13:00
Karl Tomlinson f3b25c6e88 bug 1404220 provide default initializers for all AudioChunk members r=padenot
This avoids any risk of undefined behavior when evaluating uninitialized
members, during copies for example, and makes it safe to test mBufferFormat
when null.

MozReview-Commit-ID: IMAyZ1CSHbk

--HG--
extra : rebase_source : b02431634732cf63d6fe9ede5eb1400a2baa6308
2017-10-06 18:28:11 +13:00
Andreas Pehrson eac8b1842e Bug 1296531 - Add MediaSegment::IsNull. r=jesup
This allows us to see if all chunks in a MediaSegment are null.
When this is true for the MediaSegment passed to NotifyQueuedChanges, we can
assume that the track's input is blocked for the given time.

MozReview-Commit-ID: zf7V7aiohg

--HG--
extra : rebase_source : 5dd8442f85e6011fc0015460c6a7fedf04fb956e
2017-05-16 13:06:02 +02:00
Andreas Pehrson fa90a37a68 Bug 1296531 - Implement MediaSegment move constructor. r=jesup
This helps simplify code in places where we want to move all chunks in one
segment to another, new, segment.
For clarity this also explicitly forbids copying a MediaSegment.

MozReview-Commit-ID: 49rzUwFqE7V

--HG--
extra : rebase_source : 3fc7d733cb70419bcf5eedb4a0dd8c0dc90f7054
extra : source : 737ce537e48c84b5e0aa4d06ee5332ae09a99897
2017-02-17 14:31:50 +01:00
Karl Tomlinson d17ceb8a8f bug 1391482 permit AudioChunk channel data initialization when mBuffer is not shared r=padenot
MozReview-Commit-ID: AZ30fTVHHce

--HG--
extra : rebase_source : 313f0e643c9fce3500fe4c238929c4636560834e
2017-08-16 18:37:30 +12:00
Phil Ringnalda 2f26d0e9a4 Backed out 15 changesets (bug 1391482) for rooting hazard
Backed out changeset 4d4ed9b64bdb (bug 1391482)
Backed out changeset c02da061fc56 (bug 1391482)
Backed out changeset 7f096b0d1d0e (bug 1391482)
Backed out changeset 497e04031fc3 (bug 1391482)
Backed out changeset cb6ac4267562 (bug 1391482)
Backed out changeset b9a522cc88c9 (bug 1391482)
Backed out changeset 6feba222e86b (bug 1391482)
Backed out changeset ee13302be6c8 (bug 1391482)
Backed out changeset 0e12a1bdb2fa (bug 1391482)
Backed out changeset 7ffc044e742a (bug 1391482)
Backed out changeset fc35c12c815f (bug 1391482)
Backed out changeset 527ea972cdf3 (bug 1391482)
Backed out changeset a9c7abf92455 (bug 1391482)
Backed out changeset fea3e5cd3590 (bug 1391482)
Backed out changeset ca07d3a43b11 (bug 1391482)

MozReview-Commit-ID: 9Cq8e7pr2SP
2017-08-28 20:40:11 -07:00
Karl Tomlinson 2697172632 bug 1391482 permit AudioChunk channel data initialization when mBuffer is not shared r=padenot
MozReview-Commit-ID: AZ30fTVHHce

--HG--
extra : rebase_source : 36023b21341845fcca0e4d1b7dfa7465d9bf0c51
2017-08-16 18:37:30 +12:00
Karl Tomlinson d7e9aa7cc4 bug 1172979 use AutoTArray for AudioChunk::mChannelData to reduce allocations r=padenot
MozReview-Commit-ID: wabk0WlLv5

--HG--
extra : rebase_source : c7477c47a50c46ffdb3f3b10c9497eaec1bf02dd
2017-08-11 11:54:36 +12:00
Karl Tomlinson 107b30b800 bug 1172979 permit retrieving const channel data from const AudioChunk r=padenot
MozReview-Commit-ID: 8mP49nONMYI

--HG--
extra : rebase_source : 0d8ec2491772a0bc2710e1aa9b4adbff57958261
2017-08-10 17:03:15 +12: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
Andreas Pehrson be74876e25 Bug 1208371 - Add PrincipalHandle to MediaChunks. r=mt,jesup
PrincipalHandle is a thread safe pointer to a holder of (the main-thread-only
nsIPrincipal) that can be passed around the MSG.

A MediaStreamTrack whose source has just updated its principal, sets the new
principal aside (as its "pending principal"), and combines the new principal
into its current principal.

Then the source starts passing the new principal to the MediaStreamGraph as
a PrincipalHandle.

Changes to a track's PrincipalHandle on the MSG will be surfaced through the
MediaStreamTrackListener API. These changes are dispatched to main thread
and compared to a MediaStreamTrack's pending principal. In case of a match
the track knows the correct principal is flowing and can move the pending
principal to be the current principal and update any main thread principal
observers.

MozReview-Commit-ID: D0JXGWhQFFU

--HG--
extra : rebase_source : 296e269bb46fc5a85a9c3f90dfc0dc40e53572bc
2016-04-06 14:56:44 +02:00
Eric Rahm 16fbdcb5f8 Bug 1251494 - Remove remaining references to MOZILLA_XPCOMRT_API from dom. r=jesup 2016-02-26 18:10:56 -08:00
Wes Kocher 72d9604d91 Backed out 8 changesets (bug 1251482, bug 1251494, bug 1251473, bug 1239870) for gtest failures
Backed out changeset f064a5efbb8c (bug 1251494)
Backed out changeset 9e33adec1aa6 (bug 1251482)
Backed out changeset ab0347657e25 (bug 1251473)
Backed out changeset 1d385d4f195d (bug 1239870)
Backed out changeset ceb3e1ee7dda (bug 1239870)
Backed out changeset 8574075bf42f (bug 1239870)
Backed out changeset ba077a3afbc7 (bug 1239870)
Backed out changeset eb99ab06414d (bug 1239870)

MozReview-Commit-ID: 7r9SEk4VGNU
2016-02-26 17:14:57 -08:00
Eric Rahm d47c3674cc Bug 1251494 - Remove remaining references to MOZILLA_XPCOMRT_API from dom. r=jesup 2016-02-26 15:31:21 -08:00
Birunthan Mohanathas d7371d07d0 Bug 1235261 - Part 1: Rename nsAutoTArray to AutoTArray. r=froydnj 2016-02-02 17:36:30 +02:00
Phil Ringnalda d381b4bca6 Back out 7 changesets (bug 1235261) for cpptest failures in TestTArray
CLOSED TREE

Backed out changeset d66c3f19a210 (bug 1235261)
Backed out changeset 467d945426bb (bug 1235261)
Backed out changeset 32b61df13142 (bug 1235261)
Backed out changeset c50bb8ed4196 (bug 1235261)
Backed out changeset 0ff0fa6fe81f (bug 1235261)
Backed out changeset df70e89669da (bug 1235261)
Backed out changeset 064969357fc9 (bug 1235261)
2016-01-31 10:10:57 -08:00