Opened 14 years ago
Closed 13 years ago
#1234 closed defect (fixed)
Missing video keyframe
Reported by: | nanang | Owned by: | nanang |
---|---|---|---|
Priority: | normal | Milestone: | release-2.0-beta |
Component: | pjmedia | Version: | 2.0-dev-branch |
Keywords: | sipit28 | Cc: | |
Backport to 1.x milestone: | Backported: |
Description (last modified by nanang)
Missing keyframe is a major and common issue in real-time video session. Packet lost or discarding packets by jitter buffer (opening video devs may take few seconds) in the beginning of video session could be the main cause.
We experienced this problem a lot in sipit! When using H.264, missing keyframe causes pjsua got no video (decoding failure), sometime video could be successfully decoded after call hold and resume. When using H.263, initial video came foggy (only the moving object part had clear view, background/other part was gray).
Solutions/ideas:
- Prevention:
- for receiving direction:
- prevent jitter buffer to discard first packet and following packets with same timestamp,
- and/or, as long as there is space in jitter buffer, avoid dropping any video packets, just adjust the playback time (make it faster/slower), if possible.
- for sending direction: force sending keyframes in some short periods in the beginning of video session for few seconds.
- for receiving direction:
- Implementing media feedback/control mechanisms (for both directions):
- Full Intra Request in RFC 5104 3.5.1
- Picture Loss Indication feedback in RFC 4585 6.3.1
- Fast Update Command for the Full Picture in RFC 5168 7.1. Note that some implementations refuse to send us SIP INFO request because we don't list "INFO" in our SIP header "Allow".
Note:
- Missing keyframe detection has been implemented in this ticket along with SIP INFO mechanism.
- Check #1437 for RTCP-FB PLI mechanism.
Change History (7)
comment:1 Changed 14 years ago by nanang
- Description modified (diff)
comment:2 Changed 13 years ago by bennylp
- Milestone changed from release-2.0-alpha to release-2.x
comment:3 Changed 13 years ago by nanang
- Milestone changed from release-2.x to release-2.0-beta
comment:4 Changed 13 years ago by nanang
comment:5 Changed 13 years ago by nanang
comment:6 Changed 13 years ago by bennylp
comment:7 Changed 13 years ago by nanang
- Description modified (diff)
- Resolution set to fixed
- Status changed from new to closed
(In [3901]) Re #1234: Initial version of keyframe request/response via SIP INFO.