-
Notifications
You must be signed in to change notification settings - Fork 722
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
random video interrupts #35
Comments
Looks like it might be a duplicate of #26 |
Yeah you are right. Actually I was reffering to this issue in the first place. But I can't understand the rationale behind it. Is it safe to apply those changes? By the way could you direct me to the neccesary informations about creating video frames from the incoming packets? |
If you re-read the code, I don't believe we are "discarding" any frames. We:
What kind of resolution are you using? If you are having issues with the jitter buffer capacity I'm guessing you have very large images. One interesting metric would be to print |
It seems i have something similar . Based on your server example I'm streaming video from browser to server. on low resolution it works fine. After setup constraints to 1280 x 720 , framerate:5. After received about 50 frames server stuck. Server host machine profiling with tcpdump shows packets which still coming to server.
|
Could you please try running the example in verbose mode (python examples/server/server.py -v), and paste some of the output (especially towards the end)? |
@bl1nder I believe that's a different issue: I noticed that when you request a 1280x720 resolution from getUserMedia, Chrome will initially send the VP8 video out at a lower resolution (for instance 640x360), then progressively increase the resolution. Decoding works fine, but echoing these frames back failed when the resolution changed as the encoder needs to be torn down / recreated. That should be fixed by ad0dadf |
Thanks jlane for explaing the code and sorry for late response. I checked the parameters that you mentioned and here are the results: |
Could you please just try the latest code from git? It uses a buffer capacity of 128, and MAX_DROPOUT is gone. |
Yes, sure!
and
After these errors, video playback completely stops and the ice connection become disconnected and then failed. |
Hi i had the same error as @JRafiei mentioned. @JRafiei Did you handle this type |
Ok can we please open separate tickets to track the new issues? |
Hi jlaine!
Sometimes, when we are video streaming, the frames stops. we track the problem to the rtcrtpreceiver.py file and it seems some frames are None and so they don't inserted in the queue. Do you have any ideas why this happens and what should we do to solve the problem? Is it a bug or an expected behavior?
Here is the related section in rtcrtpreceiver.py module for convenience:
I think the important section is the last else block, where you are putting the video_frames to the queue. It creates the video frames only when got_frame is True and other frames get discarded.
Our clients are android smart phones and we are testing in a local network.
Based on another issue we changed the buffer capacity from 32 to 64 and we got slightly better results. Do you think the buffer capacity is an important factor here?
The text was updated successfully, but these errors were encountered: