mirror of
https://github.com/VDR4Arch/vdr.git
synced 2023-10-10 13:36:52 +02:00
Modified handling of audio packets in cDvbPlayer for better sync with external AC3 replay
This commit is contained in:
parent
a28e2ef5b5
commit
24bbaa277c
@ -236,6 +236,8 @@ Werner Fink <werner@suse.de>
|
||||
for improving keyboard detection
|
||||
for adding some missing cAudio handling calls
|
||||
for replacing the 'for' loops in StripAudioPackets() with memset() calls
|
||||
for modifying handling of audio packets in cDvbPlayer for better sync with external
|
||||
AC3 replay
|
||||
|
||||
Rolf Hakenes <hakenes@hippomi.de>
|
||||
for providing 'libdtv' and adapting the EIT mechanisms to it
|
||||
|
5
HISTORY
5
HISTORY
@ -2172,3 +2172,8 @@ Video Disk Recorder Revision History
|
||||
to Lars Bläser for reporting this one).
|
||||
- No longer waiting inside cIndexFile::CatchUp() to avoid shortly blocking replay
|
||||
at the end of a recording.
|
||||
|
||||
2003-05-24: Version 1.1.33
|
||||
|
||||
- Modified handling of audio packets in cDvbPlayer for better sync with external
|
||||
AC3 replay (thanks to Werner Fink).
|
||||
|
6
config.h
6
config.h
@ -4,7 +4,7 @@
|
||||
* See the main source file 'vdr.c' for copyright information and
|
||||
* how to reach the author.
|
||||
*
|
||||
* $Id: config.h 1.159 2003/05/16 12:27:58 kls Exp $
|
||||
* $Id: config.h 1.160 2003/05/19 15:27:37 kls Exp $
|
||||
*/
|
||||
|
||||
#ifndef __CONFIG_H
|
||||
@ -19,8 +19,8 @@
|
||||
#include "device.h"
|
||||
#include "tools.h"
|
||||
|
||||
#define VDRVERSION "1.1.32"
|
||||
#define VDRVERSNUM 10132 // Version * 10000 + Major * 100 + Minor
|
||||
#define VDRVERSION "1.1.33"
|
||||
#define VDRVERSNUM 10133 // Version * 10000 + Major * 100 + Minor
|
||||
|
||||
#define MAXPRIORITY 99
|
||||
#define MAXLIFETIME 99
|
||||
|
10
dvbplayer.c
10
dvbplayer.c
@ -4,7 +4,7 @@
|
||||
* See the main source file 'vdr.c' for copyright information and
|
||||
* how to reach the author.
|
||||
*
|
||||
* $Id: dvbplayer.c 1.20 2003/04/27 09:55:53 kls Exp $
|
||||
* $Id: dvbplayer.c 1.21 2003/05/19 15:23:19 kls Exp $
|
||||
*/
|
||||
|
||||
#include "dvbplayer.h"
|
||||
@ -477,8 +477,8 @@ void cDvbPlayer::Action(void)
|
||||
}
|
||||
int r = nonBlockingFileReader->Read(replayFile, b, Length);
|
||||
if (r > 0) {
|
||||
if (AudioTrack >= 0)
|
||||
StripAudioPackets(b, r, AudioTrack);
|
||||
if (AudioTrack == 0)
|
||||
StripAudioPackets(b, r);
|
||||
readFrame = new cFrame(b, -r, ftUnknown, readIndex); // hands over b to the ringBuffer
|
||||
b = NULL;
|
||||
}
|
||||
@ -514,10 +514,14 @@ void cDvbPlayer::Action(void)
|
||||
if (!p) {
|
||||
p = playFrame->Data();
|
||||
pc = playFrame->Count();
|
||||
if (p) {
|
||||
if (firstPacket) {
|
||||
cRemux::SetBrokenLink(p, pc);
|
||||
firstPacket = false;
|
||||
}
|
||||
if (AudioTrack > 0)
|
||||
StripAudioPackets(p, pc, AudioTrack);
|
||||
}
|
||||
}
|
||||
if (p) {
|
||||
int w = PlayVideo(p, pc);
|
||||
|
Loading…
Reference in New Issue
Block a user