mirror of
https://github.com/ossrs/srs.git
synced 2025-03-09 15:49:59 +00:00
fix the bug of h.264 bit stream demux.
This commit is contained in:
parent
3fcc26a499
commit
6e2d756e1b
2 changed files with 8 additions and 1 deletions
|
@ -876,6 +876,13 @@ int SrsAvcAacCodec::avc_demux_sps()
|
||||||
|
|
||||||
// XX 00 00 03 XX, the 03 byte should be drop.
|
// XX 00 00 03 XX, the 03 byte should be drop.
|
||||||
if (nb_rbsp > 2 && rbsp[nb_rbsp - 2] == 0 && rbsp[nb_rbsp - 1] == 0 && rbsp[nb_rbsp] == 3) {
|
if (nb_rbsp > 2 && rbsp[nb_rbsp - 2] == 0 && rbsp[nb_rbsp - 1] == 0 && rbsp[nb_rbsp] == 3) {
|
||||||
|
// read 1byte more.
|
||||||
|
if (stream.empty()) {
|
||||||
|
break;
|
||||||
|
}
|
||||||
|
rbsp[nb_rbsp] = stream.read_1bytes();
|
||||||
|
nb_rbsp++;
|
||||||
|
|
||||||
continue;
|
continue;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
|
@ -73,7 +73,7 @@ int srs_avc_nalu_read_uev(SrsBitStream* stream, int32_t& v)
|
||||||
|
|
||||||
v = (1 << leadingZeroBits) - 1;
|
v = (1 << leadingZeroBits) - 1;
|
||||||
for (int i = 0; i < leadingZeroBits; i++) {
|
for (int i = 0; i < leadingZeroBits; i++) {
|
||||||
int64_t b = stream->read_bit();
|
int32_t b = stream->read_bit();
|
||||||
v += b << (leadingZeroBits - 1);
|
v += b << (leadingZeroBits - 1);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
Loading…
Add table
Add a link
Reference in a new issue