Move av_log callback handling from vd_ffmpeg.c to a new file
av_log.c and install the callback immediately when starting the
program. Main functionality improvements of the new code:
- The old version only installed the callback when opening an FFmpeg
video decoder. If nothing had triggered that then av_log() messages
from other sources (libavformat, audio decoding, swscale usage)
bypassed MPlayer's output system completely. Now the callback is
always installed.
- Current av_log message severity levels are handled correctly. The
old code used MSGL_ERR for some messages that should be MSGL_V.
- Message type is now set for libavformat contexts
(MSGT_DEMUXER / MSGT_MUXER).
- The old code did "mp_msg_test(type, mp_level)" before actually
determining the type, so that it always used MSGT_FIXME. This led
to some messages being incorrectly dropped in case the user
had specified module-specific verbosity levels. The old check in
question was originally motivated by performance problems when
there were a lot of callbacks; however it's not clear whether the
part about it skipping the type determination was intentional (most
of the performance problems must have come from the way the
original code used snprintf) and in my tests current FFmpeg
libraries have not generated unreasonable amounts of callbacks
anyway.
As part of merging subtitle-in-terminal changes make
update_subtitles() only clear existing subtitles if called with the
reset argument, and not try to set new ones. Later calls should set
the needed new subtitles, and this change avoids some problems with
trying to set subtitles when mp_property_sub() in command.c gets
called from initialization code before full initialization.
currently requires that.
That probably is an unintended API change and should be fixed/reverted
in lavc but it hurts little to workaround here.
git-svn-id: svn://svn.mplayerhq.hu/mplayer/trunk@29709 b3059339-0415-0410-9bf9-f77b7e298cf2
This code to calculate codec delay should work with both with regular
FFmpeg and FFmeg-mt. This MPlayer version is not completely compatible
with current FFmpeg-mt though, since it has a build system change
which matches upstream FFmpeg but hasn't been integrated in FFmpeg-mt
yet (RUNTIME_CPUDETECT -> CONFIG_RUNTIME_CPUDETECT rename).
for XvMC/VDPAU acceleration in a single place.
This should get closer to working with selecting acceleration via pix_fmt instead
of via a special codec for each method.
git-svn-id: svn://svn.mplayerhq.hu/mplayer/trunk@28766 b3059339-0415-0410-9bf9-f77b7e298cf2
it correctly (VDPAU and probably H.264 currently don't, MPEG1/2 does etc.).
git-svn-id: svn://svn.mplayerhq.hu/mplayer/trunk@28643 b3059339-0415-0410-9bf9-f77b7e298cf2
Convert vo_x11_border (used in vo_gl/gl2 though the vo_gl_border
macro) to use a wrapper macro in old-style VOs which do not provide a
VO object argument. Before this function had an explicit global_vo
argument in vo_gl/gl2. New vo_vdpau uses it too so use the same
mechanism as most other functions.
get_format and get_buffer would not crash if called during avcodec_open.
Patch by Gwenole Beauchesne [gbeauchesne splitted-desktop com]
git-svn-id: svn://svn.mplayerhq.hu/mplayer/trunk@28636 b3059339-0415-0410-9bf9-f77b7e298cf2
This is only needed for MPI_IMGTYPE_NUMBERED support and will probably
first be used for VDPAU, but it is still "the right thing to do".
git-svn-id: svn://svn.mplayerhq.hu/mplayer/trunk@28590 b3059339-0415-0410-9bf9-f77b7e298cf2
Also adapt MPlayer to definition name changes in libavcodec/xvmc.h.
git-svn-id: svn://svn.mplayerhq.hu/mplayer/trunk@28557 b3059339-0415-0410-9bf9-f77b7e298cf2