mpv/mpvcore
wm4 e60b8f181d audio/filter: split af_format into separate filters, rename af_force
af_format is the old audio conversion filter. It could do all possible
conversions supported by the audio chain. However, ever since the
addition of af_lavrresample, most conversions are done by
libav/swresample, and af_format is used as fallback.

Separate out the fallback cases and remove af_format. af_convert24 does
24 bit <-> 32 bit conversions, while af_convertsignendian does sign and
endian conversions. Maybe the way the conversions are split sounds a bit
odd. But the former changes the size of the audio data, while the latter
is fully in-place, so there's at least different buffer management.

This requires a quite complicated algorithm to make sure all these
"partial" conversion filters can actually get from one format to
another. E.g. s24le->s32be always requires convertsignendian and
convert24, but af.c has no idea what the intermediate format should
be. So I added a graph search (trying every possible format and
filter) to determine required format and filter. When I wrote this,
it seemed this was still better than messing everything into
af_lavrresample, but maybe this is overkill and I'll change my
opinion. For now, it seems nice to get rid of af_format though.

The AC3->IEC61937 conversion isn't supported anymore, but I don't think
this is needed anywhere. Most AOs test all formats explicitly, or use
the AF_FORMAT_IS_IEC61937() macro (which includes AC3).

One positive consequence of this change is that conversions always
include dithering (done by libav/swresample), instead of possibly going
through af_format, which doesn't do anything fancy.

Rename af_force to af_format. It's essentially compatible with command
line uses of af_format. We retain a compatibility alias for af_force.
2013-10-23 10:04:12 +02:00
..
input input: fix --input-ar-rate=0 2013-10-20 13:55:10 +02:00
lua osc: make transparency of background-box configurable 2013-10-18 00:33:01 +02:00
timeline tl_matroska: fix use-after-free with --cache 2013-10-19 22:58:02 +02:00
asxparser.c core: add a playlist demuxer 2013-08-26 10:09:45 +02:00
asxparser.h
av_common.c
av_common.h
av_log.c mplayer: print ffmpeg library versions along with mpv version info 2013-10-14 20:14:17 +02:00
av_log.h mplayer: print ffmpeg library versions along with mpv version info 2013-10-14 20:14:17 +02:00
av_opts.c
av_opts.h
bstr.c bstr: make UTF-8 check stricter 2013-08-15 23:40:03 +02:00
bstr.h bstr: add UTF-8 validation and sanitation functions 2013-08-15 23:40:02 +02:00
charset_conv.c sub: don't print detected charset if it's UTF-8 2013-08-15 23:40:04 +02:00
charset_conv.h sub: don't print detected charset if it's UTF-8 2013-08-15 23:40:04 +02:00
codecs.c
codecs.h
command.c command: preferably show "add"/"cycle"/"set" command errors on OSD 2013-10-12 18:57:02 +02:00
command.h command: add commands for displaying overlays 2013-10-05 22:46:55 +02:00
cpudetect.c
cpudetect.h
encode.h
encode_lavc.c
encode_lavc.h
m_config.c parser-cfg: use bstr everywhere after parsing stage 2013-10-14 23:37:58 +02:00
m_config.h parser-cfg: use bstr everywhere after parsing stage 2013-10-14 23:37:58 +02:00
m_option.c audio/filter: split af_format into separate filters, rename af_force 2013-10-23 10:04:12 +02:00
m_option.h mplayer: start track IDs from 1 rather than 0 2013-08-21 18:32:42 +02:00
m_property.c command: when changing a property, allow showing an extra OSD message 2013-09-21 00:07:42 +02:00
m_property.h command: when changing a property, allow showing an extra OSD message 2013-09-21 00:07:42 +02:00
mp_common.c mp_common: add function which accepts a format string to format playback time 2013-09-15 02:51:17 +02:00
mp_common.h Fix previous commit 2013-09-25 22:44:12 +02:00
mp_core.h mplayer: fix looping of very short files 2013-09-29 21:10:45 +02:00
mp_lua.c input: translate mouse position to OSD space early 2013-09-27 15:39:28 +02:00
mp_lua.h Add initial Lua scripting support 2013-09-26 01:28:58 +02:00
mp_memory_barrier.h
mp_msg.c mp_msg: remove gettext() support 2013-10-18 22:38:10 +02:00
mp_msg.h mp_msg: remove gettext() support 2013-10-18 22:38:10 +02:00
mp_osd.h
mp_ring.c mp_ring: fix mp_ring_read_cb() when read wraps around 2013-10-08 20:03:57 +02:00
mp_ring.h
mp_talloc.h mp_talloc: simplify a bit 2013-10-19 21:43:08 +02:00
mplayer.c mplayer: don't call libquvi for local files 2013-10-20 21:33:27 +02:00
mpv_global.h
options.c options: enable OSC by default 2013-10-14 21:09:54 +02:00
options.h core: add --force-window 2013-10-02 01:39:28 +02:00
parser-cfg.c parser-cfg: allow putting options with leading "--" 2013-10-14 23:41:26 +02:00
parser-cfg.h
parser-mpcmd.c core: add a playlist demuxer 2013-08-26 10:09:45 +02:00
parser-mpcmd.h
path.c macosx: move bundle path stuff to path-macosx.m 2013-09-18 19:30:11 +02:00
path.h path: add a common mp_is_url() function 2013-09-04 16:15:08 +02:00
playlist.c playlist: check for NULL on caller site 2013-10-12 18:57:02 +02:00
playlist.h mplayer: fix looping of very short files 2013-09-29 21:10:45 +02:00
playlist_parser.c playlist: check for NULL on caller site 2013-10-12 18:57:02 +02:00
playlist_parser.h core: add a playlist demuxer 2013-08-26 10:09:45 +02:00
resolve.h quvi: coerce libquvi 0.4 support into allowing format switching 2013-09-10 16:38:34 +02:00
resolve_quvi.c quvi: coerce libquvi 0.4 support into allowing format switching 2013-09-10 16:38:34 +02:00
resolve_quvi9.c libquvi9: work around insane interaction between libquvi and libkdecore 2013-10-12 18:56:03 +02:00
screenshot.c core: add --force-window 2013-10-02 01:39:28 +02:00
screenshot.h
version.c