api/waveform: improve caching by generating cache key from &waveform.Options{}