diff options
author | James Stembridge <jstembridge@users.sourceforge.net> | 2005-05-28 11:07:22 +0000 |
---|---|---|
committer | James Stembridge <jstembridge@users.sourceforge.net> | 2005-05-28 11:07:22 +0000 |
commit | 8ff06cb9cf73a1da6d6e9c6f18c5027a2eeb5a9d (patch) | |
tree | 0cd1206eb6373e1a82e8227e981f63884e95230a /src/libdts | |
parent | 9f9b785490c17070f710b28965380e9451b0eb84 (diff) | |
download | xine-lib-8ff06cb9cf73a1da6d6e9c6f18c5027a2eeb5a9d.tar.gz xine-lib-8ff06cb9cf73a1da6d6e9c6f18c5027a2eeb5a9d.tar.bz2 |
Simplify setting of metadata
CVS patchset: 7579
CVS date: 2005/05/28 11:07:22
Diffstat (limited to 'src/libdts')
-rw-r--r-- | src/libdts/xine_decoder.c | 49 |
1 files changed, 29 insertions, 20 deletions
diff --git a/src/libdts/xine_decoder.c b/src/libdts/xine_decoder.c index cd16563a8..88ef3edb7 100644 --- a/src/libdts/xine_decoder.c +++ b/src/libdts/xine_decoder.c @@ -17,7 +17,7 @@ * along with this program; if not, write to the Free Software * Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA * - * $Id: xine_decoder.c,v 1.61 2005/05/28 10:41:17 jstembridge Exp $ + * $Id: xine_decoder.c,v 1.62 2005/05/28 11:07:22 jstembridge Exp $ * * 04-09-2001 DTS passtrough (C) Joachim Koenig * 09-12-2001 DTS passthrough inprovements (C) James Courtier-Dutton @@ -411,25 +411,34 @@ static void dts_decode_data (audio_decoder_t *this_gen, buf_element_t *buf) { old_dts_bit_rate != this->dts_bit_rate) { this->rate = this->dts_sample_rate; - if (((this->dts_flags & DTS_CHANNEL_MASK) == DTS_3F2R) && (this->dts_flags & DTS_LFE)) - _x_meta_info_set_utf8(this->stream, XINE_META_INFO_AUDIOCODEC, "DTS 5.1"); - else if ((((this->dts_flags & DTS_CHANNEL_MASK) == DTS_2F2R) && (this->dts_flags & DTS_LFE)) || - (((this->dts_flags & DTS_CHANNEL_MASK) == DTS_3F1R) && (this->dts_flags & DTS_LFE))) - _x_meta_info_set_utf8(this->stream, XINE_META_INFO_AUDIOCODEC, "DTS 4.1"); - else if ((this->dts_flags & DTS_CHANNEL_MASK) == DTS_3F2R) - _x_meta_info_set_utf8(this->stream, XINE_META_INFO_AUDIOCODEC, "DTS 5.0"); - else if (((this->dts_flags & DTS_CHANNEL_MASK) == DTS_2F2R) || - ((this->dts_flags & DTS_CHANNEL_MASK) == DTS_3F1R)) - _x_meta_info_set_utf8(this->stream, XINE_META_INFO_AUDIOCODEC, "DTS 4.0"); - else if (((this->dts_flags & DTS_CHANNEL_MASK) == DTS_2F1R) || - ((this->dts_flags & DTS_CHANNEL_MASK) == DTS_3F)) - _x_meta_info_set_utf8(this->stream, XINE_META_INFO_AUDIOCODEC, "DTS 3.0"); - else if ((this->dts_flags & DTS_CHANNEL_MASK) == DTS_STEREO) - _x_meta_info_set_utf8(this->stream, XINE_META_INFO_AUDIOCODEC, "DTS 2.0 (stereo)"); - else if ((this->dts_flags & DTS_CHANNEL_MASK) == DTS_MONO) - _x_meta_info_set_utf8(this->stream, XINE_META_INFO_AUDIOCODEC, "DTS 1.0"); - else - _x_meta_info_set_utf8(this->stream, XINE_META_INFO_AUDIOCODEC, "DTS"); + switch (this->dts_flags & DTS_CHANNEL_MASK) { + case DTS_3F2R: + if (this->dts_flags & DTS_LFE) + _x_meta_info_set_utf8(this->stream, XINE_META_INFO_AUDIOCODEC, "DTS 5.1"); + else + _x_meta_info_set_utf8(this->stream, XINE_META_INFO_AUDIOCODEC, "DTS 5.0"); + break; + case DTS_3F1R: + case DTS_2F2R: + if (this->dts_flags & DTS_LFE) + _x_meta_info_set_utf8(this->stream, XINE_META_INFO_AUDIOCODEC, "DTS 4.1"); + else + _x_meta_info_set_utf8(this->stream, XINE_META_INFO_AUDIOCODEC, "DTS 4.0"); + break; + case DTS_2F1R: + case DTS_3F: + _x_meta_info_set_utf8(this->stream, XINE_META_INFO_AUDIOCODEC, "DTS 3.0"); + break; + case DTS_STEREO: + _x_meta_info_set_utf8(this->stream, XINE_META_INFO_AUDIOCODEC, "DTS 2.0 (stereo)"); + break; + case DTS_MONO + _x_meta_info_set_utf8(this->stream, XINE_META_INFO_AUDIOCODEC, "DTS 1.0"); + break; + default: + _x_meta_info_set_utf8(this->stream, XINE_META_INFO_AUDIOCODEC, "DTS"); + break; + } _x_stream_info_set(this->stream, XINE_STREAM_INFO_AUDIO_BITRATE, this->dts_bit_rate); _x_stream_info_set(this->stream, XINE_STREAM_INFO_AUDIO_SAMPLERATE, this->dts_sample_rate); |