当前位置: 首页>>代码示例>>C++>>正文


C++ BMediaFormats::Unlock方法代码示例

本文整理汇总了C++中BMediaFormats::Unlock方法的典型用法代码示例。如果您正苦于以下问题:C++ BMediaFormats::Unlock方法的具体用法?C++ BMediaFormats::Unlock怎么用?C++ BMediaFormats::Unlock使用的例子?那么, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在BMediaFormats的用法示例。


在下文中一共展示了BMediaFormats::Unlock方法的1个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的C++代码示例。

示例1: register_encoder

void register_encoder()
{
	status_t err;
	media_format				tempFormat, mediaFormat;
	media_format_description	formatDescription;
	BMediaFormats				formatObject;

	formatObject.Lock();

	/* register as a WAV codec */
	memset(&mediaFormat, 0, sizeof(media_format));
	mediaFormat.type = B_MEDIA_ENCODED_AUDIO;
	mediaFormat.u.encoded_audio = media_encoded_audio_format::wildcard;
	memset(&formatDescription, 0, sizeof(media_format_description));
	formatDescription.family = B_WAV_FORMAT_FAMILY;
	formatDescription.u.wav.codec = WAVE_FORMAT_MPEG;
	err = formatObject.MakeFormatFor(formatDescription, mediaFormat, &tempFormat);
	if (err == B_MEDIA_DUPLICATE_FORMAT)
		formatObject.GetFormatFor(formatDescription, &tempFormat);
	s_wavFormat = tempFormat;

	/* register as a MPEG codec */
	memset(&mediaFormat, 0, sizeof(media_format));
	mediaFormat.type = B_MEDIA_ENCODED_AUDIO;
	mediaFormat.u.encoded_audio = media_encoded_audio_format::wildcard;
	memset(&formatDescription, 0, sizeof(media_format_description));
	formatDescription.family = B_MPEG_FORMAT_FAMILY;
	formatDescription.u.mpeg.id = B_MPEG_1_AUDIO_LAYER_3;
	err = formatObject.MakeFormatFor(formatDescription, mediaFormat, &tempFormat);
	if (err == B_MEDIA_DUPLICATE_FORMAT)
		formatObject.GetFormatFor(formatDescription, &tempFormat);
	s_mpegFormat = tempFormat;

	formatObject.Unlock();
}
开发者ID:HaikuArchives,项目名称:UltraEncode,代码行数:35,代码来源:MP3Encoder.cpp


注:本文中的BMediaFormats::Unlock方法示例由纯净天空整理自Github/MSDocs等开源代码及文档管理平台,相关代码片段筛选自各路编程大神贡献的开源项目,源码版权归原作者所有,传播和使用请参考对应项目的License;未经允许,请勿转载。