mirror of
https://github.com/xenia-project/FFmpeg.git
synced 2024-12-02 16:46:48 +00:00
mpegdemux: move private stream 1 handling out of mpegps_read_pes_header
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
This commit is contained in:
parent
afa6afcc9f
commit
ce7cf600be
@ -349,18 +349,6 @@ static int mpegps_read_pes_header(AVFormatContext *s,
|
||||
if (startcode == PRIVATE_STREAM_1) {
|
||||
startcode = avio_r8(s->pb);
|
||||
len--;
|
||||
if (startcode >= 0x80 && startcode <= 0xcf) {
|
||||
/* audio: skip header */
|
||||
avio_r8(s->pb);
|
||||
avio_r8(s->pb);
|
||||
avio_r8(s->pb);
|
||||
len -= 3;
|
||||
if (startcode >= 0xb0 && startcode <= 0xbf) {
|
||||
/* MLP/TrueHD audio has a 4-byte header */
|
||||
avio_r8(s->pb);
|
||||
len--;
|
||||
}
|
||||
}
|
||||
}
|
||||
if(len<0)
|
||||
goto error_redo;
|
||||
@ -397,6 +385,22 @@ static int mpegps_read_packet(AVFormatContext *s,
|
||||
if (len < 0)
|
||||
return len;
|
||||
|
||||
if (startcode >= 0x80 && startcode <= 0xcf) {
|
||||
if(len < 4)
|
||||
goto skip;
|
||||
|
||||
/* audio: skip header */
|
||||
avio_r8(s->pb);
|
||||
avio_r8(s->pb);
|
||||
avio_r8(s->pb);
|
||||
len -= 3;
|
||||
if (startcode >= 0xb0 && startcode <= 0xbf) {
|
||||
/* MLP/TrueHD audio has a 4-byte header */
|
||||
avio_r8(s->pb);
|
||||
len--;
|
||||
}
|
||||
}
|
||||
|
||||
/* now find stream */
|
||||
for(i=0;i<s->nb_streams;i++) {
|
||||
st = s->streams[i];
|
||||
|
Loading…
Reference in New Issue
Block a user