summaryrefslogtreecommitdiff
path: root/libavformat/flvdec.c
diff options
context:
space:
mode:
authorSteven Liu <lingjiujianke@gmail.com>2014-09-04 20:23:19 +0800
committerMichael Niedermayer <michaelni@gmx.at>2014-09-04 14:54:23 +0200
commit03efd7308289a57fd60df96b2f79e7522dfe844e (patch)
treec0db25f4e384582dd9a3e77ba71b83fe95282bb6 /libavformat/flvdec.c
parentfe8f4c71e30569fe0ba7455e30d21f19eab3f908 (diff)
avformat/flvdec: read the correct bits into the tag type
from the flv spec, the flvtag define the tagtype as one byte, the spec desc is: Reserved UB[2] Reserved for FMS, should be 0 Filter UB[1] Indicates if packets are filtered. 0 = No pre-processing required. 1 = Pre-processing (such as decryption) of the packet is required before it can be rendered. Shall be 0 in unencrypted files, and 1 for encrypted tags. See Annex F. FLV Encryption for the use of filters. TagType UB[5] Type of contents in this tag. The following types are defined: 8 = audio 9 = video 18 = script data Signed-off-by: Steven Liu <qi.liu@chinacache.com> Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
Diffstat (limited to 'libavformat/flvdec.c')
-rw-r--r--libavformat/flvdec.c2
1 files changed, 1 insertions, 1 deletions
diff --git a/libavformat/flvdec.c b/libavformat/flvdec.c
index 8d9ed8b24d..12d25b20ae 100644
--- a/libavformat/flvdec.c
+++ b/libavformat/flvdec.c
@@ -777,7 +777,7 @@ static int flv_read_packet(AVFormatContext *s, AVPacket *pkt)
/* pkt size is repeated at end. skip it */
for (;; avio_skip(s->pb, 4)) {
pos = avio_tell(s->pb);
- type = avio_r8(s->pb);
+ type = (avio_r8(s->pb) & 0x1F);
size = avio_rb24(s->pb);
dts = avio_rb24(s->pb);
dts |= avio_r8(s->pb) << 24;