问题标签 [taglib-sharp]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
c# - TAGLIB - mscorlib.dll 中出现“System.StackOverflowException”类型的未处理异常
我有一个小型控制台应用程序,它浏览一组文件夹并尝试设置 ID3Tag 属性。
ScrPathn Album 和 Artist 是字符串常量。
在保存步骤中,我得到:
System.StackOverflowException 未处理 消息:在 mscorlib.dll 中发生“System.StackOverflowException”类型的未处理异常
我正在使用通过 NuGet 安装的 TagLig 的最新版本。有什么建议吗?
编辑。VS没有提供额外的信息。
更改了代码以拆分读取和写入流。
同样的错误并创建了一个空的新文件。
c# - 可以使用 TagLib# 将封面艺术存储在 Vorbis 评论标签的 METADATA_BLOCK_PICTURE 字段中吗?
是否可以使用 TagLib# 将封面艺术存储在 Ogg Vorbis 文件的 Vorbis 注释标签的 METADATA_BLOCK_PICTURE 字段中?
c# - 将位图设置为 MP3 的封面
我一直在尝试将位图设置为 MP3 的封面,但似乎无法正常工作。它没有抛出任何错误,但是当我播放 MP3 时,位图没有显示。
这是我目前拥有的:
ffmpeg - 使用 ffmpeg 转换后使用 TagLib 打开时出现“未找到 MPEG 音频头”错误
我只是通过做这样的事情来转换一个 wma 文件......
然后我可以在 Windows Media player 中播放 mp3 文件,所以看起来转换工作正常。
但是,如果我尝试在 TagLib 中打开文件,我会在下一行收到错误“找不到 MPEG 音频头”...
我已经在几个 wma 文件上尝试过这个,所以不仅仅是那个有问题。
有人知道我做错了什么吗?我发现 ffmpeg 的文档非常压倒性,作为音频编码领域的一个完全无知的人,我不知道其中大部分是什么意思。可能是我在转换中遗漏了一些东西,虽然这不能解释为什么 WMP 可以播放它但 TagLib 不能打开它。
c# - Build TagLib# DLL from source and make it COM Visible to PHP
Hello I want to scan audio-video files and store their metadata in a database using php. I found this Command-line wrapper that uses TagLib.dll compiled by banshee developpers to do the job. It's works fine but it limited by the functions implemented. I want to access directly to the dll methods via PHP.
In PHP we have a function (DOTNET) that allows me to instantiate a class from a .Net assembly and call its methods and access its properties like this :
Here is the Taglib# project sources in github
I saw many questions relatives to PHP-DLL-COM and there is some recommendations :
- Make the dll comVisible;
- Register the dll with
regsvr32
; - Use a module definition file similar to
;
My question is : How can I build the DLL and use its method via PHP ?
My config :
OS
Windows Server 2012 R2 Standard Edition i586
Apache :
Apache/2.2.21 (Win32) DAV/2 PHP/5.4.42 mod_ssl/2.2.21 OpenSSL/0.9.8r
PHP
PHP Version : 5.4.42
Arch : x86
Compiler : MSVC9 (Visual C++ 2008)
COM support : enabled
DCOM support : disabled
.Net support enabledMicrosoft Visual Studio 2013
c# - 有没有更有效的编码方式?
我想不出更好的方法来写这个,这段代码还有 7 个块。
.net - TagLibSharp 是否锁定文件?
不幸的是,我目前无法直接访问我的代码,但该应用程序执行以下操作:
- 得到
string[] files = Directory.GetFiles(dir, "*.mp3", SearchOptions.AllDirectories);
- 遍历 files 中的每个文件并获得一个通用的 Tag 对象(不是专门的 IDV3 对象,或者任何格式)
- 从 Tag 对象构建一个带有新文件名 {track no} - {track name} 的字符串并将其添加到列表中
File.Copy(files[i], newFileName, true)
重命名文件(使用新名称复制到同一目录)
File.Copy
崩溃,它告诉我另一个进程正在使用该文件。我知道事实上没有其他人在使用这些文件,但是我的代码中的某处必须锁定它们,我不知道是什么,也不知道如何推断它是哪一位。
我已经尝试添加myTagObject.Save(); myTagObject.Clear(); myTagObject = null;
以防 TL# 锁定文件,但我想不出我可以在那里做更多的事情来释放它。
powershell - 将 [System.Drawing.Bitmap] 转换为 [File.IFileAbstraction]
任务
在 PowerShell 中,我想借助taglip-sharp库将图片添加为 ID3V2 标记。
通常你这样做:
一般问题
仅当您的图片是位于本地某处的文件时,上述方法才有效。但是我有一张图片作为[System.Drawing.Bitmap]
对象,它没有文件路径来加载它createfrompath
。
在你说然后把它写到光盘之前:我宁愿避免保存它们,因为我的最终脚本处理了许多图片和 mp3 文件。而且我不想写和删除数百张图片。
具体问题
我看到 taglib 还有另一种方法CreateFromFile(File.IFileAbstraction )
来加载图片。但是如何将 a 转换[System.Drawing.Bitmap]
为 a IFileAbstraction
?
c# - 当我打开流以使用 taglib 锐利便携式写入时,Windows Phone 8.1 中的访问被拒绝 0x80070005
那里。我对 taglib 尖锐便携有一点问题。我想从音乐库中打开一个流,我想重写一个文件的属性。
我的代码是:
在var stream = await file.OpenStreamForWriteAsync()
,我有这个错误:
mscorlib.ni.dll 中的“System.UnauthorizedAccessException”访问被拒绝。(来自 HRESULT 的异常:0x80070005 (E_ACCESSDENIED))
有什么问题?如果我想打开只读标签的流,则此代码有效。为什么这段代码不起作用?如果我使用 taglib sharp(不可移植)并且我这样做:
我有tags.Save()
一个错误的问题
System.Stackoverflow 异常。
我必须做什么?
powershell - 使用 Taglib-Sharp 操作用户定义的标签(TXXX 帧)
情况与任务
我有大量音乐收藏,我想用 PowerShell 和taglip-sharp清理他们的ID3V2 标签。有些标签喜欢或应该被删除,而另一些标签喜欢或不应该。comment
encoding
artist
title
问题
许多音乐文件将自定义信息存储URL
在Shop Name
一个名为TXXX
. 不幸的是,使用上面显示的方法无法访问此框架。或者我还没有找到方法。
相反,您使用
此用户定义的文本信息框可以包含多个值。有些是有用的,因为音乐播放器,如 Foobar 商店PERFORMER
,DATE
或replay_track_gain
标签TXXX
。
上述行的示例输出可能是:
在此之后,我能够过滤掉所有不必要的 TXXX 值
问题:如何将多个值写入TXXX
框架
所以我的问题是,如何将过滤后的结果保存回 mp3 文件?
我失败的尝试是:
SetTextFrame 的 Taglib-Sharp 文档
额外的问题: taglib-sharp 是否能够在将新标签保存为 ID3v2.3 标签的同时去除 Id3v1 和 ID3v2.4 标签?(相关的 SO 答案,但不区分 v2.3 和 v2.4)