Yeah, or if we had generic attributes we could do:
![my title](music.php){type=audio}
There was also some discussion in the generic directives thread as to whether something like this should be rendered as a block or inline element. The tentative conclusion was that :audio[my title]{src=music.php}
should be rendered inline (even if the markdown processor doesn’t know the audio
directive/extension it would generate a <span>
which postprocessor or js could pick up), and with two colons it should be rendered as a block (a <div>
if extension unknown):
::audio[my title]{src=music.php}