of letting individual demuxers and stream readers do their nasty job
git-svn-id: svn://svn.mplayerhq.hu/mplayer/trunk@25987 b3059339-0415-0410-9bf9-f77b7e298cf2
A better solution should be considered later, esp. for the many
broken demuxers that do not treat these flags correctly.
git-svn-id: svn://svn.mplayerhq.hu/mplayer/trunk@25911 b3059339-0415-0410-9bf9-f77b7e298cf2
Set new aspect ratio if needed (for example in cell change)
git-svn-id: svn://svn.mplayerhq.hu/mplayer/trunk@25859 b3059339-0415-0410-9bf9-f77b7e298cf2
Based on various patches from Otvos Attila
and MPlayer'ized by me.
N.B. Always use -vc ffmpeg12 with dvdnav://
git-svn-id: svn://svn.mplayerhq.hu/mplayer/trunk@25852 b3059339-0415-0410-9bf9-f77b7e298cf2
These attachments are passed to libass after demuxer is opened.
git-svn-id: svn://svn.mplayerhq.hu/mplayer/trunk@25686 b3059339-0415-0410-9bf9-f77b7e298cf2
be called from a signal handler.
Instead only make the input system generate quit commands for the first
CTRL+C and otherwise do getch2_disable and exit.
git-svn-id: svn://svn.mplayerhq.hu/mplayer/trunk@25651 b3059339-0415-0410-9bf9-f77b7e298cf2
For history reason, fontconfig is auto-enabled when ass is enabled,
we keep this behavior and document it clearly.
git-svn-id: svn://svn.mplayerhq.hu/mplayer/trunk@25379 b3059339-0415-0410-9bf9-f77b7e298cf2
pause by checking mpctx directly. If there's any video update before the pause
then capture the frame or fallback to use last captured frame as pausing frame.
git-svn-id: svn://svn.mplayerhq.hu/mplayer/trunk@25054 b3059339-0415-0410-9bf9-f77b7e298cf2
must be zero when use a dvdsub_id greater than max sub id from demux.
To remove the implicit assumption, make it up here.
git-svn-id: svn://svn.mplayerhq.hu/mplayer/trunk@24962 b3059339-0415-0410-9bf9-f77b7e298cf2
Substract the delay caused by filter buffering when calculating
currently playing audio position. This matters for af_scaletempo which
buffers significant and varying amounts of data. For other current
filters the effect is normally insignificant.
Instead of the old time-based filter delay field (which was ignored)
this version stores the per-filter delay in units of bytes input read
without corresponding output. This allows the current scaletempo
behavior where other filters before and after it can see the same
nominal samplerate even though the real duration of the data varies;
in this case the other filters can not know the delay they're causing
in terms of real time.
git-svn-id: svn://svn.mplayerhq.hu/mplayer/trunk@24928 b3059339-0415-0410-9bf9-f77b7e298cf2
The samplerate requested from the audio out depended on the initial
value of playback speed on startup. Changing speed later at runtime
does not affect output samplerate; audio is always resampled instead.
Change the init code so that speed does not affect the samplerate
requested and behavior matches what you'd get by starting the file
with speed 1 and then changing it.
The previous behavior could be desirable when using a constant speed
value. However it means that if you start with a low speed and later
switch to normal speed then audio will be resampled to a low output
frequency. You can still use -srate to explicitly select the frequency.
git-svn-id: svn://svn.mplayerhq.hu/mplayer/trunk@24923 b3059339-0415-0410-9bf9-f77b7e298cf2
Remove the following arguments as redundant: in_channels, in_format,
out_minsize, out_maxsize. The first two always equal fields of the
sh_audio_t struct given as the first argument to the function. The
last two are unused after the allocation of sh_audio->a_out_buffer
was changed to be done on demand.
After the out_minsize and out_maxsize arguments are removed the
function preinit_audio_filters() is identical to init_audio_filters(),
so remove it and use the latter instead.
git-svn-id: svn://svn.mplayerhq.hu/mplayer/trunk@24922 b3059339-0415-0410-9bf9-f77b7e298cf2
Rewrite decode_audio to better deal with filters that handle input in
large blocks. It now always places output in sh_audio->a_out_buffer
(which was always given as a parameter before) and reallocates the
buffer if needed. After the changes filters can return arbitrarily
large blocks of data without some of it being lost. The new version
also allows simplifying some code.
git-svn-id: svn://svn.mplayerhq.hu/mplayer/trunk@24920 b3059339-0415-0410-9bf9-f77b7e298cf2
sh_video_t: void *video_out: only assigned to, never read. Remove.
sh_video_t: void *vfilter: change type to struct vf_instance_s *
sh_audio_t: void *afilter: change type to struct af_stream_s *
The latter two never hold different types so there's no reason to use
void *. Maybe they were originally defined that way because the
option of using pointers to incomplete struct types was missed (the
typedefs vf_instance_t and af_stream_t would require extra headers)?
git-svn-id: svn://svn.mplayerhq.hu/mplayer/trunk@24919 b3059339-0415-0410-9bf9-f77b7e298cf2
Make behaviour more consistent with general volume control.
git-svn-id: svn://svn.mplayerhq.hu/mplayer/trunk@24337 b3059339-0415-0410-9bf9-f77b7e298cf2
against instead of directly #including the C file and replace the many extern
declarations by a proper header file.
git-svn-id: svn://svn.mplayerhq.hu/mplayer/trunk@24262 b3059339-0415-0410-9bf9-f77b7e298cf2
mplayer.c:316: warning: redundant redeclaration of 'vo_subdevice'
libvo/video_out.h:237: warning: previous declaration of 'vo_subdevice' was here
mplayer.c:317: warning: redundant redeclaration of 'ao_subdevice'
libao2/audio_out.h:44: warning: previous declaration of 'ao_subdevice' was here
mplayer.c:320: warning: redundant redeclaration of 'vo_flags'
libvo/video_out.h:189: warning: previous declaration of 'vo_flags' was here
git-svn-id: svn://svn.mplayerhq.hu/mplayer/trunk@24184 b3059339-0415-0410-9bf9-f77b7e298cf2