mirror of
https://github.com/VDR4Arch/vdr.git
synced 2023-10-10 13:36:52 +02:00
Extended some buffer sizes to allow handling HDTV streams
This commit is contained in:
parent
8c0981583f
commit
7276c54baf
@ -909,6 +909,7 @@ Reinhard Nissl <rnissl@gmx.de>
|
|||||||
call from cDvbPlayer::Action()
|
call from cDvbPlayer::Action()
|
||||||
for reporting a race condition in starting a thread
|
for reporting a race condition in starting a thread
|
||||||
for implementing cDolbyRepacker for better handling of Dolby Digital PES packets
|
for implementing cDolbyRepacker for better handling of Dolby Digital PES packets
|
||||||
|
for extending some buffer sizes to allow handling HDTV streams
|
||||||
|
|
||||||
Richard Robson <richard_robson@beeb.net>
|
Richard Robson <richard_robson@beeb.net>
|
||||||
for reporting freezing replay if a timer starts while in Transfer Mode from the
|
for reporting freezing replay if a timer starts while in Transfer Mode from the
|
||||||
|
2
HISTORY
2
HISTORY
@ -3320,3 +3320,5 @@ Video Disk Recorder Revision History
|
|||||||
cRemux::cRemux()
|
cRemux::cRemux()
|
||||||
- Fixed a possible race condition in cDevice::Action() and cTSBuffer::Action()
|
- Fixed a possible race condition in cDevice::Action() and cTSBuffer::Action()
|
||||||
(thanks to Stefan Huelswitt).
|
(thanks to Stefan Huelswitt).
|
||||||
|
- Extended some buffer sizes to allow handling HDTV streams (thanks to Reinhard
|
||||||
|
Nissl).
|
||||||
|
@ -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: recording.h 1.33 2004/12/26 11:47:35 kls Exp $
|
* $Id: recording.h 1.34 2005/01/16 15:11:31 kls Exp $
|
||||||
*/
|
*/
|
||||||
|
|
||||||
#ifndef __RECORDING_H
|
#ifndef __RECORDING_H
|
||||||
@ -121,8 +121,8 @@ public:
|
|||||||
//XXX+
|
//XXX+
|
||||||
#define FRAMESPERSEC 25
|
#define FRAMESPERSEC 25
|
||||||
|
|
||||||
// The maximum size of a single frame:
|
// The maximum size of a single frame (up to HDTV 1920x1080):
|
||||||
#define MAXFRAMESIZE KILOBYTE(192)
|
#define MAXFRAMESIZE KILOBYTE(512)
|
||||||
|
|
||||||
// The maximum file size is limited by the range that can be covered
|
// The maximum file size is limited by the range that can be covered
|
||||||
// with 'int'. 4GB might be possible (if the range is considered
|
// with 'int'. 4GB might be possible (if the range is considered
|
||||||
|
4
remux.c
4
remux.c
@ -11,7 +11,7 @@
|
|||||||
* The cDolbyRepacker code was originally written by Reinhard Nissl <rnissl@gmx.de>,
|
* The cDolbyRepacker code was originally written by Reinhard Nissl <rnissl@gmx.de>,
|
||||||
* and adapted to the VDR coding style by Klaus.Schmidinger@cadsoft.de.
|
* and adapted to the VDR coding style by Klaus.Schmidinger@cadsoft.de.
|
||||||
*
|
*
|
||||||
* $Id: remux.c 1.25 2005/01/16 14:34:25 kls Exp $
|
* $Id: remux.c 1.26 2005/01/16 15:22:16 kls Exp $
|
||||||
*/
|
*/
|
||||||
|
|
||||||
#include "remux.h"
|
#include "remux.h"
|
||||||
@ -324,7 +324,7 @@ int cDolbyRepacker::BreakAt(const uchar *Data, int Count)
|
|||||||
#define ADAPT_FIELD 0x20
|
#define ADAPT_FIELD 0x20
|
||||||
|
|
||||||
#define MAX_PLENGTH 0xFFFF // the maximum PES packet length (theoretically)
|
#define MAX_PLENGTH 0xFFFF // the maximum PES packet length (theoretically)
|
||||||
#define MMAX_PLENGTH (8*MAX_PLENGTH) // some stations send PES packets that are extremely large, e.g. DVB-T in Finland
|
#define MMAX_PLENGTH (64*MAX_PLENGTH) // some stations send PES packets that are extremely large, e.g. DVB-T in Finland or HDTV 1920x1080
|
||||||
|
|
||||||
#define IPACKS 2048
|
#define IPACKS 2048
|
||||||
|
|
||||||
|
@ -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: transfer.c 1.23 2005/01/16 13:26:38 kls Exp $
|
* $Id: transfer.c 1.24 2005/01/16 15:12:58 kls Exp $
|
||||||
*/
|
*/
|
||||||
|
|
||||||
#include "transfer.h"
|
#include "transfer.h"
|
||||||
@ -80,7 +80,7 @@ void cTransfer::Action(void)
|
|||||||
//XXX To resolve this, the remuxer or PlayPes() should synchronize
|
//XXX To resolve this, the remuxer or PlayPes() should synchronize
|
||||||
//XXX audio with the video frames. 2004/09/09 Werner
|
//XXX audio with the video frames. 2004/09/09 Werner
|
||||||
if (!GotBufferReserve) {
|
if (!GotBufferReserve) {
|
||||||
if (ringBuffer->Available() < 3 * MAXFRAMESIZE / 2) {
|
if (ringBuffer->Available() < 3 * KILOBYTE(192) / 2) { // used to be MAXFRAMESIZE, but the HDTV value of KILOBYTE(512) is way too much here
|
||||||
cCondWait::SleepMs(20); // allow the buffer to collect some reserve
|
cCondWait::SleepMs(20); // allow the buffer to collect some reserve
|
||||||
continue;
|
continue;
|
||||||
}
|
}
|
||||||
|
Loading…
Reference in New Issue
Block a user