Hi, all,
I am trying to decode h264 video using FFmpeg h264 decoder and got some problem:
Although the number of threads was the same as I set, the decoder seems to fail 
to utilize these threads.
--------------------------------------------------------------------------------
THE PROBLEM:
    I traced the program by GDB and found that when executing 
ff_h264_execute_decode_slices()
    in libavcodec/h264_slice.c, the context_count is always 1, so it failed to 
execute the branch that
    invokes avctx->execute() (which seems to be the correct multithread 
version).


THE PROGRAM: 
    the program I used was the example program demuxing_decoding.c under 
ffmpeg/doc/examples/,
    and I inserted dec_ctx->thread_count = thread_count; dec_ctx->thread_type = 
thread_type; before
    line 179 which executing avcodec_open2()
    the version of FFmpeg I used was: ffmpeg version git-2015-09-24-7179add


THE SAMPLE VIDEO:
    the video I used was big_buck_bunny_720p_H264_AAC_25fps_3400K.MP4 under 
    http://download.openbricks.org/sample/H264/


    One more thing, some videos trigger warning like:
    [h264 @ 0x17ac3e0] Cannot parallelize slice decoding with deblocking filter 
type 1, decoding such frames in sequential order
    but this video is fine.
--------------------------------------------------------------------------------
    How can I make use of slice based multithread decoding?
    Thanks for your help.


    zheng



_______________________________________________
Libav-user mailing list
[email protected]
http://ffmpeg.org/mailman/listinfo/libav-user

Reply via email to