This new vo is heavily based on vo_gl.c. It provides better scale
filters, dithering, and optional color management with LittleCMS2.
It requires OpenGL 3.
Many features are enabled by default, so it will be slower than vo_gl.
However, it can be tuned to behave almost as vo_gl.
The recommended way to get function pointers to the functions in the
OpenGL library is through dlopen/dlsym/dlclose. This causes problems
in the Cocoa OpenGL backend when -lGL (X11's OpenGL headers) is linked
to the binary together with -framework OpenGL.
The linked OpenGL symbols are always from -lGL, causing all the
function pointers to point to null when getFunctions is called against
a Cocoa OpenGL context.
For this reason change the configure autodetection code to disable
the vo_gl X11 backend when cocoa is active.
This video output is not useful anymore. It is based on Carbon to draw
the mplayer window and this has been deprecated by Apple in 10.5.
The upcoming 10.8 OSX release should deprecate most of Carbon, so it
doesn't make sense to keep vo_quartz in the codebase when there are
modern and better alternatives (vo_gl and vo_corevideo).
macosx_finder_args was using Carbon and wasn't usable any longer on
modern versions of MacOSX. This is very useful to embed mplayer in a
mac application bundle.
When using application bundles, the operating system will call the
main function with only one argument that identifies the process
serial number (this is some additional process identifier in osx other
than the pid). File open events are then dispatched to the application
through events that must be handled accordingly.
Latest liblivemedia version disables APIs we need. The code still
exists in the library and the changelog says the old interface can be
enabled with "#define RTSPCLIENT_SYNCHRONOUS_INTERFACE". However, the
code on the library side is disabled by default too, and seems to be
disabled in distro packages, so defining that in the player does not
help (just delays the failure until link time). It's possible the
distro packages will be changed to enable this, but since dropping
live555 support is desirable anyway, change configure to disable
support by default at least for now.
The live555 code is the only part of the source that's in C++.
Including C headers in code compiled as C++ has caused issues at
times, so deleting this code would have a maintenance benefit.
Reportedly the rtsp support in Libav has improved, so there should
be less need for live555.
This makes MinGW redirect certain stdio functions (such as the sprintf
family) from the MSVCRT libc to a standard compliant MinGW
implementation.
This fixes a crash in talloc.c when compiling mplayer with MinGW-w64.
The problem is most likely with talloc_vasprintf(), which calls
vsnprintf with a small buffer and checks its return value to find out
how much space the formatted string requires. Without this commit,
vsnprintf would always return -1, and then the code calls abort().
(lachs0r figured out this one.)
If --enable-cross-compile is specified, passing
--target=i686-w64-mingw32 for example will check if
i686-w64-mingw32-gcc can be used. This is only done if the compiler
isn't specified via --cc or the CC environment variable.
The same is done for some other build tools, such as pkg-config.
(Only the C compiler will try to use a fallback in this case.)
This didn't work very well when cross compiling from Linux to Windows:
it tries to execute an .exe file, which succeeds if wine is installed.
As consequence it detects "no" as result.
In general this won't work if emulation for the target architecture is
available. Remove it.
When the build wrapper repo scripts run configure they set a custom
PKG_CONFIG_PATH environment variable. Show the value of this in
config.log to make it easier to rerun configure with a tweaked version
of the same parameters. Also show CFLAGS if set, as it's likely to
break things.
Remove "Please check mtrr settings at /proc/mtrr" and "NOTE: Win32
codec DLLs are not supported on your CPU" messages printed at the end
of a configure run. mtrr should be irrelevant on today's machines, and
the DLLs are a lot less important nowadays. Also remove mtrr detection
logic that was only used to decide whether or not to print that
message. Bizarrely, there were --enable-mtrr and --disable-mtrr
options for this too (with no effect except for the message).
libpostproc has been removed from Libav and the library now exists as
a separate project. Because it's not essential, separate it from the
Libav library check and allow compiling without it.
Add helper function pkg_config_add() that checks for the presence of a
package and also adds cflags/ldflags if it is found. Change existing
pkg-config-using feature tests to use that. Also change the freetype
test that used a separate libfreetype-config binary before; using
pkg-config instead helps cross-compiling. Drop other kinds of checks
(such as test compiles) from these tests. It's possible that this
could cause problems on some (broken) systems, but that can't be
verified without user testing.
Change various code to use the latest Libav API. The libavcodec
error_recognition setting has been removed and replaced with different
semantics. I removed the "--lavdopts=er=<value>" option accordingly,
as I don't think it's widely enough used to be worth attempting to
emulate the old option semantics using the new API. A new option with
the new semantics can be added later if needed.
Libav dropped APIs that were necessary with all Libav versions
until quite recently (like setting avctx->age), and it would thus not
be possible to keep compatibility with previous Libav versions without
adding workarounds. The new APIs also had some bugs/limitations in the
recent Libav release 0.8, and it would not work fully (at least some
avcodec options would not be set correctly). Because of those issues,
this commit makes no attempt to maintain compatibility with anything
but the latest Libav git head. Hopefully the required fixes and
improvements will be included in a following Libav point release.
Require versions of the Libav libraries corresponding to Libav release
0.7. These are:
libavutil 51.7.0
libavcodec 53.5.0
libavformat 53.2.0
libswscale 2.0.0
libpostproc 52.0.0
Also disable the fallback to simple header check if these libraries
could not be found with pkg-config; now compiling without pkg-config
support for these always requires explicitly setting --enable-libav
and any needed compiler/linker flags. The simple check would have let
compilation proceed even if a version mismatch was detected.
Add native Cocoa code to display an OpenGL window. Some of the code is
based on the OpenGL parts of vo_corevideo but I took the time to remove
old code based on Carbon.
There is autodetection in the configure script but you can use
--enable[disable]-cocoa to enable[disable] this.
Something like the OSD menu functionality could be useful. However the
current implementation has several problems and would require a
relatively large amount of work to get into good shape. As far as I
know there are few users of the existing functionality. Nobody is
working on the existing code and keeping it compiling at all while
changing other code would require extra work. So delete the menu code
and some related code elsewhere that's used by nothing else.
Delete the vo_gl2 and vo_matrixview implementations.
vo_gl2 was barely useful anymore. It was a hack based on an old
vo_gl.c version, and all it did differently was rendering the video in
tiles instead of using a single texture. That made it work with some
crappy OpenGL implementations. These days all GPUs support textures of
at least 2048x2048 pixels, which is enough for HD playback. On the
other hand, gl2 suffered from various bugs and deficiencies, all of
which are fixed in gl. Its existence also confused users; many thought
that gl2 is the next version of gl and attempted to use it, even
though it's much worse than gl and they should have used that instead.
Should it turn out that tiling is actually useful, it should be
implemented in vo_gl, instead of keeping vo_gl2 alive.
vo_matrixview was a toy that couldn't even properly display a video.
All it did was display a screensaver-like animation that showed "a
Matrix-like running-text effect". (mplayer is not a screensaver.)
Codec selection for audio and video decoding had a "dynamic plugin"
feature that tried to load a shared library for any codec that had not
been enabled at compilation (disabled by default, but could be enabled
with --enable-dynamic-plugins configure switch; for unknown reasons
some distro packages have enabled it). The implementation was buggy
and could cause normal codec selection fallback to fail if the feature
was enabled. I'm not aware of any real uses of such dynamic plugins
and the feature seems questionable anyway (there are no ABI guarantees
that would make it safe to use). Remove the buggy feature.
Use the "--print-errors" flag of pkg-config when testing for the
presence of Libav libraries. Even though the error output is a bit
messy (printed on the same "Checking for"... line), it does contain
useful information for this test which checks for several libraries at
once.
Also change the test name from "FFmpeg" to "Libav" and rename the
option from --disable-ffmpeg to --disable-libav. The change should
cause no compatibility problems as the option is very rarely used.
Before there was no attempt to set warning flags sanely when compiling
with clang. Set some reasonable defaults that cut down noise and
enable various non-default warnings that are enabled with GCC too.
I'm not sure whether clang is supposed to support more of the options
now used with GCC - it accepts some of those options but they
apparently have no effect; I didn't find any real documentation about
the individual warnings.
The name of the project is "libass". "ASS" alone refers only to the
subtitle format, not the library, and --disable-ass did not completely
disable handling of subtitles in this format - only advanced rendering
with libass. Thus --disable-libass is a better name.
Do a proper calculation of free RAM to be used as V4L buffers.
The code uses sysinfo to query the available RAM, however it used
ancient form available in some early development 2.3.x kernels.
Newer form reports the size in memory units (usually same as page size),
as result the code would fall back on 2 buffers even on multi GB system.
The commit does: Improve the check in configure to ensure that we
do use sysinfo struct with present mem_unit. Use free RAM instead of
total RAM (to avoid swapping). Tweak memory constants and simplify code.
git-svn-id: svn://svn.mplayerhq.hu/mplayer/trunk@33732 b3059339-0415-0410-9bf9-f77b7e298cf2
Fix "sse in cpuinfo implies mmxext" hack to still work when
--disable-sse is used.
git-svn-id: svn://svn.mplayerhq.hu/mplayer/trunk@33714 b3059339-0415-0410-9bf9-f77b7e298cf2
Add -Werror-implicit-function-declaration to the default compiled
flags used with GCC. Add the option through a new variable ERRORFLAGS
instead of the existing WARNFLAGS to avoid using it in configure
tests. I think it's overall preferable not to fail tests because of
the warning - in some case this could cause a compilation failure
later, but on the other hand it could be just an unreliable test
triggering the warning and even if it does fail those are likely cases
worth closer investigation.
Only set NEED_GLOB on Windows, as currently this has the effect of
compiling win32-only code - and even if that compiled it would not be
used anyway, since mf.c uses glob under "#if defined(HAVE_GLOB) ||
defined(__MINGW32__)".
git-svn-id: svn://svn.mplayerhq.hu/mplayer/trunk@33587 b3059339-0415-0410-9bf9-f77b7e298cf2
Set host_cc after cross-compile check. This allows to set "cc" as a
more sensible, almost always working default when cross-compiling
instead of using the cross-compiler as host-cc which is just
nonsense.
git-svn-id: svn://svn.mplayerhq.hu/mplayer/trunk@33580 b3059339-0415-0410-9bf9-f77b7e298cf2
Fix _libcdio staying on "auto" if cdparanoia test succeeded before.
git-svn-id: svn://svn.mplayerhq.hu/mplayer/trunk@33555 b3059339-0415-0410-9bf9-f77b7e298cf2
Make features depending on X check its availability at their
individual checks rather than having the X11 check disable them if
needed. This makes each individual feature check self-contained, which
is desirable.
git-svn-id: svn://svn.mplayerhq.hu/mplayer/trunk@33371 b3059339-0415-0410-9bf9-f77b7e298cf2
Remove checks for compiler support of >= 10 assembler operands and
named assembler arguments. Just assume the features are always
available. These features were only missing from obsolete GCC versions
which are not supported any more.
Due to libavcodec changes vo_xvmc would have needed some modifications
to keep working. However, I think there's little real demand for XvMC,
so I'll just drop XvMC support. XvMC only supported MPEG-2, making it
of very limited usefulness nowadays, plus the vo_xvmc implementation
was not high quality and never worked particularly well or reliably
anyway.
Change the behavior of the iconv, freetype, fontconfig and libass
tests when autodetection fails. They now abort instead of silently
creating a crippled build. Users who really want to build without
those features can use explicit --disable flags.
If --enable-3dfx is specified but dga is not available then 3dfx is
disabled nonetheless. However, this disabling is not done properly,
and libvo/vo_3dfx.c is still compiled (but cannot be used). Fix.
The behavior of automatically disabling vo_3dfx despite --enable-3dfx
is itself questionable, but I'm not changing that now.
Remove --with-glib-config, --with-gtk-config, --enable-gui,
--disable-gui, --enable-gtk1, --disable-gtk1. The only one of these
that still had any effect was --enable-gui which printed a warning
about GUI removal and exited. The --with options were still shown in
help output, the rest had already been deleted from that.
Delete mp3lib which has been the default mp3 decoder until now. In
addition to being an unnecessary embedded library it now fails to
compile correctly with the new gcc-4.6, producing noise.
After the deletion the default decoder priority for mp3 will be first
libmpg123 (a newer version of the code that mp3lib was based on) if
available, then ffmp3float which should be available in all normal
compiles. I think that some tweaking may be required as these decoder
alternatives get wider testing, but any problems should be solvable
and there should be no need for mp3lib.
Windows pthreads requires certain functions to be called to initialize
itself. It can do that through DllMain but no such luck when linked
statically; mplayer needs to call the initialization explicitly.
As things currently are the --ffmpeg-source-dir option will cause a
compilation failure. Maybe the video filters that depend on internal
FFmpeg headers to work should be deleted completely; for now I'll
remove the option from the help output as it can only confuse normal
users.
Force Makefile to always run version.sh to potentially regenerate
version.h. Drop compiler version and 'git-' prefix from version
number. Match only git tags starting 'v'+number when generating
version number; leave the 'v' out from the result.
Disable libmpcdec (musepack) support by default, FFmpeg has a decoder
that works better for us and is used by default.
git-svn-id: svn://svn.mplayerhq.hu/mplayer/trunk@32826 b3059339-0415-0410-9bf9-f77b7e298cf2
configure had a check for some libraries specific to the maemo
platform. Apparently the code which would have used the results of
this check was never added. Remove the unused check.
Previously the default with --enable-translation was to install all
language files if --language-msg was not explicitly specified. Change
the default to the languages set with the --language option or LINGUAS
environment variable if those are set; if neither is set then the
default is still to install all message languages.
Abort if FFmpeg libraries are not found unless --disable-ffmpeg was
explicitly specified. Note that even if you disable FFmpeg, libavutil
and libswscale are still required and you'll need to add linker flags
for them manually; I didn't try to clean up that case (few people
will want to do that).
Also fix the fallback test used if pkg-config doesn't find the
libraries: fix wrong header name and drop forced -lavcore which isn't
present in all FFmpeg versions. This shouldn't make a difference for
normal use since the pkg-config test should succeed if the libraries
are available.
libvorbis and libvorbisidec cannot both be enabled at the same time.
Change configure to enable libvorbis by default if both are
available. It's the more common library, and if someone want to do a
special build for FPU-less systems he can select the library
manually.
Drop internal copy of the tremor library. Note that the internal ogg
demuxer (which is still sometimes useful to work around libavformat
ogg demuxer problems, though it's itself quite buggy) now cannot be
compiled without either external libvorbis or libvorbisidec (tremor).
There were multiple files specific to Zoran support, and they also
depended on internal FFmpeg headers (so it would probably have been
hard to get them to compile now even if you tried). It's obsolete now,
so just drop the whole mess.
dxr2 support had been broken quite a while and nobody noticed. There
were finally commits to fix it in the svn repo, but rather than apply
those I'll just drop dxr2 support.
By now VIDIX is too obscure to justify the amount of code and
complexity it requires in the sources. Although there is no pressing
need to drop it just now from a code point of view, I'll rather remove
it before release than release with VIDIX support and then drop it
later.
Some of the manpage mentions of VIDIX were in "this option supported
for these VOs" lists that looked outdated and failed to mention vdpau
for example. Replace such incorrect lists with a generic "not
supported for all VOs" mention.
cosmetics: Move header_check helper function.
git-svn-id: svn://svn.mplayerhq.hu/mplayer/trunk@32803 b3059339-0415-0410-9bf9-f77b7e298cf2
Add return_check() helper function and use it to simplify some checks.
git-svn-id: svn://svn.mplayerhq.hu/mplayer/trunk@32805 b3059339-0415-0410-9bf9-f77b7e298cf2
Add return_statement_check() helper function and use it to simplify some checks.
git-svn-id: svn://svn.mplayerhq.hu/mplayer/trunk@32806 b3059339-0415-0410-9bf9-f77b7e298cf2
Define _XOPEN_SOURCE to 600 instead of 500 in mkstemp check, this is
consistent to the use in libavcodec, consistent with other
_XOPEN_SOURCE defines in tests and it fixes detection on Solaris that
refuses to compile system headers when combining std=c99 with
_XOPEN_SOURCE 500.
git-svn-id: svn://svn.mplayerhq.hu/mplayer/trunk@32759 b3059339-0415-0410-9bf9-f77b7e298cf2
Add define_statement_check function and use it to simplify some checks.
git-svn-id: svn://svn.mplayerhq.hu/mplayer/trunk@32758 b3059339-0415-0410-9bf9-f77b7e298cf2
Simplify a bunch of configure checks with the statement_check function.
git-svn-id: svn://svn.mplayerhq.hu/mplayer/trunk@32760 b3059339-0415-0410-9bf9-f77b7e298cf2
Simplify vector declarations and fast inttypes check with statement_check().
git-svn-id: svn://svn.mplayerhq.hu/mplayer/trunk@32744 b3059339-0415-0410-9bf9-f77b7e298cf2
Drop unnecessary Xlib.h #include from Xss screensaver extensions check.
git-svn-id: svn://svn.mplayerhq.hu/mplayer/trunk@32745 b3059339-0415-0410-9bf9-f77b7e298cf2
configure: Simplify *BSD ioctl_meteor.h check.
git-svn-id: svn://svn.mplayerhq.hu/mplayer/trunk@32746 b3059339-0415-0410-9bf9-f77b7e298cf2
Add sys/time.h #include to videodev.h/videodev2.h checks.
Older kernels had broken videodev* headers that lacked the required #include.
patch by Michael Lampe, mlampe0 googlemail com
git-svn-id: svn://svn.mplayerhq.hu/mplayer/trunk@32747 b3059339-0415-0410-9bf9-f77b7e298cf2
Revert previous wrong simplification of AltiVec vector declarations check.
git-svn-id: svn://svn.mplayerhq.hu/mplayer/trunk@32749 b3059339-0415-0410-9bf9-f77b7e298cf2
cosmetics: Drop some unnecessary end-of-line backslashes after &&/||.
git-svn-id: svn://svn.mplayerhq.hu/mplayer/trunk@32752 b3059339-0415-0410-9bf9-f77b7e298cf2
cosmetics: Get rid of some backslashes at the end of lines.
This is done by either moving the logical &&/|| operators to the
preceding line or by merging the two lines together.
git-svn-id: svn://svn.mplayerhq.hu/mplayer/trunk@32753 b3059339-0415-0410-9bf9-f77b7e298cf2
git-svn-id: svn://svn.mplayerhq.hu/mplayer/trunk@32741 b3059339-0415-0410-9bf9-f77b7e298cf2
Remove AAC/FAAD2 installation instructions.
There is nothing special about building and installing FAAD2, so there is
no longer a need to keep maintaining instructions for it.
git-svn-id: svn://svn.mplayerhq.hu/mplayer/trunk@32742 b3059339-0415-0410-9bf9-f77b7e298cf2
configure: Compilation fixes for current Cygwin
git-svn-id: svn://svn.mplayerhq.hu/mplayer/trunk@32724 b3059339-0415-0410-9bf9-f77b7e298cf2
Do not #define _WIN32 on the command line for Cygwin.
Newer Cygwin versions no longer do this and hopefully we should be able
to survive without this hack as well. This change necessitates adapting
two #ifdefs in the MPlayer codebase. It is committed untested as I do
not have access to a Cygwin system.
git-svn-id: svn://svn.mplayerhq.hu/mplayer/trunk@32763 b3059339-0415-0410-9bf9-f77b7e298cf2
Remove some definitions from generated config.h/config.mak that were
only used when building internal FFmpeg. Remove Solaris mlib test.
Also fix definition of --disable-ffmpeg in configure help output.
In some scenarios it might make sense to redistribute a copy of the
mplayer sources that does not contain the internal libdvdcss copy. In
order to not require the configure parameter
--disable-libdvdcss-internal, this change checks that the libdvdcss
directory actually exists when no particular behavior has been
requested.
git-svn-id: svn://svn.mplayerhq.hu/mplayer/trunk@32493 b3059339-0415-0410-9bf9-f77b7e298cf2
Simplify some X11 checks with the help of statement_check_broken().
git-svn-id: svn://svn.mplayerhq.hu/mplayer/trunk@32428 b3059339-0415-0410-9bf9-f77b7e298cf2
Remove some unnecessary #includes from IVTV and V4L2 checks.
git-svn-id: svn://svn.mplayerhq.hu/mplayer/trunk@32429 b3059339-0415-0410-9bf9-f77b7e298cf2
This makes the FTP test self-sufficient and reduces complexity.
git-svn-id: svn://svn.mplayerhq.hu/mplayer/trunk@32340 b3059339-0415-0410-9bf9-f77b7e298cf2
Add proper autodetection for FTP support; should fix Bugzilla #1804.
git-svn-id: svn://svn.mplayerhq.hu/mplayer/trunk@32377 b3059339-0415-0410-9bf9-f77b7e298cf2
It can be used similar to header_check_broken, but it also tests for the
availability of functions along with the needed headers.
git-svn-id: svn://svn.mplayerhq.hu/mplayer/trunk@32298 b3059339-0415-0410-9bf9-f77b7e298cf2
Simplify libdca check using function_check_broken().
git-svn-id: svn://svn.mplayerhq.hu/mplayer/trunk@32299 b3059339-0415-0410-9bf9-f77b7e298cf2
1000l: Fix shift amount in function_check_broken().
git-svn-id: svn://svn.mplayerhq.hu/mplayer/trunk@32311 b3059339-0415-0410-9bf9-f77b7e298cf2
Require DirectFB version 0.9.15 instead of 0.9.13.
This simplifies the build system at the cost of requiring a library
version that was released at the end rather than the middle of 2002.
git-svn-id: svn://svn.mplayerhq.hu/mplayer/trunk@32251 b3059339-0415-0410-9bf9-f77b7e298cf2
Simplify DirectFB check.
git-svn-id: svn://svn.mplayerhq.hu/mplayer/trunk@32252 b3059339-0415-0410-9bf9-f77b7e298cf2
Require DirectFB version 0.9.22.
This allows getting rid of a lot of library version check #ifdeffery.
Release 0.9.22 is from February 2005, so the requirement is reasonable.
git-svn-id: svn://svn.mplayerhq.hu/mplayer/trunk@32253 b3059339-0415-0410-9bf9-f77b7e298cf2
Add inline_asm_check function to simplify configure checks.
git-svn-id: svn://svn.mplayerhq.hu/mplayer/trunk@32243 b3059339-0415-0410-9bf9-f77b7e298cf2
Use inline_asm_check to simplify a bunch of configure checks.
git-svn-id: svn://svn.mplayerhq.hu/mplayer/trunk@32244 b3059339-0415-0410-9bf9-f77b7e298cf2
Mark local functions in configure tests as static; fixes the warnings:
tmp.c:1: warning: no previous prototype for 'foo'
tmp.c:2: warning: no previous prototype for 'func'
tmp.c:3: warning: no previous prototype for 'catch'
git-svn-id: svn://svn.mplayerhq.hu/mplayer/trunk@32228 b3059339-0415-0410-9bf9-f77b7e298cf2
Add some missing headers to configure checks; fixes the warnings:
tmp.c:3: warning: implicit declaration of function 'exit'
tmp.c:6: warning: implicit declaration of function 'printf'
tmp.c:4: warning: implicit declaration of function 'printf'
git-svn-id: svn://svn.mplayerhq.hu/mplayer/trunk@32229 b3059339-0415-0410-9bf9-f77b7e298cf2
Fix parameter types in swab() check; fixes the warnings:
tmp.c:3: warning: null argument where non-null required (argument 1)
tmp.c:3: warning: null argument where non-null required (argument 2)
git-svn-id: svn://svn.mplayerhq.hu/mplayer/trunk@32230 b3059339-0415-0410-9bf9-f77b7e298cf2
Remove unnecessary extern declarations from aalib check; fixes the warnings:
tmp.c:2: warning: redundant redeclaration of 'aa_defparams'
tmp.c:3: warning: redundant redeclaration of 'aa_defrenderparams'
git-svn-id: svn://svn.mplayerhq.hu/mplayer/trunk@32231 b3059339-0415-0410-9bf9-f77b7e298cf2
Remove bogus cast from configure check; fixes the warning:
tmp.c:21: warning: passing argument 2 of 'iconv' from incompatible pointer type
git-svn-id: svn://svn.mplayerhq.hu/mplayer/trunk@32233 b3059339-0415-0410-9bf9-f77b7e298cf2
Initialize variable in libspeex configure check; fixes the warning:
tmp.c:2: warning: 'dec' is used uninitialized in this function
git-svn-id: svn://svn.mplayerhq.hu/mplayer/trunk@32237 b3059339-0415-0410-9bf9-f77b7e298cf2
Initialize variable in giflib check; fixes the warning:
tmp.c:5: warning: 'gif.UserData' is used uninitialized in this function
git-svn-id: svn://svn.mplayerhq.hu/mplayer/trunk@32242 b3059339-0415-0410-9bf9-f77b7e298cf2
Cast return value to long instead of int in byte order check.
This avoids the following warning on 64 bit systems:
tmp.c:3: warning: cast from pointer to integer of different size
git-svn-id: svn://svn.mplayerhq.hu/mplayer/trunk@32250 b3059339-0415-0410-9bf9-f77b7e298cf2
Enable all of libavcodec, libavformat, libswscale, and libpostproc
together (libavutil is always required).
based on svn commit by diego:
git-svn-id: svn://svn.mplayerhq.hu/mplayer/trunk@32226 b3059339-0415-0410-9bf9-f77b7e298cf2
Disable MEncoder compilation and remove files used by MEncoder
only. There's no attempt to remove all references to MEncoder from the
build system, documentation etc at this point.
Removed files: (muxers, audio/video encoders, misc)
mencoder.c
cfg-mencoder.h
parser-mecmd.[ch]
xvid_vbr.[ch]
libmpdemux/muxer*
libmpcodecs/ae*
libmpcodecs/ve*
libmpcodecs/native/rtjpegn.[ch]
libmpcodecs/native/mmx.h // was used by rtjpegn only
Rationale:
MEncoder is still useful for some people, but there's not much
potential for further development; in the long run almost all use
cases can be handled better by solutions based on something else (for
example using FFmpeg or encoding MPlayer output). FFmpeg is already
getting video filtering support which should work for some common
MEncoder uses.
Keeping MEncoder working takes extra work that is away from player
development. While that amount of work is not huge (mostly MEncoder
can be just ignored), it's not completely insignificant either.
MEncoder is still maintained to some degree in the svn tree, so if
necessary it's possible to use it from there for now. This tree has
never had major improvements for the MEncoder side, so using svn
MEncoder instead should be no major loss.
The DEPFLAGS definition included the CFLAGS variable. All uses of
DEPFLAGS in Makefile use CFLAGS too, so this resulted in duplicated
options. Make DEPFLAGS contain "-MD -MP" only.
This allows setting some warning flags for C but not for C++ and fixes
a bunch of warnings that resulted from compiling C++ files with C-only
warning flags.
git-svn-id: svn://svn.mplayerhq.hu/mplayer/trunk@32173 b3059339-0415-0410-9bf9-f77b7e298cf2
git-svn-id: svn://svn.mplayerhq.hu/mplayer/trunk@32227 b3059339-0415-0410-9bf9-f77b7e298cf2
Nothing should depend on libswscale internals any more, so re-enable
everything. vf_palette and vf_halfpack were actually fixed earlier but
were not properly enabled.
Fix arts check to actually check linking so it doesn't
get enabled when e.g. cross-compiling under Linux for Windows.
git-svn-id: svn://svn.mplayerhq.hu/mplayer/trunk@32024 b3059339-0415-0410-9bf9-f77b7e298cf2
Suppress unsupported compiler options when building with clang on Darwin/PPC.
patch by Rowan James, rowanj@phere.net
git-svn-id: svn://svn.mplayerhq.hu/mplayer/trunk@31910 b3059339-0415-0410-9bf9-f77b7e298cf2
The default CD-ROM device on OpenBSD is /dev/rcd0c, not /dev/rcd0a.
patch by Edd Barrett, vext01 gmail com
git-svn-id: svn://svn.mplayerhq.hu/mplayer/trunk@31908 b3059339-0415-0410-9bf9-f77b7e298cf2
Make the sys/cdio.h header test work by explictly including
sys/types.h before.
Broken headers are a Solaris and BSD tradition, hoping
for them to get their act together is hopeless, so we
work around it (for now at least).
git-svn-id: svn://svn.mplayerhq.hu/mplayer/trunk@31855 b3059339-0415-0410-9bf9-f77b7e298cf2
Add a special header_check_broken to be used for broken
system headers taht do not include all dependencies
and use it for the Solaris uscsi header.
git-svn-id: svn://svn.mplayerhq.hu/mplayer/trunk@31856 b3059339-0415-0410-9bf9-f77b7e298cf2
Use header_check_broken to simplify cdio.h check.
git-svn-id: svn://svn.mplayerhq.hu/mplayer/trunk@31857 b3059339-0415-0410-9bf9-f77b7e298cf2
This avoids conflicts with the FFmpeg variable of the same name.
git-svn-id: svn://svn.mplayerhq.hu/mplayer/trunk@31749 b3059339-0415-0410-9bf9-f77b7e298cf2
Give signal handler function in test programs correct argument list.
This avoids a number of warnings from those test programs.
patch by Giorgio, mywing81 gmail com
git-svn-id: svn://svn.mplayerhq.hu/mplayer/trunk@31735 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
git-svn-id: svn://svn.mplayerhq.hu/mplayer/trunk@31616 b3059339-0415-0410-9bf9-f77b7e298cf2
Use cflag_check utility function in cross-compilation check.
git-svn-id: svn://svn.mplayerhq.hu/mplayer/trunk@31618 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
Add a convenience function to check for compiler flags directly
without specifying a test program, and modify tests to use it.
git-svn-id: svn://svn.mplayerhq.hu/mplayer/trunk@31613 b3059339-0415-0410-9bf9-f77b7e298cf2
git-svn-id: svn://svn.mplayerhq.hu/mplayer/trunk@31592 b3059339-0415-0410-9bf9-f77b7e298cf2
Fix variable name for tmpdir selection iterator.
Temporary directories should now be properly created on Linux.
git-svn-id: svn://svn.mplayerhq.hu/mplayer/trunk@31594 b3059339-0415-0410-9bf9-f77b7e298cf2
config.log belongs into mplayer's root directory, not into the tmp directory
git-svn-id: svn://svn.mplayerhq.hu/mplayer/trunk@31596 b3059339-0415-0410-9bf9-f77b7e298cf2
SDL overrides main, and provides a prototype for SDL_main
which uses argc and argv. Since the prototype didn't match
the main() in the test program, it failed to compile, making
the test fail when it should have worked.
git-svn-id: svn://svn.mplayerhq.hu/mplayer/trunk@31589 b3059339-0415-0410-9bf9-f77b7e298cf2
git-svn-id: svn://svn.mplayerhq.hu/mplayer/trunk@31569 b3059339-0415-0410-9bf9-f77b7e298cf2
clang also does not support -march=native.
git-svn-id: svn://svn.mplayerhq.hu/mplayer/trunk@31570 b3059339-0415-0410-9bf9-f77b7e298cf2
Simplify clang version extraction.
git-svn-id: svn://svn.mplayerhq.hu/mplayer/trunk@31571 b3059339-0415-0410-9bf9-f77b7e298cf2
Use a struct timezone as second parameter for gettimeofday in the
function test. This works around (broken?) systems where just
git-svn-id: svn://svn.mplayerhq.hu/mplayer/trunk@31433 b3059339-0415-0410-9bf9-f77b7e298cf2
Add QuantizeBuffer function call to gif test to actually test linking.
git-svn-id: svn://svn.mplayerhq.hu/mplayer/trunk@31373 b3059339-0415-0410-9bf9-f77b7e298cf2
The _mga/_xmga variables weren't changed to "no", causing a build
failure if mga/xmga support would have been otherwise enabled but was
only switched off because of the swscale test.
errors during detection with static libraries (in particular OpenGL + static SDL).
git-svn-id: svn://svn.mplayerhq.hu/mplayer/trunk@31282 b3059339-0415-0410-9bf9-f77b7e298cf2
reintroduce the logic that was removed with the previous commit. In case
the naive approach to link fails, try again with pkg-config.
git-svn-id: svn://svn.mplayerhq.hu/mplayer/trunk@31210 b3059339-0415-0410-9bf9-f77b7e298cf2
This fixes compilation with vo_zr enabled and MEncoder disabled.
git-svn-id: svn://svn.mplayerhq.hu/mplayer/trunk@31178 b3059339-0415-0410-9bf9-f77b7e298cf2
The former location is the more current and standard variant.
git-svn-id: svn://svn.mplayerhq.hu/mplayer/trunk@31176 b3059339-0415-0410-9bf9-f77b7e298cf2
Since I dropped the hack to support older libvdpau versions (without
MPEG4 / hqscaling features) from the FFmpeg version used in the build
repo it's better to disable those libvdpau versions in MPlayer
too. Change the configure check to require a newer libvdpau version,
and drop compatibility code in vo_vdpau.c.
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
accidentally disabled since some time and there were no complaints.
git-svn-id: svn://svn.mplayerhq.hu/mplayer/trunk@31067 b3059339-0415-0410-9bf9-f77b7e298cf2
It's unclear what disabling the result of the check is good for and why it is
necessary. Just avoiding a warning is not a good enough reason. Furthermore
this hack introduces problems on 64 bit (k)FreeBSD, as reported in Debian bug
#578622, which indicates it might never have been a good idea at all.
git-svn-id: svn://svn.mplayerhq.hu/mplayer/trunk@31054 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
This should avoid issues with make stalling after header files
have been renamed or removed.
git-svn-id: svn://svn.mplayerhq.hu/mplayer/trunk@31022 b3059339-0415-0410-9bf9-f77b7e298cf2
FFmpeg now builds with the software scaler enabled by default.
git-svn-id: svn://svn.mplayerhq.hu/mplayer/trunk@31004 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.
Should be replaced by a proper configure check for librtmp later.
git-svn-id: svn://svn.mplayerhq.hu/mplayer/trunk@30973 b3059339-0415-0410-9bf9-f77b7e298cf2
This avoids manually setting target architecture and CPU extensions.
git-svn-id: svn://svn.mplayerhq.hu/mplayer/trunk@30925 b3059339-0415-0410-9bf9-f77b7e298cf2
Nowadays MPlayer does not use the codecs from other installed programs.
A runtime setting will soon take over the rare case that binary codecs
should be searched for in non-standard directories.
git-svn-id: svn://svn.mplayerhq.hu/mplayer/trunk@30888 b3059339-0415-0410-9bf9-f77b7e298cf2
Add support for gettext-based runtime translations. Enabled with
configure switch --enable-translation (no autodetection). Note that no
translation files are installed yet.
After a recent library update on my system MPlayer started crashing on
exit in XCloseDisplay() if -vo vdpau had been used. With normal
linking it works OK. Since there should be little need for the dynamic
loading functionality any more, I'll just drop it rather than try
investigating the exact problem with dynamic loading and whether it
would be fixable. VDPAU is now linked normally with -lvdpau if
available.