[vlc] Decoder/Encoder optimizations for Intel Core i7 and Nividia GPUs
Måns Rullgård
mans at mansr.com
Wed Apr 29 14:34:35 CEST 2009
Rémi Denis-Courmont <remi at remlab.net> writes:
> On Wed, 29 Apr 2009 15:04:17 +0530, "Selvakumar Manickam" <selva at amagi.com>
> wrote:
>> I want to know whether the current implementation of VLC media player
>> leverages on the unique features available on HW platforms (e.g, hyper
>> threading on Intel Core i7 & CUDA architecture in Nividia GPUs) to
>> speed-up video decoding and encoding. If this is not available currently,
>> has anyone come across any roadmap for this? Please let me know. Thanks.
>
> VLC has been multi-threaded from the beginning. However, with the notable
> exception of h264 video encoding, it does not currently support symmetric
> multi-threading. As for GPU acceleration, it can use rescaling and chroma
> (YUV->RGB) conversions, and in some cases MPEG2 acceleration for inverse
> DCT and motion compensation. CUDA and other recent GPU-based acceleration
> is not currently implemented.
FFmpeg, which VLC uses for most decoding, supports multi-threading for
several codecs, though not H.264 (yet). It also has support for
nvidia gpu-acceleration of mpeg2, mpeg4, h.264, and vc-1. Adding the
necessary support in VLC to utilise this shouldn't be terribly
difficult.
The Core i7 CPU doesn't differ substantially from older multi-core
CPUs apart from the addition of SSE4 (or whatever it's called). These
new instructions could possibly speed up certain parts of the decoding
process a little, but expect no miracles. I'm not sure if there is
any SSE4 code in FFmpeg yet.
--
Måns Rullgård
mans at mansr.com
More information about the vlc
mailing list