summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorCarl Hetherington <cth@carlh.net>2013-05-17 16:27:22 +0100
committerCarl Hetherington <cth@carlh.net>2013-05-17 16:27:22 +0100
commit60755251f2d2bf2c97b23bc65541c50624efe5b3 (patch)
treec882671265ac270d8092f07799b7968718722878
parenta1c5e38c056d3b7d342bed6d9586ff9d050987be (diff)
Try to fix crash with stills without audio.
-rw-r--r--ChangeLog2
-rw-r--r--src/lib/ab_transcoder.cc2
-rw-r--r--src/lib/transcoder.cc2
3 files changed, 4 insertions, 2 deletions
diff --git a/ChangeLog b/ChangeLog
index 531d99210..14a5bb581 100644
--- a/ChangeLog
+++ b/ChangeLog
@@ -3,6 +3,8 @@
* Write backtrace files when Windows
version crashes.
+ * Try to fix crash on stills with no audio.
+
2013-05-06 Carl Hetherington <cth@carlh.net>
* Fix resizing / redraw problems in audio viewer
diff --git a/src/lib/ab_transcoder.cc b/src/lib/ab_transcoder.cc
index d8f13dae4..c42f0d241 100644
--- a/src/lib/ab_transcoder.cc
+++ b/src/lib/ab_transcoder.cc
@@ -62,7 +62,7 @@ ABTranscoder::ABTranscoder (
_db = decoder_factory (_film_b, o);
shared_ptr<AudioStream> st = _film_a->audio_stream();
- if (st) {
+ if (st && st->sample_rate()) {
_matcher.reset (new Matcher (_film_a->log(), st->sample_rate(), _film_a->source_frame_rate()));
}
_delay_line.reset (new DelayLine (_film_a->log(), _film_a->audio_delay() / 1000.0f));
diff --git a/src/lib/transcoder.cc b/src/lib/transcoder.cc
index faafcaf8b..fcfbb1648 100644
--- a/src/lib/transcoder.cc
+++ b/src/lib/transcoder.cc
@@ -56,7 +56,7 @@ Transcoder::Transcoder (shared_ptr<Film> f, DecodeOptions o, Job* j, shared_ptr<
assert (_encoder);
shared_ptr<AudioStream> st = f->audio_stream();
- if (st) {
+ if (st && st->sample_rate()) {
_matcher.reset (new Matcher (f->log(), st->sample_rate(), f->source_frame_rate()));
}
_delay_line.reset (new DelayLine (f->log(), f->audio_delay() / 1000.0f));