1
0
mirror of https://github.com/mpv-player/mpv synced 2025-03-25 04:38:01 +00:00
Commit Graph

1262 Commits

Author SHA1 Message Date
Uoti Urpala
8de8be1536 Move input options to option struct 2008-04-30 19:34:48 +03:00
Uoti Urpala
a5fdd8f6f9 input: Move command filedescriptor list to context struct 2008-04-30 14:46:21 +03:00
Uoti Urpala
423b95bf5c input: Move cmd_queue to context struct
Menu instances now also need a input context pointer to queue commands.
2008-04-30 14:46:21 +03:00
Uoti Urpala
bfcb3a7a81 input: Move key filedescriptor list to context struct
The context variable is now passed to VOs too as it's now needed to
add a callback on the X filedescriptor.
2008-04-30 14:46:17 +03:00
Uoti Urpala
66db9ec7d6 Remove INITIALIZED_INPUT from mpctx->initialized_flags
The input functions are never uninited except at exit. Move the uninit
to player exit function and remove the flag.
2008-04-30 13:24:56 +03:00
Uoti Urpala
7b085d4514 input: Move command bind variables to context struct 2008-04-30 13:24:56 +03:00
Uoti Urpala
9e9932d4d7 Create a context for input.c state
Start moving static variables to a context struct. Only autorepeat
state is moved to the struct in this commit.

mp_input_check_interrupt now requires the context variable. Change
stream functions to pass it. It's still stored in a static variable in
stream/.
2008-04-30 13:24:54 +03:00
Uoti Urpala
4237cb821b Move allocation/free of x11 struct to x11_common.c
Allocate the struct in the init function and free in uninit.
2008-04-29 16:22:33 +03:00
Uoti Urpala
06405a5ba5 Move key_fifo_size & doubleclick_time to options struct 2008-04-29 15:52:29 +03:00
Uoti Urpala
77ec83e351 Add a context for mp_fifo
Store data in an allocated context and take it as an argument instead
of using static variables.
2008-04-29 15:36:51 +03:00
Uoti Urpala
986e519fc9 input: Remove separate mp_input_add_event_fd
Use the same mp_input_add_key_fd for all uses and add a context
argument to its callback that was before only in the event fd
callbacks. Instead of checking in input.c whether keys were inserted
to the keypress FIFO during the callback do the check in the callback
before returning and set return value accordingly.
2008-04-29 12:55:23 +03:00
Uoti Urpala
eaf7857b7f timers: Remove GetRelativeTime()
Move the code calculating time delta since last query out of the
platform-specific drivers and into mplayer.c. The platform-specific
drivers now return absolute values only.

The way the code in timer-darwin.c uses doubles in wrapping arithmetic
looks questionable and this change might make problems in it more
visible.
2008-04-28 12:18:45 +03:00
Uoti Urpala
37e1edee35 Move initialized_flags to mpctx
The function exit_sighandler had a line
  if(initialized_flags==0 && sig_count>1) exit(1);
rather than try to make this work without the variable I just removed
the line as it looks unlikely this condition would occur except very
rarely.
2008-04-26 15:31:39 +03:00
Uoti Urpala
80d43e8632 Move global filename to mpctx 2008-04-26 15:17:51 +03:00
Uoti Urpala
ae0f9e2658 Disable automatic playlist parsing properly
The playlist code is unsafe to use with potentially hostile sources.
It was disabled by default for local files but not for network streams.
Make sure it is not automatically triggered for network streams either.
2008-04-26 14:04:55 +03:00
Uoti Urpala
529d106627 Silence "discards qualifiers" warnings when compiling mplayer.c
Add casts to subconfig entries in option lists to avoid the excessive
amount of "initialization discards qualifiers from pointer target
type" warnings. Also add const to the type of mpctx_get_audio_out to
eliminate a warning and make it match the type in the header (svn
r25793 had added a const to the header but not mplayer.c). Make
libmenu_vfs a table of pointers to const to eliminate another warning
plus make the table itself const.
2008-04-26 11:03:12 +03:00
Uoti Urpala
fb33e286b5 Move global mconfig to mpctx
The global was used in the function cfg_include which handles the
-include option. Make the address available in that function by
creating a new dynamically allocated option in m_config_new that has
the address in the option's private data.

asxparser.c also used the global. Making it available through all ways
the code could get called required a number of relatively straightforward
changes to playtree and menu code.
2008-04-26 10:44:59 +03:00
Uoti Urpala
2b47fd59ab Merge svn changes up to r26540
Conflicts:

	Makefile
2008-04-26 09:39:09 +03:00
Uoti Urpala
0885f4e5b5 Move vf_settings to options struct 2008-04-26 01:19:29 +03:00
Uoti Urpala
bb679dd40a Remove global vo_flags
Move the information to struct sh_video field.
2008-04-25 07:15:07 +03:00
Uoti Urpala
0e757bf9da Remove _s/_st suffix from some struct names
Since the names are always used after the keyword "struct" having a
suffix as in "struct demuxer_st" is almost completely pointless.
2008-04-25 03:34:22 +03:00
corey
83f1331817 use existing MSGTR_FilefmtFourccSizeFpsFtime translatable string macro
git-svn-id: svn://svn.mplayerhq.hu/mplayer/trunk@26511 b3059339-0415-0410-9bf9-f77b7e298cf2
2008-04-23 20:14:14 +00:00
Uoti Urpala
c510959da5 Remove some unnecessary recursive includes
Remove some #include lines from headers, some of those removals made
possible by using incomplete struct types instead of typedefs. Include
mp_osd.h in mplayer.c and command.c after removing it from mp_core.h.
Remove "#ifdef USE_ASS" around some "struct ass_track_s *" fields
which will now compile even without ASS support.
2008-04-23 13:48:38 +03:00
Uoti Urpala
66bd120a3a Move dvdsub_id to options struct
Name the field "sub_id" as it's not specific to DVD subs.

Remove some other unused extern declarations together with dvdsub_id
from demux_mkv.c and demux_lavf.c.
2008-04-23 13:48:38 +03:00
Uoti Urpala
c0c914effd Move audio_id and video_id to options struct 2008-04-23 13:48:38 +03:00
Uoti Urpala
f518cf7ea9 Add option pointer to stream struct (at least temporarily)
The stream code does not access many option variables directly, but it
does access some such as audio_id and network_bandwidth (and does that
without including proper headers for them). Add option pointer to the
stream struct to allow access to those variables. Remove the unused
(always NULL) and clumsy-looking char** options parameter in the
open_stream call and replace it with the option pointer. The parameter
is currently only set in the main open_stream() call in MPlayer.c and
not in any other locations that can open a stream.

In the long term it might be better to pass a more limited set of
values somehow, but this should do for now.
2008-04-23 13:48:38 +03:00
Uoti Urpala
d9aa368a6d Move playback_speed to options struct 2008-04-23 13:48:37 +03:00
Uoti Urpala
3ee6503a07 Move global rel_seek_secs and abs_seek_pos to mpctx 2008-04-23 13:48:37 +03:00
Uoti Urpala
c1f9fe7d67 Remove static mpctx from mplayer.c
Pass it in function calls instead. There's no reasonable way to pass
it to exit_player() when used outside mplayer.c. However most of those
uses seem to be wrong (the code should not make the program exit) and
should be removed. For now just make exit_player() uses outside
mplayer.c simply call exit() without any shutdown code.
2008-04-23 13:48:33 +03:00
Uoti Urpala
ef74d21b1f Move loop_times to option struct 2008-04-23 13:47:44 +03:00
Uoti Urpala
67778746ce Remove pointless #ifdefs
These #ifdefs only made MPContext 2 variables smaller when dvbin
support was disabled.
2008-04-23 13:47:43 +03:00
Uoti Urpala
7521aac665 Move global vo_config_count to vo struct
Remove the global and Add a corresponding field to the vo struct, plus
another which tells whether the LAST config call was successful.The
latter value which tells whether the VO should be properly configured
at the moment seems a better match for the semantics actually needed
in most places where the old value was used. The 'count' field with
the old semantics is not currently used by anything, but I'm leaving
it there for vo drivers which would need those semantics if converted
to use the struct.

Existing uses of the global outside old vo drivers are either converted
to use the struct field or moved inside the vo_xyz() calls (instead of
"if (vo_config_count) vo_flip_page(..." just call vo_flip_page which
will now do nothing if not configured). The removal of the check in
mpcommon.c/update_subtitles() is less trivial than the others, but I
think it shouldn't cause problems.
2008-04-23 13:46:39 +03:00
Uoti Urpala
26039a38e3 Move global mDisplay to x11 state struct 2008-04-23 13:46:34 +03:00
Uoti Urpala
acf319b3ed Create a struct for X11 state
Will be used for common data between X11 VOs. The main reasons for
making it a separate struct rather than extra fields in the main VO
struct are that some field definitions need X headers and that the code
keeps basic X state such as the display connection over opening and
closing of individual VOs.
2008-04-23 13:41:07 +03:00
Uoti Urpala
8ec90e5e4f Add option pointer to vo struct 2008-04-23 13:41:06 +03:00
Uoti Urpala
9b06b5ed85 Move correct_pts to options struct 2008-04-23 13:41:05 +03:00
Uoti Urpala
0d59f81e54 Add option pointer to vf struct 2008-04-23 13:41:05 +03:00
Uoti Urpala
7039bc090a Add option pointer to demuxers and stheader.h structs 2008-04-23 13:41:05 +03:00
Uoti Urpala
d3d12332d6 Declare demuxer *_streams fields with proper types
Give sh_audio_t, sh_video_t and sh_sub_t which before had typedef
names only a matching struct name (without _t) too.
Change the a_streams, v_streams and s_streams demuxer fields from
void * to struct sh_audio *, struct sh_video * and struct sh_sub *.
Remove a now unnecessary cast from mplayer.c.
2008-04-23 13:41:05 +03:00
Uoti Urpala
732ee3474a Move options "vo" and "ao" to common struct 2008-04-23 13:41:05 +03:00
Uoti Urpala
9db0c118d3 Start of new option system
First part of option restructuring. The aim is to move option values
from a huge number of separate globals to a single non-global struct.

This part adds some support for parsing option values into such struct
instances, and moves one example option (fixed-vo) to the struct.
2008-04-23 13:41:05 +03:00
Uoti Urpala
e5e8effca8 Add a context argument to mp_input_add_event_fd callback 2008-04-23 13:41:04 +03:00
Uoti Urpala
2bcfe1e077 Add new video driver API
Create new video driver API that has a per-instance context structure
and does not rely on keeping status in global or static variables.
Existing drivers are not yet converted to this API; instead there is a
wrapper which translates calls to them.

In the new API, an old API call vo_functions->xyz(args) is generally
replaced by vo_xyz(vo_instance, args).

The changes to keep the vesa, dxr2 and xover drivers compiling have
not been tested.
2008-04-23 13:41:04 +03:00
albeu
6e62b3a85f Add options to disable some or all config files.
Patch by Andrew Savchenko (Bircoph -at- list -dot- ru).


git-svn-id: svn://svn.mplayerhq.hu/mplayer/trunk@26448 b3059339-0415-0410-9bf9-f77b7e298cf2
2008-04-14 11:21:29 +00:00
albeu
e4dc453ea0 Replace the trivial command line preparser with a more robust version
allowing all kind of options to be used.


git-svn-id: svn://svn.mplayerhq.hu/mplayer/trunk@26440 b3059339-0415-0410-9bf9-f77b7e298cf2
2008-04-13 19:18:51 +00:00
albeu
f481e7870b Remove the need for code using stream to export an mp_input_check_interrupt()
function. It also removes the compile-time dependency on input.


git-svn-id: svn://svn.mplayerhq.hu/mplayer/trunk@26358 b3059339-0415-0410-9bf9-f77b7e298cf2
2008-04-09 00:36:28 +00:00
uau
12ff2d2644 Add some const qualifiers to reduce warnings
git-svn-id: svn://svn.mplayerhq.hu/mplayer/trunk@26320 b3059339-0415-0410-9bf9-f77b7e298cf2
2008-04-02 01:01:22 +00:00
uau
99901138ab Remove unnecessary includes
command.c: Don't include libmpcodecs/mp_image.h, libmpdemux/matroska.h
mplayer.c: Don't include libmpdemux/matroska.h
matroska.h: Remove declaration of already removed function
            demux_mkv_change_subs and stop including demuxer.h


git-svn-id: svn://svn.mplayerhq.hu/mplayer/trunk@26313 b3059339-0415-0410-9bf9-f77b7e298cf2
2008-04-01 15:24:53 +00:00
eugeni
7cc46c2e87 Support 'default' attribute for audio and subtitle tracks.
The first default track is chosen for playback if language-based selection
failes. Additionally, for audio tracks, the first one is chosen if there are
no default tracks at all.


git-svn-id: svn://svn.mplayerhq.hu/mplayer/trunk@26301 b3059339-0415-0410-9bf9-f77b7e298cf2
2008-03-30 16:55:46 +00:00
reimar
57521c3467 Handle property commands in idle mode.
git-svn-id: svn://svn.mplayerhq.hu/mplayer/trunk@26296 b3059339-0415-0410-9bf9-f77b7e298cf2
2008-03-28 08:30:53 +00:00