metartc5_jz源码阅读-yang_create_ipcPublish

void yang_create_ipcPublish(YangIpcPublish* publish,YangAVInfo* avinfo){
	YangIpcPublishSession* session=&publish->session;
	//调用君正的库实现视频录制和编码
	yang_create_videoEncoder(&session->encoder);

	//创建p2prtc, 以便不断的读取君正录制后保存在pushs中的视频帧通过rtc发送给对端。
	yang_create_p2prtc(&session->rtc,avinfo);

	//目前AudioEncoding实现为空,预留函数,用于扩展音频编码。
	publish->startAudioEncoding=yang_ipcPub_startAudioEncoding;
	publish->stopAudioEncoding=yang_ipcPub_stopAudioEncoding;

	//VideoEncoding将调用君正的录制方法并编码为h264后保存到pushs数组中,以便rtc读取后发送给对端。
	publish->startVideoEncoding=yang_ipcPub_startVideoEncoding;
	publish->stopVideoEncoding=yang_ipcPub_stopVideoEncoding;

	//不断的读取君正录制后保存在pushs中的视频帧通过rtc发送给对端。
	publish->startRtc=yang_ipcPub_startRtc;
	publish->stopRtc=yang_ipcPub_stopRtc;

	//用于收到对端sdp后调用此方法设置remoteDescription,然后获取本端sdp发送给对端。
	publish->addPeer=yang_ipcPub_addPeer;

	//调用此方法用于给君正camera发送消息,目前仅实现了请求I帧的操作。
	publish->sendRequest=yang_ipcpub_sendRequest;
	
	//设置init函数实现,函数用于初始化君正的编码器
	publish->init=yang_ipcPub_init;
}

你可能感兴趣的:(metartc5_jz源码阅读,c语言,音视频,实时音视频,p2p)