summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorCarl Hetherington <cth@carlh.net>2014-12-09 20:56:42 +0000
committerCarl Hetherington <cth@carlh.net>2014-12-09 20:56:42 +0000
commit14405a514581605497d88fb72c2e4fb45b359d4d (patch)
treef42d45be9e0cfca94be3e5ca49a1699a66856d56
parent6e5e215ebadeb1ec81052f5d67a7da7457e33fa2 (diff)
Forward-port DCA footer fix from master.
-rw-r--r--cscript2
-rw-r--r--src/lib/ffmpeg.cc10
2 files changed, 10 insertions, 2 deletions
diff --git a/cscript b/cscript
index b1397d6e8..5621ef51f 100644
--- a/cscript
+++ b/cscript
@@ -155,7 +155,7 @@ def make_control(debian_version, bits, filename, debug):
print >>f,''
def dependencies(target):
- return (('ffmpeg-cdist', '1093c6f'),
+ return (('ffmpeg-cdist', 'f69bb08'),
('libdcp', '1.0'),
('libsub', None))
diff --git a/src/lib/ffmpeg.cc b/src/lib/ffmpeg.cc
index 4fe1c0448..c39ad8aab 100644
--- a/src/lib/ffmpeg.cc
+++ b/src/lib/ffmpeg.cc
@@ -152,7 +152,15 @@ FFmpeg::setup_decoders ()
AVCodec* codec = avcodec_find_decoder (context->codec_id);
if (codec) {
- if (avcodec_open2 (context, codec, 0) < 0) {
+
+ /* This option disables decoding of DCA frame footers in our patched version
+ of FFmpeg. I believe these footers are of no use to us, and they can cause
+ problems when FFmpeg fails to decode them (mantis #352).
+ */
+ AVDictionary* options = 0;
+ av_dict_set (&options, "disable_footer", "1", 0);
+
+ if (avcodec_open2 (context, codec, &options) < 0) {
throw DecodeError (N_("could not open decoder"));
}
}