From 3d9b5186aa39150e53aef3bab09f4350f85cb885 Mon Sep 17 00:00:00 2001 From: Carl Hetherington Date: Sat, 10 Nov 2012 13:19:09 +0000 Subject: More various AudioStream hacks. --- src/lib/stream.h | 25 ++++++++++++++++++++----- 1 file changed, 20 insertions(+), 5 deletions(-) (limited to 'src/lib/stream.h') diff --git a/src/lib/stream.h b/src/lib/stream.h index 2db63c620..d6c4ca382 100644 --- a/src/lib/stream.h +++ b/src/lib/stream.h @@ -20,6 +20,11 @@ #ifndef DVDOMATIC_STREAM_H #define DVDOMATIC_STREAM_H +#include +extern "C" { +#include +} + class Stream { public: @@ -52,19 +57,29 @@ struct AudioStream : public Stream public: AudioStream (std::string t); - AudioStream (std::string n, int i, int c) - : Stream (n, i) - , _channels (c) + AudioStream (std::string n, int id, int r, int64_t l) + : Stream (n, id) + , _sample_rate (r) + , _channel_layout (l) {} std::string to_string () const; int channels () const { - return _channels; + return av_get_channel_layout_nb_channels (_channel_layout); + } + + int sample_rate () const { + return _sample_rate; + } + + int64_t channel_layout () const { + return _channel_layout; } private: - int _channels; + int _sample_rate; + int64_t _channel_layout; }; class SubtitleStream : public Stream -- cgit v1.2.3