mirror of
https://github.com/FFmpeg/FFmpeg.git
synced 2024-12-23 12:43:46 +02:00
flv: clarify use of video info/cmd frame.
Also add generated key frame in the enum, and doxycomment the existing ones. Descriptions are directly taken from the public specifications.
This commit is contained in:
parent
30f2d97afe
commit
9dd649c004
@ -110,9 +110,11 @@ enum {
|
|||||||
};
|
};
|
||||||
|
|
||||||
enum {
|
enum {
|
||||||
FLV_FRAME_KEY = 1 << FLV_VIDEO_FRAMETYPE_OFFSET,
|
FLV_FRAME_KEY = 1 << FLV_VIDEO_FRAMETYPE_OFFSET, ///< key frame (for AVC, a seekable frame)
|
||||||
FLV_FRAME_INTER = 2 << FLV_VIDEO_FRAMETYPE_OFFSET,
|
FLV_FRAME_INTER = 2 << FLV_VIDEO_FRAMETYPE_OFFSET, ///< inter frame (for AVC, a non-seekable frame)
|
||||||
FLV_FRAME_DISP_INTER = 3 << FLV_VIDEO_FRAMETYPE_OFFSET,
|
FLV_FRAME_DISP_INTER = 3 << FLV_VIDEO_FRAMETYPE_OFFSET, ///< disposable inter frame (H.263 only)
|
||||||
|
FLV_FRAME_GENERATED_KEY = 4 << FLV_VIDEO_FRAMETYPE_OFFSET, ///< generated key frame (reserved for server use only)
|
||||||
|
FLV_FRAME_VIDEO_INFO_CMD = 5 << FLV_VIDEO_FRAMETYPE_OFFSET, ///< video info/command frame
|
||||||
};
|
};
|
||||||
|
|
||||||
typedef enum {
|
typedef enum {
|
||||||
|
@ -518,7 +518,7 @@ static int flv_read_packet(AVFormatContext *s, AVPacket *pkt)
|
|||||||
stream_type=FLV_STREAM_TYPE_VIDEO;
|
stream_type=FLV_STREAM_TYPE_VIDEO;
|
||||||
flags = avio_r8(s->pb);
|
flags = avio_r8(s->pb);
|
||||||
size--;
|
size--;
|
||||||
if ((flags & 0xf0) == 0x50) /* video info / command frame */
|
if ((flags & FLV_VIDEO_FRAMETYPE_MASK) == FLV_FRAME_VIDEO_INFO_CMD)
|
||||||
goto skip;
|
goto skip;
|
||||||
} else if (type == FLV_TAG_TYPE_META) {
|
} else if (type == FLV_TAG_TYPE_META) {
|
||||||
if (size > 13+1+4 && dts == 0) { // Header-type metadata stuff
|
if (size > 13+1+4 && dts == 0) { // Header-type metadata stuff
|
||||||
|
Loading…
Reference in New Issue
Block a user