If you think a bug might affect users in the 57 release, please set the correct tracking and status flags for Release Management.

Plugging in or unplugging headphones crashes YouTube tab

Assigned to



Audio/Video: cubeb
7 days ago
2 days ago


(Reporter: tchevalier, Assigned: achronop)


(4 keywords)

57 Branch
crash, nightly-community, regression, reproducible
Dependency tree / graph

Firefox Tracking Flags

(firefox55 unaffected, firefox56 unaffected, firefox57+ affected)




7 days ago
Noticed this today, hopefully it’s a quite recent regression.


- Play a video on YouTube
- Plug in your headphones (or unplug them)

→ Tab crashes

I can reproduce with a fresh profile.

Here’s a report from one of my crashes:
Keywords: regression
Hm, empty signature. Similar to bug 1385531.
See Also: → bug 1385531
This Reddit user appears to be experiencing something very similar: https://www.reddit.com/r/firefox/comments/70bb15/plugging_in_headphones_with_microphone_crashes/

Interestingly, they write:

"This only happens if my headphones have an in-built microphone, regular headphones without the controls / microphone part do not crash the tab.

I am on macOS 10.12.6, and Nightly 57.0a1 (2017-09-15) (64-bit)"

Comment 3

6 days ago
Performed further tests:

- It’s probably a macOS specific issue (I can’t reproduce on Windows)
- I can reproduce the issue with both regular headphones (Sennheiser CX 300 II) and 1MORE Triple Driver (has a microphone and remote controls)
- I can’t reproduce bug 1385531

Comment 4

6 days ago
Last good revision: bad8adc4d1de2d2957740babe98d55356275e0d7
First bad revision: 29713567c35d87d08c5d755712763b15c672208f

Looks like it’s caused by Bug 1399905, Alex could you have a look?
Blocks: 1399905
Flags: needinfo?(achronop)
Keywords: regressionwindow-wanted
Component: Untriaged → Audio/Video: cubeb
Product: Firefox → Core

Comment 5

6 days ago
Since there is no callstack can you please get logs: cubeb:4,MediaStreamGraph:4
Flags: needinfo?(achronop) → needinfo?(theo)

Comment 6

6 days ago
Here’s what I get, let me know if I can do something else:

2017-09-16 18:21:19.670 plugin-container[93548:9798432] *** CFMessagePort: bootstrap_register(): failed 1100 (0x44c) 'Permission denied', port = 0xba37, name = 'com.apple.tsm.portname'
See /usr/include/servers/bootstrap_defs.h for the error codes.
[MediaPlayback #3]: E/cubeb /builds/worker/workspace/build/src/media/libcubeb/src/cubeb_audiounit.cpp:2210: (0x1227f5400) Opening output side: rate 48000, channels 2, format 2, latency in frames 512.
[MediaPlayback #3]: E/cubeb /builds/worker/workspace/build/src/media/libcubeb/src/cubeb_audiounit.cpp:2233: (0x1227f5400) Output device sampling rate: 44100,00
[MediaPlayback #3]: E/cubeb /builds/worker/workspace/build/src/media/libcubeb/src/cubeb_audiounit.cpp:2033: (0x1227f5400) No need to update output buffer size already 512 frames
[MediaPlayback #3]: E/cubeb /builds/worker/workspace/build/src/media/libcubeb/src/cubeb_audiounit.cpp:2281: (0x1227f5400) Output audiounit init successfully.
[MediaPlayback #3]: E/cubeb /builds/worker/workspace/build/src/media/libcubeb/src/cubeb_audiounit.cpp:2539: (0x1227f5400) Cubeb stream init successful.
[MediaPlayback #3]: E/cubeb /builds/worker/workspace/build/src/media/libcubeb/src/cubeb_audiounit.cpp:2628: Cubeb stream (0x1227f5400) started successfully.
[Unnamed thread 0x120fe75e0]: E/cubeb /builds/worker/workspace/build/src/media/libcubeb/src/cubeb_audiounit.cpp:706: (0x1227f5400) Audio device changed, 1 events.
[Unnamed thread 0x120fe75e0]: E/cubeb /builds/worker/workspace/build/src/media/libcubeb/src/cubeb_audiounit.cpp:735: Event[0] - mSelector == kAudioHardwarePropertyDataSource for id=46
Assertion failed: ((flags & DEV_INPUT && stm->input_unit) || (flags & DEV_OUTPUT && stm->output_unit)), function audiounit_reinit_stream, file /builds/worker/workspace/build/src/media/libcubeb/src/cubeb_audiounit.cpp, line 624.
[Parent 93547, Gecko_IOThread] WARNING: pipe error: Broken pipe: file /builds/worker/workspace/build/src/ipc/chromium/src/chrome/common/ipc_channel_posix.cc, line 709

###!!! [Parent][MessageChannel] Error: (msgtype=0x150081,name=PBrowser::Msg_Destroy) Channel error: cannot send/recv
Flags: needinfo?(theo)

Comment 7

6 days ago
That's fantastic thank you very much. The problem is here:

Assertion failed: ((flags & DEV_INPUT && stm->input_unit) || (flags & DEV_OUTPUT && stm->output_unit)), function audiounit_reinit_stream, file /builds/worker/workspace/build/src/media/libcubeb/src/cubeb_audiounit.cpp, line 624.

I know how to fix it.

Comment 8

6 days ago
Fix pushed for review https://github.com/kinetiknz/cubeb/pull/357
Duplicate of this bug: 1400619


6 days ago
Assignee: nobody → achronop


5 days ago
Priority: -- → P1


5 days ago
Depends on: 1400671
status-firefox55: --- → unaffected
status-firefox56: --- → unaffected
tracking-firefox57: ? → +
Duplicate of this bug: 1401410
See Also: → bug 1400637
You need to log in before you can comment on or make changes to this bug.