Don't allocate each replay_gain_info object on the heap. Those objects who held a pointer now store a full replay_gain_info object. This reduces the number of allocations and heap fragmentation.
Pass the current URI to wavpack_open_wvc().
Use input_stream.uri.
Make it X_decoder_plugin.c.