TB2026-YDS Firmware
Loading...
Searching...
No Matches
player.c File Reference

Playback transport state machine over the playlist and pipeline. More...

#include "player.h"
#include "pipeline.h"
#include "storage.h"
#include "sink_i2s_dac.h"
#include "sink_bluetooth.h"
#include "bluetooth.h"
#include "settings.h"
#include "esp_log.h"

Functions

esp_err_t player_init (void)
 Register the player with the pipeline's end-of-track callback. Call once at startup.
esp_err_t player_set_output (volume_output_t out)
 Select the output and keep the volume routing consistent.
esp_err_t player_play (size_t index)
 Play the storage track at index (stops any current stream first).
esp_err_t player_start (void)
 Start playback from the stopped state (e.g. first play after boot).
esp_err_t player_pause (void)
 Pause the current playback (sink down, position kept).
esp_err_t player_resume (void)
 Resume a paused playback.
esp_err_t player_stop (void)
 Stop playback and power the output down.
void player_poll (void)
 Complete a deferred Bluetooth start once the speaker acknowledges the volume.
esp_err_t player_next (void)
 Skip to the next track (respecting the playlist's repeat/shuffle order).
esp_err_t player_prev (void)
 Step to the previous track. Mirror of player_next.
esp_err_t player_get_state (player_status_t *out)
 Read the current transport state and track.
void player_save_resume (void)
 Persist the current track (path + position) so Now Playing re-selects it after boot.

Detailed Description

Playback transport state machine over the playlist and pipeline.

Note
Développé avec l'assistance de Claude Opus 4.8 (Anthropic), sous la direction de Y. Dos Santos : spécification, revue et validation sur cible par l'auteur.