[FFmpeg-trac] #8751(undetermined:new): LADSPA latency compensation
FFmpeg
trac at avcodec.org
Sun Jun 21 13:44:08 EEST 2020
#8751: LADSPA latency compensation
-------------------------------------+-------------------------------------
Reporter: ltratt | Type:
| enhancement
Status: new | Priority: normal
Component: | Version:
undetermined | unspecified
Keywords: LADSPA | Blocked By:
filter |
Blocking: | Reproduced by developer: 0
Analyzed by developer: 0 |
-------------------------------------+-------------------------------------
A common idiom for LADSPA plugins is for them to report their latency with
a "latency" output control port which the invoking program can use to
correct the output. For example, sox has "ladspa -l" (see
https://sourceforge.net/p/sox/patches/101/) and Audacity defaults to using
this idiom (https://manual.audacityteam.org/man/effect_menu_ladspa.html).
ffmpeg doesn't seem to do this automatically (which is fair enough, as
it's not a guaranteed standard), but doesn't seem to have any way to do it
optionally, nor any way?
For example, consider the noise-gate plugin https://github.com/feuerbach
/noise-gate. If it's used as such:
{{{
ffmpeg -i in.aac -af
"ladspa=file=/usr/local/lib/ladspa/ng.so:p=noise_gate:c=c0=-35|c1=1500|c2=150|c3=50"
-c:a aac -y out.aac
}}}
then 'out.aac' will be both substantially delayed relative to 'in.aac' as
well as having the input cut off. You can see the noise-gate plugin
defining the output port here for example:
https://github.com/feuerbach/noise-gate/blob/master/ng.cpp#L246
I think https://trac.ffmpeg.org/ticket/7616 is related to this issue,
although the report there isn't clear about how common this idiom is.
--
Ticket URL: <https://trac.ffmpeg.org/ticket/8751>
FFmpeg <https://ffmpeg.org>
FFmpeg issue tracker
More information about the FFmpeg-trac
mailing list