• David Bryant's avatar
    avcodec/wavpack: add support for DSD files · 9a13ed52
    David Bryant authored
    Add support for WavPack DSD files to the existing WavPack decoder using
    avcodec/dsd to perform the 8:1 decimation to 32-bit float samples. We must
    serialize the dsd2pcm operation (cross-boundary filtering) but would like
    to use frame-level multithreading for the CPU-intensive DSD decompression,
    and this is accomplished with ff_thread_report/await_progress(). Because
    the dsd2pcm operation is independent across channels we use slice-based
    multithreading for that part.
    
    Also a few things were removed from the existing WavPack decoder that
    weren't being used (primarily the SavedContext stuff) and the WavPack
    demuxer was enhanced to correctly determine the sampling rate of DSD
    files (and of course to no longer reject them).
    Signed-off-by: 's avatarDavid Bryant <david@wavpack.com>
    9a13ed52
wvdec.c 10.4 KB