diff options
| author | Carl Hetherington <cth@carlh.net> | 2021-04-23 23:37:12 +0200 |
|---|---|---|
| committer | Carl Hetherington <cth@carlh.net> | 2021-05-07 09:29:58 +0200 |
| commit | 9208efcd05052b12d4f0587809638c6a5654100f (patch) | |
| tree | 2cd153576049effc3ed848f3fd56df29020f3ee7 | |
| parent | c856ed24976679b6d69b2dcd3df9352c70cb68e0 (diff) | |
Add Piece::audio_gain().
| -rw-r--r-- | src/lib/piece.cc | 7 | ||||
| -rw-r--r-- | src/lib/piece.h | 1 | ||||
| -rw-r--r-- | src/lib/player.cc | 7 |
3 files changed, 10 insertions, 5 deletions
diff --git a/src/lib/piece.cc b/src/lib/piece.cc index 2a4f01268..5c4563c0e 100644 --- a/src/lib/piece.cc +++ b/src/lib/piece.cc @@ -156,3 +156,10 @@ Piece::resampled_audio_frame_rate (shared_ptr<const Film> film) const return content->audio->resampled_frame_rate (film); } + +double +Piece::audio_gain () const +{ + DCPOMATIC_ASSERT (content->audio); + return content->audio->gain(); +} diff --git a/src/lib/piece.h b/src/lib/piece.h index 04159e58f..eea5021ca 100644 --- a/src/lib/piece.h +++ b/src/lib/piece.h @@ -61,6 +61,7 @@ public: std::shared_ptr<PlayerVideo> player_video (ContentVideo video, std::shared_ptr<const Film> film, dcp::Size container_size) const; int resampled_audio_frame_rate (std::shared_ptr<const Film> film) const; + double audio_gain () const; std::shared_ptr<Content> content; std::shared_ptr<Decoder> decoder; diff --git a/src/lib/player.cc b/src/lib/player.cc index 451a0018a..d95cf661e 100644 --- a/src/lib/player.cc +++ b/src/lib/player.cc @@ -869,9 +869,6 @@ Player::audio (weak_ptr<Piece> wp, AudioStreamPtr stream, ContentAudio content_a return; } - auto content = piece->content->audio; - DCPOMATIC_ASSERT (content); - int const rfr = piece->resampled_audio_frame_rate (_film); /* Compute time in the DCP */ @@ -905,9 +902,9 @@ Player::audio (weak_ptr<Piece> wp, AudioStreamPtr stream, ContentAudio content_a /* Gain */ - if (content->gain() != 0) { + if (piece->audio_gain() != 0) { auto gain = make_shared<AudioBuffers>(content_audio.audio); - gain->apply_gain (content->gain()); + gain->apply_gain (piece->audio_gain()); content_audio.audio = gain; } |
