mpv/core
wm4 4cda1d113e core: completely change handling of attached picture pseudo video
Before this commit, we tried to play along with libavformat and tried
to pretend that attached pictures are video streams with a single
frame, and that the frame magically appeared at the seek position when
seeking. The playback core would then switch to a mode where the video
has ended, and the "remaining" audio is played.

This didn't work very well:
- we needed a hack in demux.c, because we tried to read more packets in
  order to find the "next" video frame (libavformat doesn't tell us if
  a stream has ended)
- switching the video stream didn't work, because we can't tell
  libavformat to send the packet again
- seeking and resuming after was hacky (for some reason libavformat sets
  the returned packet's PTS to that of the previously returned audio
  packet in generic code not related to attached pictures, and this
  happened to work)
- if the user did something stupid and e.g. inserted a deinterlacer by
  default, a picture was never displayed, only an inactive VO window)
- same when using a command that reconfigured the VO (like switching
  aspect or video filters)
- hr-seek didn't work

For this reason, handle attached pictures as separate case with a
separate video decoding function, which doesn't read packets. Also,
do not synchronize audio to video start in this case.
2013-07-11 19:23:56 +02:00
..
input command: add screenshot_to_file command 2013-07-08 20:37:11 +02:00
timeline demux: simplify demux_open() calls 2013-07-08 01:37:30 +02:00
asxparser.c
asxparser.h
av_common.c core: add common function to initialize AVPacket 2013-06-03 22:40:07 +02:00
av_common.h core: add common function to initialize AVPacket 2013-06-03 22:40:07 +02:00
av_log.c av_log: change how ffmpeg log messages are formatted 2013-06-22 20:34:47 +02:00
av_log.h
av_opts.c vf_lavfi: allow setting avopts 2013-05-26 16:44:18 +02:00
av_opts.h
bstr.c bstr: add bstrspn() 2013-04-21 03:47:05 +02:00
bstr.h bstr: add bstrto0() 2013-04-21 03:47:05 +02:00
charset_conv.c sub: libguess support for -subcp 2013-06-25 00:11:57 +02:00
charset_conv.h sub: add subtitle charset conversion 2013-06-25 00:11:56 +02:00
codecs.c core: redo how codecs are mapped, remove codecs.conf 2013-02-10 17:25:56 +01:00
codecs.h core: redo how codecs are mapped, remove codecs.conf 2013-02-10 17:25:56 +01:00
command.c core: don't access demux_stream outside of demux.c, make it private 2013-07-11 19:17:51 +02:00
command.h input: handle mouse movement differently 2013-06-29 22:58:13 +02:00
cpudetect.c
cpudetect.h
encode.h encode_lavc: simplify encoding status output; remove percentage 2013-06-20 11:17:13 +02:00
encode_lavc.c Merge branch 'sub_mess2' 2013-06-25 00:43:04 +02:00
encode_lavc.h encode_lavc: simplify encoding status output; remove percentage 2013-06-20 11:17:13 +02:00
m_config.c options: use case-sensitive comparsion for options 2013-05-15 15:30:06 +02:00
m_config.h core: add --reset-on-next-file option 2013-04-10 21:32:46 +02:00
m_option.c Remove internal network support 2013-07-07 19:42:38 +02:00
m_option.h m_option, vf: add label support 2013-05-23 01:02:24 +02:00
m_property.c input: make input command deprecation warnings visible 2013-03-26 01:29:38 +01:00
m_property.h
m_struct.c
m_struct.h
mp_common.c cleanup: remove duplicated function, move escape parsing function 2013-02-16 23:24:46 +01:00
mp_common.h cleanup: remove duplicated function, move escape parsing function 2013-02-16 23:24:46 +01:00
mp_core.h core: completely change handling of attached picture pseudo video 2013-07-11 19:23:56 +02:00
mp_memory_barrier.h core: add a spsc ringbuffer implementation 2013-06-16 18:20:39 +02:00
mp_msg.c encoding: when output is pipe: or pipe:1, avoid mp_msg to stdout 2013-04-15 13:30:21 +02:00
mp_msg.h encoding: when output is pipe: or pipe:1, avoid mp_msg to stdout 2013-04-15 13:30:21 +02:00
mp_osd.h osd: always update already visible OSD bar on seeks 2013-02-16 20:50:05 +01:00
mp_ring.c core: add a spsc ringbuffer implementation 2013-06-16 18:20:39 +02:00
mp_ring.h core: add a spsc ringbuffer implementation 2013-06-16 18:20:39 +02:00
mp_talloc.h video/filter: change filter API, use refcounting, remove filter DR 2013-01-13 20:04:10 +01:00
mplayer.c core: completely change handling of attached picture pseudo video 2013-07-11 19:23:56 +02:00
options.c options: remove --ignore-start 2013-07-08 21:59:44 +02:00
options.h options: remove --ignore-start 2013-07-08 21:59:44 +02:00
parser-cfg.c parser-cfg: fix profile-desc 2013-02-18 17:01:25 +01:00
parser-cfg.h
parser-mpcmd.c options: fix exit code when using help options 2013-05-15 16:02:52 +02:00
parser-mpcmd.h options: fix exit code when using help options 2013-05-15 16:02:52 +02:00
path.c command: add screenshot_to_file command 2013-07-08 20:37:11 +02:00
path.h command: add screenshot_to_file command 2013-07-08 20:37:11 +02:00
playlist.c playlist: don't add entries in reverse 2013-07-05 14:07:56 +02:00
playlist.h command: add some playlist manipulation commands 2013-07-02 13:23:26 +02:00
playlist_parser.c options: rename -ss and -endpos, allow relative times 2012-11-16 21:21:15 +01:00
playlist_parser.h
resolve.h core: add libquvi 0.9 support 2013-06-28 15:47:35 +02:00
resolve_quvi.c core: rename mplayer.h and quvi.c 2013-06-28 15:40:28 +02:00
resolve_quvi9.c core: add libquvi 0.9 support 2013-06-28 15:47:35 +02:00
screenshot.c command: add screenshot_to_file command 2013-07-08 20:37:11 +02:00
screenshot.h command: add screenshot_to_file command 2013-07-08 20:37:11 +02:00
subopt-helper.c
subopt-helper.h
version.c build: identify the build time of the binary in the versioning output 2012-12-03 21:08:51 +01:00