[alsa-devel] [RFC] compress: add support for gapless playback

Vinod Koul vinod.koul at intel.com
Wed Feb 6 15:02:29 CET 2013


On Wed, Feb 06, 2013 at 03:14:22PM +0100, Takashi Iwai wrote:
> At Tue, 05 Feb 2013 20:44:42 -0600,
> Pierre-Louis Bossart wrote:
> > 
> > >   /**
> > > + * struct snd_compr_metadata: compressed stream metadata
> > > + * @encoder_delay: no of samples inserted by the encoder at the beginning
> > > + * of the track
> > > + * @encoder_padding: no of samples appended by the encoder at the end
> > > + * of the track
> > > + */
> > > +struct snd_compr_metadata {
> > > +	 __u32 encoder_delay;
> > > +	 __u32 encoder_padding;
> > > +};
> > 
> > You need to pad this structure with reserved bytes for future 
> > evolutions. Things like ReplayGain, etc, might be of interest for some 
> > implementations. Let's not be cheap here
> 
> Or, make it a single key/value.  User-space can call the ioctl
> multiple times with different key/value pairs.
Yes that would be smarter from ABI POV. But do we really have many params. And
also in this case setting too many varible one by one can be time consuming....

> 
> (BTW, don't you need get_metadata?  IMO, it was a mistake that we
>  didn't provide get_* variants for PCM parameters.)
For above case no, as metadata is from file parser and send to decoder. But yes
when we are encoding this will help. I think I will add that as well

--
~Vinod


More information about the Alsa-devel mailing list