Revision e1a794b2

View differences:

libavformat/oggdec.c
377 377
    }
378 378

  
379 379
    if (os->header > -1 && os->seq > os->header){
380
        os->pflags = 0;
380 381
        if (os->codec && os->codec->packet)
381 382
            os->codec->packet (s, idx);
382 383
        if (str)
......
525 526
        os->lastgp = -1;
526 527
    }
527 528

  
529
    pkt->flags = os->pflags;
530

  
528 531
    return psize;
529 532
}
530 533

  
libavformat/oggdec.h
42 42
    unsigned int bufpos;
43 43
    unsigned int pstart;
44 44
    unsigned int psize;
45
    unsigned int pflags;
45 46
    uint32_t serial;
46 47
    uint32_t seq;
47 48
    uint64_t granule, lastgp;
libavformat/oggparseogm.c
134 134
    uint8_t *p = os->buf + os->pstart;
135 135
    int lb;
136 136

  
137
    if(*p & 8)
138
        os->pflags |= PKT_FLAG_KEY;
139

  
137 140
    lb = ((*p & 2) << 1) | ((*p >> 6) & 3);
138 141
    os->pstart += lb + 1;
139 142
    os->psize -= lb + 1;
libavformat/oggparsetheora.c
124 124
    uint64_t iframe = gp >> thp->gpshift;
125 125
    uint64_t pframe = gp & thp->gpmask;
126 126

  
127
    if(!pframe)
128
        os->pflags |= PKT_FLAG_KEY;
129

  
127 130
    return iframe + pframe;
128 131
}
129 132

  

Also available in: Unified diff