diff options
Diffstat (limited to 'src/lib')
| -rw-r--r-- | src/lib/decoder_factory.cc | 17 | ||||
| -rw-r--r-- | src/lib/decoder_factory.h | 1 | ||||
| -rw-r--r-- | src/lib/player.cc | 10 |
3 files changed, 3 insertions, 25 deletions
diff --git a/src/lib/decoder_factory.cc b/src/lib/decoder_factory.cc index 7f53c9a4b..dc01a043a 100644 --- a/src/lib/decoder_factory.cc +++ b/src/lib/decoder_factory.cc @@ -37,7 +37,7 @@ using boost::shared_ptr; using boost::dynamic_pointer_cast; shared_ptr<Decoder> -decoder_factory (shared_ptr<const Content> content, list<shared_ptr<ImageDecoder> > old_image_decoders, shared_ptr<Log> log, bool fast) +decoder_factory (shared_ptr<const Content> content, shared_ptr<Log> log, bool fast) { shared_ptr<const FFmpegContent> fc = dynamic_pointer_cast<const FFmpegContent> (content); if (fc) { @@ -51,20 +51,7 @@ decoder_factory (shared_ptr<const Content> content, list<shared_ptr<ImageDecoder shared_ptr<const ImageContent> ic = dynamic_pointer_cast<const ImageContent> (content); if (ic) { - shared_ptr<Decoder> decoder; - - /* See if we can re-use an old ImageDecoder */ - BOOST_FOREACH (shared_ptr<ImageDecoder> i, old_image_decoders) { - if (i->content() == ic) { - decoder = i; - } - } - - if (!decoder) { - decoder.reset (new ImageDecoder (ic, log)); - } - - return decoder; + return shared_ptr<Decoder> (new ImageDecoder (ic, log)); } shared_ptr<const TextSubtitleContent> rc = dynamic_pointer_cast<const TextSubtitleContent> (content); diff --git a/src/lib/decoder_factory.h b/src/lib/decoder_factory.h index 6a4e55ef1..52a53afd2 100644 --- a/src/lib/decoder_factory.h +++ b/src/lib/decoder_factory.h @@ -22,7 +22,6 @@ class ImageDecoder; extern boost::shared_ptr<Decoder> decoder_factory ( boost::shared_ptr<const Content> content, - std::list<boost::shared_ptr<ImageDecoder> > old_image_decoders, boost::shared_ptr<Log> log, bool fast ); diff --git a/src/lib/player.cc b/src/lib/player.cc index d437d5b1b..f22a6480f 100644 --- a/src/lib/player.cc +++ b/src/lib/player.cc @@ -115,14 +115,6 @@ Player::Player (shared_ptr<const Film> film, shared_ptr<const Playlist> playlist void Player::setup_pieces () { - list<shared_ptr<ImageDecoder> > old_image_decoders; - BOOST_FOREACH (shared_ptr<Piece> i, _pieces) { - shared_ptr<ImageDecoder> imd = dynamic_pointer_cast<ImageDecoder> (i->decoder); - if (imd) { - old_image_decoders.push_back (imd); - } - } - _pieces.clear (); BOOST_FOREACH (shared_ptr<Content> i, _playlist->content ()) { @@ -131,7 +123,7 @@ Player::setup_pieces () continue; } - shared_ptr<Decoder> decoder = decoder_factory (i, old_image_decoders, _film->log(), _fast); + shared_ptr<Decoder> decoder = decoder_factory (i, _film->log(), _fast); FrameRateChange frc (i->active_video_frame_rate(), _film->video_frame_rate()); if (!decoder) { |
