Files
m3uTool/Backup/Tests/Mp3FilePropertiesTests.cs

57 lines
2.0 KiB
C#

using System;
using System.Collections.Generic;
using System.Diagnostics;
using System.IO;
using System.Text;
namespace m3uTool.Tests
{
/// <summary>
/// Summary description for MP3HeaderTests.
/// </summary>
public class Mp3FilePropertiesTests
{
public void Mp3FileDetailsTest()
{
string[] files = Directory.GetFiles(".", "*.mp3");
List<Mp3FileProperties> properties = new List<Mp3FileProperties>();
foreach (string mp3Filename in files)
{
Debug.WriteLine(mp3Filename);
Debug.Indent();
// bool boolIsMP3 = mp3hdr.ReadMP3Information(mp3Filename);
Mp3FileProperties fileDetails = new Mp3FileProperties(mp3Filename);
properties.Add(fileDetails);
if (fileDetails != null)
{
Debug.WriteLine(GetMp3FilePropertyReport(fileDetails));
}
Debug.Unindent();
}
Mp3FileProperties commonProperties = Mp3FileProperties.GetCommonProperties(properties);
Debug.WriteLine(GetMp3FilePropertyReport(commonProperties));
}
private static string GetMp3FilePropertyReport(Mp3FileProperties fileDetails)
{
StringBuilder report = new StringBuilder();
report.AppendLine("Filename: " + fileDetails.Mp3PathAndFilename);
report.AppendLine("mFileSize: " + fileDetails.FileSize.ToString());
report.AppendLine("mBitRate: " + fileDetails.BitRate.ToString());
report.AppendLine("mSampleRateIntegerFrequency:" + fileDetails.SampleRateIntegerFrequency.ToString());
report.AppendLine("strMode: " + fileDetails.ChannelMode);
report.AppendLine("strLengthFo: " + fileDetails.LengthFormatted);
report.AppendLine("mLengthInSeconds: " + fileDetails.LengthInSeconds.ToString());
report.AppendLine("title: " + fileDetails.Id3Title);
report.AppendLine("artist: " + fileDetails.Id3Artist);
report.AppendLine("album: " + fileDetails.Id3Album);
report.AppendLine("track#: " + fileDetails.Id3TrackNumber);
report.AppendLine("genre: " + fileDetails.Id3GenreName);
return report.ToString();
}
}
}