diff options
| author | Carl Hetherington <cth@carlh.net> | 2014-02-24 12:19:50 +0000 |
|---|---|---|
| committer | Carl Hetherington <cth@carlh.net> | 2014-02-24 12:19:50 +0000 |
| commit | 85c65bd422742813992686c17a5e1b718cc3c449 (patch) | |
| tree | 21750399bcb19e1fb6242bba7595773513a80912 /src/lib/ffmpeg_examiner.cc | |
| parent | e2be8234013335379bd49a53854218039348c7a4 (diff) | |
| parent | eed40e4e5ca46bbc31a9833d2b766c96c11b0254 (diff) | |
Merge master; specify libdcp-1.0.
Diffstat (limited to 'src/lib/ffmpeg_examiner.cc')
| -rw-r--r-- | src/lib/ffmpeg_examiner.cc | 10 |
1 files changed, 5 insertions, 5 deletions
diff --git a/src/lib/ffmpeg_examiner.cc b/src/lib/ffmpeg_examiner.cc index 86dec9a8f..e439566a1 100644 --- a/src/lib/ffmpeg_examiner.cc +++ b/src/lib/ffmpeg_examiner.cc @@ -75,13 +75,13 @@ FFmpegExaminer::FFmpegExaminer (shared_ptr<const FFmpegContent> c) if (_packet.stream_index == _video_stream && !_first_video) { if (avcodec_decode_video2 (context, _frame, &frame_finished, &_packet) >= 0 && frame_finished) { - _first_video = frame_time (_video_stream); + _first_video = frame_time (_format_context->streams[_video_stream]); } } else { for (size_t i = 0; i < _audio_streams.size(); ++i) { - if (_packet.stream_index == _audio_streams[i]->index (_format_context) && !_audio_streams[i]->first_audio) { + if (_audio_streams[i]->uses_index (_format_context, _packet.stream_index) && !_audio_streams[i]->first_audio) { if (avcodec_decode_audio4 (context, _frame, &frame_finished, &_packet) >= 0 && frame_finished) { - _audio_streams[i]->first_audio = frame_time (_audio_streams[i]->index (_format_context)); + _audio_streams[i]->first_audio = frame_time (_audio_streams[i]->stream (_format_context)); } } } @@ -103,13 +103,13 @@ FFmpegExaminer::FFmpegExaminer (shared_ptr<const FFmpegContent> c) } optional<double> -FFmpegExaminer::frame_time (int stream) const +FFmpegExaminer::frame_time (AVStream* s) const { optional<double> t; int64_t const bet = av_frame_get_best_effort_timestamp (_frame); if (bet != AV_NOPTS_VALUE) { - t = bet * av_q2d (_format_context->streams[stream]->time_base); + t = bet * av_q2d (s->time_base); } return t; |
