From aa646c58267a6bd2580f3cb30674f4ebd0ed6db7 Mon Sep 17 00:00:00 2001 From: Carl Hetherington Date: Sat, 11 Jul 2020 00:12:50 +0200 Subject: Allow creation of ATMOS sync on channel 14. --- src/sound_asset_writer.h | 18 ++++++++++++++++-- 1 file changed, 16 insertions(+), 2 deletions(-) (limited to 'src/sound_asset_writer.h') diff --git a/src/sound_asset_writer.h b/src/sound_asset_writer.h index b2de9e8e..f1b1514d 100644 --- a/src/sound_asset_writer.h +++ b/src/sound_asset_writer.h @@ -1,5 +1,5 @@ /* - Copyright (C) 2012-2014 Carl Hetherington + Copyright (C) 2012-2020 Carl Hetherington This file is part of libdcp. @@ -36,10 +36,16 @@ */ #include "asset_writer.h" +#include "fsk.h" #include "types.h" #include "sound_frame.h" #include #include +#include + + +struct sync_test1; + namespace dcp { @@ -62,10 +68,12 @@ public: private: friend class SoundAsset; + friend struct ::sync_test1; - SoundAssetWriter (SoundAsset *, boost::filesystem::path); + SoundAssetWriter (SoundAsset *, boost::filesystem::path, bool sync); void write_current_frame (); + std::vector create_sync_packets (); /* do this with an opaque pointer so we don't have to include ASDCP headers @@ -76,6 +84,12 @@ private: SoundAsset* _asset; int _frame_buffer_offset; + + /** true to ignore any signal passed to write() on channel 14 and instead write a sync track */ + bool _sync; + /** index of the sync packet (0-3) which starts the next edit unit */ + int _sync_packet; + FSK _fsk; }; } -- cgit v1.2.3