wtvenc: output third video pts in timestamp chunk (this is what Microsoft Windows Media Center expects)
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
This commit is contained in:
		
							parent
							
								
									0d9435048c
								
							
						
					
					
						commit
						3e65134326
					
				@ -84,7 +84,6 @@ typedef struct {
 | 
			
		||||
    WtvFile file[WTV_FILES];
 | 
			
		||||
    int64_t serial;         /** chunk serial number */
 | 
			
		||||
    int64_t last_chunk_pos; /** last chunk position */
 | 
			
		||||
    int64_t frame_nb;
 | 
			
		||||
 | 
			
		||||
    WtvChunkEntry index[MAX_NB_INDEX];
 | 
			
		||||
    int nb_index;
 | 
			
		||||
@ -374,19 +373,15 @@ static void write_timestamp(AVFormatContext *s, AVPacket *pkt)
 | 
			
		||||
    WtvContext  *wctx = s->priv_data;
 | 
			
		||||
    AVCodecContext *enc = s->streams[pkt->stream_index]->codec;
 | 
			
		||||
    int flag = 0;
 | 
			
		||||
    int64_t frame_number = 0;
 | 
			
		||||
 | 
			
		||||
    if (enc->codec_type == AVMEDIA_TYPE_VIDEO) {
 | 
			
		||||
        wctx->frame_nb++;
 | 
			
		||||
        frame_number = wctx->frame_nb;
 | 
			
		||||
        flag = pkt->flags & AV_PKT_FLAG_KEY ? 1 : 0;
 | 
			
		||||
    }
 | 
			
		||||
    write_chunk_header(s, &ff_timestamp_guid, 56, 0x40000000 | (INDEX_BASE + pkt->stream_index));
 | 
			
		||||
    write_pad(pb, 8);
 | 
			
		||||
    avio_wl64(pb, pkt->pts == AV_NOPTS_VALUE ? -1 : pkt->pts);
 | 
			
		||||
    avio_wl64(pb, pkt->pts == AV_NOPTS_VALUE ? -1 : pkt->pts);
 | 
			
		||||
 | 
			
		||||
    avio_wl64(pb, frame_number);
 | 
			
		||||
    avio_wl64(pb, pkt->pts == AV_NOPTS_VALUE ? -1 : pkt->pts);
 | 
			
		||||
    avio_wl64(pb, 0);
 | 
			
		||||
    avio_wl64(pb, flag);
 | 
			
		||||
    avio_wl64(pb, 0);
 | 
			
		||||
 | 
			
		||||
@ -1,3 +1,3 @@
 | 
			
		||||
accf6a5131e2eba81c9aa9fa8f0eb69a *./tests/data/lavf/lavf.wtv
 | 
			
		||||
dcb02f245dca4597704cbfc06e7eb543 *./tests/data/lavf/lavf.wtv
 | 
			
		||||
413696 ./tests/data/lavf/lavf.wtv
 | 
			
		||||
./tests/data/lavf/lavf.wtv CRC=0xcc2dc628
 | 
			
		||||
 | 
			
		||||
		Loading…
	
	
			
			x
			
			
		
	
		Reference in New Issue
	
	Block a user