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
Add an input/input.c fd type whose read function takes no arguments and
returns no value. If such a function reads key or command events it'll
add them to the queues itself. Use this type for terminal input which
was special-cased before. The event function for X11-based VOs will use
the same type later.
git-svn-id: svn://svn.mplayerhq.hu/mplayer/trunk@24152 b3059339-0415-0410-9bf9-f77b7e298cf2
Don't set osd_visible directly in seek code. It's usually set to the
same value by set_osd_bar() already. In the cases where set_osd_bar()
is not called or doesn't set it (seek is triggered by EDL or loop, or
there is no video output) it seems to make no difference.
This fixes a minor bug: if you set OSD level to disabled while the
progress bar was visible then doing seeks before it disappeared would
keep it visible but not change its value.
git-svn-id: svn://svn.mplayerhq.hu/mplayer/trunk@24112 b3059339-0415-0410-9bf9-f77b7e298cf2
Move timed hiding of OSD progress bar to the same place where OSD
messages are timed out.
git-svn-id: svn://svn.mplayerhq.hu/mplayer/trunk@24111 b3059339-0415-0410-9bf9-f77b7e298cf2
The default version of the sleep timer no longer has the code which
required adding a different #ifdef SYS_DARWIN version, so remove
the Darwin implementation.
git-svn-id: svn://svn.mplayerhq.hu/mplayer/trunk@24090 b3059339-0415-0410-9bf9-f77b7e298cf2
No need to mark stdin non-select()able in the mp_input_add_key_fd call
when no HAVE_POSIX_SELECT; input.c won't use select() on anything if
that is not defined.
git-svn-id: svn://svn.mplayerhq.hu/mplayer/trunk@24061 b3059339-0415-0410-9bf9-f77b7e298cf2
Step 8 (last): removing old globals from tv.c, tv.h,
fixing remaining references in cfg-common.h and mplayer.c
git-svn-id: svn://svn.mplayerhq.hu/mplayer/trunk@23909 b3059339-0415-0410-9bf9-f77b7e298cf2
r23530 breaks policy: notification was not sent to mailing list,
agreements of other devs were not received.
Code also should be reviewed/cleaned up/fixed.
git-svn-id: svn://svn.mplayerhq.hu/mplayer/trunk@23593 b3059339-0415-0410-9bf9-f77b7e298cf2
When -loop is used as a per-file option it seeks back to the start of
the file from the end and tries to reset options to their original
values. This reset is not implemented properly: it simply sets the
option variables back without running any of the associated control
code. Implementing the option reset functionality properly would be a
significant amount of work and there is no clear need for it, so I'm
simply removing the broken version.
None of this affects the use of -loop as a global option. That case has
a separate implementation which always starts a new file from scratch
with default option values.
git-svn-id: svn://svn.mplayerhq.hu/mplayer/trunk@23567 b3059339-0415-0410-9bf9-f77b7e298cf2
modified patch from Otvos Attila oattila at chello dot hu
Module uses zvbi library for all low-level VBI operations (like I/O with vbi
device, converting vbi pages into usefull vbi_page stuctures, rendering them
into RGB32 images).
All teletext related stuff (except properties, slave commands and rendering
osd in text mode or RGB32 rendered teletext pages in spu mode) is implemented
in tvi_vbi.c
New properties:
teletext_page - switching between pages
teletext_mode - switch between on/off/opaque/transparent modes
teletext_format - (currently read-only) allows to get format info
(black/white,gray,text)
teletext_half_page - trivial zooming (displaying top/bottom half of teletext
page)
New slave commands:
teletext_add_dec - user interface for jumping to any page by editing page number
interactively
teletext_go_link - goes though links, specified on current page
git-svn-id: svn://svn.mplayerhq.hu/mplayer/trunk@23530 b3059339-0415-0410-9bf9-f77b7e298cf2
allows to bind one input key to several slave commands (independently for each section)
as shown below:
RIGHT seek +10
RIGHT {tv} tv_step_channel 1
RIGHT {dvdnav} dvdnav 4
Currenlty only "tv" section added.
patch by Otvos Attila oattila at chello dot hu
git-svn-id: svn://svn.mplayerhq.hu/mplayer/trunk@23497 b3059339-0415-0410-9bf9-f77b7e298cf2
Add missing '\n' to "pts value <= previous", change level to INFO
git-svn-id: svn://svn.mplayerhq.hu/mplayer/trunk@23312 b3059339-0415-0410-9bf9-f77b7e298cf2
"implicit declaration of function ‘mplayer_put_key’" warnings
Based on Attila's suggestions.
Approved by Uoti and Ivan.
git-svn-id: svn://svn.mplayerhq.hu/mplayer/trunk@22841 b3059339-0415-0410-9bf9-f77b7e298cf2
as long as there are enough pts values for frames that the decoder
returns.
This should allow passing NAL units individually.
git-svn-id: svn://svn.mplayerhq.hu/mplayer/trunk@22516 b3059339-0415-0410-9bf9-f77b7e298cf2
The value is related to overall a/v sync and is not used by audio
demuxers or decoders.
git-svn-id: svn://svn.mplayerhq.hu/mplayer/trunk@22506 b3059339-0415-0410-9bf9-f77b7e298cf2
Manual seeks no longer shift -endpos position (hopefully no one
considered that a "feature").
git-svn-id: svn://svn.mplayerhq.hu/mplayer/trunk@22356 b3059339-0415-0410-9bf9-f77b7e298cf2