Re-allow audio channel 15 to be mapped so that users can add
[dcpomatic.git] / src / lib / util.cc
index 7ba9242fae5d795b6a9a1a0d7cf77cdd103bf531..37b03c83605fa73c1131b6f15ee3216cd3bf2ecd 100644 (file)
@@ -379,16 +379,16 @@ DCPOMATIC_ENABLE_WARNINGS
 
 #ifdef DCPOMATIC_WINDOWS
        putenv ("PANGOCAIRO_BACKEND=fontconfig");
-       putenv (String::compose("FONTCONFIG_PATH=%1", shared_path().string()).c_str());
+       putenv (String::compose("FONTCONFIG_PATH=%1", resources_path().string()).c_str());
 #endif
 
 #ifdef DCPOMATIC_OSX
        setenv ("PANGOCAIRO_BACKEND", "fontconfig", 1);
-       setenv ("FONTCONFIG_PATH", shared_path().string().c_str(), 1);
+       setenv ("FONTCONFIG_PATH", resources_path().string().c_str(), 1);
 #endif
 
        Pango::init ();
-       dcp::init ();
+       dcp::init (tags_path());
 
 #if defined(DCPOMATIC_WINDOWS) || defined(DCPOMATIC_OSX)
        /* Render something to fontconfig to create its cache */
@@ -592,7 +592,7 @@ short_audio_channel_name (int c)
                _("DBP"),
                _("DBS"),
                "",
-               ""
+               _("Sign")
        };
 
        return channels[c];
@@ -825,14 +825,16 @@ audio_channel_types (list<int> mapped, int channels)
                case dcp::CENTRE:
                case dcp::LS:
                case dcp::RS:
-               case dcp::LC:
-               case dcp::RC:
                case dcp::BSL:
                case dcp::BSR:
                        ++non_lfe;
                        break;
                case dcp::HI:
                case dcp::VI:
+               case dcp::MOTION_DATA:
+               case dcp::SYNC_SIGNAL:
+               case dcp::SIGN_LANGUAGE:
+               case dcp::CHANNEL_COUNT:
                        break;
                }
        }
@@ -1253,3 +1255,24 @@ decrypt_kdm_with_helpful_error (dcp::EncryptedKDM kdm)
        }
 }
 
+
+boost::filesystem::path
+default_font_file ()
+{
+       boost::filesystem::path liberation_normal;
+       try {
+               liberation_normal = resources_path() / "LiberationSans-Regular.ttf";
+               if (!boost::filesystem::exists (liberation_normal)) {
+                       /* Hack for unit tests */
+                       liberation_normal = resources_path() / "fonts" / "LiberationSans-Regular.ttf";
+               }
+       } catch (boost::filesystem::filesystem_error& e) {
+
+       }
+
+       if (!boost::filesystem::exists(liberation_normal)) {
+               liberation_normal = "/usr/share/fonts/truetype/liberation/LiberationSans-Regular.ttf";
+       }
+
+       return liberation_normal;
+}