diff options
author | Christian Gmeiner <christian.gmeiner@gmail.com> | 2010-05-10 16:06:28 +0200 |
---|---|---|
committer | Christian Gmeiner <christian.gmeiner@gmail.com> | 2010-05-10 16:06:28 +0200 |
commit | f6eaf45450a472c0a2ee838ec3568dd61055442b (patch) | |
tree | 65b2d3aff4dd388961dfb10257ba0621d55a8258 | |
parent | 4e4fab2b42b96857f63ee41ba09566e34980121e (diff) | |
download | vdr-plugin-dxr3-f6eaf45450a472c0a2ee838ec3568dd61055442b.tar.gz vdr-plugin-dxr3-f6eaf45450a472c0a2ee838ec3568dd61055442b.tar.bz2 |
keep track of current audio pts value
-rw-r--r-- | dxr3device.c | 8 | ||||
-rw-r--r-- | dxr3device.h | 1 |
2 files changed, 9 insertions, 0 deletions
diff --git a/dxr3device.c b/dxr3device.c index 938eac6..7c8b8fa 100644 --- a/dxr3device.c +++ b/dxr3device.c @@ -279,6 +279,14 @@ int cDxr3Device::PlayAudio(const uchar *Data, int Length, uchar Id) return Length; } + uint32_t pts = frame.pts(); + + if (pts == 0) { + pts = aPts; + } else { + aPts = pts; + } + bool isAc3 = ((Id & 0xF0) == 0x80) || Id == 0xbd; if (!isAc3) { diff --git a/dxr3device.h b/dxr3device.h index 59fe5ba..c4c0402 100644 --- a/dxr3device.h +++ b/dxr3device.h @@ -134,6 +134,7 @@ private: int fdSpu; uint32_t vPts; + uint32_t aPts; bool scrSet; int playCount; |