text: #ifndef _AUDIO_H
  #define _AUDIO_H
  
  typedef struct {
      void (*help)(void);
      char *name;
  
      // start of program
      int (*init)(int argc, char **argv);
      // at end of program
      void (*deinit)(void);
  
      void (*start)(int sample_rate);
      // block of samples
      void (*play)(short buf[], int samples);
      void (*stop)(void);
  
      // may be NULL, in which case soft volume is applied
      void (*volume)(double vol);
  } audio_output;
  
  audio_output *audio_get_output(char *name);
  void audio_ls_outputs(void);
  
  #endif //_AUDIO_H
  