Stuff for the PWG
-----------------

* arguments

  - how to add arguments
    - create an identifier in the enum, starting with ARG_
      example: ARG_RATE
    - add the property by adding a
      g_object_class_install_property line
      FIXME: what is name/nick/blurb in the paramspec ?
    - if the argument is readable, a block of code for it needs to be added
      to the _get_property function.

  - default value
    - default value should be set in _init function
    - default value can be specified in paramspec (but I don't think this
      is used anywhere)


  - things to check/possible problems
    - do you have a _get_property function ?
    - do you have a _set_property function ?
    - do both have a default handler that handles invalid property ID's ?
    - are the _get/_set_property handlers assigned to the class's struct ?
    - do you have a g_object_class_install_property line for the argument ?
    - are there restrictions on when your parameters can change ?
      e.g. sample rate is not something that should be changed while PLAYING,
           so it can only be changed in the NULL state
    - did you use ARG_ ... consistently everywhere ?


  - my own problems:
    - how to set defaults and make the paramspec be right for them ?


* audio
  - explanation of difference of width and depth
  - guidelines on how to implement this properly
