mirror of
https://github.com/VDR4Arch/vdr.git
synced 2023-10-10 13:36:52 +02:00
Fixed external AC3 replay; switched back to old version numbering scheme
This commit is contained in:
parent
6e6eeab1fd
commit
1d9eb9f7bc
5
HISTORY
5
HISTORY
@ -866,14 +866,15 @@ Video Disk Recorder Revision History
|
|||||||
- The device /dev/video is now opened only if necessary (to GRAB an image),
|
- The device /dev/video is now opened only if necessary (to GRAB an image),
|
||||||
allowing other programs (like 'kvdr', for instance) to use that device.
|
allowing other programs (like 'kvdr', for instance) to use that device.
|
||||||
|
|
||||||
2001-11-24: Version 0.9.9
|
2001-11-25: Version 0.99
|
||||||
|
|
||||||
- Changed version numbering scheme.
|
|
||||||
- Fixed several channel definitions in 'channels.conf' (thanks to Thilo
|
- Fixed several channel definitions in 'channels.conf' (thanks to Thilo
|
||||||
Wunderlich).
|
Wunderlich).
|
||||||
- Added MPEG audio support for DVD (thanks to Andreas Schultz).
|
- Added MPEG audio support for DVD (thanks to Andreas Schultz).
|
||||||
- Implemented DVB-T support (thanks to Dave Chapman).
|
- Implemented DVB-T support (thanks to Dave Chapman).
|
||||||
|
This currently works only for UK channels.
|
||||||
- Removed the range limits for the Frequency and Srate parameters of channel
|
- Removed the range limits for the Frequency and Srate parameters of channel
|
||||||
definitions.
|
definitions.
|
||||||
- Changed the maximum value for PIDs in channels.conf from 0xFFFE to 0x1FFF.
|
- Changed the maximum value for PIDs in channels.conf from 0xFFFE to 0x1FFF.
|
||||||
- Fixed DVD audio sync problems (thanks to Andreas Schultz).
|
- Fixed DVD audio sync problems (thanks to Andreas Schultz).
|
||||||
|
- Fixed external AC3 replay for DVDs (thanks to Andreas Schultz).
|
||||||
|
4
config.h
4
config.h
@ -4,7 +4,7 @@
|
|||||||
* See the main source file 'vdr.c' for copyright information and
|
* See the main source file 'vdr.c' for copyright information and
|
||||||
* how to reach the author.
|
* how to reach the author.
|
||||||
*
|
*
|
||||||
* $Id: config.h 1.85 2001/10/27 09:56:04 kls Exp $
|
* $Id: config.h 1.86 2001/11/25 15:57:08 kls Exp $
|
||||||
*/
|
*/
|
||||||
|
|
||||||
#ifndef __CONFIG_H
|
#ifndef __CONFIG_H
|
||||||
@ -18,7 +18,7 @@
|
|||||||
#include "eit.h"
|
#include "eit.h"
|
||||||
#include "tools.h"
|
#include "tools.h"
|
||||||
|
|
||||||
#define VDRVERSION "0.98"
|
#define VDRVERSION "0.99"
|
||||||
|
|
||||||
#define MAXPRIORITY 99
|
#define MAXPRIORITY 99
|
||||||
#define MAXLIFETIME 99
|
#define MAXLIFETIME 99
|
||||||
|
7
dvbapi.c
7
dvbapi.c
@ -7,7 +7,7 @@
|
|||||||
* DVD support initially written by Andreas Schultz <aschultz@warp10.net>
|
* DVD support initially written by Andreas Schultz <aschultz@warp10.net>
|
||||||
* based on dvdplayer-0.5 by Matjaz Thaler <matjaz.thaler@guest.arnes.si>
|
* based on dvdplayer-0.5 by Matjaz Thaler <matjaz.thaler@guest.arnes.si>
|
||||||
*
|
*
|
||||||
* $Id: dvbapi.c 1.140 2001/11/24 14:45:58 kls Exp $
|
* $Id: dvbapi.c 1.141 2001/11/25 16:38:09 kls Exp $
|
||||||
*/
|
*/
|
||||||
|
|
||||||
//#define DVDDEBUG 1
|
//#define DVDDEBUG 1
|
||||||
@ -710,6 +710,7 @@ protected:
|
|||||||
int readIndex, writeIndex;
|
int readIndex, writeIndex;
|
||||||
bool canDoTrickMode;
|
bool canDoTrickMode;
|
||||||
bool canToggleAudioTrack;
|
bool canToggleAudioTrack;
|
||||||
|
bool skipAC3bytes;
|
||||||
uchar audioTrack;
|
uchar audioTrack;
|
||||||
void TrickSpeed(int Increment);
|
void TrickSpeed(int Increment);
|
||||||
virtual void Empty(bool Block = false);
|
virtual void Empty(bool Block = false);
|
||||||
@ -752,6 +753,7 @@ cPlayBuffer::cPlayBuffer(cDvbApi *DvbApi, int VideoDev, int AudioDev)
|
|||||||
readIndex = writeIndex = -1;
|
readIndex = writeIndex = -1;
|
||||||
canDoTrickMode = false;
|
canDoTrickMode = false;
|
||||||
canToggleAudioTrack = false;
|
canToggleAudioTrack = false;
|
||||||
|
skipAC3bytes = false;
|
||||||
audioTrack = 0xC0;
|
audioTrack = 0xC0;
|
||||||
if (cDvbApi::AudioCommand()) {
|
if (cDvbApi::AudioCommand()) {
|
||||||
if (!dolbyDev.Open(cDvbApi::AudioCommand(), "w"))
|
if (!dolbyDev.Open(cDvbApi::AudioCommand(), "w"))
|
||||||
@ -769,7 +771,7 @@ void cPlayBuffer::PlayExternalDolby(const uchar *b, int MaxLength)
|
|||||||
if (b[0] == 0x00 && b[1] == 0x00 && b[2] == 0x01) {
|
if (b[0] == 0x00 && b[1] == 0x00 && b[2] == 0x01) {
|
||||||
if (b[3] == 0xBD) { // dolby
|
if (b[3] == 0xBD) { // dolby
|
||||||
int l = b[4] * 256 + b[5] + 6;
|
int l = b[4] * 256 + b[5] + 6;
|
||||||
int written = b[8] + 9; // skips the PES header
|
int written = b[8] + (skipAC3bytes ? 13 : 9); // skips the PES header
|
||||||
int n = min(l - written, MaxLength);
|
int n = min(l - written, MaxLength);
|
||||||
while (n > 0) {
|
while (n > 0) {
|
||||||
int w = fwrite(&b[written], 1, n, dolbyDev);
|
int w = fwrite(&b[written], 1, n, dolbyDev);
|
||||||
@ -1545,6 +1547,7 @@ cDVDplayBuffer::cDVDplayBuffer(cDvbApi *DvbApi, int VideoDev, int AudioDev, cDVD
|
|||||||
canToggleAudioTrack = true;//XXX determine from cDVD!
|
canToggleAudioTrack = true;//XXX determine from cDVD!
|
||||||
data = new uchar[1024 * DVD_VIDEO_LB_LEN];
|
data = new uchar[1024 * DVD_VIDEO_LB_LEN];
|
||||||
canDoTrickMode = true;
|
canDoTrickMode = true;
|
||||||
|
skipAC3bytes = true;
|
||||||
dvbApi->SetModeReplay();
|
dvbApi->SetModeReplay();
|
||||||
Start();
|
Start();
|
||||||
}
|
}
|
||||||
|
Loading…
Reference in New Issue
Block a user