I wonder what are the conditions that trigger an Android phone to apply the EU sound level warnings. In my case, the phone is Samsung S20 FE 5G. EU standards stipulate that mobile devices have to obey some rules regarding sound levels. The device has to present warnings before the sound level may exceed the specified limit. The user to has opt in in order to pass the limit, and the warning and opt-in have to be repeated after every 20 hours of usage.
However, this does not apply to all output devices. I think it is supposed to apply to headphone outputs, but in my experience, the implementation is inconsistent. Some devices that don't have any headphone outputs trigger the warning, like Topping E30.
A USB-S/PDIF bridge doesn't trigger it, and neither does MOTU M4.
I suppose the behavior depends on the endpoint type included in the USB audio class descriptors. If the endpoint type is headphone output, the warning would trigger, but an S/PDIF output doesn't trigger it. I would expect Topping E30 to specify its endpoints as line outs, and I wonder why E30 triggers the warning but M4 doesn't.
However, this does not apply to all output devices. I think it is supposed to apply to headphone outputs, but in my experience, the implementation is inconsistent. Some devices that don't have any headphone outputs trigger the warning, like Topping E30.
A USB-S/PDIF bridge doesn't trigger it, and neither does MOTU M4.
I suppose the behavior depends on the endpoint type included in the USB audio class descriptors. If the endpoint type is headphone output, the warning would trigger, but an S/PDIF output doesn't trigger it. I would expect Topping E30 to specify its endpoints as line outs, and I wonder why E30 triggers the warning but M4 doesn't.