Make terminate_threads() less likely to leave _threads containing invalid pointers.
[dcpomatic.git] / src / lib / ffmpeg_examiner.h
index c3dde84fe11b0bc46227e9949f4c8ccb4c4b6488..67fdcfae0baa65986a407f2adfd2b237828875da 100644 (file)
@@ -1,5 +1,5 @@
 /*
-    Copyright (C) 2013-2016 Carl Hetherington <cth@carlh.net>
+    Copyright (C) 2013-2017 Carl Hetherington <cth@carlh.net>
 
     This file is part of DCP-o-matic.
 
@@ -69,12 +69,15 @@ public:
                return video_codec_context()->colorspace;
        }
 
-       int bits_per_pixel () const;
+       boost::optional<int> bits_per_pixel () const;
+
+       boost::optional<double> rotation () const {
+               return _rotation;
+       }
 
 private:
        void video_packet (AVCodecContext *);
        void audio_packet (AVCodecContext *, boost::shared_ptr<FFmpegAudioStream>);
-       void subtitle_packet (AVCodecContext *, boost::shared_ptr<FFmpegSubtitleStream>);
 
        std::string stream_name (AVStream* s) const;
        std::string subtitle_stream_name (AVStream* s) const;
@@ -89,6 +92,8 @@ private:
        Frame _video_length;
        bool _need_video_length;
 
+       boost::optional<double> _rotation;
+
        struct SubtitleStart
        {
                SubtitleStart (std::string id_, bool image_, ContentTime time_)