rtpreleasestream.c
来自「linux环境下用纯c写的RTP协议的通用开发库」· C语言 代码 · 共 40 行
C
40 行
/*------------------------------------------------------------------------- * rtpreleasestream.c - rtpreleasestream *------------------------------------------------------------------------- */#include <rtp.h>#include <rtcp.h>#include <hash.h>/*------------------------------------------------------------------------ * rtpreleasestream - decrement a streams refcnt and remove if necessary *------------------------------------------------------------------------ */intrtpreleasestream(struct session *psn, struct stream *pstm){ if (pthread_mutex_lock(&psn->sn_getstreammutex) != 0) return ERROR; pstm->stm_refcnt--; if (pstm->stm_refcnt == 0 && pstm->stm_zombie == TRUE) { /* * Remove this stream from the Cname->SSRC mapping. */ rtcpcnamerem(psn, pstm); /* * Remove this stream from the SSRC->struct stream * * hashtable. The htdel function will invoke * rtpdestroystream. */ htdel(psn->sn_ssrcs, pstm->stm_ssrc); } pthread_mutex_unlock(&psn->sn_getstreammutex); return OK;}
⌨️ 快捷键说明
复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?