summaryrefslogtreecommitdiff
path: root/src/lib/audio_decoder.h
AgeCommit message (Collapse)Author
2022-04-09Add some missing override labels.Carl Hetherington
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-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.
2020-06-21Remove out-of-date comment.Carl Hetherington
2019-11-11Make DecoderPart::_position an optional.Carl Hetherington
2019-05-10Put Time types in dcpomatic namespace.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-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-05-25No-op; fix GPL address and use the explicit-program-name version.Carl Hetherington
2016-05-18Rename some methods.Carl Hetherington
2016-05-18Basics of splitting up Decoder tree like Content.Carl Hetherington
2016-05-18Move video frame rate ('prepared-for') into 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-26Include tidying src/lib/a-j*.hCarl Hetherington
2015-06-21No-op: remove all trailing whitespace.Carl Hetherington
2015-06-02Handle multiple audio streams in a single piece of contentCarl Hetherington
in a similar way to the V1 patch.
2015-05-26{Video,Audio}Frame -> Frame.Carl Hetherington
2014-09-10Comments.Carl Hetherington
2014-07-23Reinstate AudioDecoder::flush().Carl Hetherington
2014-07-13Very basic audio processing framework.Carl Hetherington
2014-06-30Fix problems with AudioDecoder when seeks to not subsequently give exactly ↵Carl Hetherington
what we asked for.
2014-04-11Flush decoded_audio buffer on seek.Carl Hetherington
2014-03-25It builds.Carl Hetherington
2014-03-07Add primitive subtitle view. Remove unused Film member from Decoder hierarchy.Carl Hetherington
2014-03-04New DCPTime/ContentTime types.Carl Hetherington
2014-01-03Various attempted fixes to audio sync.Carl Hetherington
2014-01-03Various fix-ups.Carl Hetherington
2013-12-18Attempt to move resampling into AudioDecoder.Carl Hetherington