mirror of
https://git.ffmpeg.org/ffmpeg.git
synced 2024-12-11 17:55:21 +00:00
Merge commit 'abda15a990527557c20848f6ca2f82eb85e76dc9'
* commit 'abda15a990527557c20848f6ca2f82eb85e76dc9': cdg: set the keyframe flag on the first packet Merged-by: Michael Niedermayer <michaelni@gmx.at>
This commit is contained in:
commit
714d9bd6ee
@ -26,6 +26,10 @@
|
||||
#define CDG_COMMAND 0x09
|
||||
#define CDG_MASK 0x3F
|
||||
|
||||
typedef struct CDGContext {
|
||||
int got_first_packet;
|
||||
} CDGContext;
|
||||
|
||||
static int read_header(AVFormatContext *s)
|
||||
{
|
||||
AVStream *vst;
|
||||
@ -50,6 +54,7 @@ static int read_header(AVFormatContext *s)
|
||||
|
||||
static int read_packet(AVFormatContext *s, AVPacket *pkt)
|
||||
{
|
||||
CDGContext *priv = s->priv_data;
|
||||
int ret;
|
||||
|
||||
while (1) {
|
||||
@ -59,6 +64,11 @@ static int read_packet(AVFormatContext *s, AVPacket *pkt)
|
||||
av_free_packet(pkt);
|
||||
}
|
||||
|
||||
if (!priv->got_first_packet) {
|
||||
pkt->flags |= AV_PKT_FLAG_KEY;
|
||||
priv->got_first_packet = 1;
|
||||
}
|
||||
|
||||
pkt->stream_index = 0;
|
||||
pkt->dts=
|
||||
pkt->pts= pkt->pos / CDG_PACKET_SIZE;
|
||||
@ -72,6 +82,7 @@ static int read_packet(AVFormatContext *s, AVPacket *pkt)
|
||||
AVInputFormat ff_cdg_demuxer = {
|
||||
.name = "cdg",
|
||||
.long_name = NULL_IF_CONFIG_SMALL("CD Graphics"),
|
||||
.priv_data_size = sizeof(CDGContext),
|
||||
.read_header = read_header,
|
||||
.read_packet = read_packet,
|
||||
.flags = AVFMT_GENERIC_INDEX,
|
||||
|
Loading…
Reference in New Issue
Block a user