Events for properties and descriptions
libvlc desperately needs events for property and description (list) changes.
For example calling libvlc_video_set_subtitle_file is async such that immediately calling libvlc_video_get_spu_description will not list the manually set SPU in the list. So what you end up with is triggering description queries at a random point in time after set_subtitle_file and hope that the description has updated already.
Instead there should be an event to inform the library consumer of changes to properties. This could be a general purpose SpuChanged which can be a change of the current SPU or the description, however ultimately there would be a SpuChanged event for when the current SPU changed and an event SpuDescriptionChanged for when the description changed.
Incomplete list of afffected properties: titles, channels, spus, chapters