[FFmpeg-devel] [PATCH] pthread_frame: attempt to get frame to reduce latency

Michael Niedermayer michaelni at gmx.at
Wed Mar 11 11:55:55 EET 2020


On Tue, Mar 10, 2020 at 05:36:40PM +0800, Jianhui Dai wrote:
> Avoid constant N frames latency in video streaming.
> 
> Signed-off-by: Jianhui Dai <jianhui.j.dai at intel.com>
> ---
>  libavcodec/pthread_frame.c | 17 ++---------------
>  1 file changed, 2 insertions(+), 15 deletions(-)

This patch causes segfaults

./ffmpeg_g -i tickets/466/Brazil.ts -t 3 random.avi

Thread 1 "ffmpeg_g" received signal SIGSEGV, Segmentation fault.
0x0000555555e64a5d in submit_packet (p=0x5555578c5e80, user_avctx=0x55555787fac0, avpkt=0x555557845340) at libavcodec/pthread_frame.c:380
380	    PerThreadContext *prev_thread = fctx->prev_thread;
(gdb) bt
#0  0x0000555555e64a5d in submit_packet (p=0x5555578c5e80, user_avctx=0x55555787fac0, avpkt=0x555557845340) at libavcodec/pthread_frame.c:380
#1  0x0000555555e64fea in ff_thread_decode_frame (avctx=0x55555787fac0, picture=0x555557845080, got_picture_ptr=0x7fffffffd344, avpkt=0x555557845340) at libavcodec/pthread_frame.c:486
#2  0x0000555555bc5431 in decode_simple_internal (avctx=0x55555787fac0, frame=0x555557845080) at libavcodec/decode.c:430
#3  0x0000555555bc6050 in decode_simple_receive_frame (avctx=0x55555787fac0, frame=0x555557845080) at libavcodec/decode.c:628
#4  0x0000555555bc6120 in decode_receive_frame_internal (avctx=0x55555787fac0, frame=0x555557845080) at libavcodec/decode.c:646
#5  0x0000555555bc6380 in avcodec_send_packet (avctx=0x55555787fac0, avpkt=0x7fffffffd530) at libavcodec/decode.c:704
#6  0x0000555555694420 in decode (avctx=0x55555787fac0, frame=0x555557906280, got_frame=0x7fffffffd67c, pkt=0x7fffffffd530) at fftools/ffmpeg.c:2232
#7  0x0000555555694cd0 in decode_video (ist=0x5555578f6900, pkt=0x7fffffffd6c0, got_output=0x7fffffffd67c, duration_pts=0x7fffffffd6b8, eof=0, decode_failed=0x7fffffffd680) at fftools/ffmpeg.c:2374
#8  0x0000555555695dbd in process_input_packet (ist=0x5555578f6900, pkt=0x7fffffffd900, no_eof=0) at fftools/ffmpeg.c:2615
#9  0x000055555569d74a in process_input (file_index=0) at fftools/ffmpeg.c:4509
#10 0x000055555569dd0b in transcode_step () at fftools/ffmpeg.c:4629
#11 0x000055555569de88 in transcode () at fftools/ffmpeg.c:4683
#12 0x000055555569e7ae in main (argc=6, argv=0x7fffffffe268) at fftools/ffmpeg.c:4885

https://samples.ffmpeg.org/ffmpeg-bugs/trac/ticket466/

[...]
-- 
Michael     GnuPG fingerprint: 9FF2128B147EF6730BADF133611EC787040B0FAB

If you drop bombs on a foreign country and kill a hundred thousand
innocent people, expect your government to call the consequence
"unprovoked inhuman terrorist attacks" and use it to justify dropping
more bombs and killing more people. The technology changed, the idea is old.
-------------- next part --------------
A non-text attachment was scrubbed...
Name: signature.asc
Type: application/pgp-signature
Size: 181 bytes
Desc: not available
URL: <https://ffmpeg.org/pipermail/ffmpeg-devel/attachments/20200311/e2c388c0/attachment.sig>


More information about the ffmpeg-devel mailing list