Hi Thomas,
The patch is a tiny bit different for VDR 2.2.0 - in remux.c - see below
There's a small issue with audio types also:
Here, AAC (ADTS) per ISO/IEC 13818-7 or AAC (LATM) per ISO/IEC 14496-3 is regularly used for audio in HD broadcasts
- my suggestion is that these streams should be handled too.
For example, I transcode radio/audio to AAC in m4a or AAC_LATM in .ts files.
Arguably the newer ATSC, DTS, Dolby true HD... streams should be added too
(https://en.wikipedia.org/wiki/Program-specific_information#Elementary_stream_types)
For now my audioparser line looks like this, which works for both flavours of AAC, and they play on Kodi and VLC.
else if (type == 0x03 || type == 0x04 || type == 0x06 || type == 0x0F || type == 0x11) // MPEG2,4 AAC, AC3 audio
The original audio-only .ts (MP2 codec) actually doesn't play in VLC, but plays in ffplay.
Patch:
--- remux.c.orig 2016-06-30 14:16:52.530155071 +0100
+++ remux.c 2016-06-30 14:36:09.028232179 +0100
@@ -604,6 +604,7 @@
void cPatPmtParser::Reset(void)
{
+ completed = false;
pmtSize = 0;
patVersion = pmtVersion = -1;
pmtPids[0] = 0;
@@ -893,6 +894,7 @@
}
}
pmtVersion = Pmt.getVersionNumber();
+ completed = true;
}
else
esyslog("ERROR: can't parse PMT");
@@ -1464,7 +1466,7 @@
parser = new cMpeg2Parser;
else if (type == 0x1B)
parser = new cH264Parser;
- else if (type == 0x04 || type == 0x06) // MPEG audio or AC3 audio
+ else if (type == 0x03 || type == 0x04 || type == 0x06 || type == 0x0F || type == 0x11) // MPEG2,4 AAC, AC3 audio
parser = new cAudioParser;
else if (type != 0)
esyslog("ERROR: unknown stream type %d (PID %d) in frame detector", type, pid);
On 27/06/2016 06:46, Thomas Reufer wrote:
The patch is a tiny bit different for VDR 2.2.0 - in remux.c - see below
There's a small issue with audio types also:
Here, AAC (ADTS) per ISO/IEC 13818-7 or AAC (LATM) per ISO/IEC 14496-3 is regularly used for audio in HD broadcasts
- my suggestion is that these streams should be handled too.
For example, I transcode radio/audio to AAC in m4a or AAC_LATM in .ts files.
Arguably the newer ATSC, DTS, Dolby true HD... streams should be added too
(https://en.wikipedia.org/wiki/Program-specific_information#Elementary_stream_types)
For now my audioparser line looks like this, which works for both flavours of AAC, and they play on Kodi and VLC.
else if (type == 0x03 || type == 0x04 || type == 0x06 || type == 0x0F || type == 0x11) // MPEG2,4 AAC, AC3 audio
The original audio-only .ts (MP2 codec) actually doesn't play in VLC, but plays in ffplay.
Patch:
--- remux.c.orig 2016-06-30 14:16:52.530155071 +0100
+++ remux.c 2016-06-30 14:36:09.028232179 +0100
@@ -604,6 +604,7 @@
void cPatPmtParser::Reset(void)
{
+ completed = false;
pmtSize = 0;
patVersion = pmtVersion = -1;
pmtPids[0] = 0;
@@ -893,6 +894,7 @@
}
}
pmtVersion = Pmt.getVersionNumber();
+ completed = true;
}
else
esyslog("ERROR: can't parse PMT");
@@ -1464,7 +1466,7 @@
parser = new cMpeg2Parser;
else if (type == 0x1B)
parser = new cH264Parser;
- else if (type == 0x04 || type == 0x06) // MPEG audio or AC3 audio
+ else if (type == 0x03 || type == 0x04 || type == 0x06 || type == 0x0F || type == 0x11) // MPEG2,4 AAC, AC3 audio
parser = new cAudioParser;
else if (type != 0)
esyslog("ERROR: unknown stream type %d (PID %d) in frame detector", type, pid);
On 27/06/2016 06:46, Thomas Reufer wrote:
Hi Richard
I observed the same behavior two weeks ago when I wanted to replay an edited radio recording. Please find my proposed fix attached, maybe Klaus will take it into the next VDR developer release.
Regards,
Thomas
Quoting Richard F <lists@xxxxxxxxxxxxxxxxxxxxx>:
_______________________________________________ vdr mailing list vdr@xxxxxxxxxxx https://www.linuxtv.org/cgi-bin/mailman/listinfo/vdr