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


C++ file_info::meta_set方法代码示例

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


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

示例1: get_info

	void get_info( file_info & p_info, abort_callback & p_abort )
	{
		YMMUSIC *  m_info = ymMusicCreate();
		ymMusicLoadMemory(m_info,file_buffer.get_ptr(), file_buffer.get_size());
		ymMusicInfo_t info;
		ymMusicGetInfo(m_info,&info);

		p_info.info_set( "encoding", "synthesized" );
		p_info.info_set( "codec", "YM" );
		p_info.info_set_int( "channels", 1 );
		p_info.meta_set( "title", pfc::stringcvt::string_utf8_from_ansi( info.pSongName) );
		p_info.meta_set( "artist", pfc::stringcvt::string_utf8_from_ansi( info.pSongAuthor) );
		p_info.meta_set( "comment", pfc::stringcvt::string_utf8_from_ansi( info.pSongComment) );
		p_info.set_length( info.musicTimeInSec );

		ymMusicDestroy(m_info);
	}
开发者ID:Crazybond,项目名称:foobar2000,代码行数:17,代码来源:input_ym.cpp

示例2: get_info

	void get_info(t_uint32 p_subsong, file_info &p_info, abort_callback &p_abort)
	{
		int duration = module_info.durations[p_subsong];
		if (duration < 0)
			duration = 1000 * song_length;
		if (play_loops && module_info.loops[p_subsong])
			duration = 1000 * song_length;
		if (duration >= 0)
			p_info.set_length(duration / 1000.0);
		p_info.info_set_int("channels", module_info.channels);
		p_info.info_set_int("subsongs", module_info.songs);
		if (module_info.author[0] != '\0')
			p_info.meta_set("composer", module_info.author);
		p_info.meta_set("title", module_info.name);
		if (module_info.date[0] != '\0')
			p_info.meta_set("date", module_info.date);
	}
开发者ID:070499,项目名称:xbmc,代码行数:17,代码来源:foo_asap.cpp

示例3: get_info

	void get_info( file_info & p_info, abort_callback & p_abort )
	{
		ModPlugFile* m_info = ModPlug_Load(file_buffer.get_ptr(), file_buffer.get_size());
		p_info.info_set( "encoding", "synthesized" );
		int type_module = ModPlug_GetModuleType(m_info);
		p_info.info_set( "codec", "Module file" );
		p_info.info_set_int( "channels", 2 );
		p_info.meta_set( "title", pfc::stringcvt::string_utf8_from_ansi(  ModPlug_GetName(m_info)  ));
		int len = ModPlug_GetLength(m_info);
		len /= 1000;
		p_info.set_length( len );
		if(m_info)ModPlug_Unload(m_info);
	}
开发者ID:FauxFaux,项目名称:foo_mudlord,代码行数:13,代码来源:input_modplug.cpp

示例4: get_info

	void get_info(file_info & p_info,abort_callback & p_abort) {
		p_info.set_length( mod->get_duration_seconds() );
		p_info.info_set_int( "samplerate", settings.samplerate );
		p_info.info_set_int( "channels", settings.channels );
		p_info.info_set_int( "bitspersample", 32 );
		std::vector<std::string> keys = mod->get_metadata_keys();
		for ( std::vector<std::string>::iterator key = keys.begin(); key != keys.end(); ++key ) {
			if ( *key == "message_raw" ) {
				continue;
			}
			p_info.meta_set( (*key).c_str(), mod->get_metadata( *key ).c_str() );
		}
	}
开发者ID:kode54,项目名称:Cog,代码行数:13,代码来源:foo_openmpt.cpp

示例5: apply_filter

bool file_info_filter_scale_bpm::apply_filter(metadb_handle_ptr p_track, t_filestats p_stats, file_info & p_info)
{
	const char * str = p_info.meta_get(m_bpm_tag, 0);

	float bpm = 0.0f;
	if ((str != NULL) && (sscanf_s(str, "%f", &bpm) == 1))
	{
		bpm = static_cast<float>(bpm * m_scale);

		p_info.meta_set(m_bpm_tag, format_bpm(bpm));

		return true;
	}
	else
	{
		return false;
	}
}
开发者ID:stengerh,项目名称:foo_bpm,代码行数:18,代码来源:file_info_filter_scale_bpm.cpp

示例6: meta_set

	static void meta_set(file_info &p_info, const char *p_name, const char *p_value)
	{
		if (p_value[0] != '\0')
			p_info.meta_set(p_name, p_value);
	}
开发者ID:hudokkow,项目名称:audiodecoder.asap,代码行数:5,代码来源:foo_asap.cpp


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