summaryrefslogtreecommitdiff
path: root/src/lib/audio_decoder.cc
AgeCommit message (Collapse)Author
2025-09-05Remove out-of-date comment.Carl Hetherington
2025-07-10Remove compose.hpp includes.Carl Hetherington
sed -i "/include.*compose.hpp/d;" src/lib/*.cc src/wx/*.cc src/wx/*.h src/tools/*.cc src/lib/*.h test/*.cc
2025-07-10Replace String::compose with fmt.Carl Hetherington
sed -i "/Plural-Forms/n;/%100/n;/scanf/n;s/%[123456789]/{}/g" src/lib/*.cc src/lib/*.h src/wx/*.cc src/tools/*.cc src/lib/po/*.po src/wx/po/*.po src/tools/po/*.po test/*.cc sed -i "s/String::compose */fmt::format/g" src/lib/*.cc src/lib/*.h src/wx/*.cc src/tools/*.cc test/*.cc
2024-09-16Increase tolerance for audio timestamp error.Carl Hetherington
This makes a seemingly valid file that I was sent play properly.
2024-09-16Improve debug log slightly.Carl Hetherington
2023-08-15Cope with unexpected channel counts in data coming from audio decoders.Carl Hetherington
2022-11-15Improve flushing behaviour when there is a lot of space to fill (#2364).Carl Hetherington
Previously a call to flush() could result in a lot of audio being emitted from the decoder (if there is a big gap between the end of the audio and the video). This would end up being emitted in one chunk from the player, crashing the audio analyser with an OOM in some cases.
2022-06-30Use the resampled rate to calculate the slack threshold rather than just ↵Carl Hetherington
48kHz (#2275).
2022-03-15Fix incorrectly-timed emission of silence padding causing buffer fill (#2217).Carl Hetherington
On initialisation or after seek we insert silence corresponding to a positive delay in an audio stream. Previously this inserted silence was done at time 0, so that after a seek to time T the silent frames would come out of the audio merger at time 0 and then the player would fill the space up to time T with silence. If T was far enough along this would fill the audio buffers without there being any video.
2021-09-20Assorted tidying.Carl Hetherington
2021-04-08Assorted C++11/formatting cleanups.Carl Hetherington
2021-01-09More c++ tidying.Carl Hetherington
2021-01-07BOOST_FOREACH.Carl Hetherington
2021-01-07std::shared_ptrCarl Hetherington
2020-12-03Obey audio timestamps if they don't deviate by more than some threshold.Carl Hetherington
Previously we would ignore audio timestamps because they are not contiguous in a sample-accurate way. However with bugs like #1833 we do need to obey large discontinuities in audio timestamps, otherwise we get large sync errors. Here we change timestamp handling to ignore small discontinuities in timestamps but not larger ones.
2019-11-11Make DecoderPart::_position an optional.Carl Hetherington
2019-05-10Put Time types in dcpomatic namespace.Carl Hetherington
2018-11-21Tidy and fix logging.Carl Hetherington
2018-11-21Take Film pointer out of Content.Carl Hetherington
2018-03-05Tidy up with some typedefs.Carl Hetherington
2018-02-16AudioDecoder::_positions is at the resampled rate, if applicable;Carl Hetherington
fix its initial setup. Fixes problems when seeking deep into resampled content; before this commit the audio time stamps got out of whack sufficiently that the butler would fill with video before any audio made it past the range checks.
2018-01-02A previous commit took care to make Decoder::position() not be updatedCarl Hetherington
if the data that was emitted from the decoder was not taken by the player. This means that when the decoder moves into its end trim the position will stay where it is (since the player does not take the data). I can't see the point of doing this; the only use of Decoder::position() is to decide what to pass() next (I think). It is also inconvenient because we would like to check Decoder::position() to decide whether to stop passing a decoder since it's in its end trim (not doing this causes #1154).
2017-09-03Restore correct setup of fast resampler when the player is set to fast.Carl Hetherington
2017-08-30Fix incorrect reel lengths in some cases; account for emitted data being ↵Carl Hetherington
rejected by the player, and for initial audio not to be at time 0.
2017-06-29Fixes for silence in projects, various cleanups.Carl Hetherington
2017-06-23Attempts to simplify black-filling logic in Player.Carl Hetherington
2017-05-21Do resampling in AudioDecoder rather than Player.Carl Hetherington
This fixes the problem where the decoder's position would not take into account that all samples pushed into the resampler do not always immediately come out. This would result in Player thinking that there would be gaps when there are not.
2017-04-19Some comments and a few small cleanups.Carl Hetherington
2017-04-19const fix.Carl Hetherington
2017-04-19Various fixes to push audio vaguely in the right direction.Carl Hetherington
2017-04-19Post-merge tidy-up.Carl Hetherington
2017-04-19Various work on the audio code.Carl Hetherington
2017-04-19Basic grunt-work, untested and unfinished, but it compiles.Carl Hetherington
2016-12-08Further fixes and tidying to 'better-seek'.Carl Hetherington
This fixes the failure to keep track of the `position' of each stream of a multi-stream file. It also tidies things up a bit.
2016-11-21Still more decode logging.Carl Hetherington
2016-11-20Some more decode logging.Carl Hetherington
2016-11-19Move position variables into the video/audio/subtitle decoder classes.Carl Hetherington
2016-07-07Remove unused variable.Carl Hetherington
2016-06-22Set AudioDecoder::fast a different way.Carl Hetherington
2016-06-21Revert "Use make_shared<>."Carl Hetherington
Support for this seems to vary wildly across DoM's build targets. Stuff that builds on 16.04 won't build on 14.04, for example. Seems to not be worth the hassle now. This reverts commit 5a5324ed3a381a86dfe0a6e3932c1d58fdcd596f.
2016-06-21Use make_shared<>.Carl Hetherington
2016-05-25No-op; fix GPL address and use the explicit-program-name version.Carl Hetherington
2016-05-18Fix crash.Carl Hetherington
2016-05-18Rename some methods.Carl Hetherington
2016-05-18Basics of splitting up Decoder tree like Content.Carl Hetherington
2016-05-18Split audio; builds.Carl Hetherington
2015-09-09Use SRC_LINEAR for speed when analysing audio (#685).Carl Hetherington
2015-09-05Don't bother with audio in the film viewer.Carl Hetherington
2015-08-28Fix crash on adding a KDM to a DCP (hopefully #645).Carl Hetherington
2015-08-26Include tidying src/lib/a-j*.hCarl Hetherington