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