Fixes memory leaks and other strange behaviour like mismatch of name and subtitle data.
Based on patch by Yuriy Kaminskiy [yumkam mail ru].
git-svn-id: svn://svn.mplayerhq.hu/mplayer/trunk@30387 b3059339-0415-0410-9bf9-f77b7e298cf2
Add various fixes needed to actually produce translated OSD output.
About every OSD string that had a translation macro under the old
system should be translatable now.
Add function set_osd_tmsg() which is a version of set_osd_msg that
translates its format argument. Pass OSD message strings in the
command.c property_osd_display table through mp_gtext before they're
used.
selected e.g. via commandline (which resulted in -1 being returned most of
the time).
git-svn-id: svn://svn.mplayerhq.hu/mplayer/trunk@30124 b3059339-0415-0410-9bf9-f77b7e298cf2
dereference a NULL pointer, e.g. because there is no video stream.
git-svn-id: svn://svn.mplayerhq.hu/mplayer/trunk@30120 b3059339-0415-0410-9bf9-f77b7e298cf2
Some code used an invalid '%lf' conversion specification for double
arguments. Maybe they were written that way due to confusion with
scanf where doubles are indicated by '%lf'; however it is not a valid
printf format specifier. Change those cases to use '%f'.
Add a property to select YUV colorspace. Currently implemented only in
vo_vdpau and vo_xv. Allows switching between BT.601, BT.709 and
SMPTE-240M (vdpau only).
The xv support uses the "XV_ITURBT_709" attribute. At least my NVIDIA
card supports that; I don't know whether other xv implementations do.
Bind the colorspace switch to the 'c' key by default. 'c' is currently
used by vo_sdl for some fullscreen mode change thing, but at the moment
that does not conflict and if it will in the future then vo_sdl can
change.
VDPAU part based on a patch from Lauri Mylläri <lauri.myllari@gmail.com>
DVB teletext support is nearly finished, it will be possible to read
teletext from file, it will not be depending on reception any more.
git-svn-id: svn://svn.mplayerhq.hu/mplayer/trunk@29851 b3059339-0415-0410-9bf9-f77b7e298cf2
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.
This fixes a crash with e.g. auto-enabled subtitles and -novideo due to
command.c calling update_subtitles even without video and is a step
toward subtitle support for audio-only files.
git-svn-id: svn://svn.mplayerhq.hu/mplayer/trunk@29710 b3059339-0415-0410-9bf9-f77b7e298cf2
Define a way to show the property on the OSD and use step_property_osd
instead of step_property. Also change the mp_property_deinterlace()
function to use m_property_flag_ro() to make it print
'enabled/disabled' instead of 'yes/no'.
The function set_property_command() handles commands that require only
changing a property and then possibly displaying the new value on the
OSD somehow. Split it into two parts: one that executes commands by
doing property manipulation according to a table, and one that
displays the value of a given property on the OSD in a manner listed
for that property in another table. The goal is to allow using the
OSD-display code and information in generic commands that take the
property name as an argument.
Splitting the table in two was not strictly necessary - I could have
kept it as a single table with possibly dummy field values for entries
that only make sense for one part of the split function or the other.
However I think splitting it is cleaner and more readable.
stream_dvd.h #includes some system headers that may be unavailable.
Fixes compilation with libdvdread disabled.
git-svn-id: svn://svn.mplayerhq.hu/mplayer/trunk@29475 b3059339-0415-0410-9bf9-f77b7e298cf2
The GUI is badly designed and too closely coupled to the internal
details of other code. The GUI code is in bad shape and unmaintained
for years. There is no indication that anyone would maintain it in the
future either. Even if someone did volunteer to implement a better
integrated GUI having the current code in the tree probably wouldn't
help much. So get rid of it.
They take the stream id as argument, which is not necessarily the same as the as
the index in the streams array and can be larger.
git-svn-id: svn://svn.mplayerhq.hu/mplayer/trunk@29375 b3059339-0415-0410-9bf9-f77b7e298cf2
Make sure no subtitle stream can be selected when no video stream
exists. The code doesn't handle subtitles without video properly and
it was possible to trigger crashes in some cases.
Remove the "num_chapters" and "mode" parameters that aren't needed by
any callers. Change "float *seek_pts" to "double *". Allocate the
string returned via "chapter_name" with talloc.
Add basic support for Matroska ordered chapters. The switching between
segments is implemented as a general edit timeline that could also be
used for other purposes.
Some things still need improvement. In particular the current code
does not try to do any proper mapping between audio/video/subtitle
streams of different files and there should be options for better
control of how MPlayer searches other files for the required content.
Clean up the code and make the behavior more consistent. Before
bits of the OSD information were triggered in different places, and
various property commands that affect playback position only showed
the seek bar while the main seek command also triggered showing the
percentage in OSD text. Now only the seek and chapter commands trigger
all information and others nothing (which is consistent with most
property behavior).