| Age | Commit message (Collapse) | Author |
|
resamplers are emptied and hence we don't lose any
samples. Fixes #1691.
Back-ported from 1444299fa4582fc65c5237edd6c115921f20f872 in master.
|
|
subtitles (#1641).
Forward-port from da39ed1516f2463f8a9bf4795a94f23d420c9ca3 in master.
|
|
This has the same cause as
19f51503621a57794bd79bac053c9e6549a69f46
i.e. the DCPDecoder re-use optimisation. This commit tries to
re-fix 19f515 in a more general way which also takes into account
the OV/VF bug. It also adds a unit test.
|
|
re-use optimisation.
|
|
|
|
(if available) to recover the list of reels from, rather than having
to scan the filesystem again.
|
|
|
|
|
|
(i.e. are not encrypted and not missing assets). Fixes full audio
buffers on locates with large encrypted DCPs and no KDMs; in these
cases silent audio is created by the fill_audio() at the bottom of
Player::pass() but no video is created by anybody.
|
|
|
|
|
|
|
|
DCPDecoder. Prevents overlaid text in, for example, lines with
partial italic.
|
|
to decode images. Hence remove {Image,Graphics}Magick.
|
|
|
|
|
|
|
|
|
|
ActiveCaptions -> ActiveText
BitmapCaption -> BitmapText
ContentCaption -> ContentText
ContentTextCaption -> ContentStringText
TextCaptionFileContent -> StringTextFileContent
TextCaptionFileDecoder -> StringTextFileDecoder
TextCaptionFile -> StringTextFile
TextCaption -> StringText
PlayerCaption -> PlayerText
CaptionContent -> TextContent
CaptionDecoder -> TextDecoder
CaptionPanel -> TextPanel
CaptionView -> TextView
CaptionAppearanceDialog -> SubtitleAppearanceDialog
CaptionType -> TextType
|
|
hold subs and closed captions.
|
|
|
|
sed -i "s/emit_text/emit_plain/g" src/lib/*.cc src/lib/*.h
sed -i "s/emit_image_start/emit_bitmap_start/g" src/lib/*.cc src/lib/*.h
sed -i "s/emit_text_start/emit_plain_start/g" src/lib/*.cc src/lib/*.h
sed -i "s/render_subtitles/render_text/g" src/lib/*.cc src/lib/*.h src/lib/wscript test/*.cc
sed -i "s/ImageStart/BitmapStart/g" src/lib/*.cc src/lib/*.h
sed -i "s/TextStart/PlainStart/g" src/lib/*.cc src/lib/*.h test/*.cc src/wx/*.cc
sed -i "s/ImageSubtitle/BitmapText/g" src/lib/*.cc src/lib/*.h
sed -i "s/text_subtitle/plain_text/g" src/lib/*.cc src/lib/*.h src/lib/wscript src/wx/*.cc src/wx/*.h test/*.cc
sed -i "s/image_subtitle/bitmap_text/g" src/lib/*.cc src/lib/*.h
mv src/lib/render_subtitles.cc src/lib/render_text.cc
mv src/lib/render_subtitles.h src/lib/render_text.h
mv src/lib/text_subtitle.cc src/lib/plain_text.cc
mv src/lib/text_subtitle.h src/lib/plain_text.h
|
|
sed -i "s/SubtitleContent/TextContent/g" src/lib/*.cc src/lib/*.h src/wx/*.cc src/wx/*.h src/tools/*.cc test/*.cc
sed -i "s/SubtitleDecoder/TextDecoder/g" src/lib/*.cc src/lib/*.h src/wx/*.cc src/wx/*.h src/tools/*.cc test/*.cc
sed -i "s/subtitle_content/text_content/g" src/lib/*.cc src/lib/*.h src/wx/*.cc src/wx/*.h src/tools/*.cc test/*.cc src/lib/wscript src/wx/wscript
sed -i "s/subtitle_decoder/text_decoder/g" src/lib/*.cc src/lib/*.h src/wx/*.cc src/wx/*.h src/tools/*.cc test/*.cc src/lib/wscript
mv src/lib/subtitle_decoder.cc src/lib/text_decoder.cc
mv src/lib/subtitle_decoder.h src/lib/text_decoder.h
mv src/lib/subtitle_content.cc src/lib/text_content.cc
mv src/lib/subtitle_content.h src/lib/text_content.h
mv src/lib/dcp_subtitle_decoder.cc src/lib/dcp_text_decoder.cc
mv src/lib/dcp_subtitle_decoder.h src/lib/dcp_text_decoder.h
mv src/lib/dcp_subtitle_content.cc src/lib/dcp_text_content.cc
mv src/lib/dcp_subtitle_content.h src/lib/dcp_text_content.h
mv src/lib/text_subtitle_content.cc src/lib/text_text_content.cc
mv src/lib/text_subtitle_content.h src/lib/text_text_content.h
mv src/lib/text_subtitle_decoder.cc src/lib/text_text_decoder.cc
mv src/lib/text_subtitle_decoder.h src/lib/text_text_decoder.h
mv src/wx/timeline_subtitle_content_view.cc src/wx/timeline_text_content_view.cc
mv src/wx/timeline_subtitle_content_view.h src/wx/timeline_text_content_view.h
|
|
|
|
|
|
|
|
subtitles into the player).
|
|
a DCP.
|
|
hit is anything to worry about (especially compared to the time taken
to decode the next frame).
|
|
frame looks for them.
|
|
|
|
|
|
frame; may help with #1166.
|
|
a frame period.
|
|
|
|
on frame-advance (and in other cases).
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
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.
|
|
|
|
|
|
|
|
Before this commit, decoders try to guess whether they should
request a seek based on what they have in their buffers. This
seems reasonable for video and audio, which will always (I think)
have some data lying around to give an indication of where their
parent decoders are in the timeline.
It doesn't work so well for subtitles, as the storage of subs is
cleared out based on time (+/- 5s of "now") so there is a good chance
that the storage will be empty. This gives the subtitle decoder no
chance of knowing where its parent is, so it's very likely to seek.
This commit asks the parent decoder to seek if it wants to, and it
decides based on a knowledge of roughly where it is in the timeline.
Hence the sub-decoders just see if they have got the data that is being
requested, and if not they suggest to the parent that it might like
to seek. They then start calling pass(). Hence the parent should only
seek if some calls to pass() are not going to elicit the required data
in a reasonable time.
|