From b60f700a2c7db27da227fedf4ac1a3a775ba2459 Mon Sep 17 00:00:00 2001 From: ace20022 Date: Wed, 20 Mar 2013 14:03:24 +0100 Subject: [Fix] Correct the audio format recognition. --- lib/libdvd/libdvdnav/src/dvdnav/dvd_types.h | 13 ++++++------ .../libdvdnav_correct_audio_format_enum.diff | 23 ++++++++++++++++++++++ .../DVDInputStreams/DVDInputStreamNavigator.cpp | 16 +++++++++------ .../dvdplayer/DVDInputStreams/dvdnav/dvd_types.h | 17 ++++++++-------- 4 files changed, 47 insertions(+), 22 deletions(-) create mode 100644 lib/libdvd/patches/libdvdnav_correct_audio_format_enum.diff diff --git a/lib/libdvd/libdvdnav/src/dvdnav/dvd_types.h b/lib/libdvd/libdvdnav/src/dvdnav/dvd_types.h index 08b46d385b..eb8121d843 100644 --- a/lib/libdvd/libdvdnav/src/dvdnav/dvd_types.h +++ b/lib/libdvd/libdvdnav/src/dvdnav/dvd_types.h @@ -161,14 +161,13 @@ typedef enum { /* The audio format */ typedef enum { DVD_AUDIO_FORMAT_AC3 = 0, - DVD_AUDIO_FORMAT_MPEG1 = 1, - DVD_AUDIO_FORMAT_MPEG1_DRC = 2, - DVD_AUDIO_FORMAT_MPEG2 = 3, - DVD_AUDIO_FORMAT_MPEG2_DRC = 4, - DVD_AUDIO_FORMAT_LPCM = 5, + DVD_AUDIO_FORMAT_UNKNOWN_1 = 1, + DVD_AUDIO_FORMAT_MPEG = 2, + DVD_AUDIO_FORMAT_MPEG2_EXT = 3, + DVD_AUDIO_FORMAT_LPCM = 4, + DVD_AUDIO_FORMAT_UNKNOWN_5 = 5, DVD_AUDIO_FORMAT_DTS = 6, - DVD_AUDIO_FORMAT_SDDS = 7, - DVD_AUDIO_FORMAT_Other = 8 + DVD_AUDIO_FORMAT_SDDS = 7 } DVDAudioFormat_t; /* Audio language extension */ diff --git a/lib/libdvd/patches/libdvdnav_correct_audio_format_enum.diff b/lib/libdvd/patches/libdvdnav_correct_audio_format_enum.diff new file mode 100644 index 0000000000..2951de71c9 --- /dev/null +++ b/lib/libdvd/patches/libdvdnav_correct_audio_format_enum.diff @@ -0,0 +1,23 @@ +--- libdvdnav-4.2.0/src/dvdnav/dvd_types.h Wed Mar 20 08:51:10 2013 ++++ lib/libdvd/libdvdnav/src/dvdnav/dvd_types.h Wed Mar 20 12:22:25 2013 +@@ -161,14 +161,13 @@ + /* The audio format */ + typedef enum { + DVD_AUDIO_FORMAT_AC3 = 0, +- DVD_AUDIO_FORMAT_MPEG1 = 1, +- DVD_AUDIO_FORMAT_MPEG1_DRC = 2, +- DVD_AUDIO_FORMAT_MPEG2 = 3, +- DVD_AUDIO_FORMAT_MPEG2_DRC = 4, +- DVD_AUDIO_FORMAT_LPCM = 5, ++ DVD_AUDIO_FORMAT_UNKNOWN_1 = 1, ++ DVD_AUDIO_FORMAT_MPEG = 2, ++ DVD_AUDIO_FORMAT_MPEG2_EXT = 3, ++ DVD_AUDIO_FORMAT_LPCM = 4, ++ DVD_AUDIO_FORMAT_UNKNOWN_5 = 5, + DVD_AUDIO_FORMAT_DTS = 6, +- DVD_AUDIO_FORMAT_SDDS = 7, +- DVD_AUDIO_FORMAT_Other = 8 ++ DVD_AUDIO_FORMAT_SDDS = 7 + } DVDAudioFormat_t; + + /* Audio language extension */ diff --git a/xbmc/cores/dvdplayer/DVDInputStreams/DVDInputStreamNavigator.cpp b/xbmc/cores/dvdplayer/DVDInputStreams/DVDInputStreamNavigator.cpp index 894c4943b7..78bfa9de6f 100644 --- a/xbmc/cores/dvdplayer/DVDInputStreams/DVDInputStreamNavigator.cpp +++ b/xbmc/cores/dvdplayer/DVDInputStreams/DVDInputStreamNavigator.cpp @@ -960,17 +960,21 @@ void CDVDInputStreamNavigator::SetAudioStreamName(DVDNavStreamInfo &info, const case DVD_AUDIO_FORMAT_AC3: info.name += " AC3"; break; - case DVD_AUDIO_FORMAT_MPEG1: - case DVD_AUDIO_FORMAT_MPEG1_DRC: - info.name += " MP1"; + case DVD_AUDIO_FORMAT_UNKNOWN_1: + info.name += " UNKNOWN #1"; break; - case DVD_AUDIO_FORMAT_MPEG2: - case DVD_AUDIO_FORMAT_MPEG2_DRC: - info.name += " MP2"; + case DVD_AUDIO_FORMAT_MPEG: + info.name += " MPEG AUDIO"; + break; + case DVD_AUDIO_FORMAT_MPEG2_EXT: + info.name += " MP2 Ext."; break; case DVD_AUDIO_FORMAT_LPCM: info.name += " LPCM"; break; + case DVD_AUDIO_FORMAT_UNKNOWN_5: + info.name += " UNKNOWN #5"; + break; case DVD_AUDIO_FORMAT_DTS: info.name += " DTS"; break; diff --git a/xbmc/cores/dvdplayer/DVDInputStreams/dvdnav/dvd_types.h b/xbmc/cores/dvdplayer/DVDInputStreams/dvdnav/dvd_types.h index 08d22caf65..a3067a5298 100644 --- a/xbmc/cores/dvdplayer/DVDInputStreams/dvdnav/dvd_types.h +++ b/xbmc/cores/dvdplayer/DVDInputStreams/dvdnav/dvd_types.h @@ -163,15 +163,14 @@ typedef enum { /* The audio format */ typedef enum { - DVD_AUDIO_FORMAT_AC3 = 0, - DVD_AUDIO_FORMAT_MPEG1 = 1, - DVD_AUDIO_FORMAT_MPEG1_DRC = 2, - DVD_AUDIO_FORMAT_MPEG2 = 3, - DVD_AUDIO_FORMAT_MPEG2_DRC = 4, - DVD_AUDIO_FORMAT_LPCM = 5, - DVD_AUDIO_FORMAT_DTS = 6, - DVD_AUDIO_FORMAT_SDDS = 7, - DVD_AUDIO_FORMAT_Other = 8 + DVD_AUDIO_FORMAT_AC3 = 0, + DVD_AUDIO_FORMAT_UNKNOWN_1 = 1, + DVD_AUDIO_FORMAT_MPEG = 2, + DVD_AUDIO_FORMAT_MPEG2_EXT = 3, + DVD_AUDIO_FORMAT_LPCM = 4, + DVD_AUDIO_FORMAT_UNKNOWN_5 = 5, + DVD_AUDIO_FORMAT_DTS = 6, + DVD_AUDIO_FORMAT_SDDS = 7 } DVDAudioFormat_t; /* Audio language extension */ -- cgit v1.2.3