summaryrefslogtreecommitdiffstats
path: root/libmpcodecs
Commit message (Collapse)AuthorAgeFilesLines
* vd_ffmpeg: fix compilation with neither VDPAU nor XvMC enabledUoti Urpala2010-01-211-2/+0
| | | | | | | | | The get_format() function was defined under #if CONFIG_XVMC || CONFIG_VDPAU but recent commit ca217f4557c3cff4f2bf33e605ce13e662e84a92 added an unconditional reference to it, causing linking to fail with an undefined reference if neither feature was enabled. Fix by removing the #if, there's no reason reason why it would be needed.
* vd_ffmpeg: FFmpeg-mt changed has_b_frames API, updateUoti Urpala2010-01-201-1/+2
|
* vd_ffmpeg: move redundant info messages to MSGL_V levelUoti Urpala2010-01-201-2/+7
| | | | | | | | | | | | Move two messages printed when using VDPAU/XvMC to MSGL_V level: "[VD_FFMPEG] XVMC-accelerated MPEG-2.\n" "[VD_FFMPEG] Trying pixfmt=%d.\n" The first is redundant because this info is normally visible from the decoder name, and it was also incorrectly printed in the VDPAU case too. Add a different MSGL_V message for VDPAU. Also make all these messages not translatable.
* vd_ffmpeg: disable callbacks for threaded decodingUoti Urpala2010-01-201-38/+20
| | | | | | | | | | | | | | | | | | | | MPlayer's slice and direct rendering related callbacks are not safe to call from other threads, so disable those features if more than one decoding thread is specified. This should fix some issues when using threaded decoding with formats other than h264 (in the h264 case the callbacks were already disabled for other reasons). This commit moves most of the code that sets special avctx parameters for VDPAU and XvMC. Before that was done after avcodec_open() based on the selected output image format; now it's done before avcodec_open() based on the capabilities of the selected decoder. At least the code selecting the thread count must be before avcodec_open(), and I think there is no reason to try to keep the previous structure otherwise either. The image format-based approach was implemented by Reimar with the intended goal of eventually selecting between software and VDPAU decoders under one FFmpeg decoder type. I consider that goal to be questionable, and the approach certainly made the existing code significantly messier for no functionality benefit.
* Avoid misleading error "ASS: cannot add video filter"Uoti Urpala2010-01-163-5/+29
| | | | | | | | | | | | | | | | | | When using libass with a VO that has direct EOSD support the vf_ass video filter is unnecessary and is not added automatically, but the code that adds the filter when it is needed produced misleading output messages in this case. The following two messages were printed at MSGL_ERR level, making it look like an error condition: Couldn't open video filter 'ass'. ASS: cannot add video filter Add a version of vf_open_plugin() called vf_open_plugin_noerr() that does not itself print an error message if opening a vf fails and that returns the exact status code returned by the vf open() function. Make vf_ass return a different status code depending on whether there was an actual error or if it determined a filter would be redundant. Use the _noerr function in the code adding the filter to avoid the first message and check the status code to avoid the second.
* Merge svn changes up to r30236Uoti Urpala2010-01-081-0/+2
|\
| * Avoid the error message "Unsupported PixelFormat -1" for ffh264 decodingzuxy2010-01-071-0/+2
| | | | | | | | git-svn-id: svn://svn.mplayerhq.hu/mplayer/trunk@30233 b3059339-0415-0410-9bf9-f77b7e298cf2
* | Merge svn changes up to r30195Uoti Urpala2010-01-082-5/+5
|\|
| * Replace deprecated sws_scale_ordered usages by sws_scale (which does the same).reimar2010-01-032-5/+5
| | | | | | | | git-svn-id: svn://svn.mplayerhq.hu/mplayer/trunk@30192 b3059339-0415-0410-9bf9-f77b7e298cf2
* | Merge svn changes up to r30185Uoti Urpala2010-01-081-0/+1
|\|
| * Add missing avcodec_close to vf_screenshot.reimar2010-01-031-0/+1
| | | | | | | | git-svn-id: svn://svn.mplayerhq.hu/mplayer/trunk@30185 b3059339-0415-0410-9bf9-f77b7e298cf2
* | Merge svn changes up to r30165Uoti Urpala2010-01-087-99/+173
|\|
| * One more fix for -vf scale with alpha.reimar2010-01-011-1/+1
| | | | | | | | git-svn-id: svn://svn.mplayerhq.hu/mplayer/trunk@30159 b3059339-0415-0410-9bf9-f77b7e298cf2
| * Also pass alpha plane to swscale, avoids crashes when converting betweenreimar2010-01-011-4/+4
| | | | | | | | | | | | | | YUV with alpha and some other format supporting alpha. git-svn-id: svn://svn.mplayerhq.hu/mplayer/trunk@30158 b3059339-0415-0410-9bf9-f77b7e298cf2
| * Add support for YUV format with alpha and fix the codecs.conf entry for vp6areimar2009-12-315-3/+17
| | | | | | | | | | | | | | | | to use it. Fixes playback of samples in http://samples.mplayerhq.hu/FLV/flash_with_alpha/ git-svn-id: svn://svn.mplayerhq.hu/mplayer/trunk@30157 b3059339-0415-0410-9bf9-f77b7e298cf2
| * Also pass the 4th plane for planar formats on to libavcodec.reimar2009-12-311-0/+4
| | | | | | | | git-svn-id: svn://svn.mplayerhq.hu/mplayer/trunk@30156 b3059339-0415-0410-9bf9-f77b7e298cf2
| * Try to put the list of output formats for vf_scale in a more sensiblereimar2009-12-311-6/+6
| | | | | | | | | | | | | | | | | | order. While the 16-bit yuv formats should not be preferred over the 8-bit ones, it seems reasonable to probe them directly after the equivalent 8-bit formats. git-svn-id: svn://svn.mplayerhq.hu/mplayer/trunk@30155 b3059339-0415-0410-9bf9-f77b7e298cf2
| * Deduplicate the mp_image planes allocation code.reimar2009-12-312-63/+35
| | | | | | | | | | | | | | | | | | The code in vf.c and mp_image.c is almost the same, though the one in vf.c is more up-to-date/has more bug fixes and thus is used as the basis (which is why the diff is so big). git-svn-id: svn://svn.mplayerhq.hu/mplayer/trunk@30154 b3059339-0415-0410-9bf9-f77b7e298cf2
| * Add support for 16-bit per component YUV formats.reimar2009-12-316-14/+73
| | | | | | | | git-svn-id: svn://svn.mplayerhq.hu/mplayer/trunk@30152 b3059339-0415-0410-9bf9-f77b7e298cf2
| * Support 440P in scale filter.reimar2009-12-301-0/+2
| | | | | | | | git-svn-id: svn://svn.mplayerhq.hu/mplayer/trunk@30142 b3059339-0415-0410-9bf9-f77b7e298cf2
| * Add support for 440p colorspace.reimar2009-12-303-0/+6
| | | | | | | | git-svn-id: svn://svn.mplayerhq.hu/mplayer/trunk@30140 b3059339-0415-0410-9bf9-f77b7e298cf2
| * Add a helper function to get the chroma scale shift and use to simplify mpi ↵reimar2009-12-303-33/+50
| | | | | | | | | | | | setup. git-svn-id: svn://svn.mplayerhq.hu/mplayer/trunk@30138 b3059339-0415-0410-9bf9-f77b7e298cf2
* | Merge svn changes up to r30136Uoti Urpala2009-12-306-10/+28
|\| | | | | | | Ignore another broken correct-pts change in 30134.
| * Add support for parsing audio streams (though should be easy to extend to video)reimar2009-12-271-2/+13
| | | | | | | | | | | | | | | | | | | | | | via libavcodec. Parsing can be done at the demuxer stage (currently disabled) or at the decoder (ad_ffmpeg, enabled). Should allow using the libavcodec AAC, DTS, ... decoders independent of container format. git-svn-id: svn://svn.mplayerhq.hu/mplayer/trunk@30130 b3059339-0415-0410-9bf9-f77b7e298cf2
| * Support mp_image with allocated palette.reimar2009-12-263-7/+13
| | | | | | | | | | | | | | | | Fixes playback and a memory leak for FFmpeg codecs which use reget_buffer with paletted data, e.g. cdgraphics. git-svn-id: svn://svn.mplayerhq.hu/mplayer/trunk@30116 b3059339-0415-0410-9bf9-f77b7e298cf2
| * Remove only use if MP_IMGFLAG_RGB_PALETTE to allow giving the flag a slightlyreimar2009-12-261-1/+0
| | | | | | | | | | | | | | different meaning. git-svn-id: svn://svn.mplayerhq.hu/mplayer/trunk@30115 b3059339-0415-0410-9bf9-f77b7e298cf2
| * Restore the old value of planes[1] in vf_palette at the end to ensurereimar2009-12-261-0/+2
| | | | | | | | | | | | | | we do not call free() on the fixed gray_pal array. git-svn-id: svn://svn.mplayerhq.hu/mplayer/trunk@30114 b3059339-0415-0410-9bf9-f77b7e298cf2
| * Some ugly hacks to make compiling against a newer external version of libass ↵reimar2009-12-242-0/+8
| | | | | | | | | | | | work. git-svn-id: svn://svn.mplayerhq.hu/mplayer/trunk@30107 b3059339-0415-0410-9bf9-f77b7e298cf2
| * Remove more direct includes of libass/ass.hreimar2009-12-242-2/+0
| | | | | | | | git-svn-id: svn://svn.mplayerhq.hu/mplayer/trunk@30105 b3059339-0415-0410-9bf9-f77b7e298cf2
* | audio: Remove fixed decode_audio() return size limit (MAX_OUTBURST)Uoti Urpala2009-12-291-2/+4
| | | | | | | | | | | | | | | | | | | | | | | | A couple of months ago MPlayer's ALSA driver started rounding the amount of input data it was willing to accept in one call down to an integer multiple of the value it set in ao_data.outburst. In some configurations it was possible for this value to exceed the 64 KiB limit on the amount MPlayer was willing to write in a single call to the AO. As a result ao_alsa accepted 0 bytes in each play() call and audio playback failed. Fix this by removing the fixed 64 KiB limit on the amount of audio sent to AO at once; the limit was mostly a remnant of older code anyway.
* | cosmetics: Revert old dec_audio.c code uglificationUoti Urpala2009-12-281-12/+11
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Revert 3 old code uglification changes that were done with the excuse of gcc-2.95 support. The last reverted change was a fix to a bug introduced in the middle change. Revert "10l, len may change after initialization time" This reverts commit ae9db277c7dae6350cab22d9c57d78cc4684aa9c. Revert "fix declaration after statement, take 2" This reverts commit 4bceedee9305e1ebf53c598eb863aac4153e67d5. Revert "fix declaration after statement" This reverts commit aef0374c1cef269d65b8783dae8d33ee45a1f976.
* | vf: Fix filter enabling logic for vf_uspp and vfs using lavc internalsUoti Urpala2009-12-071-2/+2
| | | | | | | | | | | | | | | | | | | | | | | | Move vf_uspp from the list of filters depending on internal non-API FFmpeg code to the list of filters only depending on libavcodec normally - at least it doesn't need any internal headers, and I don't see other obvious unsafe non-API usage either. Change a leftover CONFIG_LIBAVCODEC_A test to the now correct CONFIG_LIBAVCODEC_INTERNALS to actually allow using the video filters requiring non-API libavcodec internals when --ffmpeg-source-dir was specified.
* | vf_vo: Use vo_seek_reset() instead of vo_control()Uoti Urpala2009-12-021-1/+1
| | | | | | | | | | | | | | | | | | Change the vo_control(vo, VOCTRL_RESET, NULL) call done when the vf_vo filter is uninited to vo_seek_reset(vo). The latter also sets vo->frame_loaded to false. Remove the vo->config_ok check from vo_seek_reset(). The reset call should be doable even if config failed.
* | Merge svn changes up to r29971Uoti Urpala2009-11-291-1/+1
|\|
| * when using -v, print also which lavc codec has been used, notattila2009-11-281-1/+1
| | | | | | | | | | | | | | just that the init was ok git-svn-id: svn://svn.mplayerhq.hu/mplayer/trunk@29970 b3059339-0415-0410-9bf9-f77b7e298cf2
* | Merge svn changes up to r29962Uoti Urpala2009-11-2311-143/+13
|\|
| * Fix initialization values for vf_expand priv struct.reimar2009-11-221-0/+2
| | | | | | | | git-svn-id: svn://svn.mplayerhq.hu/mplayer/trunk@29958 b3059339-0415-0410-9bf9-f77b7e298cf2
| * Remove unused variable.reimar2009-11-221-2/+0
| | | | | | | | git-svn-id: svn://svn.mplayerhq.hu/mplayer/trunk@29957 b3059339-0415-0410-9bf9-f77b7e298cf2
| * Add const to draw_slice argument to match what FFmpeg expects for ↵reimar2009-11-221-2/+2
| | | | | | | | | | | | draw_horiz_band. git-svn-id: svn://svn.mplayerhq.hu/mplayer/trunk@29956 b3059339-0415-0410-9bf9-f77b7e298cf2
| * Switch ad_ffmpeg to avcodec_decode_audio3reimar2009-11-221-1/+5
| | | | | | | | git-svn-id: svn://svn.mplayerhq.hu/mplayer/trunk@29955 b3059339-0415-0410-9bf9-f77b7e298cf2
| * Remove unused variable.reimar2009-11-221-1/+0
| | | | | | | | git-svn-id: svn://svn.mplayerhq.hu/mplayer/trunk@29954 b3059339-0415-0410-9bf9-f77b7e298cf2
| * Remove unreachable parsing code: for filters that use the option parser,reimar2009-11-217-135/+0
| | | | | | | | | | | | | | | | the args argument to open will always be NULL and vf->priv will always be != NULL. git-svn-id: svn://svn.mplayerhq.hu/mplayer/trunk@29945 b3059339-0415-0410-9bf9-f77b7e298cf2
| * Allow vf_scale to output to RGB48, though still prefer the 24 and 32 bit ↵reimar2009-11-211-0/+2
| | | | | | | | | | | | formats. git-svn-id: svn://svn.mplayerhq.hu/mplayer/trunk@29943 b3059339-0415-0410-9bf9-f77b7e298cf2
| * Add a define for IMGFMT_RGB48NE that depends on machine endianness.reimar2009-11-211-0/+2
| | | | | | | | git-svn-id: svn://svn.mplayerhq.hu/mplayer/trunk@29941 b3059339-0415-0410-9bf9-f77b7e298cf2
| * Use avcodec_align_dimensions to appropriately align width and height inreimar2009-11-171-5/+2
| | | | | | | | | | | | | | get_buffer instead of reimplementing it badly. git-svn-id: svn://svn.mplayerhq.hu/mplayer/trunk@29921 b3059339-0415-0410-9bf9-f77b7e298cf2
* | core: Add support for decoder reordering of pts valuesUoti Urpala2009-11-213-7/+54
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Add a mode where libavcodec's reordered_opaque feature is used to associate container packet timestamps with decoded frames. This should improve behavior at least for MPEG files with interlaced h264; the previous code does not cope well with the libavformat demuxer producing two field packets with separate timestamps but the libavcodec h264 decoder only producing a single output frame for those two packets (so half the timestamps have no associated output frame). The current libavformat mpeg demuxer seems to finally work with interlaced h264 files and produce valid timestamps which are useful with a mode like this. By default MPlayer now selects between this new mode and the old one automatically based on the number of timestamp problems they cause; by default the new mode is used if both seem to work. The new option -pts-association-mode can be used to force a particular mode. If correct-pts mode is disabled this has no effect on timing. Also remove the "EXPERIMENTAL" marker from the manpage description of -correct-pts.
* | cosmetics: remove some unused variablesUoti Urpala2009-11-171-1/+0
| |
* | Merge svn changes up to r29912Uoti Urpala2009-11-167-12/+2053
|\|
| * Support VDPAU hardware accelerated decoding of MPEG-4 ASP on capablecehoyos2009-11-102-0/+2
| | | | | | | | | | | | | | | | | | hardware. Original patch by NVIDIA corporation. git-svn-id: svn://svn.mplayerhq.hu/mplayer/trunk@29885 b3059339-0415-0410-9bf9-f77b7e298cf2
| * Map AV_LOG_VERBOSE to MSGL_V in order to avoid spurious log output.diego2009-11-101-0/+1
| | | | | | | | | | | | | | based on a patch by On2 git-svn-id: svn://svn.mplayerhq.hu/mplayer/trunk@29884 b3059339-0415-0410-9bf9-f77b7e298cf2
| * Add support for DVB teletext.reimar2009-11-102-0/+27
| | | | | | | | | | | | | | Patch by Francesco Lavra [francescolavra interfree it] with modifications by me. git-svn-id: svn://svn.mplayerhq.hu/mplayer/trunk@29875 b3059339-0415-0410-9bf9-f77b7e298cf2
| * Add support for 8 channel audio.tack2009-11-102-3/+5
| | | | | | | | | | | | | | | | Where 8 channel support is non-trivial (e.g. ao_dsound), at least ensure we fail gracefully. git-svn-id: svn://svn.mplayerhq.hu/mplayer/trunk@29868 b3059339-0415-0410-9bf9-f77b7e298cf2
| * Properly free the pthread mutex for teletext.reimar2009-11-091-0/+2
| | | | | | | | git-svn-id: svn://svn.mplayerhq.hu/mplayer/trunk@29866 b3059339-0415-0410-9bf9-f77b7e298cf2
| * Allow teletext compilation without pthreadsreimar2009-11-091-0/+11
| | | | | | | | git-svn-id: svn://svn.mplayerhq.hu/mplayer/trunk@29865 b3059339-0415-0410-9bf9-f77b7e298cf2
| * Remove CONFIG_TV_TELETEXT.cehoyos2009-11-071-4/+0
| | | | | | | |