MSBitrateDriver *ms_av_bitrate_driver_new(MSFilter *aenc, MSFilter *venc){ MSAVBitrateDriver *obj=ms_new0(MSAVBitrateDriver,1); obj->parent.desc=&av_bitrate_driver; obj->audio_driver=(aenc!=NULL) ? ms_bitrate_driver_ref(ms_audio_bitrate_driver_new(aenc)) : NULL; obj->venc=venc; return (MSBitrateDriver*)obj; }
MSBitrateDriver *ms_bandwidth_bitrate_driver_new(RtpSession *asession, MSFilter *aenc, RtpSession *vsession, MSFilter *venc){ MSBandwidthBitrateDriver *obj=ms_new0(MSBandwidthBitrateDriver,1); obj->parent.desc=&bandwidth_bitrate_driver; obj->vsession = vsession; obj->audio_driver=(aenc!=NULL) ? ms_bitrate_driver_ref(ms_audio_bitrate_driver_new(asession,aenc)) : NULL; obj->venc=venc; return (MSBitrateDriver*)obj; }
MSBitrateController *ms_bitrate_controller_new(MSQosAnalyzer *qosanalyzer, MSBitrateDriver *driver){ MSBitrateController *obj=ms_new0(MSBitrateController,1); obj->analyzer=ms_qos_analyzer_ref(qosanalyzer); obj->driver=ms_bitrate_driver_ref(driver); return obj; }