summaryrefslogtreecommitdiff
path: root/src/lib/video_decoder.h
AgeCommit message (Collapse)Author
2022-05-19wip: black pieces; sad part is that Shuffler can't cope with content that ↵2253-3d-emptyCarl Hetherington
doesn't start at the same time.
2022-04-09Add some missing override labels.Carl Hetherington
2021-02-26Fix a set of mistakes related to 3D content.Carl Hetherington
2021-01-07std::shared_ptrCarl Hetherington
2020-02-19Nicer fix for 2D-labelled-3D checking from master.Carl Hetherington
2020-02-18Remove incorrect comment.Carl Hetherington
2019-11-20Restore checking of 2D files that are incorrectly set as 3D.Carl Hetherington
2019-11-11Don't trust video timestamps from FFmpegDecoder.v2.15.32Carl Hetherington
2019-11-11Make DecoderPart::_position an optional.Carl Hetherington
2019-05-21Give an error if 2D content is set to 3D (#1565). Also runCarl Hetherington
3D tests with more parallel jobs to speed them up.
2019-05-10Put Time types in dcpomatic namespace.Carl Hetherington
2018-11-21Take Film pointer out of Content.Carl Hetherington
2018-02-23Fix duplicate frames when padding.Carl Hetherington
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-12-13Reset VideoDecoder::_position on seek.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-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-20Some more decode logging.Carl Hetherington
2016-11-19Move position variables into the video/audio/subtitle decoder classes.Carl Hetherington
2016-06-14Add VideoFrame class.Carl Hetherington
This puts a frame index with an Eyes, which simplifies code in some areas. I can't think of a better name for it, unfortunately.
2016-06-13Fix VideoDecoder::get_video() with 3D.Carl Hetherington
get_video() promises to return all video frames at the given time, but this wasn't working for none-SBS-3D as it would be satisfied when it got the first (left) frame. Adjust get_video() to get all required frames. This showed up bugs in fill_both_eyes, whereby the from parameter was ignored and the wrong things were done in some cases; video_decoder_fill_test.cc tests this stuff.
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-18Reasonably straightforward stuff; main things are addingCarl Hetherington
a _parent to VideoContent (mainly, but not only, for signalling) and moving the video shared_ptr into Content, which makes much more sense to replace dynamic_cast tests for whether something has video or whatever. Nearly builds.
2016-01-24Stop trying to get frames from a video source when an attemptCarl Hetherington
to get an earlier frame has already failed because the decoder said it has no more data. Before this the VideoDecoder would repeatedly seek to try to get a frame which does not exist. This happens when the header of a file is wrong, it would seem; in the file that triggered the bug the header (as read by DoM or ffprobe) has a length of 137275 frames but the last frame in the file (according to DoM or ffprobe -show_frames) is 136207 (44.5s earlier).
2015-08-17Do filling correctly for separate-content L/R 3D; before it wasCarl Hetherington
trying to fill each individual piece of content as if it was providing both L and R frames.
2015-05-26{Video,Audio}Frame -> Frame.Carl Hetherington
2015-01-19Fix audio analysis; make sure we don't decode video and let it pile up unwanted.Carl Hetherington
2015-01-19VideoDecoder::_same can just be a local.Carl Hetherington
2014-12-05Some include tidying.Carl Hetherington
2014-11-23Various fixes to seek since changing fill code.Carl Hetherington
2014-11-11Hand-apply 80562fe5dce5fd625da583ca6f7c2833f9db8754 from master (remove ↵Carl Hetherington
default scale and use a scale guessed from the content's size and sample aspect ratio).
2014-07-09Basics of DCP import.Carl Hetherington
2014-05-20Merge master.Carl Hetherington
2014-05-14Add ImageProxy class.Carl Hetherington
2014-05-02Comments.Carl Hetherington
2014-05-01Fix 3D support.Carl Hetherington
2014-04-02Various fixes to FFmpeg decoder, including a couple of tests.Carl Hetherington
2014-04-01Various small fixes.Carl Hetherington
2014-03-25It builds.Carl Hetherington
2014-03-18Tentative support for 3D from alternate frames.Carl Hetherington
Also remove references to libpostproc. Requested-by: Jean-Jacques Mantello
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 fix-ups.Carl Hetherington