Remove copy of old and ugly libgsm code and wrapper.
Decoding these formats is supported via FFmpeg both natively and
through libgsm.
git-svn-id: svn://svn.mplayerhq.hu/mplayer/trunk@31657 b3059339-0415-0410-9bf9-f77b7e298cf2
git-svn-id: svn://svn.mplayerhq.hu/mplayer/trunk@31664 b3059339-0415-0410-9bf9-f77b7e298cf2
Support for unencrypted Blu-ray playback through libbluray.
Use it through: mplayer br:////path/to/disc
git-svn-id: svn://svn.mplayerhq.hu/mplayer/trunk@31631 b3059339-0415-0410-9bf9-f77b7e298cf2
Add a manifest file to disable file and registry "virtualization" on
Windows.
git-svn-id: svn://svn.mplayerhq.hu/mplayer/trunk@31630 b3059339-0415-0410-9bf9-f77b7e298cf2
Before, there was an unfortunate interaction with 'make checkheaders':
Compiling a .h file would generate a .d dependency information file for
that .h file as a sideeffect of compilation. Unfortunately this would
clobber the .d files of the .c files with the same basename, resulting
in broken dependency information when running plain make.
git-svn-id: svn://svn.mplayerhq.hu/mplayer/trunk@31614 b3059339-0415-0410-9bf9-f77b7e298cf2
The string now resides in a central object file instead of
being duplicated in every file that requires a version string.
git-svn-id: svn://svn.mplayerhq.hu/mplayer/trunk@31577 b3059339-0415-0410-9bf9-f77b7e298cf2
Its functionality has been superseeded by sws by quite some time, and
the "swap" functionality is now provided by vf_format.
see http://comments.gmane.org/gmane.comp.video.mplayer.devel/55804 for
a full discussion.
git-svn-id: svn://svn.mplayerhq.hu/mplayer/trunk@31350 b3059339-0415-0410-9bf9-f77b7e298cf2
Move "struct bstr" definition from ebml.h to its own header and add
some utility functions/macros. Change length field type from int to
size_t and adjust using code accordingly.
Partially based on a patch from Anton Khirnov.
The only FFmpeg internal symbols required were some constants. Define
them in the file itself instead. Also add some checks and fixes to
make the code more robust and fix a potential memory corruption
problem.
Nowadays FFmpeg is faster than liba52 and external liba52 is well supported.
git-svn-id: svn://svn.mplayerhq.hu/mplayer/trunk@31147 b3059339-0415-0410-9bf9-f77b7e298cf2
This speeds up compilation times, simplifies the code and
fixes dependency file generation in libav*.
git-svn-id: svn://svn.mplayerhq.hu/mplayer/trunk@31026 b3059339-0415-0410-9bf9-f77b7e298cf2
If --enable-translation was specified to configure, build and install
.mo files for the selected message language(s). The languages enabled
can be chosen with the --language-msg option; by default all available
ones will be installed. The .po source files for available languages
are seached under the po/ subdirectory; at the moment that
subdirectory is not included in the sources so no languages will be
enabled unless you add the actual translations before running
configure.
The .mo files are created in the locale/ subdirectory when compiling.
By default MPlayer will only look for them in the installed location,
so the newly compiled .mo files will not be found if you run MPlayer
without installing. You can set the MPLAYER_LOCALEDIR environment
variable to point to the locale/ directory to test the translations
without installing.
These files now contain different functions related to path handling.
git-svn-id: svn://svn.mplayerhq.hu/mplayer/trunk@30943 b3059339-0415-0410-9bf9-f77b7e298cf2
This fixes compilation with the Win32 loader disabled but other binary
codec loaders enabled.
git-svn-id: svn://svn.mplayerhq.hu/mplayer/trunk@30942 b3059339-0415-0410-9bf9-f77b7e298cf2
mp_msg-mencoder.c was separate from mp_msg.c only to compile a version
without a GUI dependency when the internal GUI was enabled. Since the
GUI has been removed the same mp_msg.o can be linked in all binaries.
DirectShow specifies that a filter (codec) can expect JoinFilterGraph
to be called, and store a reference to the graph manager. Implement a
very bare-bones graph manager (all functions are stubs, and no extra
interfaces are implemented) and give it to the codec on init.
git-svn-id: svn://svn.mplayerhq.hu/mplayer/trunk@30866 b3059339-0415-0410-9bf9-f77b7e298cf2
Enable ASS/SSA rendering through libass in mencoder. This duplicates a
bit of code (to parse font attachments, for example). Additionally, add
a filter "fixpts" that generates PTS, simulating fixed fps. PTS
generated by this filter are then used for subtitle timing.
Original patch by Nicolas George. (nicolas.george normalesup.org)
git-svn-id: svn://svn.mplayerhq.hu/mplayer/trunk@30849 b3059339-0415-0410-9bf9-f77b7e298cf2
(mplayer-rc.o can not be generated).
TO be improved or removed if/when someone figures out the issue.
git-svn-id: svn://svn.mplayerhq.hu/mplayer/trunk@30725 b3059339-0415-0410-9bf9-f77b7e298cf2
This avoids confusion with headers of the same name in other places.
git-svn-id: svn://svn.mplayerhq.hu/mplayer/trunk@30573 b3059339-0415-0410-9bf9-f77b7e298cf2
Dependencies were only set correctly if the loader code was enabled.
git-svn-id: svn://svn.mplayerhq.hu/mplayer/trunk@30542 b3059339-0415-0410-9bf9-f77b7e298cf2
Dependencies were only set correctly if internal mp3lib was enabled.
git-svn-id: svn://svn.mplayerhq.hu/mplayer/trunk@30528 b3059339-0415-0410-9bf9-f77b7e298cf2
Dependencies were only set correctly if internal liba52 was enabled.
git-svn-id: svn://svn.mplayerhq.hu/mplayer/trunk@30527 b3059339-0415-0410-9bf9-f77b7e298cf2
Add a new EBML parser implementation that should allow significant
improvements to the Matroska demuxer. The new parsing code is not
actually used yet by the demuxer. The only changes to existing code in
this commit are to generate the MATROSKA_ID_* / EBML_ID_* macro
definitions from the new implementation and to rename some of them
(the new implementation uses names matching the official Matroska spec).
The main parser implementation is added in ebml.c. There are two new
generated files, ebml_defs.c and ebml_types.h, that contain
definitions of EBML elements. Those are generated by the new script
TOOLS/matroska.py. There's a new Makefile target "generated_ebml" that
run the script to refresh the content of the generated files.
though that is already done that way for dts support in hwac3.
git-svn-id: svn://svn.mplayerhq.hu/mplayer/trunk@30280 b3059339-0415-0410-9bf9-f77b7e298cf2
The shell looks for awk in /usr/bin, the path from the shebang line. However,
there exist systems with awk in /bin, namely archlinux.
git-svn-id: svn://svn.mplayerhq.hu/mplayer/trunk@30216 b3059339-0415-0410-9bf9-f77b7e298cf2
Heavily cleaned up/fixed etc. by me, improvements are still possible though.
Patch originally by Pigeon <pigeon at pigeond.net>
git-svn-id: svn://svn.mplayerhq.hu/mplayer/trunk@30182 b3059339-0415-0410-9bf9-f77b7e298cf2
This part of the code does not change so there is no point in generating it.
git-svn-id: svn://svn.mplayerhq.hu/mplayer/trunk@30094 b3059339-0415-0410-9bf9-f77b7e298cf2
Its contents is always the same, so there is no point in generating it.
git-svn-id: svn://svn.mplayerhq.hu/mplayer/trunk@30088 b3059339-0415-0410-9bf9-f77b7e298cf2
So far probably only works with the libass from Ubuntu 9.10
git-svn-id: svn://svn.mplayerhq.hu/mplayer/trunk@30066 b3059339-0415-0410-9bf9-f77b7e298cf2
Update the version.sh script for git so it'll generate version numbers
more useful than "UNKNOWN". At the moment it only generates the short
SHA1 name, but adding a tag as a starting point should allow more
useful output. Rather than update the Makefile logic that tried to
guess whether the svn revision had changed since the last version.h
update, just run the version.sh script from configure so the version
is updated at least at that time.
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
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.
Just the dependencies are different, so specify them separately.
git-svn-id: svn://svn.mplayerhq.hu/mplayer/trunk@29779 b3059339-0415-0410-9bf9-f77b7e298cf2
They are only used in one place so the indirection is pointless.
git-svn-id: svn://svn.mplayerhq.hu/mplayer/trunk@29778 b3059339-0415-0410-9bf9-f77b7e298cf2
Also get rid of our own defines for the keycodes and instead use the
predefined ones from Carbon.
git-svn-id: svn://svn.mplayerhq.hu/mplayer/trunk@29573 b3059339-0415-0410-9bf9-f77b7e298cf2
There has been some confusion about whether this filter depends on
libavcodec internals or not. When originally added it included
explicit code to support building with a shared library avcodec, but
it also used the internal dsputil.h header. Later it was marked as
depending on libavcodec internals, then the dsputil.h include was
removed as unnecessary. It seems to build fine without any internal
headers now and has no obvious other usage of internal symbols either,
so I'm enabling the build whenever libavcodec is available.
Add configure option --ffmpeg-source-dir=PATH. If the user specifies
this option then building code that depends on FFmpeg internals is
enabled and the files files which use internal lavf headers will get
them from this path. The FFmpeg libraries linked with must export
needed internal symbols.
Remove some now unnecessary parts that were used for the internal
FFmpeg build, mainly configure tests for FFmpeg features and Makefile
logic for building it.
The following are affected: vo_yuv4mpeg, vf_halfpack, vf_palette,
vf_rgb2bgr, vf_yuy2, vo_mga, vo_xmga. In vo_yuv4mpeg, only disable
RGB support (which is probably little used). Others are disabled
completely for now.
vo_mga and vo_xmga are disabled by preventing configure from enabling
them. The rest is placed under LIBSWSCALE_INTERNALS variable which
isn't currently enabled anywhere.
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.
The latter is more clear as it can represent either Tremor or libvorbis.
git-svn-id: svn://svn.mplayerhq.hu/mplayer/trunk@29365 b3059339-0415-0410-9bf9-f77b7e298cf2
- Drop '-print', which is the default for find.
- Drop unnecessary invocation of find in a subshell.
git-svn-id: svn://svn.mplayerhq.hu/mplayer/trunk@29309 b3059339-0415-0410-9bf9-f77b7e298cf2
so that header files do not conflict with system-installed versions.
git-svn-id: svn://svn.mplayerhq.hu/mplayer/trunk@29303 b3059339-0415-0410-9bf9-f77b7e298cf2
simplifying the addition of the conditional parts to the SRCS lists.
git-svn-id: svn://svn.mplayerhq.hu/mplayer/trunk@29208 b3059339-0415-0410-9bf9-f77b7e298cf2
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.
available memcpy variants and prints benchmark results about them.
git-svn-id: svn://svn.mplayerhq.hu/mplayer/trunk@28929 b3059339-0415-0410-9bf9-f77b7e298cf2
- HAVE_MMX and friends now have 0/1 values and are always defined.
- Use proper file dependencies instead of a phony target.
git-svn-id: svn://svn.mplayerhq.hu/mplayer/trunk@28899 b3059339-0415-0410-9bf9-f77b7e298cf2
This solution does not record precise dependencies but is robust
against header dependency changes.
git-svn-id: svn://svn.mplayerhq.hu/mplayer/trunk@28770 b3059339-0415-0410-9bf9-f77b7e298cf2
with the dependency information files. This fixes a straight build without
generating dependency information.
git-svn-id: svn://svn.mplayerhq.hu/mplayer/trunk@28769 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.
Also restructure the code so it provides a pixfmt2imgfmt function, too.
git-svn-id: svn://svn.mplayerhq.hu/mplayer/trunk@28561 b3059339-0415-0410-9bf9-f77b7e298cf2
This way make will not stop on failure and remove as much as possible.
git-svn-id: svn://svn.mplayerhq.hu/mplayer/trunk@28540 b3059339-0415-0410-9bf9-f77b7e298cf2
This helps clean a tree completely before and after crosscompiling.
git-svn-id: svn://svn.mplayerhq.hu/mplayer/trunk@28539 b3059339-0415-0410-9bf9-f77b7e298cf2
Print CPU information in verbose mode instead of by default.
git-svn-id: svn://svn.mplayerhq.hu/mplayer/trunk@28360 b3059339-0415-0410-9bf9-f77b7e298cf2
The libdvdread4 and libdvdnav directories, which are externals in the
svn repository, are at least for now not included in any form. I added
configure checks to automatically disable internal libdvdread and
libdvdnav if the corresponding directories are not present; if they're
added manually then things work the same as in svn.
The change to create .d files with .o incorrectly used CFLAGS instead
of CXXFLAGS when compiling .cpp files. This broke the build if
live555, which is the only part using C++ code, was enabled.
After adding .o files to the dependencies of FFmpeg .a files make
tried to build those .o files with default rules before recursing to
the FFmpeg subdirs. Fix this by adding a dummy rule. Also fix
incorrectly placed parentheses in the command creating the FFMPEGFILES
list. That resulted in some files being listed multiple times,
triggering warnings from the dummy rule.
There was a missing dependency that meant FFmpeg libraries were not
recursed if only .asm files changed. Also add a dependency on .o files
to update the corresponding .a (though this case should only happen if
you run compilation commands manually).
The separate .d file creation logic has caused various problems, most
notably cases where 'make' exits without doing anybut but without
giving any error either. Change the Makefile so that .d files are
always created or updated when the corresponding .o file is. This
avoids the problems of current .d file generation and still gives
correct dependencies.
The common.mak change does the same for the libswscale build. However
it does not affect the directories under ffmpeg/ because those use
ffmpeg/common.mak. The MPlayer common.mak can be copied over the
ffmpeg/common.mak file to make the fix apply to the FFmpeg directories
too. This is not done automatically because the FFmpeg file is under
version control and changing it could cause problems.
Makefile used "install -d" on directories like "/usr/local/bin".
Because the install program always tries to set permissions this
command causes an installation failure if the directory exists and is
writable but you cannot change its permissions (default configuration
for group staff on Debian for example). So avoid running such commands
on existing directories.
i.e. have lines that conditionally enable each in the Makefile and
corresponding variables set from configure.
git-svn-id: svn://svn.mplayerhq.hu/mplayer/trunk@28080 b3059339-0415-0410-9bf9-f77b7e298cf2
i.e. have lines that conditionally enable each in the Makefile and
corresponding variables set from configure.
git-svn-id: svn://svn.mplayerhq.hu/mplayer/trunk@28075 b3059339-0415-0410-9bf9-f77b7e298cf2
codec-cfg runs on the host system but EXTRA_INC can have target system
paths. The EXTRA_INC was added there for shared libavutil support.
Copy the one #define codec-cfg.c needs from libmpdemux/aviheader.h
(which in turn needed libavutil) instead of including the header, and
drop the EXTRA_INC flags.
This allows to use yasm assembler optimizations from FFmpeg code,
in particular, from libavcodec/fft.c.
git-svn-id: svn://svn.mplayerhq.hu/mplayer/trunk@27940 b3059339-0415-0410-9bf9-f77b7e298cf2
to avoid clashing with external libdvdread.
(Sync with libdvdread r1122)
git-svn-id: svn://svn.mplayerhq.hu/mplayer/trunk@27498 b3059339-0415-0410-9bf9-f77b7e298cf2
and only add them to CFLAGS when compiling objects from those libraries.
git-svn-id: svn://svn.mplayerhq.hu/mplayer/trunk@27436 b3059339-0415-0410-9bf9-f77b7e298cf2
use them only when compiling objects from those subdirectories.
git-svn-id: svn://svn.mplayerhq.hu/mplayer/trunk@27359 b3059339-0415-0410-9bf9-f77b7e298cf2
Take included header files into account when generating dependency files.
This has problems when header files are removed or renamed, but does not
silently miscompile files.
git-svn-id: svn://svn.mplayerhq.hu/mplayer/trunk@27351 b3059339-0415-0410-9bf9-f77b7e298cf2
installation rules from a pattern. There is a separate rule for English above.
git-svn-id: svn://svn.mplayerhq.hu/mplayer/trunk@27330 b3059339-0415-0410-9bf9-f77b7e298cf2
Express this with Makefile syntax instead of in the dependency file
generation command.
git-svn-id: svn://svn.mplayerhq.hu/mplayer/trunk@27268 b3059339-0415-0410-9bf9-f77b7e298cf2