diff options
| author | Carl Hetherington <cth@carlh.net> | 2020-06-19 13:30:02 +0200 |
|---|---|---|
| committer | Carl Hetherington <cth@carlh.net> | 2020-06-19 15:07:30 +0200 |
| commit | ca981c8cfa23111e92be329f1c2dfbe3a07b4247 (patch) | |
| tree | 2a0ceab2864691f910c9c7d70127542868f9f8e5 /src/lib/player.h | |
| parent | cabe0934c60fb6e74bf4c3023bdcb5c68753e5d9 (diff) | |
Make Atmos content work more like other content. Now its MXFsv2.15.82
are re-written, meaning that they can be encrypted.
This (along with the libdcp update) also fixes assorted Atmos bugs.
Diffstat (limited to 'src/lib/player.h')
| -rw-r--r-- | src/lib/player.h | 9 |
1 files changed, 8 insertions, 1 deletions
diff --git a/src/lib/player.h b/src/lib/player.h index bb2a0c613..ea81ae939 100644 --- a/src/lib/player.h +++ b/src/lib/player.h @@ -1,5 +1,5 @@ /* - Copyright (C) 2013-2019 Carl Hetherington <cth@carlh.net> + Copyright (C) 2013-2020 Carl Hetherington <cth@carlh.net> This file is part of DCP-o-matic. @@ -21,11 +21,13 @@ #ifndef DCPOMATIC_PLAYER_H #define DCPOMATIC_PLAYER_H +#include "atmos_metadata.h" #include "player_text.h" #include "active_text.h" #include "content_text.h" #include "film.h" #include "content.h" +#include "content_atmos.h" #include "position_image.h" #include "piece.h" #include "content_video.h" @@ -46,6 +48,7 @@ namespace dcpomatic { class Font; } +class AtmosContent; class PlayerVideo; class Playlist; class AudioBuffers; @@ -103,6 +106,7 @@ public: * after the corresponding Video. */ boost::signals2::signal<void (PlayerText, TextType, boost::optional<DCPTextTrack>, dcpomatic::DCPTimePeriod)> Text; + boost::signals2::signal<void (boost::shared_ptr<const dcp::AtmosFrame>, dcpomatic::DCPTime, AtmosMetadata)> Atmos; private: friend class PlayerWrapper; @@ -129,11 +133,14 @@ private: dcpomatic::ContentTime dcp_to_content_time (boost::shared_ptr<const Piece> piece, dcpomatic::DCPTime t) const; dcpomatic::DCPTime content_time_to_dcp (boost::shared_ptr<const Piece> piece, dcpomatic::ContentTime t) const; boost::shared_ptr<PlayerVideo> black_player_video_frame (Eyes eyes) const; + void video (boost::weak_ptr<Piece>, ContentVideo); void audio (boost::weak_ptr<Piece>, AudioStreamPtr, ContentAudio); void bitmap_text_start (boost::weak_ptr<Piece>, boost::weak_ptr<const TextContent>, ContentBitmapText); void plain_text_start (boost::weak_ptr<Piece>, boost::weak_ptr<const TextContent>, ContentStringText); void subtitle_stop (boost::weak_ptr<Piece>, boost::weak_ptr<const TextContent>, dcpomatic::ContentTime); + void atmos (boost::weak_ptr<Piece>, ContentAtmos); + dcpomatic::DCPTime one_video_frame () const; void fill_audio (dcpomatic::DCPTimePeriod period); std::pair<boost::shared_ptr<AudioBuffers>, dcpomatic::DCPTime> discard_audio ( |
