mirror of
https://git.ffmpeg.org/ffmpeg.git
synced 2025-02-01 04:13:57 +00:00
xa: fix timestamp calculation
The packet duration is always 28 samples.
This commit is contained in:
parent
1d10afd581
commit
cd2ffb67ad
@ -38,7 +38,6 @@
|
||||
typedef struct MaxisXADemuxContext {
|
||||
uint32_t out_size;
|
||||
uint32_t sent_bytes;
|
||||
uint32_t audio_frame_counter;
|
||||
} MaxisXADemuxContext;
|
||||
|
||||
static int xa_probe(AVProbeData *p)
|
||||
@ -87,6 +86,7 @@ static int xa_read_header(AVFormatContext *s)
|
||||
st->codec->bits_per_coded_sample = avio_rl16(pb);
|
||||
|
||||
avpriv_set_pts_info(st, 64, 1, st->codec->sample_rate);
|
||||
st->start_time = 0;
|
||||
|
||||
return 0;
|
||||
}
|
||||
@ -111,9 +111,7 @@ static int xa_read_packet(AVFormatContext *s,
|
||||
|
||||
pkt->stream_index = st->index;
|
||||
xa->sent_bytes += packet_size;
|
||||
pkt->pts = xa->audio_frame_counter;
|
||||
/* 14 bytes Samples per channel with 2 samples per byte */
|
||||
xa->audio_frame_counter += 28 * st->codec->channels;
|
||||
pkt->duration = 28;
|
||||
|
||||
return ret;
|
||||
}
|
||||
|
@ -1,31 +1,31 @@
|
||||
#tb 0: 1/22050
|
||||
0, 0, 0, 0, 30, 0x51750711
|
||||
0, 56, 56, 0, 30, 0x9ca20c2a
|
||||
0, 112, 112, 0, 30, 0x7551081f
|
||||
0, 168, 168, 0, 30, 0x09540063
|
||||
0, 224, 224, 0, 30, 0x02c40018
|
||||
0, 280, 280, 0, 30, 0x0f6c0117
|
||||
0, 336, 336, 0, 30, 0x2aab0315
|
||||
0, 392, 392, 0, 30, 0x0e6d0117
|
||||
0, 448, 448, 0, 30, 0x04770036
|
||||
0, 504, 504, 0, 30, 0x939c090f
|
||||
0, 560, 560, 0, 30, 0xde511116
|
||||
0, 616, 616, 0, 30, 0x2f0f13f5
|
||||
0, 672, 672, 0, 30, 0x65bb0630
|
||||
0, 728, 728, 0, 30, 0x1f7a0333
|
||||
0, 784, 784, 0, 30, 0xa3d71008
|
||||
0, 840, 840, 0, 30, 0x69120801
|
||||
0, 896, 896, 0, 30, 0x1e7b0207
|
||||
0, 952, 952, 0, 30, 0x02c40018
|
||||
0, 1008, 1008, 0, 30, 0x0d050126
|
||||
0, 1064, 1064, 0, 30, 0x41c10333
|
||||
0, 1120, 1120, 0, 30, 0x16a10207
|
||||
0, 1176, 1176, 0, 30, 0x0f210207
|
||||
0, 1232, 1232, 0, 30, 0x4e4b073e
|
||||
0, 1288, 1288, 0, 30, 0xa6f20d1a
|
||||
0, 1344, 1344, 0, 30, 0xe1e40ff9
|
||||
0, 1400, 1400, 0, 30, 0x868b090f
|
||||
0, 1456, 1456, 0, 30, 0x8c85091e
|
||||
0, 1512, 1512, 0, 30, 0x5a21094b
|
||||
0, 1568, 1568, 0, 30, 0x993c0900
|
||||
0, 1624, 1624, 0, 30, 0x5b6b04e6
|
||||
0, 0, 0, 28, 30, 0x51750711
|
||||
0, 28, 28, 28, 30, 0x9ca20c2a
|
||||
0, 56, 56, 28, 30, 0x7551081f
|
||||
0, 84, 84, 28, 30, 0x09540063
|
||||
0, 112, 112, 28, 30, 0x02c40018
|
||||
0, 140, 140, 28, 30, 0x0f6c0117
|
||||
0, 168, 168, 28, 30, 0x2aab0315
|
||||
0, 196, 196, 28, 30, 0x0e6d0117
|
||||
0, 224, 224, 28, 30, 0x04770036
|
||||
0, 252, 252, 28, 30, 0x939c090f
|
||||
0, 280, 280, 28, 30, 0xde511116
|
||||
0, 308, 308, 28, 30, 0x2f0f13f5
|
||||
0, 336, 336, 28, 30, 0x65bb0630
|
||||
0, 364, 364, 28, 30, 0x1f7a0333
|
||||
0, 392, 392, 28, 30, 0xa3d71008
|
||||
0, 420, 420, 28, 30, 0x69120801
|
||||
0, 448, 448, 28, 30, 0x1e7b0207
|
||||
0, 476, 476, 28, 30, 0x02c40018
|
||||
0, 504, 504, 28, 30, 0x0d050126
|
||||
0, 532, 532, 28, 30, 0x41c10333
|
||||
0, 560, 560, 28, 30, 0x16a10207
|
||||
0, 588, 588, 28, 30, 0x0f210207
|
||||
0, 616, 616, 28, 30, 0x4e4b073e
|
||||
0, 644, 644, 28, 30, 0xa6f20d1a
|
||||
0, 672, 672, 28, 30, 0xe1e40ff9
|
||||
0, 700, 700, 28, 30, 0x868b090f
|
||||
0, 728, 728, 28, 30, 0x8c85091e
|
||||
0, 756, 756, 28, 30, 0x5a21094b
|
||||
0, 784, 784, 28, 30, 0x993c0900
|
||||
0, 812, 812, 28, 30, 0x5b6b04e6
|
||||
|
Loading…
Reference in New Issue
Block a user