Re #2181: Fixed assertion in darwin_dev pj_assert(frame->size >= stream->frame_size);

But the problem itself is caused by video port, which passes the wrong frame size when the video capture is passive.



git-svn-id: https://svn.pjsip.org/repos/pjproject/trunk@5948 74dad513-b988-da41-8d7b-12977e46ad98
This commit is contained in:
Sauw Ming 2019-03-08 09:22:21 +00:00
parent 151c0d526a
commit 2c8710a584
1 changed files with 6 additions and 2 deletions

View File

@ -1352,8 +1352,12 @@ static pj_status_t vid_pasv_port_get_frame(struct pjmedia_port *this_port,
/* We are passive and the stream is passive.
* The decoding counterpart is in vid_pasv_port_put_frame().
*/
status = pjmedia_vid_dev_stream_get_frame(vp->strm, (vp->conv.conv?
vp->frm_buf: frame));
pjmedia_frame *get_frm = vp->conv.conv? vp->frm_buf : frame;
if (vp->conv.conv)
get_frm->size = vp->frm_buf_size;
status = pjmedia_vid_dev_stream_get_frame(vp->strm, get_frm);
if (status != PJ_SUCCESS)
return status;