summaryrefslogtreecommitdiff
path: root/src/lib
AgeCommit message (Collapse)Author
2016-06-24Support for underlined subtitles.Carl Hetherington
2016-06-24Fix confused checks for Image/GraphicsMagick in wscript. Add missing ↵Carl Hetherington
InitializeMagick() call, fixing crash on loading still images.
2016-06-22Merge branch 'master' of ssh://git.carlh.net/home/carl/git/dcpomaticCarl Hetherington
2016-06-22Don't bother decoding referenced DCP video if the player will ignore it.Carl Hetherington
2016-06-22Set AudioDecoder::fast a different way.Carl Hetherington
2016-06-22Merge branch 'master' of ssh://git.carlh.net/home/carl/git/dcpomaticCarl Hetherington
2016-06-22Optimization for the referenced video case.Carl Hetherington
With referenced video from a DCP decoder, no video will ever be fetched from the decoder. Hence the code to discard given video will be activated after _decoded builds up to the magic size. Before this commit the code would attempt to fill with black up to given frame N (with N very large) from the last frame in _decoded when _decoded had been trimmed. This would result in exponential growth in execution time for the VideoDecoder::give() path.
2016-06-22A couple of small optimisations.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-21Revert "Revert make_shared<> change which breaks build on some platforms; ↵Carl Hetherington
don't know why yet." This reverts commit eb3f28f4e614455a4d070d5fa2caaa24b9d9139c.
2016-06-21Revert make_shared<> change which breaks build on some platforms; don't know ↵Carl Hetherington
why yet.
2016-06-21Use make_shared<>.Carl Hetherington
2016-06-20Pass .ass files to SSAReader.Carl Hetherington
2016-06-20Fix crash when no video is being encoded.Carl Hetherington
2016-06-20Updated nl_NL translation from Rob van Nieuwkerk.Carl Hetherington
2016-06-20pot/merge.Carl Hetherington
2016-06-20Updated pt_BR translation from Max M. Fuhlendorf.Carl Hetherington
2016-06-20pot/merge.Carl Hetherington
2016-06-20Merge branch 'fix-encoder-threading' of ↵Carl Hetherington
ssh://git.carlh.net/home/carl/git/dcpomatic into fix-encoder-threading
2016-06-20Fix encoder thread interruption.Carl Hetherington
When an encoder thread is interrupted we just want it silently to stop, so catch boost::thread_interrupted separately and don't pass it on. I believe the interruption of jobs and subsequent catch of boost::thread_interrupted will still work as that's the job thread rather than the encoder threads.
2016-06-20Fix another case where an exception could be thrown from a destructor.Carl Hetherington
2016-06-20Encoder shutdown fixes.Carl Hetherington
Two fixes here; prevent the servers-list-changed callback being called when Encoder is being destroyed, and stop ~Encoder throwing exceptions. I'm not sure if the catch (...) in ~Encoder will hide problems that we should be handling, but I think by the time ~Encoder is happening we'll already have seen any exceptions that we need to report.
2016-06-19Render bold subtitles correctly in preview / burn-in.Carl Hetherington
2016-06-19Updated pt_BR translation from Max M. Fuhlendorf.Carl Hetherington
2016-06-18Parse .ass files using the text subtitle code.Carl Hetherington
2016-06-17Add preference for the default number of DCP channels (#897).Carl Hetherington
2016-06-17Missing virtual destructor.Carl Hetherington
2016-06-16Ignore any hidden files when looking for images.Carl Hetherington
We used to do ._* and .DS_Store but there has been a report of .com.apple.timemachine.supported.
2016-06-14Basic guessing of audio channels from filenames (#393).Carl Hetherington
2016-06-14Clean up of 3D->2D conversion.Carl Hetherington
It makes slightly more sense to discard 2D in the Transcoder rather than the Encoder. Unfortunately this requires quite invasive changes, mainly to remove Encoder::_position and instead derive this information from the PlayerVideo that is being handled. This is also nicer than before, I think. A notable change is that in player.cc; using time rather than content_video_to_dcp(). This means we are assuming that the decoder returns video at the time we ask it to, rather than checking what it has returned. I can't think of a problem with this (yet).
2016-06-14Discard right-eye images when using 3D sources to make 2D DCPs.Carl Hetherington
2016-06-14Use edit rate not frame rate for displaying rate of DCPs.Carl Hetherington
2016-06-14Fix subtle bug with 3D and add a explicit to stop it happening again.Carl Hetherington
2016-06-14Set correct video frame type when importing DCPs (part of #806).Carl Hetherington
2016-06-14Fix some confusion with filling and VideoFrame.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-14Merge branch 'master' of ssh://git.carlh.net/home/carl/git/dcpomaticCarl Hetherington
2016-06-13Improve error messages on failing to load DCP subs.Carl Hetherington
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-06-13Add 3D video frame type for, e.g. 3D DCP inputs (part of #806).Carl Hetherington
2016-06-13Remove caching of old ImageDecoder objects.Carl Hetherington
This breaks things when there is a 3D ImageContent. When you change the video frame type on this content the view does not update because the re-used ImageDecoder recycles the same video without noticing that the frame type has changed. I guess this is sort of `because' the video frame type is used in VideoDecoder::give, which sets up the cache. Unfortunately I can't remember the case which the caching of ImageDecoders was meant to speed up. Maybe this will now become apparent.
2016-06-13Make storage of VideoFrameType robust by using a string in the XML rather ↵Carl Hetherington
than a casted enum.
2016-06-13Use nettle rather then openssl for MD5 digesting.Carl Hetherington
2016-06-13Rename MD5Digester -> Digester.Carl Hetherington
2016-06-10Go back to referencing subrip from the top of the frame.Carl Hetherington
2016-06-10Tweak subrip position.Carl Hetherington
2016-06-10Fix positioning of SubRip.Carl Hetherington
2016-06-10Specify a default font size if none comes from libsub.Carl Hetherington
Use the specified time period rather than looking in the Subtitle.
2016-06-10Remove some debug code.Carl Hetherington
2016-06-10Fix thinko.Carl Hetherington