Files
Melo/lib/player/headphone_autoplay.dart
T
dustinandClaude Opus 5 1325badf90 Equalizer (nativ), Dolby-Atmos-Zugang und Auto-Wiedergabe bei Kopfhoerern
- Native Bruecke AudioEffectsBridge.kt: Equalizer + BassBoost + Virtualizer
  auf der Audio-Session des Players, inkl. System-Klangeffekt-Panel
- Dart-Seite AudioEffects: Presets, Baender, Bass/Immersiv, persistiert
- EqualizerScreen nach Vorlage inkl. Drehregler (CustomPainter)
- Auto-Wiedergabe bei verbundenen Kopfhoerern (Klinke + Bluetooth)
- MODIFY_AUDIO_SETTINGS im Manifest
- Einstellungen: neuer Bereich "Ton"

Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_011snPXPafPC5i87o68H14W7
2026-08-20 18:35:06 +02:00

23 lines
764 B
Dart

import 'package:audio_session/audio_session.dart';
/// Gerätetypen, die als "Kopfhörer" gelten — Klinke wie Bluetooth.
const _headphoneTypes = {
AudioDeviceType.wiredHeadset,
AudioDeviceType.wiredHeadphones,
AudioDeviceType.bluetoothA2dp,
AudioDeviceType.bluetoothSco,
};
/// Entscheidet, ob nach dem Verbinden von [added] automatisch abgespielt wird.
/// Nur wenn die Einstellung aktiv ist, etwas in der Warteschlange steht und
/// gerade nichts läuft — eine laufende Wiedergabe wird nie unterbrochen.
bool shouldAutoPlay({
required Set<AudioDeviceType> added,
required bool enabled,
required bool hasQueue,
required bool playing,
}) {
if (!enabled || !hasQueue || playing) return false;
return added.any(_headphoneTypes.contains);
}