Commit Graph

13148 Commits

Author SHA1 Message Date
Jean-Yves Avenard
48fb044530 Bug 1444479 - P8. Remove FFmpeg audio decoder channel limitation. r=padenot
MozReview-Commit-ID: JQWcOny5Tgd
2018-03-24 10:58:02 +01:00
Jean-Yves Avenard
5d750cff32 Bug 1444479 - P7. Allow Apple AudioToolbox decoder handle more than 8 channels. r=padenot
Apple layout standard has a 1:1 equivalence with the WAVE standard. As such, any streams under 18 channels, properly defining a channel layout, should play on all platform.
Otherwise, as Opus and Vorbis, the result will be platform dependent.

MozReview-Commit-ID: ID6b9u2UNQr
2018-03-24 10:58:01 +01:00
Jean-Yves Avenard
6edfbc05e3 Bug 1444479 - P6. Make Opus and Vorbis decoder deal with more channels than 8. r=padenot
Under 8 channels, the audio will be reordered so it can be playable on any platforms.
Over 8 channels, the channels will be as output by the decoder. Playing of such stream will be platform dependent as neither Opus nor Vorbis define a channel layout with more than 8 channels.

With WebAudio however, the result will be platform independent (as long as you don't attempt to play it)

MozReview-Commit-ID: 93ATiKm9y20
2018-03-24 10:58:01 +01:00
Jean-Yves Avenard
f15eea87d5 Bug 1444479 - P5. Let AudioSink deal with unknown layout. r=padenot
MozReview-Commit-ID: F31zNl5o9n1
2018-03-24 10:58:01 +01:00
Jean-Yves Avenard
adbf3514c6 Bug 1444479 - P4. Add new AudioConfig constructor. r=padenot
This will allow to create an AudioConfig with an unknown or unsupported channel layout, defaulting instead to the number of channels.

MozReview-Commit-ID: IonLuo9q2a5
2018-03-24 10:58:01 +01:00
Jean-Yves Avenard
52d5d366d4 Bug 1444479 - P3. Add Channels(ChannelMap) method. r=padenot
MozReview-Commit-ID: 9sYeh30NHFF
2018-03-24 10:58:00 +01:00
Jean-Yves Avenard
6f7668d056 Bug 1444479 - P2. Make AudioConverter works with unknown layout. r=padenot
If a channel layout is unsupported, the AudioConverter will instead just use the channel count information to leave the data as-is, only trimming extra channels, or inserting silence if needed.

MozReview-Commit-ID: CXOjcSRsRwI
2018-03-24 10:58:00 +01:00
Jean-Yves Avenard
d44cd705b3 Bug 1444479 - P1. Remove 8 channels limitation in AudioConfig. r=padenot
Instead we place it at 32.
Future changes will change the meaning of this limit to when we can deal with channel layout. If outside that limit the audio will be played on a best attempt basis.

MozReview-Commit-ID: EavmmcxjLI0
2018-03-24 10:57:59 +01:00
Jean-Yves Avenard
4680798728 Bug 1432779 - P7. Use typedef rather than actual type. r=padenot
this improve readability.

MozReview-Commit-ID: IYfrLMZ5djX
2018-03-24 10:57:59 +01:00
Jean-Yves Avenard
4e7b0b2695 Bug 1432779 - P5. Remove no longer used variables. r=padenot
MozReview-Commit-ID: LqOuM1F0NC2
2018-03-24 10:57:59 +01:00
Jean-Yves Avenard
87fa7068d5 Bug 1432779 - P4. Remove the concept of preferred layout. r=padenot,r=kamidphish
Channel layout is derived by the content being played. The concept of preferred layout is meaningless. Either we have a layout defined, or we don't. There's no in-between.

So we remove it.

MozReview-Commit-ID: CSCAInNmzMS
2018-03-24 10:57:59 +01:00
Jean-Yves Avenard
5a631a5822 Bug 1432779 - P3. Properly set channel map layout after seeking. r=padenot
MozReview-Commit-ID: 5FY9hdaijhf
2018-03-24 10:57:58 +01:00
Jean-Yves Avenard
113a5cf5d7 Bug 1432779 - P1. Fix ChannelLayout calculation for uncommon layouts. r=padenot
MozReview-Commit-ID: Fi5ESBhziOp
2018-03-24 10:57:58 +01:00
Jean-Yves Avenard
57c6cc0428 Bug 1431221 - P14. Remove static layout definitions. r=padenot
That ChannelLayout uses an AutoTArray internally makes XPCOM report them as leaking when declared as static.

They weren't use outside of ChannelLayout anyway so they can be removed.

MozReview-Commit-ID: KVqdjzvL8pr
2018-03-24 10:57:57 +01:00
Jean-Yves Avenard
e766599866 Bug 1431221 - P13. Remove dual mono layout. r=padenot
It makes no sense to have a case for those as the data structure used (a bitmask) do not allow to represent this channel layout (a channel can only be present once). As such it was a non-functional layout

MozReview-Commit-ID: FjA0fojFcJp
2018-03-24 10:57:56 +01:00
Jean-Yves Avenard
ae2b5719c2 Bug 1431221 - P12. Fix Force Stereo Mode. r=padenot
MozReview-Commit-ID: DEoKXNk3d4E
2018-03-24 10:57:56 +01:00
Jean-Yves Avenard
6c310b818e Bug 1431221 - P11. Configure audio to use desired channel layout. r=padenot
MozReview-Commit-ID: 1wyeCIWohHE
2018-03-24 10:57:56 +01:00
Jean-Yves Avenard
eae919be64 Bug 1431221 - P10. Properly retrieve and set channel layout for opus and vorbis. r=cpearce
MozReview-Commit-ID: A4jEQzHRKDT
2018-03-24 10:57:55 +01:00
Jean-Yves Avenard
c69d04a58b Bug 1431221 - P9. Properly retrieve and set channel layout on windows. r=cpearce
MozReview-Commit-ID: GKpOAgPP9qp
2018-03-24 10:57:55 +01:00
Jean-Yves Avenard
49fdb79628 Bug 1431221 - P8. Pass channel layout with FFmpeg. r=padenot
MozReview-Commit-ID: LgmguXHZSnB
2018-03-24 10:57:55 +01:00
Jean-Yves Avenard
72acc6380b Bug 1431221 - P7. Pass channel layout on mac. r=padenot 2018-03-24 10:57:54 +01:00
Jean-Yves Avenard
ce853cc7ef Bug 1431221 - P6. Add channel map information to AudioInfo. r=padenot
MozReview-Commit-ID: 2zOvciLFtAr
2018-03-24 10:57:54 +01:00
Jean-Yves Avenard
48cf8d7243 Bug 1431221 - P5. Split AudioConfig.{h,cpp} from MediaInfo. r=padenot
MozReview-Commit-ID: EzaC19HS2B8
2018-03-24 10:57:54 +01:00
Jean-Yves Avenard
e9e8bc2708 Bug 1431221 - P4. Use similar channel decriptions as Windows WAVE and FFmpeg. r=padenot
This makes it for future easier conversion for the FFmpeg and Windows WMF decoder, so that we can use their channel map directly.

Also introduce a difference between 2F2 and QUAD, cubeb supports will be added in a future change.

MozReview-Commit-ID: L5NkjeuGslI
2018-03-24 10:57:54 +01:00
Jean-Yves Avenard
bea2ce1579 Bug 1431221 - P3. Fix unified build. r=padenot
MozReview-Commit-ID: Di1uZjK8Iox
2018-03-24 10:57:53 +01:00
Jean-Yves Avenard
0924b93c38 Bug 1431221 - P2. Have mac AAC decoder use proper output layout. r=padenot
We previously made no difference between 3.1, 2F2 or 4.0...

MozReview-Commit-ID: Bt7UVAT5uWf
2018-03-24 10:57:53 +01:00
Jean-Yves Avenard
1e2f478164 Bug 1431221 - P1. Add method to retrieve SMPTE equivalent layout from any channel layout. r=padenot
MozReview-Commit-ID: J8yT5OWIbAH
2018-03-24 10:57:53 +01:00
Cosmin Sabou
d5f5fb893c Backed out 3 changesets (bug 1446233) for permafailing on dom/media/tests/mochitest/test_peerConnection_replaceTrack.html. a=backout
Backed out changeset 9b72102a99b3 (bug 1446233)
Backed out changeset 6f3488ff7c60 (bug 1446233)
Backed out changeset 20301e359a4e (bug 1446233)
2018-03-23 15:18:23 +02:00
Dan Glastonbury
ac492b197c Bug 1446233 - P3: Add prefs to control audioipc client thread pool. r=kinetik
MozReview-Commit-ID: 7TVfYE9DEwp

--HG--
extra : rebase_source : e725ea784360e8d2061dbf4193c7074fde3cfdd1
2018-03-22 15:33:25 +10:00
shindli
5d297279b1 Backed out 3 changesets (bug 1446233) for Wr failures in /html/semantics/embedded-content/media-elements/track/track-element/track-webvtt-two-cue-layout-after-first-end.html on a CLOSED TREE
Backed out changeset ed217fb39a92 (bug 1446233)
Backed out changeset f5bec009a111 (bug 1446233)
Backed out changeset a71dd6219f8a (bug 1446233)
2018-03-23 04:11:01 +02:00
Dan Glastonbury
ac696a0587 Bug 1446233 - P3: Add prefs to control audioipc client thread pool. r=kinetik
MozReview-Commit-ID: I4BL7Ad2xtI

--HG--
extra : rebase_source : 984378bf2fbca347762b3096f75069b7721c97be
2018-03-22 15:33:25 +10:00
Andreas Pehrson
b51b21aa64 Bug 1435036 - Improve window checks. r=jib 2018-03-19 09:40:38 +01:00
arthur.iakab
5e8092339a Merge mozilla-central to inbound
--HG--
rename : browser/base/content/test/general/bug364677-data.xml => browser/components/feeds/test/bug364677-data.xml
rename : browser/base/content/test/general/bug364677-data.xml^headers^ => browser/components/feeds/test/bug364677-data.xml^headers^
rename : browser/base/content/test/general/test_bug364677.html => browser/components/feeds/test/test_bug364677.html
rename : services/sync/tps/extensions/tps/bootstrap.js => services/sync/tps/extensions/tps/components/tps-cmdline.js
rename : testing/talos/talos/pageloader/bootstrap.js => testing/talos/talos/pageloader/components/tp-cmdline.js
rename : testing/talos/talos/startup_test/sessionrestore/addon/bootstrap.js => testing/talos/talos/startup_test/sessionrestore/addon/SessionRestoreTalosTest.js
rename : testing/talos/talos/talos-powers/bootstrap.js => testing/talos/talos/talos-powers/components/TalosPowersService.js
rename : tools/quitter/bootstrap.js => tools/quitter/QuitterObserver.js
extra : rebase_source : 5801e95a945b54754f27571e7b211e1eac132d67
2018-03-21 22:27:21 +02:00
Miko Mynttinen
65c6bee9d6 Bug 1445302 - Replace TArray.RemoveElementAt(TArray.Length() - 1) pattern with TArray.RemoveLastElement() or TArray.PopLastElement() r=froydnj
MozReview-Commit-ID: rGjabnP2iz

--HG--
extra : rebase_source : 1ef6c5ce028ac9ebd9f3176d57835c43fe46bada
2018-03-13 14:51:33 +01:00
Bryce Van Dyk
978c69f8d4 Bug 1434477 - If AudioCallbackDriver::Init() can't get a cubeb context, fall back to system clock driver. r=padenot
Change AudioCallbackDriver::Init() to fallback to a system clock driver if a
cubeb context can not be obtained. This should make driver init more robust in
cases where cubeb init fails and then CubebUtils::GetCubebContext() returns no
context.

MozReview-Commit-ID: IlFPytYacoI

--HG--
extra : rebase_source : 7445ceb49583ee3ae399252e995ce6f012d9da2f
2018-03-19 14:46:36 -04:00
Bryce Van Dyk
70d6e49a13 Bug 1434477 - Add extra logging to MediaManager's device enumeration path. r=padenot
Add logging was added to help diagnose gUM failures and provide more log
coverage of that code path.

MozReview-Commit-ID: A76fjlUVpmn

--HG--
extra : rebase_source : 6f67ab223739474c8dec7a72a1ff322503c4df96
2018-03-16 15:09:55 -04:00
Andreas Pehrson
1238d9515a Bug 1444541 - Don't stop recorder on pagehide during frameswap. r=smaug
MozReview-Commit-ID: AZec0yXM1FI

--HG--
extra : rebase_source : d96845f7422f6e57943bf90b1ef0f29df3e08099
2018-03-19 15:52:36 +01:00
Byron Campen [:bwc]
1f0d6d8a26 Bug 1447015: Re-enable test_peerConnection_transceivers on linux debug. r=jib
MozReview-Commit-ID: HNxZl9Avwhk

--HG--
extra : rebase_source : d97ff16136a8b7185135157df72d58dcf6da6db3
2018-03-19 10:07:45 -05:00
Matthew Gregan
3eacaf6b89 Bug 1445546 - Initialize COM on the MediaManager thread. r=padenot
MozReview-Commit-ID: 92FErxjmDE5

--HG--
extra : rebase_source : a1c3c5a1dd08a81fff64c85e7a953052803de64c
2018-03-20 10:31:40 +13:00
Paul Adenot
598ec91d70 Bug 1437366 - Disable the test on Android, all the others are, there are now ways this one can pass. r=pehrsons
MozReview-Commit-ID: 4aefhOoJ8sv

--HG--
extra : rebase_source : d0124ae9a3b6004b38036969a1c9ce79f5c2d978
2018-03-15 14:41:54 +01:00
Paul Adenot
18a3b28518 Bug 1437366 - Lower the sample rate so that the test don't underrun on Windows on try. r=pehrsons
MozReview-Commit-ID: JCCh4k6pifE

--HG--
extra : rebase_source : 5d7a87cfa8b074a2100f666decb2e604a1e05587
2018-03-15 14:39:57 +01:00
Paul Adenot
885ea0a27a Bug 1437366 - Test that sending and receiving audio when using a graph with a sample-rate that is not supported by the MediaPipeline code works. r=pehrsons
MozReview-Commit-ID: 4c5zgkYCX2T

--HG--
extra : rebase_source : 0541e36e980572e08426a715d56b7e2d7c2d152c
2018-03-05 14:53:09 +01:00
Paul Adenot
43aa0c346f Bug 1437366 - Add a way to force the sample-rate used for a MediaStreamGraph. r=pehrsons
MozReview-Commit-ID: 4ICQiNKbUpJ

--HG--
extra : rebase_source : 686278509673cdd3b2705a5b20217ede075a8996
2018-03-02 19:27:57 +01:00
Peter Van der Beken
f5754d679a Bug 888600 - Move ContentFrameMessageManager to WebIDL. Part 6: Mark some IDL interfaces as non-scriptable. r=bz.
--HG--
extra : rebase_source : 5911f91bd7a63cd3603494e087e3858bd0527500
2018-03-01 20:19:56 +01:00
Nils Ohlmeier [:drno]
e2747ff63c Bug 1406529: added mochitest for extmap verification r=ng
MozReview-Commit-ID: QVn5MI0XdH

--HG--
rename : dom/media/tests/mochitest/test_peerConnection_basicAudioVideo.html => dom/media/tests/mochitest/test_peerConnection_basicAudioVideoVerifyExtmap.html
rename : dom/media/tests/mochitest/test_peerConnection_basicAudioVideo.html => dom/media/tests/mochitest/test_peerConnection_basicAudioVideoVerifyExtmapSendonly.html
extra : rebase_source : 866f93d306db933d988ea8ca476a625c9b3952d5
2018-03-05 22:07:05 -08:00
Daniel Holbert
edb2e41799 Bug 1447070: Give MediaKeySession.h the #include it needs to provide 'DecoderDoctorLifeLogger' type (to fix non-unified build error). r=gerald
MozReview-Commit-ID: An2FbvpI49I

--HG--
extra : rebase_source : 26a32a772cd2338e2124ae58342b64fb65ffbe49
2018-03-19 10:53:13 -07:00
Daniel Holbert
e4c1cd3677 Bug 1447091: Add #includes to fix non-unified bustage in dom/media. r=gerald
This fixes these two errors:
FileMediaResource.cpp:30:36: error: invalid use of incomplete type ‘class mozilla::AbstractThread’
   mCallback->AbstractMainThread()->Dispatch(

MediaTimer.cpp:50:3: error: ‘Unused’ was not declared in this scope
   Unused << rv;

MozReview-Commit-ID: WkPZc22dMF

--HG--
extra : rebase_source : 5704eb8bb36398be7aabaded9284b4f7263ef477
2018-03-19 11:48:38 -07:00
Dorel Luca
a04c12a681 Backed out changeset 231448afb53d (bug 1446505) for Mochitest failure on dom/media/webspeech/synth/test/test_bfcache.html. CLOSED TREE
--HG--
extra : amend_source : db6c502c4fe939ee072114a60636d3d1cbd96f1d
2018-03-17 01:30:37 +02:00
Eitan Isaacson
aa1affd1f8 Bug 1446505 - Don't pass topic when creating speech services. r=smaug 2018-03-16 12:15:00 +02:00
Eitan Isaacson
f765d0d585 Bug 1184142 - Support WebSpeech in GeckoView. r=snorp r=smaug
--HG--
extra : rebase_source : 81eb1ce2f67f70ee08908d69db54f8625df341cb
2018-03-16 12:08:00 +02:00