Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Qt+gstreamer+mpp play video file long time will be stuck at mpp get_frame #156

Closed
jasonwxj2009 opened this issue Aug 1, 2020 · 3 comments

Comments

@jasonwxj2009
Copy link

jasonwxj2009 commented Aug 1, 2020

Hi,
I use Qt + gstreamer+mpp to play video continuously, about 4 hour later (sometimes less than ),video will stuck,code at mpp.cpp:l326 :
MPP_RET Mpp::get_frame(MppFrame *frame)
if (mOutputTimeout < 0) { /* block wait */ mFrames->wait();
Qt application is dead lock , should be restart!
Is there any solution?

@HermanChen
Copy link
Collaborator

What the version of mpp and gst?

@jasonwxj2009
Copy link
Author

thanks for replying!
gstreamer version 1.14

mpp_info_test: mpp revision is -1
mpp_info_test: mpp info all:
1614c5d4 author: Caesar Wang debian: add rules for mpp with 20191031
mpp_info_test: mpp info revision: 1614c5d472dad37e81597d16bf7def2a7a429312
mpp_info_test: mpp info date :
mpp_info_test: mpp info author : Caesar Wang

and I have also compile the libs with gstreamer-rockchip and mpp use the newest version
mpp[25815]: mpp_info_test: normal version log:
mpp[25815]: mpp_info: mpp version: unknown mpp version for missing VCS info
mpp[25815]: mpp_info_test: history version log:
mpp[25815]: mpp_info: mpp version history 0:

The problem is still repeated.

below is bt info:
#0 0x0000007f77e0522c in pthread_cond_wait@@GLIBC_2.17 () at /lib/aarch64-linux-gnu/libpthread.so.0
#1 0x0000007f5c287524 in Mpp::get_frame(void**) () at /usr/lib/aarch64-linux-gnu/librockchip_mpp.so.1
#2 0x0000007f5c28ab6c in mpi_decode_get_frame(void*, void**) () at /usr/lib/aarch64-linux-gnu/librockchip_mpp.so.1
#3 0x0000007f5c46e2ac in gst_mpp_dec_buffer_pool_acquire_buffer (bpool=0x7f2c0126f0, buffer=0x7f357417b0, params=) at gstmppdecbufferpool.c:241
#4 0x0000007f5f490600 in gst_buffer_pool_acquire_buffer () at /usr/lib/aarch64-linux-gnu/libgstreamer-1.0.so.0
#5 0x0000007f5c471254 in gst_mpp_video_dec_loop (decoder=0x7f2c03a420) at gstmppvideodec.c:509
#6 0x0000007f5f502eb4 in () at /usr/lib/aarch64-linux-gnu/libgstreamer-1.0.so.0
#7 0x0000007f77a04000 in () at /usr/lib/aarch64-linux-gnu/libglib-2.0.so.0

@jasonwxj2009
Copy link
Author

I have used qt+mpv+mpp instead of gstreamer

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

2 participants