Open Bug 1408307 Opened 7 years ago Updated 2 years ago

Maintain a blacklist for problematic soundcards

Categories

(Core :: Audio/Video: cubeb, enhancement, P2)

enhancement

Tracking

()

People

(Reporter: chunmin, Assigned: chunmin)

References

(Depends on 1 open bug)

Details

Some soundcards cause crashes on certian platforms. One example is bug 1406981. The MOTU 828mk3 cause crashes when calling GetAudioChannelLayout on OSX. We should maintain a blacklist for some problematic soundcards for better stability
Depends on: 1408309
Assignee: nobody → cchang
Blocks: 1406981
Depends on: 1378633
(In reply to Chun-Min Chang[:chunmin] from comment #0)
> Some soundcards cause crashes on certian platforms. One example is bug
> 1406981. The MOTU 828mk3 cause crashes when calling GetAudioChannelLayout on
> OSX. We should maintain a blacklist for some problematic soundcards for
> better stability
For this case, we could put the `group Id`[0] of this soundcard in the blacklist.

[0] http://searchfox.org/mozilla-central/rev/40b456626e2d0409b7034768b4d9526fc7235ea4/dom/media/nsIAudioDeviceInfo.idl#13
(In reply to Chun-Min Chang[:chunmin] from comment #1)
> (In reply to Chun-Min Chang[:chunmin] from comment #0)
> > Some soundcards cause crashes on certian platforms. One example is bug
> > 1406981. The MOTU 828mk3 cause crashes when calling GetAudioChannelLayout on
> > OSX. We should maintain a blacklist for some problematic soundcards for
> > better stability
> For this case, we could put the `group Id`[0] of this soundcard in the
> blacklist.
> 
> [0]
> http://searchfox.org/mozilla-central/rev/
> 40b456626e2d0409b7034768b4d9526fc7235ea4/dom/media/nsIAudioDeviceInfo.idl#13
I was wrong. The `group_id`/`device_id` isn't identical between the machines. The `group_id`/`device_id` is accessed from `kAudioDevicePropertyDeviceUID`[0], while `kAudioDevicePropertyDeviceUID` is only identical to one machine. It may be different from one machine to another machine[1]. Thus, we should use `kAudioDevicePropertyModelUID` instead of `kAudioDevicePropertyDeviceUID`[2] since `kAudioDevicePropertyModelUID` is same no matter what machine is. It means that we need to add an attribute to store this and show it on about:support.

[0] http://searchfox.org/mozilla-central/rev/1285ae3e810e2dbf2652c49ee539e3199fcfe820/media/libcubeb/src/cubeb_audiounit.cpp#3059
[1] https://github.com/phracker/MacOSX-SDKs/blob/master/MacOSX10.9.sdk/System/Library/Frameworks/CoreAudio.framework/Versions/A/Headers/AudioHardwareBase.h#L594-L600
[2] https://github.com/phracker/MacOSX-SDKs/blob/master/MacOSX10.9.sdk/System/Library/Frameworks/CoreAudio.framework/Versions/A/Headers/AudioHardwareBase.h#L601-L607
Severity: normal → S3
You need to log in before you can comment on or make changes to this bug.