1
0
mirror of https://github.com/mpv-player/mpv synced 2025-03-07 14:47:53 +00:00
mpv/audio/filter
wm4 06050aed99 audio: introduce support for padding channels
Some audio APIs explicitly require you to add dummy channels. These are
not rendered, and only exist for the sake of the audio API or hardware
strangeness. At least ALSA, Sndio, and CoreAudio seem to have them.

This commit is preparation for using them with ao_coreaudio.

The result is a bit messy. libavresample/libswresample don't have good
API for this; avresample_set_channel_mapping() is pretty useless.
Although in theory you can use it to add and remove channels, you
can't set the channel counts. So we do the ordering ourselves by making
sure the audio data is planar, and by swapping the plane pointers. This
requires lots of messiness to get the conversions in place. Also, the
input reordering is still done with the "old" method, and doesn't
support padded channels - hopefully this will never be needed. (I tried
to come up with cleaner solutions, but compared to my other attempts,
the final commit is not that bad.)
2015-05-05 01:11:16 +02:00
..
af_bs2b.c Update license headers 2015-04-13 12:10:01 +02:00
af_center.c Update license headers 2015-04-13 12:10:01 +02:00
af_channels.c Update license headers 2015-04-13 12:10:01 +02:00
af_convert24.c af_convert24: use refcounted frames 2015-01-13 20:17:08 +01:00
af_convertsignendian.c audio/filters: use refcounted frames for some in-place filters 2015-01-13 20:17:03 +01:00
af_delay.c Update license headers 2015-04-13 12:10:01 +02:00
af_drc.c Update license headers 2015-04-13 12:10:01 +02:00
af_dummy.c Update license headers 2015-04-13 12:10:01 +02:00
af_equalizer.c Update license headers 2015-04-13 12:10:01 +02:00
af_export.c Update license headers 2015-04-13 12:10:01 +02:00
af_extrastereo.c Update license headers 2015-04-13 12:10:01 +02:00
af_format.c audio/filters: use refcounted frames for some simple filters 2015-01-13 20:16:59 +01:00
af_hrtf.c Update license headers 2015-04-13 12:10:01 +02:00
af_hrtf.h Update license headers 2015-04-13 12:10:01 +02:00
af_karaoke.c Update license headers 2015-04-13 12:10:01 +02:00
af_ladspa.c Update license headers 2015-04-13 12:10:01 +02:00
af_lavcac3enc.c Update license headers 2015-04-13 12:10:01 +02:00
af_lavfi.c af_lavfi: handle seeking 2015-03-17 22:31:05 +01:00
af_lavrresample.c audio: introduce support for padding channels 2015-05-05 01:11:16 +02:00
af_pan.c Update license headers 2015-04-13 12:10:01 +02:00
af_rubberband.c af_rubberband: actually fix deadlock 2015-02-12 10:15:12 +01:00
af_scaletempo.c Update license headers 2015-04-13 12:10:01 +02:00
af_sinesuppress.c Update license headers 2015-04-13 12:10:01 +02:00
af_sub.c Update license headers 2015-04-13 12:10:01 +02:00
af_surround.c Update license headers 2015-04-13 12:10:01 +02:00
af_sweep.c Update license headers 2015-04-13 12:10:01 +02:00
af_volume.c Update license headers 2015-04-13 12:10:01 +02:00
af.c Update license headers 2015-04-13 12:10:01 +02:00
af.h Update license headers 2015-04-13 12:10:01 +02:00
dsp.h Update license headers 2015-04-13 12:10:01 +02:00
equalizer.h Update license headers 2015-04-13 12:10:01 +02:00
filter.c Update license headers 2015-04-13 12:10:01 +02:00
filter.h Update license headers 2015-04-13 12:10:01 +02:00
tools.c Update license headers 2015-04-13 12:10:01 +02:00
window.c Update license headers 2015-04-13 12:10:01 +02:00
window.h Update license headers 2015-04-13 12:10:01 +02:00