[vlc-devel] VLC's performance on SMP system

xxcv xxcv07 at gmail.com
Sun May 31 09:48:39 CEST 2009


Kaarlo Räihä wrote:
> xxcv kirjoitti 31.05.2009 kello 04:25:
>   
>> Kaarlo Räihä wrote:
>>     
>>> You have to pass it manually because there isn't option for this in 
>>> VLC yet. If you look how the loopfilter option is implemented, you 
>>> should be able to figure out how to pass the threads option to 
>>> libavcodec. (it might also require some changes to source code)
>>>       
>> Results are same as before.
>>     
        ^^^
In another word, the effects are still
there doesn't matter if it threads=1 or
2 all the way to 8. Set threads to 9
libavcodec will stop working.
Experimented with it only accept
max of 8 threads. It was built with
--enable-w32threads and will not
compile if I try --enable-pthreads
using pthreads-w32 library.
>> FFdshow uses its own ffmpeg and ffmpeg-mt
>> after viewing the svn content 
>> <http://ffdshow-tryout.svn.sourceforge.net/viewvc/ffdshow-tryout/trunk/src/f
>> fmpeg-mt/libavcodec/>.
>> There's no libavcodec/w32thread.c in ffdshow
>> source.
>> Looking at this file in ffmpeg-mt.git:master, show
>> no support for thread_type FF_THREAD_FRAME.
>> ---
>> int avcodec_thread_init(AVCodecContext *s, int thread_count){
>>     int i;
>>     ThreadContext *c;
>>     uint32_t threadid;
>>
>>     if(!(s->thread_type & FF_THREAD_SLICE)){
>>         av_log(s, AV_LOG_WARNING, "The requested thread algorithm is
>>  not 
>> supported with this thread library.\n");
>>         return 0;
>>     }
>>
>>     s->thread_count= thread_count;
>>     s->active_thread_type= FF_THREAD_SLICE;
>> ---
>>
>>     
>
> Vanilla avcodec uses slices based multithread decoding, but it isn't best possible solution for all H.264 videos.
> http://forum.doom9.org/showthread.php?t=129702
>
> The threads option should be found from FFDshow if you check the source code of Decoder options page. And after that you should know what to pass to libavcodec from VLC side. http://media.photobucket.com/image/ffdshow%20%252522Number%20of%20decoding%20threads%252522/scenehd/2decoderoptions.jpg
>
>   
I already done your suggestion in previous reply
modified the source code which let me manually set
threads option to libavcodec.

-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://mailman.videolan.org/pipermail/vlc-devel/attachments/20090531/c4af2724/attachment.html>


More information about the vlc-devel mailing list