本文整理汇总了C++中MediaSubsession::fmtp_spropvps方法的典型用法代码示例。如果您正苦于以下问题:C++ MediaSubsession::fmtp_spropvps方法的具体用法?C++ MediaSubsession::fmtp_spropvps怎么用?C++ MediaSubsession::fmtp_spropvps使用的例子?那么, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类MediaSubsession
的用法示例。
在下文中一共展示了MediaSubsession::fmtp_spropvps方法的1个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的C++代码示例。
示例1: bad_alloc
DefaultSink::DefaultSink(UsageEnvironment & env,
MediaSubsession & subsession,
char const * sink_url,
char const * stream_id)
: MediaSink(env),
_subsession(subsession),
_receive_buffer(RECEIVE_BUFFER_SIZE),
_stream_id(stream_id),
_writer(libc2rtsp::sink::SinkFactory().gen(sink_url)),
_verbose(true),
_sprop_parameter_sets(),
_have_written_first_frame(false)
{
if (::strcmp(subsession.codecName(), "H264") == 0) {
// For H.264 video stream, we use a special sink that adds 'start codes',
// and (at the start) the SPS and PPS NAL units:
_sprop_parameter_sets.emplace_back(std::string(subsession.fmtp_spropparametersets()));
} else if (::strcmp(subsession.codecName(), "H265") == 0) {
// For H.265 video stream, we use a special sink that adds 'start codes',
// and (at the start) the VPS, SPS, and PPS NAL units:
_sprop_parameter_sets.emplace_back(std::string(subsession.fmtp_spropvps())); // VPS
_sprop_parameter_sets.emplace_back(std::string(subsession.fmtp_spropsps())); // SPS
_sprop_parameter_sets.emplace_back(std::string(subsession.fmtp_sproppps())); // PPS
} else {
crLogE("DefaultSink::DefaultSink() Unsupported subsession: {}/{}",
subsession.mediumName(), subsession.codecName());
throw std::bad_alloc();
}
}