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

776 Коммитов

Автор SHA1 Сообщение Дата
Chun-Min Chang 49581ca4dc Bug 1530715 - P37: Merge configure_output into setup. r=padenot
Calling configure_output requires borrowing AudioUnitStream as a
mutable. Merging configure_output into setup will help to avoid a
potential borrowing-twice issue in the later mutex replacement. There
will be a critical section created by a Rust mutex in the setup, which
will borrow the AudioUnitStream as an immutable.

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

--HG--
extra : moz-landing-system : lando
2019-07-10 08:07:06 +00:00
Chun-Min Chang c02d11403d Bug 1530715 - P36: Move out minimum_resampling_input_frames of output callback. r=padenot
Avoid calling minimum_resampling_input_frames by a borrowing from
AudioUnitStream

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

--HG--
extra : moz-landing-system : lando
2019-07-10 08:07:08 +00:00
Chun-Min Chang 4f393e66ea Bug 1530715 - P35: Store layout in the stream instead of context. r=padenot
We store global layout info and channels info in the cubeb context.
However, the streams might output to different devices. We should store
the layout info of the output device in the stream directly instead of
in the context. On the other hand, the `channels` value is a duplicate
of `output_desc.mChannelsPerFrame` or `mixer.out_channels` so we don't
need to store this value.

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

--HG--
extra : moz-landing-system : lando
2019-07-10 08:07:10 +00:00
Chun-Min Chang 6c5d3ff715 Bug 1530715 - P34: Merge layout_init into configure_output. r=padenot
1. Avoid calling layout_init by wrong AudioUnit value

2. Avoid calling layout getting/setting APIs by borrowing the
AudioUnitStream as a mutable. It will help to avoid the potential
borrowing-twice issues in the later mutex replacement.

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

--HG--
extra : moz-landing-system : lando
2019-07-10 08:06:35 +00:00
Chun-Min Chang 93932acf07 Bug 1530715 - P33: Register and unregister the device-changed callbacks when stream setup and close. r=padenot
1. The code readability is slightly better if we can register and
unregister the callbacks in the same places. The device-chaned callbacks
are registered when stream setup and unregistered when stream close.

2. In the later mutex replacement, the core stream variables that may be
touched by different threads when reinitializing or destroying the
stream, including {in, out}_unit, will be wrapped in a Rust mutex.
Moving these callbacks (un)registration into the same places makes it
easier to find where the critical sections are.

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

--HG--
extra : moz-landing-system : lando
2019-07-10 08:06:37 +00:00
Chun-Min Chang 56e7631637 Bug 1530715 - P32: Close the stream if failing in stream reinitialization. r=padenot
Before reporting the error by the state callback, closing the stream to
make sure the data callback and device-changed callback are
unregistered.

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

--HG--
extra : moz-landing-system : lando
2019-07-10 08:06:39 +00:00
Chun-Min Chang f06595279a Bug 1530715 - P31: Merge render_input into audiounit_input_callback. r=padenot
1. If AudioUnitRender return kAudioUnitErr_CannotDoInCurrentContext
within a input-only stream, the input-only stream will keep feed silence
data into the buffer instead of reporting the error. With this change,
the error will be rendered as the returned value of the data callback to
the underlying CoreAudio framework.

2. By merging the render_input into audiounit_input_callback and adjust
the timing to call reinit_async, now the reinit_async is called at the
line that is out of the main logic for feeding buffer data. In the scope
of the main logic, there will be a critical section created by locking a
Rust mutex within AudioUnitStream in the later mutex replacement.
Without moving the reinit_async, which borrows AudioUnitStream as a
mutable, out of the critical section, there will be a borrowing-twice
issue.

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

--HG--
extra : moz-landing-system : lando
2019-07-10 08:06:41 +00:00
Chun-Min Chang 7a27f19d14 Bug 1530715 - P30: Some clean-up in audiounit_output_callback. r=padenot
- Remove unnecessary mutabilities
- Remove duplicate API calls

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

--HG--
extra : moz-landing-system : lando
2019-07-10 08:06:43 +00:00
Chun-Min Chang d637d53858 Bug 1530715 - P29: Move mixer to a struct within a mutex. r=padenot
The mixer of the stream will be created, reinitialized, used or
destroyed on different threads, so its operations should be in the
critical sections. We do create critical sections by our custom mutex.
However, this custom mutex will be gradually replaced by the standard
Rust mutex in the following patches.

To replace the custom mutex, we put the mixer to the struct wrapped by a
Rust mutex and do all the mixer operations in the critical section
created by this struct. At the end when the custom mutex is removed,
those operations are still in critical sections.

Calling notify_state_changed needs to borrow AudioUnitStream as a
mutuable. To avoid the borrowing-twice issue, the notify_state_changed
calling is moved out the scope of the critical section created in the
output data callback.

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

--HG--
extra : moz-landing-system : lando
2019-07-10 08:06:45 +00:00
Chun-Min Chang 7efd386b4d Bug 1530715 - P28: Create a Mixer module. r=padenot
Using an Mixer struct to operate all the mixing APIs is a way to make
the code clearer. In addition, we can avoid calling mix function by
borrowing the AudioUnitStream as a mutable. It will help to avoid
potential borrowing-twice issues in the later mutex replacement.

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

--HG--
extra : moz-landing-system : lando
2019-07-10 08:06:47 +00:00
Chun-Min Chang 2ac1419990 Bug 1530715 - P27: Move resampler to a struct within a mutex. r=padenot
The resampler of the stream will be created, reinitialized, used or
destroyed on different threads, so its operations should be in the
critical sections. We do create critical sections by our custom mutex.
However, this custom mutex will be gradually replaced by the standard
mutex in the following patches. To replace the custom mutex, we put the
resampler to the struct wrapped by a Rust mutex and do all the resampler
operations in the critical section created by this struct. At the end
when the custom mutex is removed, those operations are still in critical
sections.

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

--HG--
extra : moz-landing-system : lando
2019-07-10 08:06:48 +00:00
Chun-Min Chang e8c9106144 Bug 1530715 - P26: Create a Resampler module. r=padenot
Using a resample struct to operate all its related operations will make
the code clearer.

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

--HG--
extra : moz-landing-system : lando
2019-07-10 08:06:50 +00:00
Chun-Min Chang 43dfd443a9 Bug 1530715 - P25: Move aggregate_device to a struct within a mutex. r=padenot
The aggregate device of the stream may be created, reinitialized, or
destroyed on different threads, so its operations should be in the
critical sections. We do create critical sections by our custom mutex.
However, this custom mutex will be gradually replaced by the standard
Rust mutex in the following patches.

To replace the custom mutex, we create a struct wrapped by a Rust mutex
and create critical sections by this Rust mutex to do operations for
aggregate-device settings. At the end, not only aggregate-device
calls, but also other operations that needs to be locked will be
operated in the critical section created by this struct.

This is the beginning patch to replace the custom mutex in
AudioUnitStream.

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

--HG--
extra : moz-landing-system : lando
2019-07-10 08:06:52 +00:00
Chun-Min Chang 3aa1456189 Bug 1530715 - P24: Create an AggregateDevice module. r=padenot
Using an aggregate-device struct to operate all the settings for the
aggregate device is a way to make the code clearer. In addition, we can
avoid calling some aggregate-device APIs by borrowing the
AudioUnitStream as a mutable. It will help to avoid potential
borrowing-twice issues in the later mutex replacement.

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

--HG--
extra : moz-landing-system : lando
2019-07-10 08:06:54 +00:00
Chun-Min Chang 4c2db1a9e9 Bug 1530715 - P23: Avoid poisoning the mutex for device_changed_callback. r=padenot
The mutex is considered poisoned whenever a thread panics while holding
the mutex. Registering a second device changed callback without unregistering
the original callback makes the thread panics while holding the mutex
for the device_changed_callback. This mutex will be used when device
property changed callback. If the mutex is poisoned then a device
property is changed, we will get another panic when firing the callback
because of using a poisoned mutex.

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

--HG--
extra : moz-landing-system : lando
2019-07-10 08:06:14 +00:00
Chun-Min Chang c53fb628bb Bug 1530715 - P22: Replace device_changed_callback_lock by standard Rust mutex. r=padenot
The registration, unregistration, and notification for the device
property changed is done in a critical section created by locking our
own custom mutex. To replace our own custom mutex by standard Rust
mutex, the critical section should be created by locking a standard Rust
mutex. This can be done by simply merging device_changed_callback and
device_changed_callback_lock into a Rust mutex variable.

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

--HG--
extra : moz-landing-system : lando
2019-07-10 08:06:16 +00:00
Chun-Min Chang 74e3dce58a Bug 1530715 - P21: Replace set_buffer_size by set_buffer_size_sync and its friends. r=padenot
By moving out this API from the AudioUnitStream, we can avoid calling
it by borrowing the AudioUnitStream variable as a mutable. This will
help to avoid the potential borrowing-twice issues in the later mutex
replacement

In addition, the change applies an idiomatic way to wait for the system
callback event without consuming CPU time.

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

--HG--
extra : moz-landing-system : lando
2019-07-10 08:06:18 +00:00
Chun-Min Chang 1edd33e172 Bug 1530715 - P20: Replace init_input_linear_buffer by create_auto_array. r=padenot
This change provides two benefits:

1. Setting variable by the Result value directly is rustier than setting
the variable by a mutual reference with a dummy Result that only
contains an error.

2. By moving out this API from the AudioUnitStream, we can avoid calling
it by borrowing the AudioUnitStream variable as a mutable. This will
help to avoid the potential borrowing-twice issues in the later mutex
replacement.

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

--HG--
extra : moz-landing-system : lando
2019-07-10 08:06:20 +00:00
Chun-Min Chang 9e1bc8c79c Bug 1530715 - P19: Replace audio_stream_desc_init by create_stream_description. r=padenot
Setting variable by the Result value directly is rustier than setting
the variable by a mutual reference with a dummy Result that only
contains an error.

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

--HG--
extra : moz-landing-system : lando
2019-07-10 08:06:22 +00:00
Chun-Min Chang 8c75b216bd Bug 1530715 - P18: Replace audiounit_create_unit by create_audiounit and its friends. r=padenot
Setting variable by the Result value directly is rustier than setting
the variable by a mutual reference with a dummy Result that only
contains an error.

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

--HG--
extra : moz-landing-system : lando
2019-07-10 08:06:23 +00:00
Chun-Min Chang 907cf01736 Bug 1530715 - P17: Move get_volume out of AudioUnitStream. r=padenot
By moving get_volume out of AudioUnitStream, we can avoid unnecessary
borrowing from the AudioUnitStream variable. This change will make the
get_volume become symmetric to the set_volume.

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

--HG--
extra : moz-landing-system : lando
2019-07-10 08:06:25 +00:00
Chun-Min Chang bd24fd4b75 Bug 1530715 - P16: Implement an internal set_volume API. r=padenot
By narrowing down the parameters that set_volume API needs, we can avoid
the unnecessary mutual borrowing from the AudioUnitStream variable. This
will help to avoid potential borrowing-twice issues in the later mutex
replacement.

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

--HG--
extra : moz-landing-system : lando
2019-07-10 08:06:27 +00:00
Chun-Min Chang 37853f682b Bug 1530715 - P15: Replace set_device_info by create_device_info. r=padenot
Setting variable by the Result value directly is rustier than setting
the variable by a mutual reference with a dummy Result that only
contains the error.

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

--HG--
extra : moz-landing-system : lando
2019-07-10 08:06:29 +00:00
Chun-Min Chang b2fb383839 Bug 1530715 - P14: Wrap state-callback code into a function. r=padenot
The code will be clearer if we can wrap the state-callback that notify
the state changed into a function. It will hide some details about
rendering the callback to C interface.

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

--HG--
extra : moz-landing-system : lando
2019-07-10 08:06:31 +00:00
Chun-Min Chang c11a02e48f Bug 1530715 - P13: Remove unnecessary parameter in reinit. r=padenot
When the stream is re-initialized, the input unit and/or output unit
should be reset if they are currently used, no matter what scope (input
or output or in-output) the parameter requests.

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

--HG--
extra : moz-landing-system : lando
2019-07-10 08:06:33 +00:00
Chun-Min Chang 7d493b1809 Bug 1530715 - P12: Remove the unused variable in AudioUnitStream. r=padenot
Removing expected_output_callbacks_in_a_row since it is not being used.

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

--HG--
extra : moz-landing-system : lando
2019-07-10 08:05:55 +00:00
Chun-Min Chang 05f6e81727 Bug 1530715 - P11: Remove OwnedCriticalSection in cubeb context. r=padenot
The OwnedCriticalSection is a custom mutex directly translated from the
C code of the Cubeb library. Replacing the custom mutex by standard Rust
mutex make the code fit in the Rust design better and make debugging the
code easier. The variables protected by the custom mutex in the cubeb
context is moved to the Rust standard mutex in previous patches. The
custom mutex in the cubeb context is able to be removed since we no
longer rely on it.

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

--HG--
extra : moz-landing-system : lando
2019-07-10 08:05:57 +00:00
Chun-Min Chang 1fe7bb3763 Bug 1530715 - P10: Avoid poisoning the mutex for device-collection-changed. r=padenot
The mutex is considered poisoned whenever a thread panics while holding
the mutex. Registering a second device-collection-changed callback
without unregistering the original callback makes the thread panics while
holding the mutex for the device-collection-changed variables. This
mutex will be used when the cubeb context is dropped. If the mutex is
poisoned, we will get another panic when dropping the cubeb context
because of using a poisoned mutex.

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

--HG--
extra : moz-landing-system : lando
2019-07-10 08:05:59 +00:00
Chun-Min Chang 26cd170591 Bug 1530715 - P9: Move device-collection-changed variables to a struct within a mutex. r=padenot
The registration, unregistration, and notification for the device
collection changed is done in a critical section created by locking our
own custom mutex. To replace our own custom mutex by standard Rust
mutex, the critical section should be created by locking a standard Rust
mutex. This can be done by simply putting those varaibles for
device-collection-changed to a struct within a Rust mutex.

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

--HG--
extra : moz-landing-system : lando
2019-07-10 08:06:00 +00:00
Chun-Min Chang b5c9d13587 Bug 1530715 - P8: Always use global latency frames to initialize the cubeb stream. r=padenot
The global latency frames in the cubeb context is the latency frames of
the first cubeb stream created in that cubeb context. The reason is
because latency frames cannot be changed when there is an active stream
operating in parallel. To make sure the latency won't be changed, the
latency frames of the streams after the first stream will be overwritten
by the global latency frames. Since we always use the global latency
frames, instead of overwritting latency frames of the later streams, we
could, we could simply initialize all the streams with the global
latency frames.

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

--HG--
extra : moz-landing-system : lando
2019-07-10 08:06:02 +00:00
Chun-Min Chang 8fb9376269 Bug 1530715 - P7: Move active_streams to a struct within a mutex. r=padenot
The counting of the active streams in a cubeb context is calculated in a
critical section created by locking our own custom mutex. To replace our
own mutex by standard Rust mutex, the critical section calculating the
active streams should be created by locking a standard Rust mutex. This
can be done by simply putting the active_streams to a struct with a Rust
mutex.

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

--HG--
extra : moz-landing-system : lando
2019-07-10 08:06:04 +00:00
Chun-Min Chang 9099a8f1b1 Bug 1530715 - P6: Fully initialize the aggregate device before using it. r=padenot
In the current implementation, we assume the aggregate device is created
immediately after calling the system API to create it, and we also
assume the sub-devices of the aggregate device are added immediately
upon we call the system API to set the sub-devices. Unfortunately, these
assumptions are not correct. Occasionally these settings are not
executed immediately, especially when they are not called on the main
thread (e.g., we may create an aggregate device off the main thread when
switching devices). Using the listeners monitoring the devices-changed
events can make sure those settings are done.

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

--HG--
extra : moz-landing-system : lando
2019-07-10 08:06:08 +00:00
Chun-Min Chang f608e7a6f9 Bug 1530715 - P5: Remove the unused code when clamping latency frames. r=padenot
The clamp_latency function is only called when the cubeb context has one
stream only. In that case, clamp_latency will clamp the stream latency
frames in a safe range and then return the clamped value directly. The
code in clamp_latency for more than one streams doesn't be executed
since clamp_latency isn't called when there are more than one streams
within cubeb context. It's easier to read the code if the unused code is
removed.

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

--HG--
extra : moz-landing-system : lando
2019-07-10 08:06:06 +00:00
Chun-Min Chang 0561641171 Bug 1530715 - P3: Build cubeb-coreaudio-rs in libcubeb. r=kinetik
Differential Revision: https://phabricator.services.mozilla.com/D23432

--HG--
extra : moz-landing-system : lando
2019-07-10 08:06:12 +00:00
Chun-Min Chang f6d72027f3 Bug 1530715 - P2: Import oxidized cubeb_audiounit.cpp. r=padenot
Differential Revision: https://phabricator.services.mozilla.com/D23431

--HG--
extra : moz-landing-system : lando
2019-07-17 04:48:25 +00:00
Chun-Min Chang 487c109761 Bug 1530715 - P1: Create an empty cubeb-coreaudio-rs crate in libcubeb. r=kinetik
To import cubeb-coreaudio-rs crate later, creating a dummy folder in
advance in libcubeb. It should be the mirrow of cubeb-coreaudio-rs crate
on github. The information of cubeb-coreaudio-rs is in README_MOZILLA.

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

--HG--
extra : moz-landing-system : lando
2019-07-10 08:05:53 +00:00
Andreea Pavel 7853764e9d Backed out 42 changesets (bug 1530715) for SM build bustages on a CLOSED TREE
Backed out changeset 88ba94506737 (bug 1530715)
Backed out changeset 586d1b42a31b (bug 1530715)
Backed out changeset 7e7f5b9f2bf6 (bug 1530715)
Backed out changeset 7506b654e92f (bug 1530715)
Backed out changeset 518f85cf84a9 (bug 1530715)
Backed out changeset aca1e6806fc9 (bug 1530715)
Backed out changeset 70e97244daa8 (bug 1530715)
Backed out changeset 7c1e970c84a0 (bug 1530715)
Backed out changeset 9e10aa50ca0e (bug 1530715)
Backed out changeset 2a8d1c6faa33 (bug 1530715)
Backed out changeset bdc3110a40e9 (bug 1530715)
Backed out changeset bd809d3c5fd8 (bug 1530715)
Backed out changeset fe28daa92fc4 (bug 1530715)
Backed out changeset a964627f40c6 (bug 1530715)
Backed out changeset 3f3677f2980f (bug 1530715)
Backed out changeset e527edaabd65 (bug 1530715)
Backed out changeset 421e51bf612b (bug 1530715)
Backed out changeset 8f10a1790557 (bug 1530715)
Backed out changeset 0c5a0ed7203a (bug 1530715)
Backed out changeset 7fe0263794d3 (bug 1530715)
Backed out changeset ecd20933073e (bug 1530715)
Backed out changeset de4e23af5054 (bug 1530715)
Backed out changeset dcd65347e392 (bug 1530715)
Backed out changeset cd0e483df6be (bug 1530715)
Backed out changeset 9acd782f9450 (bug 1530715)
Backed out changeset b4809ada60dd (bug 1530715)
Backed out changeset 3742faad3806 (bug 1530715)
Backed out changeset bf15184c3c63 (bug 1530715)
Backed out changeset b6139a17a5fd (bug 1530715)
Backed out changeset dda297f7755a (bug 1530715)
Backed out changeset e98c1c0d561d (bug 1530715)
Backed out changeset 72c18b15e767 (bug 1530715)
Backed out changeset a8d7741d9134 (bug 1530715)
Backed out changeset 7562f780b687 (bug 1530715)
Backed out changeset 0cec8139038c (bug 1530715)
Backed out changeset 5ebf9b275f10 (bug 1530715)
Backed out changeset 7042c5c9c764 (bug 1530715)
Backed out changeset 4cd64e4037fa (bug 1530715)
Backed out changeset 48719d342b6f (bug 1530715)
Backed out changeset 0500179d3bbf (bug 1530715)
Backed out changeset 4bed62b601c6 (bug 1530715)
Backed out changeset 30f0b9853b0f (bug 1530715)
2019-07-10 10:56:00 +03:00
Chun-Min Chang 97c91ba03d Bug 1530715 - P42: Remove unnecessary mutex. r=padenot
There are three potential data-race operations that may run at the same
time:
1. Data callback and stream reinitialization
2. Data callback and stream destroying
3. Stream reinitialization and stream destroying

The case 1 and 2 won't happen as long as the AudioOutputUnitStop is
called at the beginning of stream reinitialization and stream
destorying. The AudioOutputUnitStop requires to lock a mutex inside
CoreAudio framework that is also used by the data callback. Thus, if
there is a running callback, which holds the mutex inside CoreAudio
framework, when AudioOutputUnitStop is called, then the calling will
block the current thread until the data callback ends since it is
waiting for the mutex. By calling AudioOutputUnitStop at the beginning
of the stream reinitialization and stream destroying, the data race of
case 1 and 2 can be avoided.

On the other hand, the case 3 won't happen since the stream
initialization and destroying is run on the same task queue. The two
tasks on the same serial task queue are impossible to be run at the same
time. The mutex in AudioUnitStream is unnecessary because it's used for
the case 3.

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

--HG--
extra : moz-landing-system : lando
2019-07-09 19:57:07 +00:00
Chun-Min Chang a97f2bb079 Bug 1530715 - P41: Remove OwnedCriticalSection in cubeb stream. r=padenot
The custom mutex, OwnedCriticalSection, in the current code comes with
the C-to-Rust translation work of cubeb_audiouniut.cpp. Its design is in
C style and not fitted well in the Rust. Rust has a better mutex design.

In the previous patches, all the data that may be touched on the
different threads are moved into a struct wrapped by a Rust mutex. Those
data will be touched in the critical sections created by the Rust mutex.
Therefore, this custom mutex becomes redundant. It's time to say goodbye
to it.

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

--HG--
extra : moz-landing-system : lando
2019-07-09 19:57:07 +00:00
Chun-Min Chang 381a586aed Bug 1530715 - P40: Move stream setup and close into a struct within a mutex. r=padenot
The core stream data that will be touched on the different threads when
the stream is created, reinitialized, destoryed should be used in the
critical section. Those core data are initialized in stream-setup and
destroyed in stream-close. The stream-setup and stream-close is run in
the critical section so they won't be executed at the same time.
Currently, the critical section is created by our custom mutex. However,
this custom mutex will be removed in the later mutex replacement.

Instead of running these two operations in the critical sections created
by the custom mutex, they should be moved into a struct wrapped by a
standard Rust mutex. As a result, at the end when the custom mutex is
removed, these two operations are still in the critical sections that
are created by the Rust mutex.

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

--HG--
extra : moz-landing-system : lando
2019-07-09 19:57:07 +00:00
Chun-Min Chang 12e982f4e9 Bug 1530715 - P39: Move listeners (un)registrations into a strcut within a mutex. r=padenot
The listeners will be registered and unregistered on the different threads,
so the listeners should be used in the critical sections. We do create
critical sections by our own mutex. However, this custom mutex will be
gradually replaced by the standard Rust mutex in the following patches.

To replace the custom mutex, we put the listeners to the struct wrapped
by a Rust mutex and register or unregister the listeners in the critical
section created by this struct. At the end when the custom mutex is
removed, those operations are still in the critical sections.

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

--HG--
extra : moz-landing-system : lando
2019-07-09 19:57:07 +00:00
Chun-Min Chang 59a0d37fb0 Bug 1530715 - P38: Merge configure_input into setup. r=padenot
Calling configure_input requires borrowing AudioUnitStream as a
mutable. Merging configure_input into setup will help to avoid a
potential borrowing-twice issue in the later mutex replacement. There
will be a critical section created by a Rust mutex in the setup, which
will borrow the AudioUnitStream as an immutable.

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

--HG--
extra : moz-landing-system : lando
2019-07-09 19:57:06 +00:00
Chun-Min Chang ad3d63d477 Bug 1530715 - P37: Merge configure_output into setup. r=padenot
Calling configure_output requires borrowing AudioUnitStream as a
mutable. Merging configure_output into setup will help to avoid a
potential borrowing-twice issue in the later mutex replacement. There
will be a critical section created by a Rust mutex in the setup, which
will borrow the AudioUnitStream as an immutable.

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

--HG--
extra : moz-landing-system : lando
2019-07-09 19:57:06 +00:00
Chun-Min Chang 03fce17902 Bug 1530715 - P36: Move out minimum_resampling_input_frames of output callback. r=padenot
Avoid calling minimum_resampling_input_frames by a borrowing from
AudioUnitStream

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

--HG--
extra : moz-landing-system : lando
2019-07-09 19:57:06 +00:00
Chun-Min Chang fcb7b1184a Bug 1530715 - P35: Store layout in the stream instead of context. r=padenot
We store global layout info and channels info in the cubeb context.
However, the streams might output to different devices. We should store
the layout info of the output device in the stream directly instead of
in the context. On the other hand, the `channels` value is a duplicate
of `output_desc.mChannelsPerFrame` or `mixer.out_channels` so we don't
need to store this value.

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

--HG--
extra : moz-landing-system : lando
2019-07-09 19:57:06 +00:00
Chun-Min Chang e20280cfce Bug 1530715 - P34: Merge layout_init into configure_output. r=padenot
1. Avoid calling layout_init by wrong AudioUnit value

2. Avoid calling layout getting/setting APIs by borrowing the
AudioUnitStream as a mutable. It will help to avoid the potential
borrowing-twice issues in the later mutex replacement.

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

--HG--
extra : moz-landing-system : lando
2019-07-09 19:57:06 +00:00
Chun-Min Chang 7392d55799 Bug 1530715 - P33: Register and unregister the device-changed callbacks when stream setup and close. r=padenot
1. The code readability is slightly better if we can register and
unregister the callbacks in the same places. The device-chaned callbacks
are registered when stream setup and unregistered when stream close.

2. In the later mutex replacement, the core stream variables that may be
touched by different threads when reinitializing or destroying the
stream, including {in, out}_unit, will be wrapped in a Rust mutex.
Moving these callbacks (un)registration into the same places makes it
easier to find where the critical sections are.

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

--HG--
extra : moz-landing-system : lando
2019-07-09 19:57:05 +00:00
Chun-Min Chang 142f9296b2 Bug 1530715 - P32: Close the stream if failing in stream reinitialization. r=padenot
Before reporting the error by the state callback, closing the stream to
make sure the data callback and device-changed callback are
unregistered.

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

--HG--
extra : moz-landing-system : lando
2019-07-09 19:57:05 +00:00
Chun-Min Chang 661d951af8 Bug 1530715 - P31: Merge render_input into audiounit_input_callback. r=padenot
1. If AudioUnitRender return kAudioUnitErr_CannotDoInCurrentContext
within a input-only stream, the input-only stream will keep feed silence
data into the buffer instead of reporting the error. With this change,
the error will be rendered as the returned value of the data callback to
the underlying CoreAudio framework.

2. By merging the render_input into audiounit_input_callback and adjust
the timing to call reinit_async, now the reinit_async is called at the
line that is out of the main logic for feeding buffer data. In the scope
of the main logic, there will be a critical section created by locking a
Rust mutex within AudioUnitStream in the later mutex replacement.
Without moving the reinit_async, which borrows AudioUnitStream as a
mutable, out of the critical section, there will be a borrowing-twice
issue.

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

--HG--
extra : moz-landing-system : lando
2019-07-09 19:57:05 +00:00
Chun-Min Chang 7c005b7f90 Bug 1530715 - P30: Some clean-up in audiounit_output_callback. r=padenot
- Remove unnecessary mutabilities
- Remove duplicate API calls

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

--HG--
extra : moz-landing-system : lando
2019-07-09 19:57:05 +00:00
Chun-Min Chang c47370ecc1 Bug 1530715 - P29: Move mixer to a struct within a mutex. r=padenot
The mixer of the stream will be created, reinitialized, used or
destroyed on different threads, so its operations should be in the
critical sections. We do create critical sections by our custom mutex.
However, this custom mutex will be gradually replaced by the standard
Rust mutex in the following patches.

To replace the custom mutex, we put the mixer to the struct wrapped by a
Rust mutex and do all the mixer operations in the critical section
created by this struct. At the end when the custom mutex is removed,
those operations are still in critical sections.

Calling notify_state_changed needs to borrow AudioUnitStream as a
mutuable. To avoid the borrowing-twice issue, the notify_state_changed
calling is moved out the scope of the critical section created in the
output data callback.

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

--HG--
extra : moz-landing-system : lando
2019-07-09 19:57:04 +00:00
Chun-Min Chang c7c35b3626 Bug 1530715 - P28: Create a Mixer module. r=padenot
Using an Mixer struct to operate all the mixing APIs is a way to make
the code clearer. In addition, we can avoid calling mix function by
borrowing the AudioUnitStream as a mutable. It will help to avoid
potential borrowing-twice issues in the later mutex replacement.

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

--HG--
extra : moz-landing-system : lando
2019-07-09 19:57:04 +00:00
Chun-Min Chang aa39343ea4 Bug 1530715 - P27: Move resampler to a struct within a mutex. r=padenot
The resampler of the stream will be created, reinitialized, used or
destroyed on different threads, so its operations should be in the
critical sections. We do create critical sections by our custom mutex.
However, this custom mutex will be gradually replaced by the standard
mutex in the following patches. To replace the custom mutex, we put the
resampler to the struct wrapped by a Rust mutex and do all the resampler
operations in the critical section created by this struct. At the end
when the custom mutex is removed, those operations are still in critical
sections.

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

--HG--
extra : moz-landing-system : lando
2019-07-09 19:57:04 +00:00
Chun-Min Chang 96aee8cca3 Bug 1530715 - P26: Create a Resampler module. r=padenot
Using a resample struct to operate all its related operations will make
the code clearer.

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

--HG--
extra : moz-landing-system : lando
2019-07-09 19:57:04 +00:00
Chun-Min Chang 3481c83d49 Bug 1530715 - P25: Move aggregate_device to a struct within a mutex. r=padenot
The aggregate device of the stream may be created, reinitialized, or
destroyed on different threads, so its operations should be in the
critical sections. We do create critical sections by our custom mutex.
However, this custom mutex will be gradually replaced by the standard
Rust mutex in the following patches.

To replace the custom mutex, we create a struct wrapped by a Rust mutex
and create critical sections by this Rust mutex to do operations for
aggregate-device settings. At the end, not only aggregate-device
calls, but also other operations that needs to be locked will be
operated in the critical section created by this struct.

This is the beginning patch to replace the custom mutex in
AudioUnitStream.

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

--HG--
extra : moz-landing-system : lando
2019-07-09 19:57:03 +00:00
Chun-Min Chang 7eed9af4a2 Bug 1530715 - P24: Create an AggregateDevice module. r=padenot
Using an aggregate-device struct to operate all the settings for the
aggregate device is a way to make the code clearer. In addition, we can
avoid calling some aggregate-device APIs by borrowing the
AudioUnitStream as a mutable. It will help to avoid potential
borrowing-twice issues in the later mutex replacement.

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

--HG--
extra : moz-landing-system : lando
2019-07-09 19:57:03 +00:00
Chun-Min Chang 9cbaedd2cd Bug 1530715 - P23: Avoid poisoning the mutex for device_changed_callback. r=padenot
The mutex is considered poisoned whenever a thread panics while holding
the mutex. Registering a second device changed callback without unregistering
the original callback makes the thread panics while holding the mutex
for the device_changed_callback. This mutex will be used when device
property changed callback. If the mutex is poisoned then a device
property is changed, we will get another panic when firing the callback
because of using a poisoned mutex.

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

--HG--
extra : moz-landing-system : lando
2019-07-09 19:57:03 +00:00
Chun-Min Chang b7048aa82e Bug 1530715 - P22: Replace device_changed_callback_lock by standard Rust mutex. r=padenot
The registration, unregistration, and notification for the device
property changed is done in a critical section created by locking our
own custom mutex. To replace our own custom mutex by standard Rust
mutex, the critical section should be created by locking a standard Rust
mutex. This can be done by simply merging device_changed_callback and
device_changed_callback_lock into a Rust mutex variable.

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

--HG--
extra : moz-landing-system : lando
2019-07-09 19:57:03 +00:00
Chun-Min Chang b7dc2b7dae Bug 1530715 - P21: Replace set_buffer_size by set_buffer_size_sync and its friends. r=padenot
By moving out this API from the AudioUnitStream, we can avoid calling
it by borrowing the AudioUnitStream variable as a mutable. This will
help to avoid the potential borrowing-twice issues in the later mutex
replacement

In addition, the change applies an idiomatic way to wait for the system
callback event without consuming CPU time.

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

--HG--
extra : moz-landing-system : lando
2019-07-09 19:57:02 +00:00
Chun-Min Chang 9b1165df4e Bug 1530715 - P20: Replace init_input_linear_buffer by create_auto_array. r=padenot
This change provides two benefits:

1. Setting variable by the Result value directly is rustier than setting
the variable by a mutual reference with a dummy Result that only
contains an error.

2. By moving out this API from the AudioUnitStream, we can avoid calling
it by borrowing the AudioUnitStream variable as a mutable. This will
help to avoid the potential borrowing-twice issues in the later mutex
replacement.

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

--HG--
extra : moz-landing-system : lando
2019-07-09 19:57:02 +00:00
Chun-Min Chang 144d1b88b0 Bug 1530715 - P19: Replace audio_stream_desc_init by create_stream_description. r=padenot
Setting variable by the Result value directly is rustier than setting
the variable by a mutual reference with a dummy Result that only
contains an error.

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

--HG--
extra : moz-landing-system : lando
2019-07-09 19:57:02 +00:00
Chun-Min Chang 0bcfbedb5a Bug 1530715 - P18: Replace audiounit_create_unit by create_audiounit and its friends. r=padenot
Setting variable by the Result value directly is rustier than setting
the variable by a mutual reference with a dummy Result that only
contains an error.

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

--HG--
extra : moz-landing-system : lando
2019-07-09 19:57:02 +00:00
Chun-Min Chang ef2cf3df24 Bug 1530715 - P17: Move get_volume out of AudioUnitStream. r=padenot
By moving get_volume out of AudioUnitStream, we can avoid unnecessary
borrowing from the AudioUnitStream variable. This change will make the
get_volume become symmetric to the set_volume.

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

--HG--
extra : moz-landing-system : lando
2019-07-09 19:57:01 +00:00
Chun-Min Chang 64146dd614 Bug 1530715 - P16: Implement an internal set_volume API. r=padenot
By narrowing down the parameters that set_volume API needs, we can avoid
the unnecessary mutual borrowing from the AudioUnitStream variable. This
will help to avoid potential borrowing-twice issues in the later mutex
replacement.

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

--HG--
extra : moz-landing-system : lando
2019-07-09 19:57:01 +00:00
Chun-Min Chang 2f4e0d4bf9 Bug 1530715 - P15: Replace set_device_info by create_device_info. r=padenot
Setting variable by the Result value directly is rustier than setting
the variable by a mutual reference with a dummy Result that only
contains the error.

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

--HG--
extra : moz-landing-system : lando
2019-07-09 19:57:01 +00:00
Chun-Min Chang 9ec338122e Bug 1530715 - P14: Wrap state-callback code into a function. r=padenot
The code will be clearer if we can wrap the state-callback that notify
the state changed into a function. It will hide some details about
rendering the callback to C interface.

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

--HG--
extra : moz-landing-system : lando
2019-07-09 19:57:01 +00:00
Chun-Min Chang 13a12b00be Bug 1530715 - P13: Remove unnecessary parameter in reinit. r=padenot
When the stream is re-initialized, the input unit and/or output unit
should be reset if they are currently used, no matter what scope (input
or output or in-output) the parameter requests.

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

--HG--
extra : moz-landing-system : lando
2019-07-09 19:57:00 +00:00
Chun-Min Chang 81de625fb9 Bug 1530715 - P12: Remove the unused variable in AudioUnitStream. r=padenot
Removing expected_output_callbacks_in_a_row since it is not being used.

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

--HG--
extra : moz-landing-system : lando
2019-07-10 03:56:44 +00:00
Chun-Min Chang 82addf1eae Bug 1530715 - P11: Remove OwnedCriticalSection in cubeb context. r=padenot
The OwnedCriticalSection is a custom mutex directly translated from the
C code of the Cubeb library. Replacing the custom mutex by standard Rust
mutex make the code fit in the Rust design better and make debugging the
code easier. The variables protected by the custom mutex in the cubeb
context is moved to the Rust standard mutex in previous patches. The
custom mutex in the cubeb context is able to be removed since we no
longer rely on it.

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

--HG--
extra : moz-landing-system : lando
2019-07-10 03:56:44 +00:00
Chun-Min Chang c77792bb27 Bug 1530715 - P10: Avoid poisoning the mutex for device-collection-changed. r=padenot
The mutex is considered poisoned whenever a thread panics while holding
the mutex. Registering a second device-collection-changed callback
without unregistering the original callback makes the thread panics while
holding the mutex for the device-collection-changed variables. This
mutex will be used when the cubeb context is dropped. If the mutex is
poisoned, we will get another panic when dropping the cubeb context
because of using a poisoned mutex.

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

--HG--
extra : moz-landing-system : lando
2019-07-09 19:57:00 +00:00
Chun-Min Chang 77ce888b12 Bug 1530715 - P9: Move device-collection-changed variables to a struct within a mutex. r=padenot
The registration, unregistration, and notification for the device
collection changed is done in a critical section created by locking our
own custom mutex. To replace our own custom mutex by standard Rust
mutex, the critical section should be created by locking a standard Rust
mutex. This can be done by simply putting those varaibles for
device-collection-changed to a struct within a Rust mutex.

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

--HG--
extra : moz-landing-system : lando
2019-07-09 19:56:59 +00:00
Chun-Min Chang d454c7e9f3 Bug 1530715 - P8: Always use global latency frames to initialize the cubeb stream. r=padenot
The global latency frames in the cubeb context is the latency frames of
the first cubeb stream created in that cubeb context. The reason is
because latency frames cannot be changed when there is an active stream
operating in parallel. To make sure the latency won't be changed, the
latency frames of the streams after the first stream will be overwritten
by the global latency frames. Since we always use the global latency
frames, instead of overwritting latency frames of the later streams, we
could, we could simply initialize all the streams with the global
latency frames.

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

--HG--
extra : moz-landing-system : lando
2019-07-09 19:56:59 +00:00
Chun-Min Chang 2a05858542 Bug 1530715 - P7: Move active_streams to a struct within a mutex. r=padenot
The counting of the active streams in a cubeb context is calculated in a
critical section created by locking our own custom mutex. To replace our
own mutex by standard Rust mutex, the critical section calculating the
active streams should be created by locking a standard Rust mutex. This
can be done by simply putting the active_streams to a struct with a Rust
mutex.

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

--HG--
extra : moz-landing-system : lando
2019-07-09 19:56:59 +00:00
Chun-Min Chang dca41b81af Bug 1530715 - P6: Fully initialize the aggregate device before using it. r=padenot
In the current implementation, we assume the aggregate device is created
immediately after calling the system API to create it, and we also
assume the sub-devices of the aggregate device are added immediately
upon we call the system API to set the sub-devices. Unfortunately, these
assumptions are not correct. Occasionally these settings are not
executed immediately, especially when they are not called on the main
thread (e.g., we may create an aggregate device off the main thread when
switching devices). Using the listeners monitoring the devices-changed
events can make sure those settings are done.

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

--HG--
extra : moz-landing-system : lando
2019-07-10 03:53:57 +00:00
Chun-Min Chang d6be3795fa Bug 1530715 - P5: Remove the unused code when clamping latency frames. r=padenot
The clamp_latency function is only called when the cubeb context has one
stream only. In that case, clamp_latency will clamp the stream latency
frames in a safe range and then return the clamped value directly. The
code in clamp_latency for more than one streams doesn't be executed
since clamp_latency isn't called when there are more than one streams
within cubeb context. It's easier to read the code if the unused code is
removed.

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

--HG--
extra : moz-landing-system : lando
2019-07-10 03:55:38 +00:00
Chun-Min Chang 94a049f7b4 Bug 1530715 - P3: Build cubeb-coreaudio-rs in libcubeb. r=kinetik
Differential Revision: https://phabricator.services.mozilla.com/D23432

--HG--
extra : moz-landing-system : lando
2019-07-09 19:56:58 +00:00
Chun-Min Chang e141b351c3 Bug 1530715 - P2: Import oxidized cubeb_audiounit.cpp. r=padenot
Differential Revision: https://phabricator.services.mozilla.com/D23431

--HG--
extra : moz-landing-system : lando
2019-07-09 19:56:58 +00:00
Chun-Min Chang 682720b94d Bug 1530715 - P1: Create an empty cubeb-coreaudio-rs crate in libcubeb. r=kinetik
To import cubeb-coreaudio-rs crate later, creating a dummy folder in
advance in libcubeb. It should be the mirrow of cubeb-coreaudio-rs crate
on github. The information of cubeb-coreaudio-rs is in README_MOZILLA.

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

--HG--
extra : moz-landing-system : lando
2019-07-09 19:56:57 +00:00
Chun-Min Chang c145f8316d Bug 1561945 - P2: Update cubeb from upstream to 98a1c8e. r=achronop
Pick commits:
98a1c8e - Enable Windows build on Travis. (#514)
02bcf9c -  cubeb_sun: Fixes to support high latency playback, and illumos build fix. (#513)
9f39687 - sunaudio (NetBSD/illumos) backend (#510)
03eb237 - Fix tests warnings (#512)
acbed7d - Add audiounit-rust backend (#511)
421010c - Update Travis builds: clang 3.6 -> 3.8, g++ 4.8 -> 5.x, XCode 6.4 -> 9.4. (#509)
3643750 - wasapi: return unique_ptr normally, without std::move (#443)
9ea8137 - Switch Travis builds to Ubuntu Xenial (16.04) to pick up a newer MinGW. (#508)

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

--HG--
extra : moz-landing-system : lando
2019-06-30 23:36:38 +00:00
Chun-Min Chang dc65a77a5b Bug 1561945 - P1: Copy sunaudio backend to cubeb. r=achronop
Differential Revision: https://phabricator.services.mozilla.com/D36215

--HG--
extra : moz-landing-system : lando
2019-06-27 16:59:00 +00:00
Matthew Gregan 49e90dfa54 Bug 1552342 - Update libcubeb to b9e2c50. r=padenot 2019-05-17 09:27:50 +12:00
Alex Chronopoulos ec3b159539 Bug 1546872 - Update cubeb from upstream to 64aa80f. r=padenot
Pick commit:
64aa80f - wasapi: notify when a device is disabled. BMO 1546872
2019-04-25 20:14:32 +03:00
Alex Chronopoulos f0d62457c5 Bug 1545279 - Update cubeb from upstream to 3570749. r=padenot
Pick commits:
3570749 - wasapi: tie monitor lifetime with notification client lifetime. BMO 1545279 (#505)
162625a - test: add option to get the posotion of a stream (#504)

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

--HG--
extra : moz-landing-system : lando
2019-04-25 09:22:35 +00:00
Paul Adenot c9069544bd Bug 1531833 - Update libcubeb to 241e3c (and rebase an in-tree patch). r=kinetik
This has been reviewed by snorp, kinetik, achronop, in bug 1531833, and the
rollup has been rubberstamped by achronop in
https://github.com/kinetiknz/cubeb/pull/501.

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

--HG--
extra : moz-landing-system : lando
2019-04-16 15:44:47 +00:00
Oana Pop Rus 212a653d81 Backed out 6 changesets (bug 1531833) for geckoview failures on PermissionDelegateTest.media CLOSED TREE
Backed out changeset f90ad6bb8ebd (bug 1531833)
Backed out changeset 465570a54b46 (bug 1531833)
Backed out changeset e725253ee976 (bug 1531833)
Backed out changeset 74ad8e7a722b (bug 1531833)
Backed out changeset b1268e5f7023 (bug 1531833)
Backed out changeset e3ec78b2db1f (bug 1531833)

--HG--
extra : amend_source : 81aa19c352e72cac2369e014d19ec5a896538b21
2019-04-11 21:16:55 +03:00
Paul Adenot b774a54cc4 Bug 1531833 - Update libcubeb to c0a717 (and rebase an in-tree patch). r=kinetik
This has been reviewed by snorp, kinetik, achronop, in bug 1531833, and the
rollup has been rubberstamped by achronop in
https://github.com/kinetiknz/cubeb/pull/501.

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

--HG--
extra : moz-landing-system : lando
2019-04-11 09:19:39 +00:00
Geoff Brown 8d88b9a596 Bug 1318091 - Disable failing android gtests; r=bc
Disable gtests observed to fail on Android. Some of these are simple build
failures and failures due to file permissions or paths, while other failures
are more obscure.
Once Android gtests are running on mozilla-central, I will file follow-up
bugs inviting teams to investigate the failures and re-enable Android gtests
that are important to them.

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

--HG--
extra : moz-landing-system : lando
2019-04-08 20:58:21 +00:00
Alex Chronopoulos 925ad97bb4 Bug 1541101 - Update cubeb from upstream to 66d9c48. r=kinetik 2019-04-03 12:50:40 +03:00
David Major 56ea434680 Bug 1528074 - Translate MSVC warning flags to clang spelling where supported r=froydnj
clang-cl only acts on five MSVC warning flags: 7219c7e9af/clang/include/clang/Driver/CLCompatOptions.td (L188-L197)

With MSVC now unsupported, most -wdNNNN have no effect and can be removed.

This patch converts the five supported warnings to their clang spellings, as preparation for a subsequent patch that will remove all remaining `[/-]w[edo][0-9]{4}`.

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

--HG--
extra : moz-landing-system : lando
2019-03-11 01:39:42 +00:00
Mike Hommey ef3ad686ee Bug 1512504 - Remove support for MSVC. r=froydnj
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
2019-02-14 21:45:27 +00:00
Alex Chronopoulos f26917afec Bug 1527659 - Update cubeb from upstream to 3afc335. r=kinetik
Differential Revision: https://phabricator.services.mozilla.com/D19676

--HG--
extra : moz-landing-system : lando
2019-02-13 21:50:03 +00:00
Alex Chronopoulos 2f27522cda Bug 1518106 - Update cubeb-pulse-rs from upstream to 17c1629. r=kinetik
Differential Revision: https://phabricator.services.mozilla.com/D17400

--HG--
extra : moz-landing-system : lando
2019-01-23 19:37:18 +00:00
Alex Chronopoulos 46289fa2a3 Bug 1518106 - Update cubeb from upstream to feec7e2. r=kinetik
Differential Revision: https://phabricator.services.mozilla.com/D17399

--HG--
extra : moz-landing-system : lando
2019-01-23 19:36:20 +00:00
Alex Chronopoulos 836d8e0a78 Bug 1521791 - Update cubeb from upstream to 67d37c1. r=padenot
Differential Revision: https://phabricator.services.mozilla.com/D17248

--HG--
extra : moz-landing-system : lando
2019-01-22 16:09:51 +00:00
Jean-Yves Avenard 836fc05ec7 Bug 1509875 - Update cubeb from upstream to e5c3a1d8a68c. r=padenot
Differential Revision: https://phabricator.services.mozilla.com/D13755

--HG--
extra : moz-landing-system : lando
2018-12-04 21:40:49 +00:00
byron jones 9bed7ee50d Bug 1504932 - Replace libcubeb's README_Mozilla file with moz.yaml r=kinetik
Differential Revision: https://phabricator.services.mozilla.com/D10995

--HG--
extra : moz-landing-system : lando
2018-11-06 17:11:40 +00:00
Alex Chronopoulos b9087831d6 Bug 1503240 - Print the picked commits in update script. r=kinetik
Differential Revision: https://phabricator.services.mozilla.com/D10216

--HG--
extra : moz-landing-system : lando
2018-10-31 09:58:01 +00:00
Alex Chronopoulos ae7ed1047a Bug 1502165 - Update cubeb from upstream to 9a7a551. r=kinetik 2018-10-30 12:37:06 +01:00
Alex Chronopoulos c3e6a81fd4 Bug 1501605 - Update cubeb from upstream to 04d58b6. r=kinetik 2018-10-24 12:37:51 +02:00
Alex Chronopoulos 36e3215092 Bug 1500377 - Update cubeb-pulse-rs to upstream commit 100b858. r=kinetik
Differential Revision: https://phabricator.services.mozilla.com/D9242

--HG--
extra : moz-landing-system : lando
2018-10-19 22:00:38 +00:00
Alex Chronopoulos bd29f8d97c Bug 1500377 - Update cubeb to upstream commit a68892d. r=kinetik
Differential Revision: https://phabricator.services.mozilla.com/D9241

--HG--
extra : moz-landing-system : lando
2018-10-19 22:00:20 +00:00
Alex Chronopoulos d5435d7c3a Bug 1498519 - Update cubeb from upstream to 4559815. r=padenot
Differential Revision: https://phabricator.services.mozilla.com/D8527
2018-10-12 13:31:18 +03:00
Jean-Yves Avenard 25a4bdf7f8 Bug 1489052 - Resync cubeb to b832dae6e48d3a95d1e6d977d0b7c53a873fd246. r=padenot
Differential Revision: https://phabricator.services.mozilla.com/D6032

--HG--
extra : moz-landing-system : lando
2018-09-18 11:38:20 +00:00
Matthew Gregan ab37fcf704 Bug 1471922 - Update cubeb-pulse-rs to 79886477. r=kamidphish
--HG--
extra : rebase_source : 5ecf7036ff47adb36f55d8578e484154a81f7e95
2018-08-26 20:34:41 +12:00
Paul Adenot 7b70359220 Bug 1476278 - Update libcubeb to revision 6c47043. r=jya
MozReview-Commit-ID: K03bJy6rSJ1

--HG--
extra : rebase_source : 5c6a927f1388d43071330cc139e22fee72ad46d2
2018-07-17 15:25:59 +02:00
Jean-Yves Avenard b0275bc977 Bug 1475642 - Fix playback with some 3rd party audio cards. r=kinetik
Additional fix to bug 1469152

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

--HG--
extra : moz-landing-system : lando
2018-07-14 07:26:17 +00:00
Jean-Yves Avenard 5041ae2d32 Bug 1469152: Fix playback on older macOS systems and some 3rd party audio cards. r=kinetik
We were using an audio API not available prior 10.12. Also add a workaround for 3rd party audio cards with unusually high channels count.

This cherry-pick cubeb commits 59f5cb4ba01f21c4ad87e9404d1e470408e18505 and dbd61924736fbe1a1caf1cbd544f7d197f1836f7

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

--HG--
extra : moz-landing-system : lando
2018-07-10 08:45:49 +00:00
Matthew Gregan 33e0262678 Bug 1472001 - Fix cubeb-pulse-rs build with current Rust nightly. r=kamidphish
--HG--
extra : rebase_source : 005e64eb5c73c4ad3bfd1f3553dfb511304648dd
2018-06-29 14:00:12 +12:00
Alex Chronopoulos b2ea3d0293 Bug 1471164 - Update cubeb from upstream to 2968cba. r=padenot
MozReview-Commit-ID: Lwalw9Hxf70

--HG--
extra : rebase_source : 183ac07e38e329e84f7a567d0e287206c0215524
2018-06-26 12:16:49 +02:00
Alex Chronopoulos 8d06ff94c2 Bug 1467882 - Update cubeb from upstream to 0677b30. r=kinetik 2018-06-14 11:05:05 -07:00
Alex Chronopoulos ebd54ce4cd Bug 1466066 - Update cubeb from upstream to abf6ae2. r=kinetik 2018-06-01 12:40:16 +03:00
Alex Chronopoulos e123e7c31b Bug 1458199 - Update cubeb from upstream to 44341a1. r=kinetik 2018-05-01 13:04:43 +02:00
Matthew Gregan 81d70e03c7 Bug 1427011 - Disable default device switching in libcubeb's WASAPI backend. r=padenot 2018-04-30 19:59:32 +12:00
Dan Glastonbury cc1e0dcb1b Bug 1445067 - P2: Update cubeb-pulse-rs to commit f90aecf. r=kinetik
MozReview-Commit-ID: if0u1aDn2f

--HG--
extra : rebase_source : 4a5ded7d9e75024fab13df5705c5a45f574067ce
2018-04-18 13:46:16 +10:00
Matthew Gregan a310920353 Bug 1449555 - Update libcubeb to 7f4f3b6e. r=padenot 2018-04-13 23:37:05 +12:00
Jan Beich 60f9bc442d Bug 1452509 - Require Jack package for --enable-jack build. r=froydnj
MozReview-Commit-ID: HT3ZCrEAN8Y

--HG--
extra : rebase_source : 0fc577c097fcc390c79514019099680b3129c748
2018-03-18 23:42:22 +00:00
Dan Glastonbury b32f1681cb Bug 1449342 - Update cubeb-pulse-rs to commit 55ce985. r=kinetik
Pull in fix for cubeb channel layout to PulseAudio channel layout.

MozReview-Commit-ID: L9v3cYM5PAY

--HG--
extra : rebase_source : bc4358efcd6ca6276c242ad3beec7f71288f36d7
2018-04-03 11:09:17 +10:00
Matthew Gregan f3e9b08714 Bug 776137 - Apply latency correction to audio stream position on macOS. r=padenot
--HG--
extra : rebase_source : ea7d68e32bdc1d3712b64a42f6fdaa75f0933988
2018-03-28 11:44:15 +13:00
Jean-Yves Avenard fa6a33a217 Bug 1448883 - Resync with cubeb 7401fc25a9d. r=padenot
MozReview-Commit-ID: 1Lg0fpsSa10

--HG--
extra : rebase_source : 46d1fac5453a7425705b2c4c97940abaf11fe2d4
2018-03-26 18:07:10 +02:00
Paul Adenot 7eac0326f6 Bug 1448627 - Update cubeb to 7712aaab. r=jya
MozReview-Commit-ID: HbYayQvtQQc

--HG--
extra : rebase_source : b214c693b7f1c7914d39dfd363d85db7eebb0e6c
2018-03-25 11:33:26 +02:00
Dan Glastonbury 0a80a93867 Bug 1432779 - Update cubeb-pulse-rs to commit 247b01d. r=jya
MozReview-Commit-ID: ACsPdk19RoA
2018-03-24 10:57:57 +01:00
Jean-Yves Avenard deed151733 Bug 1432779 - Update libcubeb to revision 77cb1a9. r=padenot
MozReview-Commit-ID: DAfCxUBb41U
2018-03-24 10:57:57 +01:00
Dan Glastonbury d1d3dca95f Bug 1443368 - Update cubeb-pulse-rs to commit 22cdde3. r=kinetik
Pull for change to replace assert in get_server_info callback with
proper handling for null pointer.

MozReview-Commit-ID: 996HQw3FyYQ

--HG--
extra : rebase_source : a0d8a0d4ed6df1e5cad13b8ad03d9e1d10fc9223
2018-03-06 15:49:08 +10:00
Alex Chronopoulos f74de1aee2 Bug 1410456 - Update cubeb from upstream to eb3409e.r=achronop
MozReview-Commit-ID: Ie9hhw1Prlw

--HG--
extra : rebase_source : 0e27932b3d22cf816a045b2fd4929d957a5684d6
2018-03-01 15:44:47 +02:00
Alex Chronopoulos 6bd9c1333c Bug 1410456 - Pass in cubeb JNIEnv instead of JavaVM. r=padenot
MozReview-Commit-ID: Cf8FvZzShVv

--HG--
extra : rebase_source : 28b4a8658e5be271af228a0d0398eaa2fba4320b
2018-03-01 12:11:32 +02:00
Alex Chronopoulos 599f535864 Bug 1410456 - Add new files in update.sh script. r=padenot
MozReview-Commit-ID: 5Nmdd8WOlJc

--HG--
extra : rebase_source : 766debbed1e6c64ef66c6f21a0b3f675fca3abe9
2018-02-27 13:37:49 +02:00
Alex Chronopoulos 21a1f8e51b Bug 1410456 - Keep the old mechanism for the older versions that jni method is not available. r=padenot
MozReview-Commit-ID: 3jXf3wuXqZu

--HG--
extra : rebase_source : 6b81a313f12c74810e969c9195fcc8113d5bdf89
2018-02-27 13:37:37 +02:00
Alex Chronopoulos 647424824e Bug 1410456 - get mixer latency from JNI instead of system library. r=jchen,padenot,snorp
MozReview-Commit-ID: 3YciuVu25JO

--HG--
extra : rebase_source : e5b3ad2f4b38f4b6454a56434022fce7f2a649cb
2018-02-20 15:37:12 +02:00
Alex Chronopoulos 9dba55fc1f Bug 1410456 - remove preferred sample rate implementation because makes use of dlopen. r=padenot
MozReview-Commit-ID: jBZ3oewbjh

--HG--
extra : rebase_source : e983510c4c3e2e046302ea3c0732b25a0cfd2cb1
2018-02-20 15:37:11 +02:00
Alex Chronopoulos cb6847750a Bug 1410456 - remove get latency implementation because makes use of dlopen. r=padenot
MozReview-Commit-ID: 1Mc2dSk0hlc

--HG--
extra : rebase_source : 00c83fb95b4ef5f184bc4c9b7511f53995ad82c4
2018-02-20 15:37:10 +02:00
Alex Chronopoulos 9497b2b3a2 Bug 1410456 - remove get min latency implementation because makes use of dlopen. r=padenot
MozReview-Commit-ID: CD2FCiMobWm

--HG--
extra : rebase_source : 17de7ffc8b93082473beaebabd8354c853f4f20f
2018-02-20 15:37:09 +02:00
Alex Chronopoulos cc9dc0dbeb Bug 1410456 - remove an unused variable that produces a compile warning. r=padenot
MozReview-Commit-ID: Hf7Od37bnzX

--HG--
extra : rebase_source : d53cbf4ef6f79ee9caac4e74a67f67a2e441669f
2018-02-20 15:37:08 +02:00
Dan Glastonbury b486a46d6a Bug 1440538 - P4: Update cubeb-pulse-rs to commit f58dc34. r=kinetik
MozReview-Commit-ID: 5eQV3nUceQe

--HG--
extra : rebase_source : c182a15ceda6ef3bb9e25ca3a4465aba325f32bf
2018-02-23 12:54:14 +10:00
Dan Glastonbury 16617a8283 Bug 1440538 - P3: Update cubeb-pulse-rs update.sh. r=kinetik
MozReview-Commit-ID: 4DiL3XnCpMY

--HG--
extra : rebase_source : 719e2a9a0ec9e3284495f7d460e6762b15af0634
2018-02-13 14:45:51 +10:00
Narcis Beleuzu 5968b0947f Backed out 10 changesets (bug 1410456) for Android mochitest crashes, e.g. in test_postMessages.html. CLOSED TREE
Backed out changeset 7ec175446efd (bug 1410456)
Backed out changeset 94457911bb24 (bug 1410456)
Backed out changeset 5248a21216ae (bug 1410456)
Backed out changeset f182ab7885db (bug 1410456)
Backed out changeset e482347bdae3 (bug 1410456)
Backed out changeset f7b646045e06 (bug 1410456)
Backed out changeset 6a8ed4bf5d2f (bug 1410456)
Backed out changeset 1a9c687ec277 (bug 1410456)
Backed out changeset 82f6667c6758 (bug 1410456)
Backed out changeset 7bf358e3e01b (bug 1410456)
2018-02-26 15:58:20 +02:00
Alex Chronopoulos 1697d603ea Bug 1410456 - Update cubeb from upstream to b1ee1ce. r=padenot
MozReview-Commit-ID: 5PmGUcxB6jv

--HG--
extra : rebase_source : 15e4d33a4d80d5cfedb6b064d9320ae711db73f4
2018-02-26 14:03:36 +02:00
Alex Chronopoulos 2eb404212e Bug 1410456 - Add new files in update.sh script. r=padenot
MozReview-Commit-ID: GD8CHTM1pV8

--HG--
extra : rebase_source : 27a9e05db3831729dc0d6c7f43ba4edca2d39bdc
2018-02-26 13:52:36 +02:00
Alex Chronopoulos 0d15e89258 Bug 1410456 - Keep the old mechanism for the older versions that jni method is not available. r=padenot
MozReview-Commit-ID: IsAOhDkNjHp

--HG--
extra : rebase_source : 375b7db8bc5d0c433aa55f229d8f81c971a6fbde
2018-02-26 13:46:13 +02:00
Alex Chronopoulos 967d8be756 Bug 1410456 - get mixer latency from JNI instead of system library. r=jchen,padenot,snorp
MozReview-Commit-ID: 3YciuVu25JO

--HG--
extra : rebase_source : e5b3ad2f4b38f4b6454a56434022fce7f2a649cb
2018-02-20 15:37:12 +02:00
Alex Chronopoulos 2b7cbda791 Bug 1410456 - remove preferred sample rate implementation because makes use of dlopen. r=padenot
MozReview-Commit-ID: jBZ3oewbjh

--HG--
extra : rebase_source : e983510c4c3e2e046302ea3c0732b25a0cfd2cb1
2018-02-20 15:37:11 +02:00
Alex Chronopoulos b3ae975aa1 Bug 1410456 - remove get latency implementation because makes use of dlopen. r=padenot
MozReview-Commit-ID: 1Mc2dSk0hlc

--HG--
extra : rebase_source : 00c83fb95b4ef5f184bc4c9b7511f53995ad82c4
2018-02-20 15:37:10 +02:00
Alex Chronopoulos 3c5238ce8c Bug 1410456 - remove get min latency implementation because makes use of dlopen. r=padenot
MozReview-Commit-ID: CD2FCiMobWm

--HG--
extra : rebase_source : 17de7ffc8b93082473beaebabd8354c853f4f20f
2018-02-20 15:37:09 +02:00
Alex Chronopoulos 26b0a86331 Bug 1410456 - remove an unused variable that produces a compile warning. r=padenot
MozReview-Commit-ID: Hf7Od37bnzX

--HG--
extra : rebase_source : d53cbf4ef6f79ee9caac4e74a67f67a2e441669f
2018-02-20 15:37:08 +02:00
Dorel Luca 037478c033 Backed out 9 changesets (bug 1410456) for Mochitest failure on mobile/android/tests/browser/chrome/test_media_playback.html
Backed out changeset 36f6b40dfa88 (bug 1410456)
Backed out changeset 19f3248502d9 (bug 1410456)
Backed out changeset 18ef18999175 (bug 1410456)
Backed out changeset 0ec75a56b4c7 (bug 1410456)
Backed out changeset f7eae1545d5e (bug 1410456)
Backed out changeset d59060ecd24c (bug 1410456)
Backed out changeset f996b9dce4a6 (bug 1410456)
Backed out changeset 1f75636b5bce (bug 1410456)
Backed out changeset c170d37b1a04 (bug 1410456)
2018-02-19 21:45:10 +02:00
Alex Chronopoulos e63e670281 Bug 1410456 - Update cubeb from upstream to 84e9568. r=achronop
MozReview-Commit-ID: LbKW5KFC37v

--HG--
extra : rebase_source : 83f0a420d9172dfcac47e260cac9675ef8fadc46
2018-02-19 18:38:06 +02:00
Alex Chronopoulos 9c4058b363 Bug 1410456 - Add new files in update.sh script. r=padenot
MozReview-Commit-ID: C9ssWChZclq

--HG--
extra : rebase_source : 20b6f8b97a0aa2156bedc4e11cd419e35802b1cb
2018-02-19 18:35:44 +02:00
Alex Chronopoulos 8f15370f0e Bug 1410456 - get mixer latency from JNI instead of system library. r=jchen,padenot,snorp
MozReview-Commit-ID: FbKvEB6mla

--HG--
extra : rebase_source : 71809dd91edf1e0eac7810dc9e0bea76fcb5d935
2018-02-19 18:35:31 +02:00
Alex Chronopoulos 9afa22dc33 Bug 1410456 - remove preferred sample rate implementation because makes use of dlopen. r=padenot
MozReview-Commit-ID: FA8tU5jDoZx

--HG--
extra : rebase_source : 60704befbb819b3788f727004a9281e8ff7cfea5
2018-02-19 18:30:48 +02:00
Alex Chronopoulos 9fe37d2732 Bug 1410456 - remove get latency implementation because makes use of dlopen. r=padenot
MozReview-Commit-ID: ADWuUuJaebU

--HG--
extra : rebase_source : 6becd0e53a79eb22b141de02eff3ac33d2c65919
2018-02-19 18:28:13 +02:00
Alex Chronopoulos 13684405b1 Bug 1410456 - remove get min latency implementation because makes use of dlopen. r=padenot
MozReview-Commit-ID: Lepj0zxiyXb

--HG--
extra : rebase_source : dfbc22d55b173bcfead47c9fb3d236b5c88393bc
2018-02-19 18:28:12 +02:00
Alex Chronopoulos f7c4614917 Bug 1410456 - remove an unused variable that produces a compile warning. r=padenot
MozReview-Commit-ID: IerCYxsDQFX

--HG--
extra : rebase_source : bd6384189a686fec9c9b43bdab4e5b9c14a95416
2018-02-19 18:28:11 +02:00
Alex Chronopoulos a9a0f3509a Bug 1438888 - Update cubeb from upstream to 1d53c3a. r=padenot 2018-02-16 18:37:50 +02:00
Alex Chronopoulos d616ec978d Bug 1435307 - Update cubeb from upstream to cc0d538. r=padenot 2018-02-02 19:35:15 +02:00
Bryce Van Dyk 099cc51efe Bug 1432869 - Update cubeb-pulse-rs to git commit deadde7. r=kamidphish
MozReview-Commit-ID: EdtwDx2r2Ta

--HG--
extra : rebase_source : 04324b3269ee38fdf1c9afca980a18d3bc42a853
2018-01-25 10:51:03 -05:00
Bryce Van Dyk 1691d18053 Bug 1432869 - Update cubeb from upstream to 4c18a84. r=achronop
This brings across the WASAPI loopback stream functionality recently
implemented in cubeb.

The README_MOZILLA is reverted to its previous format. Previously a couple of
patches were highlighted as needing application, however these have now been
applied upstream.

MozReview-Commit-ID: CV6FHWXZBK0

--HG--
extra : rebase_source : 2dff33fcff6960d1d5b7d8dfaf35023b9c44d16e
2017-12-05 13:11:01 -05:00
Bryce Van Dyk be0ce1cbb2 Bug 1432869 - Add loopback gtest to cubeb's update.sh. r=achronop
MozReview-Commit-ID: 1SQKMD80CG7

--HG--
extra : rebase_source : 5eb747607b1587676ff0e2fc8082655ae5648934
2017-12-05 13:08:20 -05:00
Alex Chronopoulos 80ad267a67 Bug 1432733 - Update cubeb from upstream to 2b98e3d. r=padenot
MozReview-Commit-ID: 7R7S3MLf6tm

--HG--
extra : rebase_source : ba605c371bb4a27379af26c73ff99b951f669ec6
2018-01-24 12:56:54 +02:00
Dan Glastonbury 1ed8c42458 Bug 1430996 - P2: Remove NIGHTLY_BUILD restriction for using cubeb-pulse-rs. r=kinetik
MozReview-Commit-ID: 6luTT4b9e25

--HG--
extra : rebase_source : 9c110d1d9e2fdfb9882c0d6f4081d436bb15d896
2018-01-17 16:22:54 +10:00
Dan Glastonbury a539d73ba3 Bug 1430996 - P1: Update cubeb-pulse-rs to commit cb7141e. r=kinetik
MozReview-Commit-ID: 2wrPNI9rvKF

--HG--
extra : rebase_source : 2a009c40dfdfd06a20b704ed033a47b93788edf4
2018-01-17 15:24:43 +10:00
Karl Tomlinson 88b88a2384 bug 1429666 cubeb_resampler_speex: don't call data callback while draining r=padenot
MozReview-Commit-ID: 1XEzZjPGai9

--HG--
extra : rebase_source : 56be87525d46ed3850a15e8e4dd19804dd832408
2018-01-11 13:30:24 +13:00
Alex Chronopoulos 6da3011397 Bug 1427702 - Update cubeb from upstream to bda37c2. r=kamidphish
MozReview-Commit-ID: H106jbl4sok
2018-01-03 12:06:11 +02:00
Mike Hommey aaf69c3c9b Bug 1427150 - Update cubeb from upstream to 43e15fc. r=kamidphish
--HG--
extra : rebase_source : 2c1338aa1f138e66ef1925fba760cdfcc7a2480a
2017-12-28 08:41:23 +09:00
Alex Chronopoulos 2fee2a59fa Bug 1426719 - Update cubeb from upstream to e1e8337. r=jesup
MozReview-Commit-ID: E0eHOl3zA0a

--HG--
extra : rebase_source : 679f4125e1966382ea20fc8095a5b29370c22f19
2017-12-21 21:25:40 +02:00
Sylvestre Ledru 5de63ef061 Bug 1394734 - Replace CONFIG['MSVC'] by CONFIG['CC_TYPE'] r=glandium
MozReview-Commit-ID: 5orfnoude7h

--HG--
extra : rebase_source : 1ed9a6b56e1d27221a07624767a7fb0e6147117f
2017-12-08 13:46:13 +01:00
Sylvestre Ledru 9bfe27d903 Bug 1394734 - Replace CONFIG['GNU_C*'] by CONFIG['CC_TYPE'] r=glandium
MozReview-Commit-ID: 7duJk2gSd4m

--HG--
extra : rebase_source : 7312fe276e561e8c034a5f6749774ae812727f9c
2017-12-07 22:09:15 +01:00
Alex Chronopoulos 1d4361649f Bug 1423901 - Update cubeb from upstream to a88bf02. r=padenot
MozReview-Commit-ID: Kk8IwJZY0Mt

--HG--
extra : rebase_source : ad8a373b4ae8c29fc245efcfeeaab1e24fc76c0f
2017-12-07 16:42:20 +02:00
Alex Chronopoulos 2e3d7ac97e Bug 1421267 - Update cubeb from upstream to e17ba01. r=padenot
MozReview-Commit-ID: 8s9ZPsZkxD4

--HG--
extra : rebase_source : 540d20626dbe01a317c36ce77f7c2e856996d2e0
2017-11-28 16:27:34 +02:00
Alex Chronopoulos be5209e3f2 Bug 1420930 - Update cubeb from upstream to 8a0a300. r=padenot
MozReview-Commit-ID: 7JriSdO8TTf

--HG--
extra : rebase_source : 37732a6d51ac9bc9cafdbe7d886d7c2e05d88c5f
2017-11-27 18:16:16 +02:00
Paul Adenot 8ad630e34b Bug 1221580 - Update libcubeb to revision 7d00ea6705. r=kinetik,achronop
MozReview-Commit-ID: 8q8Va6I2hru

--HG--
extra : rebase_source : bbc96137fdd4469d57fe99f41ad1baa97e05d468
2017-11-10 12:31:24 +01:00
Alex Chronopoulos 0ae243650c Bug 1411866 - Update cubeb from upstream to cf5ddc5. r=padenot,kinetik
MozReview-Commit-ID: IPgIZ6oBVfg
2017-10-26 10:41:49 +03:00
Chris Manchester c86173526a Bug 1403346 - Replace all uses of ALLOW_COMPILER_WARNINGS with a template, remove ALLOW_COMPILER_WARNINGS. r=glandium
MozReview-Commit-ID: 1G2o4fy74cf
2017-10-25 15:12:09 -07:00
Paul Adenot 6298126ac4 Bug 1405258 - Update libcubeb to 40cd4ad0 to fix warnings as errors bustage.
MozReview-Commit-ID: 53knVqcswLX

--HG--
extra : rebase_source : 7379c68360a6004da1afcea920195e5dbca4f9c0
2017-10-03 13:40:00 +02:00
Paul Adenot 37bfa43273 Bug 1405258 - Update libcubeb to revision ba2a89611875cd9f2dabae99a362461b03c0dd3d
MozReview-Commit-ID: PngLiVneAh

--HG--
extra : rebase_source : 9f604112fad6cafb0883e3248823f78106ec5e19
2017-10-03 12:18:07 +02:00
Dan Glastonbury e0b3ce467e Bug 1399978 - Update cubeb-pulse-rs to git commit 2e22e53. r=kinetik
MozReview-Commit-ID: INksO0nbT1F

--HG--
extra : rebase_source : ea7936f95c44972478878cb54b1e2a83c4fbc4fe
2017-09-25 15:23:30 +10:00
Alex Chronopoulos af3b468649 Bug 1400671 - Update cubeb from upstream to ac532ad. r=kinetik
MozReview-Commit-ID: Ek4onH23hPc
2017-09-18 01:56:08 +03:00
Alex Chronopoulos fce9feacea Bug 1399905 - Update cubeb from upstream to 09a90a7. r=padenot
MozReview-Commit-ID: JoZj8q2nQPb
2017-09-14 18:35:15 +03:00
Dan Glastonbury 660a0a0bf8 Bug 1399009 - Update cubeb-pulse-rs to a386d91... r=kinetik
MozReview-Commit-ID: BnJpMCuDPOf

--HG--
extra : rebase_source : 37c652b29cc4732153ab5b8a45c0b02837026282
2017-09-12 15:31:18 +10:00
Paul Adenot 133d277e4d Bug 1395393 - Fix bustage on a CLOSED TREE.
MozReview-Commit-ID: BI4fIMikA0J
2017-09-01 18:09:48 +02:00
Paul Adenot 54e3972626 Bug 1395393 - Update libcubeb to 2e5814de. r=achronop
MozReview-Commit-ID: JWDv93mjAAE

--HG--
extra : rebase_source : 170547b55d8b04838523a255502c58991da8ffdb
extra : amend_source : c7f5e99b69e27c40e5fa6ed9054a57dbdf1c2f1c
2017-09-01 17:39:06 +02:00
Matthew Gregan b359c3ce6d Bug 1388229 - Update libcubeb to revision d59010139. r=kamidphish 2017-08-10 13:00:07 +12:00
Matthew Gregan b680d61073 Bug 1386957 -Update libcubeb to revision 0e103884. r=achronop
MozReview-Commit-ID: HFkJ6TPLIfv

--HG--
extra : rebase_source : 19225466d283f999a99589f6afba1315dc1ec041
2017-08-03 18:46:49 +12:00
Alex Chronopoulos ad2bcf909e Bug 1385481 - Update cubeb from upstream to 42da8d2. r=kinetik
MozReview-Commit-ID: HOrC5Iwd92L
2017-07-29 02:45:33 +03:00
Alex Chronopoulos 0335e95f16 Bug 1384053 - Update cubeb from upstream to 09aeb59. r=kinetik
MozReview-Commit-ID: KQRqIGv021z

--HG--
extra : rebase_source : e024379549aa71c831a56dc91b41389838970550
2017-07-25 18:00:35 +03:00
Alex Chronopoulos 7712d5e660 Bug 1381015 - Update cubeb from upstream to a329c6a. r=kinetik
MozReview-Commit-ID: Gfutv4Tnvix

--HG--
extra : rebase_source : 219433f6d6008814f8ce2839700a418cf0fda711
2017-07-17 11:48:15 +03:00
Alex Chronopoulos cfc97eef59 Bug 1380233 - Update cubeb pulse rust backend from upstream to 3b8cfba. r=kamidphish
MozReview-Commit-ID: CKfpyKaqLSe

--HG--
extra : rebase_source : 7675f4a21e45465939b0457e5ed34f88985e53fb
2017-07-13 13:07:32 +03:00
Alex Chronopoulos 90ea6c6cf8 Bug 1380233 - Update cubeb from upstream to bb18984. r=kinetik
MozReview-Commit-ID: FU0a9BWcOoN

--HG--
extra : rebase_source : e40749d95d6928e12a1d5e88c082b3a167e18924
2017-07-13 13:04:52 +03:00
Peter Gerber f6d02d64ec Bug 1375873 - fix panic in cubeb caused by PA_SINK_SET_FORMATS flag r=kamidphish
MozReview-Commit-ID: FQic63gUu51

--HG--
extra : rebase_source : f4e3f5e4258ba4fb08acb4fe85b73404c7bf7afe
2017-06-24 02:42:28 +02:00
Dan Glastonbury 8f2155024b Bug 1376000: Drop any unknown flags in SinkInfo.flags. r=padenot
Rust expect() is bad in C callbacks.  Replace TryFrom() with
from_bits_truncate() to drop any unknown PulseAudio flags.

MozReview-Commit-ID: 4RWFB5iGW6Z

--HG--
extra : rebase_source : 3b05d52ae1295825b4857c41135ff08029ad280c
2017-06-24 08:03:59 +10:00
Dan Glastonbury 39441f1b4c Bug 1374494 - P2: Update cubeb-pulse-rs to commit djg/cubeb-pulse-rs/6451581. r=kinetik
MozReview-Commit-ID: IscK7OpIZbB

--HG--
extra : rebase_source : d2ec3568fedd8f9841c3ecd5f02e434238add889
2017-06-09 12:30:29 +10:00
Dan Glastonbury 310ef6224e Bug 1374494 - P1: Add pulse-rs folder to update.sh. r=kinetik
MozReview-Commit-ID: DNhPe2JhfU2

--HG--
extra : rebase_source : a306bdb305e0eb7042a703b2642d9f737fb14fbc
2017-06-19 17:47:13 +10:00
Alex Chronopoulos 1569d73eef Bug 1374275 - Update cubeb from upstream to 18153b9. r=kinetik
MozReview-Commit-ID: 4PKadUfp0Bc

--HG--
extra : rebase_source : 430224ccb31ba49c6c980529af3ba8385005f8be
2017-06-20 12:09:28 +03:00
Dan Glastonbury 79484d5aa4 Bug 1373475: Remove panic from pulse_format_to_cubeb_format. r=kinetik
Remove left-over panic! from this function and return default values
of F32NE, just as cubeb_pulse.c does.

MozReview-Commit-ID: 5MgIOSaexF2

--HG--
extra : rebase_source : b1159b09c97df8a41811a85cb0f1674062d5cd92
2017-06-16 11:15:48 +10:00
Dan Glastonbury a74de3d86f Bug 1372057 - Limit pulse-rust to nightly builds. r=kinetik
MozReview-Commit-ID: Ev4GSuEN5Xa

--HG--
extra : rebase_source : 0e3910ffa437963810d5f42d5e2f3486e72801ef
2017-06-12 11:26:33 +10:00
Dan Glastonbury 0170a00894 Bug 1371319 - null out pulse pointers on destruction. r=kinetik
To avoid a double freeing of pa_context and pa_threaded_mainloop on
error, null out pointers once the object is freed.

Added assertions that pointer are null after destroy()'ing.

MozReview-Commit-ID: 1Ycmkrc2kWe

--HG--
extra : rebase_source : 1074ba307a45f9714b07c66d112a1b4b190c4540
2017-06-09 10:33:17 +10:00
Dan Glastonbury 839fad3c98 Bug 1360060 - P3: device_collection_destroy for cubeb-pulse-rs. r=kinetik
MozReview-Commit-ID: Hvn12h4O4FE

--HG--
extra : rebase_source : 9a689bcc516c1a3d363c2996bce67a083970aad9
2017-05-24 19:33:19 +10:00
Dan Glastonbury d8f7d93bff Bug 1360060 - P2: Add patch to libcubeb/update.sh r=kinetik
MozReview-Commit-ID: CPSGDKtrJZI

--HG--
extra : rebase_source : 14dbf4d6af2104f6043f4269cc8522ce946e8ffe
2017-05-24 20:48:00 +10:00
Dan Glastonbury 11c2d37f9d Bug 1360060 - P1: Enable selection of cubeb-pulse-rust over cubeb-pulse. r=kinetik
MozReview-Commit-ID: GN5POBqy56W

--HG--
extra : rebase_source : 0af5972b29c2209beef82ef109e0b5f10613848e
2017-04-27 10:51:52 +10:00
Alex Chronopoulos 4c1cef4cb9 Bug 1368910 - Update cubeb from upstream to 3428c2b. r=kinetik
MozReview-Commit-ID: FIUMIri84Wr
2017-05-31 07:59:22 +03:00
Dan Glastonbury 9224fdaf13 Bug 1367646 - Update cubeb from upstream to 087dc94. r=kinetik
MozReview-Commit-ID: E1D2XCtugqW

--HG--
extra : rebase_source : 20d630e763aa840d1a07e0edf128206dd8b679e8
2017-05-25 14:45:04 +10:00
Alex Chronopoulos 9281e65d26 Bug 1366707 - Update cubeb from upstream to 96cdb17. r=kinetik
MozReview-Commit-ID: 3aiEtrl289U

--HG--
extra : rebase_source : 16ebdb2e20fc516047cc8f4974d6c9e6ec638fcb
2017-05-23 11:29:33 +03:00
Alex Chronopoulos 517b0f8cbf Bug 1362334 - Update cubeb from upstream to 26a50b0. r=kinetik
MozReview-Commit-ID: KQXwt0DJHvP
2017-05-09 09:49:30 +03:00
Dan Glastonbury 4f5a7952ca Bug 1360053 - Fetch version dbcd7f of cubeb-pulse-rs from github. r=kinetik
MozReview-Commit-ID: 8vy5Sy1430s

--HG--
extra : rebase_source : 72b3370258affb14dfa2754b1816eea13a4d1e2e
2017-04-27 10:06:33 +10:00
Alex Chronopoulos ff2192eef4 Bug 1359451 - Update cubeb from upstream to 17503c4. r=padenot
MozReview-Commit-ID: C3NXIvjwjgD

--HG--
extra : rebase_source : 06cc2449c9892ba431662e9cd72633a91efcba2e
2017-04-25 18:25:01 +03:00
Dan Glastonbury 42bf7f5ae3 Bug 1358938 - Remove gonk config from moz.build. r=SingingTree
Re-applying Bug 1357323.

MozReview-Commit-ID: 6UcfIHWDwn5

--HG--
extra : rebase_source : 71b61606cfbc03c5b5d7064154f0e035c8393b32
2017-04-24 11:20:03 +10:00
Dan Glastonbury 92a65a96fb Bug 1346665 - P2: Import rustified cubeb_pulse.c. r=kinetik,rillian
Enable by setting:

  media.cubeb.backend = "pulse-rust"

MozReview-Commit-ID: EZXJAzN3X7c
2017-04-21 14:01:01 +10:00
Dan Glastonbury 709bb40008 Bug 1346665 - P1: Enable USE_PULSE_RUST in libcubeb. r=kinetik,rillian
MozReview-Commit-ID: 5ZQLFXNFWdB
2017-04-21 14:01:00 +10:00
Alex Chronopoulos 939147b2d1 Bug 1357683 - Update cubeb from upstream to 6e52314. r=padenot
MozReview-Commit-ID: FKxbO0W50Xk
2017-04-20 12:01:37 +03:00
Mike Hommey 34e619d1c1 Bug 1357323 - Remove support for gonk in the build system. r=gps
Everything depending on the widget being gonk can go away, as well as
everything depending on MOZ_AUDIO_CHANNEL_MANAGER, which was only
defined on gonk builds under b2g/ (which goes away in bug 1357326).

--HG--
extra : rebase_source : 9f0aeeb7eea8417fa4e06d662d566d67ecaf2a24
2017-04-18 16:56:09 +09:00
Wes Kocher 5eabc03c18 Merge m-c to autoland a=merge 2017-04-10 16:55:21 -07:00
Paul Adenot ebfeb605e3 Bug 1348344 - Backed out changeset c72cf98f1527. r=achronop
This was meant to be temporary, and we can remove it now.

MozReview-Commit-ID: 2A9RKIabYIZ

--HG--
extra : source : e6cd7e39bfdd77772ffd3a36448b7763db7ec6d1
extra : histedit_source : dcb1bd9d144aaa9abeef38107a6ee6d85cdf7b2f
2017-04-10 17:15:29 +02:00
Paul Adenot b37280c289 Bug 1337641 - Temporarily disable an assert in cubeb duplex. r=achronop
MozReview-Commit-ID: GD57nZRoXFj

--HG--
extra : rebase_source : 638d4e3f38fb3f4989758f0f1ad7f9d5dc4680ab
2017-04-10 19:26:44 +02:00
Carsten "Tomcat" Book 5d99fc5820 Merge mozilla-central to autoland 2017-04-04 12:38:55 +02:00
Paul Adenot 8db2de79d7 Bug 1351803 - Statically link to avrt.lib on Windows, when compiling cubeb. r=glandium
We used to get the symbols we need using `LoadLibrary`, but now (since
661c653c86),
we can statically link to avrt.lib, because we only support Windows OSes that
have this library. For now, this works because avrt.lib is linked in
webrtc-land somewhere with a #pragma, but:
- We're going to stop using this bit of webrtc in the near future (around
  Firefox 54)
- Not linking this explicitely where it's used breaks --disable-webrtc, that is
  a popular option

MozReview-Commit-ID: 7b16Kdl3VUu

--HG--
extra : rebase_source : b4159872427b4e9d912e1228e75563ca9a8e828d
2017-03-30 06:26:19 -07:00
Matthew Gregan 2174e12534 Bug 1352929 - Update libcubeb to 04826edb. r=padenot 2017-04-04 14:02:04 +12:00
Paul Adenot 3fe3b37a3f Bug 1348344 - Add a way to disable the aggregate audio device on OSX, and log the resampler internal state. r=achronop,kinetik
MozReview-Commit-ID: C23SsRNfq2A

--HG--
extra : histedit_source : 654a54d4a2367595cd7acff6e473d191c4787754
2017-03-17 18:21:35 +01:00
Paul Adenot d608b2fd6e Bug 1341238 - Update cubeb to revision 4ab45776. r=kinetik 2017-03-16 18:26:32 +13:00
Alex Chronopoulos 44ce83037f Bug 1345049 - Update cubeb from upstream to f07ee6d. r=kinetik
MozReview-Commit-ID: 9vApWUIieJH

--HG--
extra : rebase_source : 02de16b962218747a52b5c6f71c2d681b8485fc6
2017-03-09 19:47:39 +01:00
Joel Maher 43d997b5a3 Bug 1344470 - add BUG_COMPONENT to media/* files. r=padenot
MozReview-Commit-ID: C7xWOE0OwIK
2017-03-07 13:06:45 -05:00
Alex Chronopoulos c4f0fcd254 Bug 1344653 - Update cubeb from upstream to a3c012f. r=kinetik
MozReview-Commit-ID: 3jQt8zdukUm
2017-03-06 11:34:52 +02:00
Alex Chronopoulos b232ff8649 Bug 1343780 - Update cubeb from upstream to 0753297. r=kinetik
MozReview-Commit-ID: Byuw5tH6wjs
2017-03-02 13:45:08 +02:00
Tom Ritter e275b0a019 Bug 1342212 - Add the commit date to the cubeb README_MOZILLA file to allow automated tooling to detect too-old libraries. r=kinetik
MozReview-Commit-ID: CbBlmy1jZU

--HG--
extra : rebase_source : 5c61711a1ad9c60f6180f67f6c8f1c49df91ff69
2017-02-27 13:53:41 -06:00
Alex Chronopoulos 6b65c12c74 Bug 1342363 - Update cubeb from upstream to 25b593f. r=padenot
MozReview-Commit-ID: BAwQSDLJoMx

--HG--
extra : rebase_source : 01c1c72c3b287f6e6608b84fc00cd80177ae65cc
2017-02-24 13:24:32 +02:00
Alex Chronopoulos 3d4c312be6 Bug 1339816 - Update cubeb from upstream to 8977c13b. r=padenot a=needmacnightlyrespin
MozReview-Commit-ID: 942LCa6dOzJ

--HG--
extra : source : 9416a107fa60f31c745acf7821b52cd5a8ef8e98
2017-02-17 19:20:34 +02:00
Paul Adenot add4b47dc6 Bug 1332937 - Use MOZ_RELEASE_ASSERT behind cubeb's XASSERT so it's enabled in release. r=achronop
MozReview-Commit-ID: ISAb2ops8iq

--HG--
extra : rebase_source : be0b14e0edc823c847f72bacf7adf10d5e56ed9e
2017-02-10 15:15:06 +01:00
Alex Chronopoulos c0634dbb84 Bug 1337805 - Update cubeb from upstream 21e96ac. r=padenot
MozReview-Commit-ID: 62VM613n915

--HG--
extra : rebase_source : 5a58866e8e3a0458eacabcdbb894bffcebe3467f
2017-02-10 13:20:15 +02:00
Sebastian Hengst 64e3711920 Backed out changeset a3faba8c3991 (bug 1337805) for frequently failing test_conformance__textures__video__tex-2d-rgba-rgba-unsigned_byte.html. r=backout 2017-02-09 21:21:51 +01:00
Alex Chronopoulos b90787dd1c Bug 1337805 - Update cubeb from upstream 21e96ac. r=padenot
MozReview-Commit-ID: 4WVSRHoUYAJ

--HG--
extra : rebase_source : 113cec5e8875fb3f4dfae6cdb9251a0831089069
2017-02-08 17:33:43 +02:00
Paul Adenot 42b97bbf05 Bug 1337328 - Uplift cubeb to revision 927877. r=achronop
MozReview-Commit-ID: 1VxCdWZQtR4

--HG--
extra : rebase_source : 5430bd5c97d4cbd3854e0089bac324b5a4b134f7
2017-02-07 12:13:30 +01:00
Alex Chronopoulos 538d575a01 Bug 1331869 - Update cubeb from upstream to d96e35f02d. r=kinetik,padenot
MozReview-Commit-ID: 9H3cKh82Jwv

--HG--
extra : rebase_source : fc8f877e627aced0ff0fcc2d18766ba05560d6af
2017-01-19 18:02:42 +02:00
Matthew Gregan 5d52935243 Bug 1319623 - Update libcubeb to 051cd847. r=achronop 2016-11-24 06:59:32 +13:00
Matthew Gregan 9905c5e828 Bug 1318619 - Update libcubeb to 13f167c2. 2016-11-21 07:30:16 +13:00
Alex Chronopoulos 315350e00b Bug 1221574 - [08] Add new file cubeb_array_queue.h. r=bustage-fix on a CLOSED TREE
MozReview-Commit-ID: F4aI4R8Zelg
2016-11-18 19:21:57 +02:00
Alex Chronopoulos 8c162d5faa Bug 1221574 - [07] Update cubeb to b6315bb including full duplex for OpenSL ES. r=kinetik, r=padenot
MozReview-Commit-ID: 6VmQ4jccpJx
2016-11-18 18:00:49 +02:00
Alex Chronopoulos a237a9fa61 Bug 1221574 - [01] Add queue array in update.sh script. r=padenot
MozReview-Commit-ID: IbFQeza1x2l
2016-11-18 18:00:47 +02:00
Alex Chronopoulos 8ca2f49e54 Bug 1318619 - Update cubeb upstream to 7f74039f92. r=kinetik
MozReview-Commit-ID: HDOkLLKKsm7
2016-11-18 12:30:23 +02:00
Matthew Gregan 81105ff0ba Bug 1314514 - Update libcubeb to 8bab182c. r=padenot
--HG--
rename : media/libcubeb/tests/common.h => media/libcubeb/gtest/common.h
rename : media/libcubeb/tests/moz.build => media/libcubeb/gtest/moz.build
rename : media/libcubeb/tests/test_audio.cpp => media/libcubeb/gtest/test_audio.cpp
rename : media/libcubeb/tests/test_devices.cpp => media/libcubeb/gtest/test_devices.cpp
rename : media/libcubeb/tests/test_duplex.cpp => media/libcubeb/gtest/test_duplex.cpp
rename : media/libcubeb/tests/test_record.cpp => media/libcubeb/gtest/test_record.cpp
rename : media/libcubeb/tests/test_resampler.cpp => media/libcubeb/gtest/test_resampler.cpp
rename : media/libcubeb/tests/test_sanity.cpp => media/libcubeb/gtest/test_sanity.cpp
rename : media/libcubeb/tests/test_tone.cpp => media/libcubeb/gtest/test_tone.cpp
2016-11-11 15:01:56 +13:00
Wes Kocher 791bd2888f Backed out changeset 359999c77a46 (bug 1314514) for build bustage a=backout CLOSED TREE
--HG--
rename : media/libcubeb/gtest/common.h => media/libcubeb/tests/common.h
rename : media/libcubeb/gtest/moz.build => media/libcubeb/tests/moz.build
rename : media/libcubeb/gtest/test_audio.cpp => media/libcubeb/tests/test_audio.cpp
rename : media/libcubeb/gtest/test_devices.cpp => media/libcubeb/tests/test_devices.cpp
rename : media/libcubeb/gtest/test_duplex.cpp => media/libcubeb/tests/test_duplex.cpp
rename : media/libcubeb/gtest/test_record.cpp => media/libcubeb/tests/test_record.cpp
rename : media/libcubeb/gtest/test_resampler.cpp => media/libcubeb/tests/test_resampler.cpp
rename : media/libcubeb/gtest/test_sanity.cpp => media/libcubeb/tests/test_sanity.cpp
rename : media/libcubeb/gtest/test_tone.cpp => media/libcubeb/tests/test_tone.cpp
2016-11-15 12:03:51 -08:00
Matthew Gregan 2b9aa95d4c Bug 1314514 - Update libcubeb to 8bab182c. r=padenot
--HG--
rename : media/libcubeb/tests/common.h => media/libcubeb/gtest/common.h
rename : media/libcubeb/tests/moz.build => media/libcubeb/gtest/moz.build
rename : media/libcubeb/tests/test_audio.cpp => media/libcubeb/gtest/test_audio.cpp
rename : media/libcubeb/tests/test_devices.cpp => media/libcubeb/gtest/test_devices.cpp
rename : media/libcubeb/tests/test_duplex.cpp => media/libcubeb/gtest/test_duplex.cpp
rename : media/libcubeb/tests/test_record.cpp => media/libcubeb/gtest/test_record.cpp
rename : media/libcubeb/tests/test_resampler.cpp => media/libcubeb/gtest/test_resampler.cpp
rename : media/libcubeb/tests/test_sanity.cpp => media/libcubeb/gtest/test_sanity.cpp
rename : media/libcubeb/tests/test_tone.cpp => media/libcubeb/gtest/test_tone.cpp
2016-11-11 15:01:56 +13:00
Alex Chronopoulos eefc8725dd Bug 1315928 - Update cubeb from upstream to f8467510a8b. r=kinetik
MozReview-Commit-ID: 7M6LVOGxTVB
2016-11-08 14:02:49 +02:00
Matthew Gregan 100e73de5a Bug 1315495 - Update libcubeb to 98b189d2. r=achronop 2016-11-06 11:51:33 +13:00
Matthew Gregan e692f60826 Bug 1314496 - Update libcubeb to 8c41e564. r=padenot 2016-11-06 10:43:11 +13:00
Alex Chronopoulos 0dc4f7ef3b Bug 1314316 - Restore use of ceilf method instead of roundf. r=jesup
MozReview-Commit-ID: 5Wv5dqSy3B8

--HG--
extra : rebase_source : 23e09c1e37fc70626d8ef4178b7342117ddfc92f
2016-11-01 18:34:55 +02:00
Matthew Gregan 02eeb9d19a Bug 1311346 - Remove obsoleted patches. r=me 2016-10-21 13:06:24 +13:00
Paul Adenot 262e1f8a04 Bug 1311346 - add cubeb_log.h to the tree
MozReview-Commit-ID: BHvbZzns6WK
2016-10-20 16:36:29 +02:00
Paul Adenot 3dd5af16d3 Bug 1311346 - Add cubeb_export.h to the tree.
--HG--
extra : histedit_source : 7d538af3b6990e25fa4e4c6257589d5977fa3d95
2016-10-20 16:17:25 +02:00
Paul Adenot 527bc745cd Bug 1311346 - Update libcubeb to revision 9eacd3144. r=kinetik
--HG--
extra : rebase_source : efeb55082e9a1a0a60d96b717dbb3767e9a54280
2016-10-20 16:01:01 +02:00
Matthew Gregan b123dc8ba5 Bug 1308418 - Avoid double-constructing owned_critical_section via copy constructor. r=jya
This uplifts the upstream change 22557d466eceb6ff6ba70ae30d2dcd87648cde0b from
https://github.com/kinetiknz/cubeb as a standalone patch suitable for uplift.
2016-10-19 14:42:03 +13:00
Paul Adenot d31503d9d3 Bug 1307724 - Cherry-pick cubeb revision 50d92c. r=kinetik
MozReview-Commit-ID: 2ibCLal3BVD

--HG--
extra : rebase_source : 42dbab3510abdb390c6287df95721a17be7a1e4d
2016-10-05 12:20:06 +02:00
Paul Adenot dbae1f1510 Bug 1306570 - Cherry-pick cubeb revision 6ae23a63 to fix a clock drift on Windows. r=kinetik
MozReview-Commit-ID: 3gC8dDAlkEM

--HG--
extra : rebase_source : 22b489cc5d7d3f91e9cfeab749fd41bd2300b652
2016-10-03 10:08:26 +02:00
Alex Chronopoulos 5a929bb3b5 Bug 1286041 - Update cubeb library on commit a317ba0. r=kinetik 2016-09-23 19:16:17 +03:00