AkarinVS / L-SMASH-Works

Works based on L-SMASH project; This repo focuses on the common portion and the VapourSynth plugin. AviSynth users please use https://github.com/HomeOfAviSynthPlusEvolution/L-SMASH-Works. ffmpeg 5.0+ please use ffmpeg-4.5 branch.
47 stars 11 forks source link

VS api v4 audio support #5

Open AkarinVS opened 3 years ago

AkarinVS commented 3 years ago

The v4 api introduces audio support, and lsmas should provide LWLibavAudioSource.

However, after some consideration, I haven't yet found any actual use case of the audio support (mainly owing to the fact the audio have to be decoded into PCM samples, but not all audio tracks are losslessly encoded, so unless we want to do non-trivial processing of the audio, we want to avoid do a decode and then re-encoding of the lossy audio track.)

I might revisit this issue when the audio support is more mature and more use cases pop up.

In the meantime, please share your thoughts on the use cases for audio support as I might be missing something. Of course, I'm open to contributions in this area, but note that I want to keep v3 API support intact for some time, so this will complicate things (better wait until v4 video api supported is committed before attempting adding audio.)

~Supporting v4 video API should be coming soon. Not using v4 API when it's supported has a heavy tax on the performance, so that has to be fixed.~ v4 video API is supported now: https://github.com/AkarinVS/L-SMASH-Works/tree/vs-api4

Update (Sep 13 2021): As v3 source plugins works well in api4 VS, I have no intention to keep maintaining two copies of code, so the vs-api4 branch won't be maintained anymore.)

Thanks.