Как получить длительность голосового файла .DSS, .DCT, .DS2 в c# - PullRequest
0 голосов
/ 25 марта 2020

для голосового файла .mp3, .wav, .wma, .m4a, приведенный ниже код работает замечательно, но для файла .ds2, .dct, .dss приведенный ниже код не работает, он просто возвращает ноль. файла (.dss, .ds2, .dct).

using System.IO;
using Microsoft.WindowsAPICodePack.Shell;
using Microsoft.WindowsAPICodePack.Shell.PropertySystem;

public void getfile(string filenameresult)
{
                        string file = filenameresult;

                        ShellFile so = ShellFile.FromFilePath(file);

                        double nanoseconds;

                        double.TryParse(so.Properties.System.Media.Duration.Value.ToString(), out nanoseconds);

                        Console.WriteLine("NanaoSeconds: {0}", nanoseconds);

                        if (nanoseconds > 0)

                        {

                            double seconds = Convert100NanosecondsToMilliseconds(nanoseconds) / 1000;

                            Console.WriteLine(seconds.ToString());

                        }
}
public static double Convert100NanosecondsToMilliseconds(double nanoseconds)

    {


        return nanoseconds * 0.0001;

    }
...