Re-add show audio button and analyse just that content when it is clicked.
[dcpomatic.git] / src / lib / film.cc
index 2ef59fe216e04aa89fb378f7d849948a8375174b..5310ef71fcf8d37e0b27c6771f3747d6187178bf 100644 (file)
@@ -227,29 +227,13 @@ Film::internal_video_asset_filename () const
        return video_identifier() + ".mxf";
 }
 
-string
-Film::filename_safe_name () const
-{
-       string const n = name ();
-       string o;
-       for (size_t i = 0; i < n.length(); ++i) {
-               if (isalnum (n[i])) {
-                       o += n[i];
-               } else {
-                       o += "_";
-               }
-       }
-
-       return o;
-}
-
 boost::filesystem::path
-Film::audio_analysis_path () const
+Film::audio_analysis_path (shared_ptr<const Playlist> playlist) const
 {
        boost::filesystem::path p = dir ("analysis");
 
        MD5Digester digester;
-       BOOST_FOREACH (shared_ptr<Content> i, content ()) {
+       BOOST_FOREACH (shared_ptr<Content> i, playlist->content ()) {
                shared_ptr<AudioContent> ac = dynamic_pointer_cast<AudioContent> (i);
                if (!ac) {
                        continue;
@@ -276,25 +260,12 @@ Film::make_dcp ()
                throw BadSettingError (_("name"), _("cannot contain slashes"));
        }
 
-       bool must_burn = false;
-       ContentList cl = content ();
-       BOOST_FOREACH (shared_ptr<Content> c, cl) {
-               shared_ptr<SubtitleContent> sc = dynamic_pointer_cast<SubtitleContent> (c);
-               if (sc && sc->has_image_subtitles() && sc->use_subtitles() && !sc->burn_subtitles ()) {
-                       must_burn = true;
-               }
-       }
-
-       if (must_burn) {
-               throw EncodeError (_("this project has content with image-based subtitles, which this version of DCP-o-matic cannot include as separate DCP subtitles.  To use these subtitles you must burn them into the image (tick the box in the Subtitles tab)."));
-       }
-
        set_isdcf_date_today ();
 
        environment_info (log ());
 
-       for (ContentList::const_iterator i = cl.begin(); i != cl.end(); ++i) {
-               LOG_GENERAL ("Content: %1", (*i)->technical_summary());
+       BOOST_FOREACH (shared_ptr<const Content> i, content ()) {
+               LOG_GENERAL ("Content: %1", i->technical_summary());
        }
        LOG_GENERAL ("DCP video rate %1 fps", video_frame_rate());
        LOG_GENERAL ("%1 threads", Config::instance()->num_local_encoding_threads());