#define MAX_CLOSED_CAPTION_XML_SIZE (256 * 1024)
#define MAX_CLOSED_CAPTION_XML_SIZE_TEXT "256KB"
#define CERTIFICATE_VALIDITY_PERIOD (10 * 365)
+#define SIGN_LANGUAGE_WIDTH 480
+#define SIGN_LANGUAGE_HEIGHT 640
#endif
ID_jobs_show_dcp,
ID_jobs_open_dcp_in_player,
ID_view_closed_captions,
+ ID_view_sign_language,
ID_view_video_waveform,
ID_tools_hints,
ID_tools_encoding_servers,
Bind (wxEVT_MENU, boost::bind (&DOMFrame::jobs_show_dcp, this), ID_jobs_show_dcp);
Bind (wxEVT_MENU, boost::bind (&DOMFrame::jobs_open_dcp_in_player, this), ID_jobs_open_dcp_in_player);
Bind (wxEVT_MENU, boost::bind (&DOMFrame::view_closed_captions, this), ID_view_closed_captions);
+ Bind (wxEVT_MENU, boost::bind (&DOMFrame::view_sign_language, this), ID_view_sign_language);
Bind (wxEVT_MENU, boost::bind (&DOMFrame::view_video_waveform, this), ID_view_video_waveform);
Bind (wxEVT_MENU, boost::bind (&DOMFrame::tools_hints, this), ID_tools_hints);
Bind (wxEVT_MENU, boost::bind (&DOMFrame::tools_encoding_servers, this), ID_tools_encoding_servers);
_film_viewer.show_closed_captions ();
}
+ void view_sign_language()
+ {
+ _film_viewer.show_sign_language();
+ }
+
void view_video_waveform ()
{
if (!_video_waveform_dialog) {
auto view = new wxMenu;
add_item (view, _("Closed captions..."), ID_view_closed_captions, NEEDS_FILM);
+ add_item(view, _("Sign language..."), ID_view_sign_language, NEEDS_FILM);
add_item (view, _("Video waveform..."), ID_view_video_waveform, NEEDS_FILM);
auto tools = new wxMenu;
#include "nag_dialog.h"
#include "playhead_to_frame_dialog.h"
#include "playhead_to_timecode_dialog.h"
+#include "sign_language_dialog.h"
#include "simple_video_view.h"
#include "wx_util.h"
#include "lib/butler.h"
FilmViewer::FilmViewer (wxWindow* p)
: _audio (DCPOMATIC_RTAUDIO_API)
, _closed_captions_dialog (new ClosedCaptionsDialog(p, this))
+ , _sign_language_dialog(new SignLanguageDialog(p))
{
#if wxCHECK_VERSION(3, 1, 0)
switch (Config::instance()->video_view_type()) {
}
+void
+FilmViewer::show_sign_language()
+{
+ _sign_language_dialog->Show();
+}
+
+
void
FilmViewer::seek_by (DCPTime by, bool accurate)
{
class Player;
class PlayerVideo;
class RGBPlusAlphaImage;
+class SignLanguageDialog;
class wxToggleButton;
}
void show_closed_captions ();
+ void show_sign_language();
void set_film (std::shared_ptr<Film>);
std::shared_ptr<Film> film () const {
bool _optimise_for_j2k = false;
ClosedCaptionsDialog* _closed_captions_dialog = nullptr;
+ SignLanguageDialog* _sign_language_dialog = nullptr;
bool _outline_content = false;
boost::optional<dcpomatic::Rect<double>> _outline_subtitles;
--- /dev/null
+/*
+ Copyright (C) 2022 Carl Hetherington <cth@carlh.net>
+
+ This file is part of DCP-o-matic.
+
+ DCP-o-matic is free software; you can redistribute it and/or modify
+ it under the terms of the GNU General Public License as published by
+ the Free Software Foundation; either version 2 of the License, or
+ (at your option) any later version.
+
+ DCP-o-matic is distributed in the hope that it will be useful,
+ but WITHOUT ANY WARRANTY; without even the implied warranty of
+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ GNU General Public License for more details.
+
+ You should have received a copy of the GNU General Public License
+ along with DCP-o-matic. If not, see <http://www.gnu.org/licenses/>.
+
+*/
+
+
+#include "sign_language_dialog.h"
+#include "simple_video_view.h"
+#include "lib/constants.h"
+
+
+using std::make_shared;
+
+
+SignLanguageDialog::SignLanguageDialog(wxWindow* parent)
+ : wxDialog(parent, wxID_ANY, _("Sign language"), wxDefaultPosition, wxSize(SIGN_LANGUAGE_WIDTH, SIGN_LANGUAGE_HEIGHT))
+{
+
+}
+
--- /dev/null
+/*
+ Copyright (C) 2022 Carl Hetherington <cth@carlh.net>
+
+ This file is part of DCP-o-matic.
+
+ DCP-o-matic is free software; you can redistribute it and/or modify
+ it under the terms of the GNU General Public License as published by
+ the Free Software Foundation; either version 2 of the License, or
+ (at your option) any later version.
+
+ DCP-o-matic is distributed in the hope that it will be useful,
+ but WITHOUT ANY WARRANTY; without even the implied warranty of
+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ GNU General Public License for more details.
+
+ You should have received a copy of the GNU General Public License
+ along with DCP-o-matic. If not, see <http://www.gnu.org/licenses/>.
+
+*/
+
+
+#include <dcp/warnings.h>
+LIBDCP_DISABLE_WARNINGS
+#include <wx/wx.h>
+LIBDCP_ENABLE_WARNINGS
+
+
+class SignLanguageDialog : public wxDialog
+{
+public:
+ SignLanguageDialog(wxWindow* parent);
+
+};
+
send_test_email_dialog.cc
server_dialog.cc
servers_list_dialog.cc
+ sign_language_dialog.cc
simple_video_view.cc
smpte_metadata_dialog.cc
standard_controls.cc