diff options
author | Klaus Schmidinger <vdr@tvdr.de> | 2001-08-10 12:42:10 +0200 |
---|---|---|
committer | Klaus Schmidinger <vdr@tvdr.de> | 2001-08-10 12:42:10 +0200 |
commit | 4ea2daeebec3b37e34882d4aa84a9eb6a128ae0d (patch) | |
tree | 14f68053b78a97e02cfc53e5dbb3d4914d9fcf99 | |
parent | 89bf34e362217b614869562e45cf3de4a3238648 (diff) | |
download | vdr-4ea2daeebec3b37e34882d4aa84a9eb6a128ae0d.tar.gz vdr-4ea2daeebec3b37e34882d4aa84a9eb6a128ae0d.tar.bz2 |
Improved AC3 decoding when replaying DVDs
-rw-r--r-- | CONTRIBUTORS | 3 | ||||
-rw-r--r-- | HISTORY | 3 | ||||
-rw-r--r-- | config.h | 4 | ||||
-rw-r--r-- | dvbapi.c | 13 |
4 files changed, 11 insertions, 12 deletions
diff --git a/CONTRIBUTORS b/CONTRIBUTORS index 437b09d4..6f76971b 100644 --- a/CONTRIBUTORS +++ b/CONTRIBUTORS @@ -119,3 +119,6 @@ Wolfgang Henselmann-Weiss <Wolfgang_Henselmann@betaresearch.de> Uwe Scheffler <UweScheffler@t-online.de> for his help in keeping 'channels.conf.cable' up to date + +Matjaz Thaler <matjaz.thaler@guest.arnes.si> + for improving AC3 decoding when replaying DVDs @@ -622,9 +622,10 @@ Video Disk Recorder Revision History - Fixed calculating the timeout value in cFile::FileReady() (thanks to Wolfgang Henselmann-Weiss). -2001-08-08: Version 0.91 +2001-08-10: Version 0.91 - Fixed displaying colored button texts that are too long. - Suppressing replay progress display when replaying a DVD. - Updated channels.conf.cable (thanks to Uwe Scheffler). - Updated French OSD texts (thanks to Jean-Claude Repetto). +- Improved AC3 decoding when replaying DVDs (thanks to Matjaz Thaler). @@ -4,7 +4,7 @@ * See the main source file 'vdr.c' for copyright information and * how to reach the author. * - * $Id: config.h 1.57 2001/08/05 15:50:00 kls Exp $ + * $Id: config.h 1.58 2001/08/10 12:40:43 kls Exp $ */ #ifndef __CONFIG_H @@ -19,7 +19,7 @@ #include "eit.h" #include "tools.h" -#define VDRVERSION "0.90" +#define VDRVERSION "0.91" #define MaxBuffer 10000 @@ -7,7 +7,7 @@ * DVD support initially written by Andreas Schultz <aschultz@warp10.net> * based on dvdplayer-0.5 by Matjaz Thaler <matjaz.thaler@guest.arnes.si> * - * $Id: dvbapi.c 1.101 2001/08/06 16:24:13 kls Exp $ + * $Id: dvbapi.c 1.102 2001/08/10 12:37:03 kls Exp $ */ //#define DVDDEBUG 1 @@ -53,7 +53,6 @@ extern "C" { // The size of the array used to buffer video data: // (must be larger than MINVIDEODATA - see remux.h) #define VIDEOBUFSIZE (1024*1024) -#define AC3_BUFFER_SIZE (6*1024*16) // The maximum size of a single frame: #define MAXFRAMESIZE (192*1024) @@ -1172,7 +1171,6 @@ private: int logAudioTrack; int maxAudioTrack; - ac3_config_t ac3_config; enum { AC3_STOP, AC3_START, AC3_PLAY } ac3stat; uchar *ac3data; int ac3inp; @@ -1231,10 +1229,7 @@ cDVDplayBuffer::cDVDplayBuffer(cDvbApi *DvbApi, int VideoDev, int AudioDev, cDVD skipCnt = 0; logAudioTrack = 0; canToggleAudioTrack = true;//XXX determine from cDVD! - ac3_config.num_output_ch = 2; - // ac3_config.flags = /* mm_accel() | */ MM_ACCEL_MLIB; - ac3_config.flags = 0; - ac3_init(&ac3_config); + ac3dec_init(); data = new uchar[1024 * DVD_VIDEO_LB_LEN]; ac3data = new uchar[AC3_BUFFER_SIZE]; ac3inp = ac3outp = 0; @@ -1823,9 +1818,9 @@ void cDVDplayBuffer::handleAC3(unsigned char *sector, int length) } else { if (ac3stat == AC3_PLAY) - ac3_decode_data(sector, sector+length, 0, &ac3inp, &ac3outp, (char *)ac3data); + ac3dec_decode_data(sector, sector + length, 0, &ac3inp, &ac3outp, (char *)ac3data); else if (ac3stat == AC3_START) { - ac3_decode_data(sector, sector+length, 1, &ac3inp, &ac3outp, (char *)ac3data); + ac3dec_decode_data(sector, sector + length, 1, &ac3inp, &ac3outp, (char *)ac3data); ac3stat = AC3_PLAY; } } |