openbsd-ports/x11/mplayer
edd 002264e2fe Disable some more libs where the default FFmpeg implementations will suffice.
Cleanups in README.

From brad. OK sthen@ and dcoppa@
2011-07-02 23:10:25 +00:00
..
files Update mplayer to a newer snapshot, this time with dynamic linking of ffmpeg! 2011-03-29 20:04:41 +00:00
patches Remove FAAC linkage due to license conflicts. 2011-06-27 23:29:20 +00:00
pkg Disable some more libs where the default FFmpeg implementations will suffice. 2011-07-02 23:10:25 +00:00
distinfo Update mplayer to a newer snapshot, this time with dynamic linking of ffmpeg! 2011-03-29 20:04:41 +00:00
Makefile Disable some more libs where the default FFmpeg implementations will suffice. 2011-07-02 23:10:25 +00:00
README Disable some more libs where the default FFmpeg implementations will suffice. 2011-07-02 23:10:25 +00:00

$OpenBSD: README,v 1.3 2011/07/02 23:10:25 edd Exp $

Porting notes for MPlayer
=========================

In addition to the comments in Makefile, porters should also read these
notes:

FFmpeg Linkage
--------------

We link the shared libraries from the graphics/ffmpeg port. This is what
--disable-ffmpeg_a does, however we still need the FFmpeg sources in the
build dir for this to work, hence we depend upon FFmpeg as a build dependency.

Ensure that FFmpeg was dynamically linked by using ldd on the MPlayer
binary and searching for one of the FFmpeg libs in the listing (eg.
libavcodec).

Selecting Codec Implementations
-------------------------------

As a general rule, we prefer to use FFmpeg implementations, but only if
they are good quality. If this is the case, try not to pull in external
codec libraries for the same codec.

There is an exception to this rule, which is where an external library
provides an encoder and decoder, and there is a decoder for the given
codec in FFmpeg, but no encoder; in such a case, go ahead and link the
external library so that users can encode with mencoder.

Be aware that some hardware lacks a floating point unit (ARM for
example).  On these architectures, you should select integer decoders
where possible. Eg. Tremor instead of Vorbis.

External FAAC linkage (and graphics/ffmpeg's external FAAC linkage)
was disabled due to conflicting licenses. Only the FFmpeg's
internal "ffaac" encoder remains for use with encoding AAC in mencoder.
https://bugs.launchpad.net/ubuntu/+source/faac/+bug/374900

FFmpeg Ogg Demuxer Bug
----------------------

The pkg/README details a bug in the FFmpeg Ogg demuxer; You can test the
existence of this bug with this URL:
http://icecast.version6.net:8888/okul.ogg

When a song ends, MPlayer will stall saying it cannot fill the cache.

Bug reported upstream here (it's an FFmpeg bug):
https://roundup.ffmpeg.org/issue2337

Rolling a Distfile
------------------

svn checkout svn://svn.mplayerhq.hu/mplayer/trunk mplayer-YYYYMMDD
cd mplayer-YYYYMMDD
./version.sh (this should create a version.h)
find . -name '.svn' | xargs rm -Rf
cd ..
tar zcvf mplayer-YYYYMMDD.tar.gz mplayer-YYYYMMDD

Testing Mencoder
----------------

See here to know what you can contain it what:
http://en.wikipedia.org/wiki/Comparison_of_container_formats

Make a h264/mp4 (although lavc containers are somewhat broken in mencoder):
mencoder -ovc x264 -of lavf -lavfopts format=mp4 -nosound -o out.mp4 <infile>