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

29863 Commits

Author SHA1 Message Date
Uoti Urpala
d9cea6a98b vo_vdpau: Allocate one large surface for EOSD content
Create a single large bitmap surface for EOSD objects and pack all the
bitmap rectangles inside that. The old code created a separate bitmap
surface for every bitmap and then resized the cached surfaces when
drawing later frames. The number of surfaces could be large (at least
about 2000 for one sample subtitle script) so this was very
inefficient. The old code also used a very simple strategy for pairing
existing surfaces to new bitmaps; it could resize tiny surfaces to
hold large glyphs while using existing large surfaces to hold tiny
glyphs and as a result allocate arbitrarily much more total surface
area than was necessary.

The new code only supports using a single surface, freeing it and
allocating a larger one if necessary. It would be possible to support
multiple surfaces in case of hitting the maximum bitmap surface size,
but I'll wait to see if that is actually needed before implementing
it. NVIDIA seems to support bitmap surface sizes up to 8192x8192, so
it would take either a really pathological subtitle script rendered at
a high resolution or an implementation with lower limits before
multiple surfaces would be necessary.

The packing algorithm should successfully pack the bitmaps into a
surface of size w*h as long as the total area of the bitmaps does not
exceed 16/17 (w-max_bitmap_width)*(h-max_bitmap_height), so there
should be no totally catastrophic failure cases. The 16/17 factor
comes from approximate sorting used in the algorithm. On average
performance should be better than this minimum guaranteed level.
2009-09-05 06:25:47 +03:00
Uoti Urpala
575331d73c Merge branch 'vdpau_old' into vdpau 2009-08-31 22:18:51 +03:00
Uoti Urpala
84964c0dec vo_vdpau.c: cosmetics 2009-08-29 21:01:55 +03:00
Uoti Urpala
3013f956dc vo_vdpau: reindent after GUI code removal 2009-08-29 21:01:55 +03:00
Uoti Urpala
fa860a7ffa vo_vpdau: Clean up uninit logic 2009-08-29 21:01:55 +03:00
Uoti Urpala
e2e0d58407 vo_vdpau: Make CHECK_ST macro safer
Also contains a couple of changes in destroy_vdpau_objects.
2009-08-29 21:01:54 +03:00
Uoti Urpala
7d79dd972d vo_vdpau: Move all remaining static/global variables to context 2009-08-29 21:01:54 +03:00
Uoti Urpala
35dbbc9e31 vo_vdpau: Move things to context struct 2009-08-29 21:01:54 +03:00
Uoti Urpala
8a26256b87 vo_vdpau: Make info struct const 2009-08-29 21:01:54 +03:00
Uoti Urpala
3512f985e0 vo_vdpau: Replace global function table with context variable 2009-08-29 21:01:46 +03:00
Uoti Urpala
72527eea10 vo_vdpau: Move VDPAU interface pointers into one struct
Replace a bunch of vdp_* function pointer variables with one struct.
A variable that was before named "vdp_xyz" is now the struct field
"vdp.xyz".
2009-08-29 20:22:39 +03:00
Uoti Urpala
dc44507f2a vo_vdpau: Add template file for VDPAU functions
Add a template file that contains a single listing of various
information needed about the VDPAU interface functions, and is then
included multiple times to create required declarations and tables.
Previously some of the information needed to be duplicated for each of
those uses.
2009-08-29 20:18:42 +03:00
Uoti Urpala
09943048cb vo_vdpau: Make compile as new-style VO 2009-08-29 20:18:22 +03:00
Uoti Urpala
7ef7333e59 vo_vdpau: Delete GUI stuff, include font_load.h for force_load_font
font_load.h was previously included through gui/interface.h
2009-08-29 20:18:03 +03:00
Anton Khirnov
a9618c1c6f debian/: update README and TODO 2009-08-23 11:08:02 +03:00
Anton Khirnov
4972792c2e debian/rules: don't manually remove config files
they're removed automatically by make distclean.
2009-08-23 11:08:02 +03:00
Anton Khirnov
555dab7124 debian/: update changelog
change version name to git.
2009-08-23 11:08:02 +03:00
Anton Khirnov
7f299a14b1 debian/: update standards version. 2009-08-23 11:08:02 +03:00
Anton Khirnov
374e168401 debian/: support parallel in DEB_BUILD_OPTIONS. 2009-08-23 11:08:02 +03:00
Anton Khirnov
d4455e4222 debian/: DEB_BUILD_OPTIONS -> DEB_BUILD_CONFIGURE
DEB_BUILD_OPTIONS is reserved by Debian policy.
2009-08-23 11:08:02 +03:00
Anton Khirnov
e0275d1097 debian/: delegate handling of mplayer.conf to dpkg.
This change removes also all debconf templates and reduces
package complexity.

Patch by Reinhard Tartler <siretart AT tauware.de>, copied
from the official Debian package.
2009-08-23 11:08:02 +03:00
Anton Khirnov
7d64e9e219 debian/: remove watch
there are no releases for the git tree atm.
2009-08-23 11:08:02 +03:00
Anton Khirnov
104aec4537 debian/: remove references to the internal GUI. 2009-08-23 11:08:02 +03:00
Uoti Urpala
7431eabaab Merge svn changes up to r29544 2009-08-22 04:31:30 +03:00
reimar
2b8b5b7053 Add suport for detecting and demuxing DVB teletext streams (nothing beyond that though).
git-svn-id: svn://svn.mplayerhq.hu/mplayer/trunk@29544 b3059339-0415-0410-9bf9-f77b7e298cf2
2009-08-21 16:54:57 +00:00
ramiro
728be1cb1a Check return values of sws_allocVec() and sws_getConstVec().
git-svn-id: svn://svn.mplayerhq.hu/mplayer/trunk@29543 b3059339-0415-0410-9bf9-f77b7e298cf2
2009-08-20 01:55:45 +00:00
reimar
54af60865f OpenAL: untested support for 8-channel audio.
git-svn-id: svn://svn.mplayerhq.hu/mplayer/trunk@29542 b3059339-0415-0410-9bf9-f77b7e298cf2
2009-08-19 16:03:05 +00:00
tack
0d0c303ebe Fix channel reordering when using 24-bit samples by adding breaks to cases
missed by r29427.

Patch submitted by Shane W, shane-mplayer csy ca


git-svn-id: svn://svn.mplayerhq.hu/mplayer/trunk@29541 b3059339-0415-0410-9bf9-f77b7e298cf2
2009-08-19 13:29:07 +00:00
reimar
11e641f48f Change ao_dart to use AVFifoBuffer instead of its own fifo implementation, too.
git-svn-id: svn://svn.mplayerhq.hu/mplayer/trunk@29540 b3059339-0415-0410-9bf9-f77b7e298cf2
2009-08-19 09:01:37 +00:00
diego
9e9a5a3cac Fix detection of mips arch on NetBSD/sgimips.
based on a patch by Andrew Randrianasulu, randrik mail ru


git-svn-id: svn://svn.mplayerhq.hu/mplayer/trunk@29539 b3059339-0415-0410-9bf9-f77b7e298cf2
2009-08-19 08:47:46 +00:00
reimar
9d6b461605 Free initial swscale context, too. Avoids a valgrind warning.
git-svn-id: svn://svn.mplayerhq.hu/mplayer/trunk@29538 b3059339-0415-0410-9bf9-f77b7e298cf2
2009-08-19 08:21:55 +00:00
reimar
78fb0e7f16 Remove useless casts of malloc return value.
git-svn-id: svn://svn.mplayerhq.hu/mplayer/trunk@29537 b3059339-0415-0410-9bf9-f77b7e298cf2
2009-08-19 08:18:53 +00:00
ramiro
67636ed48b Introduce and use sws_allocVec().
git-svn-id: svn://svn.mplayerhq.hu/mplayer/trunk@29536 b3059339-0415-0410-9bf9-f77b7e298cf2
2009-08-19 01:33:17 +00:00
ramiro
0f89c75f31 Reuse sws_getConstVec() where possible.
git-svn-id: svn://svn.mplayerhq.hu/mplayer/trunk@29535 b3059339-0415-0410-9bf9-f77b7e298cf2
2009-08-19 01:32:06 +00:00
tack
bc4cc45029 Cosmetics: adjust alignment.
git-svn-id: svn://svn.mplayerhq.hu/mplayer/trunk@29534 b3059339-0415-0410-9bf9-f77b7e298cf2
2009-08-18 22:25:58 +00:00
tack
f89696a8e2 Fix incorrect channel ordering for lavc audio codecs (specifically ffac3,
ffdca, ffflac, ffaac, fftruehd).  In the process, adds support for 32-bit
samples.



git-svn-id: svn://svn.mplayerhq.hu/mplayer/trunk@29533 b3059339-0415-0410-9bf9-f77b7e298cf2
2009-08-18 22:24:36 +00:00
Uoti Urpala
95da34aa07 Merge svn changes up to r29532 2009-08-18 02:29:37 +03:00
reimar
3961e12fca Fix incompatible pointer types warning, also seems to fix mis-compilation with gcc-4.4.1
git-svn-id: svn://svn.mplayerhq.hu/mplayer/trunk@29532 b3059339-0415-0410-9bf9-f77b7e298cf2
2009-08-17 08:02:37 +00:00
reimar
6638304dbf Fix 100l broken flag check found due to compiler warning.
git-svn-id: svn://svn.mplayerhq.hu/mplayer/trunk@29531 b3059339-0415-0410-9bf9-f77b7e298cf2
2009-08-17 07:30:24 +00:00
reimar
9054d57595 Set demuxer->filepos in mf demuxer, since the stream_tell fallback is not
usable. Fixes progress display in mencoder.


git-svn-id: svn://svn.mplayerhq.hu/mplayer/trunk@29530 b3059339-0415-0410-9bf9-f77b7e298cf2
2009-08-17 06:14:12 +00:00
reimar
eeaa871baa Get rid of rawaudio control code again that only duplicates the fallback code in
demuxer.c now.


git-svn-id: svn://svn.mplayerhq.hu/mplayer/trunk@29529 b3059339-0415-0410-9bf9-f77b7e298cf2
2009-08-17 05:56:36 +00:00
reimar
5d058a67c1 Handle demuxers that never set filepos by using stream_tell.
git-svn-id: svn://svn.mplayerhq.hu/mplayer/trunk@29528 b3059339-0415-0410-9bf9-f77b7e298cf2
2009-08-17 05:55:40 +00:00
ramiro
69cb72414a swscale-example: Make selection of dstW, dstH, and flags more clear.
git-svn-id: svn://svn.mplayerhq.hu/mplayer/trunk@29527 b3059339-0415-0410-9bf9-f77b7e298cf2
2009-08-17 02:06:00 +00:00
reimar
46f8461828 Add some protection to the rawaudio GET_LENGTH/GET_PERCENT_POS in case the
file length is not known (streaming).


git-svn-id: svn://svn.mplayerhq.hu/mplayer/trunk@29526 b3059339-0415-0410-9bf9-f77b7e298cf2
2009-08-16 22:44:29 +00:00
reimar
fef7ef08a0 Implement DEMUXER_CTRL_GET_TIME_LENGTH and DEMUXER_CTRL_GET_PERCENT_POS for
rawaudio demuxer.


git-svn-id: svn://svn.mplayerhq.hu/mplayer/trunk@29525 b3059339-0415-0410-9bf9-f77b7e298cf2
2009-08-16 22:39:10 +00:00
ramiro
808ac07940 More indentation changes leftover from r29522:
- Align asm code to the column 4 spaces after the call to __asm__();
- Align cases in switch statements to the same column as "switch".


git-svn-id: svn://svn.mplayerhq.hu/mplayer/trunk@29524 b3059339-0415-0410-9bf9-f77b7e298cf2
2009-08-16 21:37:07 +00:00
ramiro
b490da35c8 Cosmetics:
- Place curly brackets in the same line as while/for/if/switch/else/do;
- Place curly brackets at column 0 in the next line starting a function.

git-svn-id: svn://svn.mplayerhq.hu/mplayer/trunk@29523 b3059339-0415-0410-9bf9-f77b7e298cf2
2009-08-16 21:11:28 +00:00
ramiro
88dafbd9a5 Indent libswscale:
- Use 4 spaces throughout for indentation;
- Fix inconsistent indentation;
- Indent function calls and declarations aligning arguments on multiple lines
  to the column after the opening parentheses;
- Align asm code to the column 4 spaces after the call to __asm__();
- Align cases in switch statements to the same column as "switch".


git-svn-id: svn://svn.mplayerhq.hu/mplayer/trunk@29522 b3059339-0415-0410-9bf9-f77b7e298cf2
2009-08-16 00:32:04 +00:00
cehoyos
6a101a97f9 Fix file information. Patch by Francesco Lavra, francescolavra interfree it
git-svn-id: svn://svn.mplayerhq.hu/mplayer/trunk@29521 b3059339-0415-0410-9bf9-f77b7e298cf2
2009-08-15 23:41:35 +00:00
cehoyos
4112165879 Add missing major contributors to copyright statement.
git-svn-id: svn://svn.mplayerhq.hu/mplayer/trunk@29520 b3059339-0415-0410-9bf9-f77b7e298cf2
2009-08-15 23:33:56 +00:00