【问题标题】:Reading ID3 tags in Xamarin/Android?在 Xamarin/Android 中读取 ID3 标签?
【发布时间】:2013-10-11 03:00:32
【问题描述】:

有可能吗?有多容易?

我添加了对 TaglibSharp 的引用,这是一个用于 C# 的 ID3 库,我在 .NET 应用程序中使用了很长时间,但在活动/任何类中都没有检测到它。 Taglib 是为(我认为)Mono/.NET 3.5 构建的,但我假设它需要为 Android“重建”? (我打开了库的源代码,Visual Studio 和 Xamarin 中平台的唯一选择是 Mono 和 .NET 的变体)

如果使用 Taglib 是不可能的,因为它最终无法在 Android 平台上运行,还有其他方法吗?我已经广泛搜索了 Xamarin ID3 支持,我发现的只是this

有人能指出正确的方向吗?

【问题讨论】:

  • 您需要从源代码构建 TaglibSharp。
  • @Jason Hmmm ..我想我可以从 Github 获取完整的解决方案并使用 Visual Studio 构建它,但我不需要为 Xamarin/Android 构建它,不同于 .NET ?我没有太多在 .NET 之外工作的经验。
  • 你读过this吗?
  • @Sam 我可能错了,但 Mono.Android.Media 中的 Mediametadataretriever 是吗?我似乎找不到它。如果您指的是其余答案,即逐字节读取数据,我可以这样做,我只是希望找到一个更简单的解决方案。
  • @Wilson 它应该在那里:Android.Media.MediaMetadataRetriever。还是找不到吗?

标签: c# android xamarin id3


【解决方案1】:

您应该能够使用Android.Media.MediaMetadataRetriever 类来阅读您需要的所有信息。

这是一个如何获取文件标题的示例,

MediaMetadataRetriever reader = new MediaMetadataRetriever();

reader.setDataSource("some file path");

String title = reader.extractMetadata(MediaMetadataRetriever.METADATA_KEY_TITLE);

MediaMetadataRetriever.extractMetadata() 选项,

  • MetadataKeyAlbum:要检索的元数据键 数据源的专辑标题信息。

  • MetadataKeyAlbumartist:元数据密钥 检索有关表演者或艺术家的相关信息 与数据源。

  • MetadataKeyArtist:要检索的元数据键 数据源的艺术家信息。

  • MetadataKeyAuthor:要检索的元数据键 有关数据源作者的信息。

  • MetadataKeyBitrate:此密钥检索 平均比特率(以比特/秒为单位),如果有的话。

  • MetadataKeyCdTrackNumber:元数据 检索描述音频顺序的数字字符串的键 原始记录的数据源。

  • MetadataKeyCompilation:元数据密钥 检索音乐专辑的编辑状态。

  • MetadataKeyComposer:元数据密钥 检索有关数据源编写者的信息。

  • MetadataKeyDate:要检索的元数据键 创建或修改数据源的日期。

  • MetadataKeyDiscNumber:元数据密钥 检索描述集合的哪一部分的数字字符串 音频数据来源来自。

  • MetadataKeyDuration:元数据密钥 检索数据源的播放时长。

  • MetadataKeyGenre:要检索的元数据键 数据源的内容类型或流派。

  • MetadataKeyHasAudio: 如果这个键存在 媒体包含音频内容。

  • MetadataKeyHasVideo: 如果这个键存在 media 包含视频内容。

  • MetadataKeyMimetype:元数据密钥 检索数据源的 mime 类型。

  • MetadataKeyNumTracks:元数据密钥 检索数据中的音轨数量,例如音频、视频、文本 源文件,例如 mp4 或 3gpp 文件。

  • MetadataKeyTitle:要检索的元数据键 数据源标题。

  • MetadataKeyVideoHeight: 如果媒体包含 视频,此键检索其高度。

  • MetadataKeyVideoWidth: 如果媒体包含 视频,此键检索其宽度。

  • MetadataKeyWriter:要检索的元数据键 数据源作者(如作词人)的信息。

  • MetadataKeyYear:用于检索创建或修改数据源的年份的元数据键。

Source.

【讨论】:

  • 太好了,感谢您的彻底回复。还有一个问题,编写 ID3 标签是同样容易,还是完全不同?
  • @Wilson 这可能有一个隐藏的库,但不幸的是我什么都不知道;这意味着您自己手动编写标签,逐个字节地编写标签,但这有点棘手。 This 应该帮助你,如果你想“手动”做的话。
猜你喜欢
  • 2011-01-06
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2015-07-21
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2011-09-12
相关资源
最近更新 更多