After some time, I succeeded in splitting "flush" and "restart"
functions. A quick measurement gives me ~25% speed improvement, which
is quite a lot. Of course this optimization is specific for this use
case (many short signals).
Is this interesting for the project? I would gladly contribute it...
If yes, how should I share it? As a patch against current git?
Other small details:
- I commented out by default the vorbis comment; if this is important
to be kept, I would like an option (e.g. I could save ~100MB out of
~1.1GB compressed data).
- I allowed ".._set_total_samples_estimate" in initialized state
(intended to be used between flush and restart), in order to generate
a proper streaminfo header; it seems to be otherwise harmless even if
flac-dev mailing list