mirror of
https://github.com/BobTheBlinker/android_kernel_motorola_sm6375.git
synced 2026-10-28 18:51:56 -04:00
ALSA: compress: Add support to send codec specific data
Codec specific metadata is sent only for first stream in gapless playback. This causes incorrect configuration to be set for second stream and distortions are observed due to framedrops in adsp. Add support to send codec specific format during start of next stream in gapless using set_next_track_param. Change-Id: Ic0a9286c4fd8d17df63d676d6ce14cd394dea791 Signed-off-by: Chaithanya Krishna Bacharaju <[email protected]> Signed-off-by: Alexy Joseph <[email protected]> Signed-off-by: Banajit Goswami <[email protected]> Signed-off-by: Meng Wang <[email protected]>
This commit is contained in:
parent
a70116e190
commit
7913e574a9
4 changed files with 68 additions and 0 deletions
|
|
@ -85,6 +85,8 @@ struct snd_compr_stream {
|
|||
* @get_params: retrieve the codec parameters, mandatory
|
||||
* @set_metadata: Set the metadata values for a stream
|
||||
* @get_metadata: retrieves the requested metadata values from stream
|
||||
* @set_next_track_param: send codec specific data of subsequent track
|
||||
* in gapless
|
||||
* @trigger: Trigger operations like start, pause, resume, drain, stop.
|
||||
* This callback is mandatory
|
||||
* @pointer: Retrieve current h/w pointer information. Mandatory
|
||||
|
|
@ -107,6 +109,10 @@ struct snd_compr_ops {
|
|||
struct snd_compr_metadata *metadata);
|
||||
int (*get_metadata)(struct snd_compr_stream *stream,
|
||||
struct snd_compr_metadata *metadata);
|
||||
#ifdef CONFIG_AUDIO_QGKI
|
||||
int (*set_next_track_param)(struct snd_compr_stream *stream,
|
||||
union snd_codec_options *codec_options);
|
||||
#endif
|
||||
int (*trigger)(struct snd_compr_stream *stream, int cmd);
|
||||
int (*pointer)(struct snd_compr_stream *stream,
|
||||
struct snd_compr_tstamp *tstamp);
|
||||
|
|
|
|||
Loading…
Reference in a new issue