Reputation: 25823
What is the best way to get and set the meta data for mp3, mp4, avi files etc. with .NET?
Upvotes: 11
Views: 24488
Reputation: 20798
After struggling with NAudio (note that it can only run on Windows) and even TagLibSharp, I found out ATL .NET. What I love about it is it can work on Stream and it can detect formats as well.
z440.atl.core
Nuget package:dotnet add package z440.atl.core
Track
object and get as many information as you want:var track = new Track(stream);
Console.WriteLine(track.Duration);
// More info
Upvotes: 1
Reputation: 53155
I've been looking at the NTag project as well, which handles MP3/WMA/OGG. I don't know of a single library that handles audio and video files, so you might have to use a few.
Upvotes: 3
Reputation: 15670
I've recently used Tag Lib Sharp to write some C# apps for cleaning up and maintaining my music library. I found the library very easy to use and although i've only used it for MP3's, it appears to support a range of other music/video formats.
Upvotes: 4
Reputation: 453
You can use free UltraID3Lib .NET library to read/write MP3 metadata.
Upvotes: 3
Reputation: 123692
I used COM interop to access DirectShow's Media Detector functionality.
This does work pretty well, but it's a right pain in the backside. You need to know lots about COM, win32 interop, and so on.
You can also use DirectShowNet which should handle most of that for you, I just didn't want to lug that whole thing around when I was only interested in the MediaDetector part
Upvotes: 1
Reputation: 2201
These are the example class files for different languages found in the MediaInfo.dll zip
You do have to use interop and I don't know if you can edit tags, I've never needed to do that but it's pretty much a swiss army knife at least for getting media information from files.
Link to downloads page (sourceforge)
MediaInfo_0.7.7.4_DLL_Win32.zip
Upvotes: 4
Reputation: 53155
Looks like MediaInfo is read-only at this point, by the way: http://sourceforge.net/forum/message.php?msg_id=4241318&abmode=1
Very cool project, though. It's fun finding out about all this cool stuff here on SO.
Upvotes: 1