diff --git a/BizHawk.Client.Common/lua/EmuLuaLibrary.Movie.cs b/BizHawk.Client.Common/lua/EmuLuaLibrary.Movie.cs
index f9549a4e06..85a0698b15 100644
--- a/BizHawk.Client.Common/lua/EmuLuaLibrary.Movie.cs
+++ b/BizHawk.Client.Common/lua/EmuLuaLibrary.Movie.cs
@@ -165,7 +165,12 @@ namespace BizHawk.Client.Common
{
if (Global.MovieSession.Movie.IsActive)
{
- return Global.MovieSession.Movie.Fps;
+ var movie = Global.MovieSession.Movie;
+ var system = movie.HeaderEntries[HeaderKeys.PLATFORM];
+ var pal = movie.HeaderEntries.ContainsKey(HeaderKeys.PAL) &&
+ movie.HeaderEntries[HeaderKeys.PAL] == "1";
+
+ return new PlatformFrameRates()[system, pal];
}
return 0.0;
diff --git a/BizHawk.Client.Common/movie/bk2/Bk2Movie.cs b/BizHawk.Client.Common/movie/bk2/Bk2Movie.cs
index 30d4d7c679..2c2e243aa7 100644
--- a/BizHawk.Client.Common/movie/bk2/Bk2Movie.cs
+++ b/BizHawk.Client.Common/movie/bk2/Bk2Movie.cs
@@ -60,7 +60,7 @@ namespace BizHawk.Client.Common
}
}
- public double Fps
+ private double Fps
{
get
{
diff --git a/BizHawk.Client.Common/movie/bkm/BkmMovie.cs b/BizHawk.Client.Common/movie/bkm/BkmMovie.cs
index c736f3f5a3..493914217b 100644
--- a/BizHawk.Client.Common/movie/bkm/BkmMovie.cs
+++ b/BizHawk.Client.Common/movie/bkm/BkmMovie.cs
@@ -73,7 +73,7 @@ namespace BizHawk.Client.Common
get { return _changes; }
}
- public double Fps
+ private double Fps
{
get
{
diff --git a/BizHawk.Client.Common/movie/interfaces/IMovie.cs b/BizHawk.Client.Common/movie/interfaces/IMovie.cs
index 178316f670..aac378e544 100644
--- a/BizHawk.Client.Common/movie/interfaces/IMovie.cs
+++ b/BizHawk.Client.Common/movie/interfaces/IMovie.cs
@@ -29,11 +29,6 @@ namespace BizHawk.Client.Common
/// Possibly (but unlikely different from InputLogLength (could be infinity, or maybe an implementation automatically discounts empty frames at the end of a movie, etc)
///
double FrameCount { get; }
-
- ///
- /// Gets the Fps used to calculate the time of the movie
- ///
- double Fps { get; }
///
/// Gets the time calculation based on FrameCount and Fps
diff --git a/BizHawk.Client.EmuHawk/movie/PlayMovie.cs b/BizHawk.Client.EmuHawk/movie/PlayMovie.cs
index 5171ff15ef..8c43d1ccf2 100644
--- a/BizHawk.Client.EmuHawk/movie/PlayMovie.cs
+++ b/BizHawk.Client.EmuHawk/movie/PlayMovie.cs
@@ -481,7 +481,7 @@ namespace BizHawk.Client.EmuHawk
}
var FpsItem = new ListViewItem("Fps");
- FpsItem.SubItems.Add(string.Format("{0:0.#######}", _movieList[firstIndex].Fps));
+ FpsItem.SubItems.Add(string.Format("{0:0.#######}", Fps(_movieList[firstIndex])));
DetailsView.Items.Add(FpsItem);
var FramesItem = new ListViewItem("Frames");
@@ -491,6 +491,16 @@ namespace BizHawk.Client.EmuHawk
SubtitlesBtn.Enabled = _movieList[firstIndex].Subtitles.Any();
}
+ public double Fps(IMovie movie)
+ {
+ var system = movie.HeaderEntries[HeaderKeys.PLATFORM];
+ var pal = movie.HeaderEntries.ContainsKey(HeaderKeys.PAL) &&
+ movie.HeaderEntries[HeaderKeys.PAL] == "1";
+
+ return new PlatformFrameRates()[system, pal];
+
+ }
+
private void EditMenuItem_Click(object sender, EventArgs e)
{
MovieView.SelectedIndices