Fix erroneous disk space reports (#93).
[dcpomatic.git] / src / wx / properties_dialog.cc
index e93d06dbe2d76638ea600a084155827383c4fb51..44a713dc34ce181bc9e857a878b93126815c3b33 100644 (file)
@@ -52,9 +52,11 @@ PropertiesDialog::PropertiesDialog (wxWindow* parent, shared_ptr<Film> film)
 
        if (_film->length()) {
                _frames->SetLabel (std_to_wx (lexical_cast<string> (_film->length().get())));
-               double const disk = ((double) _film->j2k_bandwidth() / 8) * _film->length().get() / (_film->frames_per_second () * 1073741824);
+               FrameRateConversion frc (_film->source_frame_rate(), _film->dcp_frame_rate());
+               int const dcp_length = _film->length().get() * frc.factor();
+               double const disk = ((double) _film->j2k_bandwidth() / 8) * dcp_length / (_film->dcp_frame_rate() * 1073741824.0f);
                stringstream s;
-               s << fixed << setprecision (1) << disk << _("Gb");
+               s << fixed << setprecision (1) << disk << wx_to_std (_("Gb"));
                _disk->SetLabel (std_to_wx (s.str ()));
        } else {
                _frames->SetLabel (_("unknown"));