Some .m4a file(s) showing duration 0:0 while they have size of some KB and MBs

I have an issue while reading duration of .m4a file using C# its showing me 0.0 duration while its size is more than 1600 Kb can anyone guide me about what the actual reason of this type of file. in the same code some m4a files calculate the correct duration. and some of them not. here is my code that i m trying ShellFile so = ShellFile.FromFilePath(fromPath); double nanoseconds; double.TryParse(so.Properties.System.Media.Duration.Value.ToString(), out nanoseconds); Console.WriteLine(“NanaoSeconds: {0}”, nanoseconds); if (nanoseconds > 0) { // double milliseconds = nanoseconds * 0.000001; double seconds = Convert100NanosecondsToMilliseconds(nanoseconds) / 1000; string duration= Convert.ToInt64(seconds) / 60 + “:” + Convert.ToInt64(seconds) % 60; Console.WriteLine(duration.ToString()); }