mirror of https://git.ffmpeg.org/ffmpeg.git
avconv: add stream-global side data to the first demuxed packet
This commit is contained in:
parent
4a0f665143
commit
59444c76e6
17
avconv.c
17
avconv.c
|
@ -2223,9 +2223,26 @@ static int process_input(void)
|
||||||
goto discard_packet;
|
goto discard_packet;
|
||||||
|
|
||||||
ist = input_streams[ifile->ist_index + pkt.stream_index];
|
ist = input_streams[ifile->ist_index + pkt.stream_index];
|
||||||
|
ist->nb_packets++;
|
||||||
if (ist->discard)
|
if (ist->discard)
|
||||||
goto discard_packet;
|
goto discard_packet;
|
||||||
|
|
||||||
|
/* add the stream-global side data to the first packet */
|
||||||
|
if (ist->nb_packets == 1)
|
||||||
|
for (i = 0; i < ist->st->nb_side_data; i++) {
|
||||||
|
AVPacketSideData *src_sd = &ist->st->side_data[i];
|
||||||
|
uint8_t *dst_data;
|
||||||
|
|
||||||
|
if (av_packet_get_side_data(&pkt, src_sd->type, NULL))
|
||||||
|
continue;
|
||||||
|
|
||||||
|
dst_data = av_packet_new_side_data(&pkt, src_sd->type, src_sd->size);
|
||||||
|
if (!dst_data)
|
||||||
|
exit_program(1);
|
||||||
|
|
||||||
|
memcpy(dst_data, src_sd->data, src_sd->size);
|
||||||
|
}
|
||||||
|
|
||||||
if (pkt.dts != AV_NOPTS_VALUE)
|
if (pkt.dts != AV_NOPTS_VALUE)
|
||||||
pkt.dts += av_rescale_q(ifile->ts_offset, AV_TIME_BASE_Q, ist->st->time_base);
|
pkt.dts += av_rescale_q(ifile->ts_offset, AV_TIME_BASE_Q, ist->st->time_base);
|
||||||
if (pkt.pts != AV_NOPTS_VALUE)
|
if (pkt.pts != AV_NOPTS_VALUE)
|
||||||
|
|
3
avconv.h
3
avconv.h
|
@ -233,6 +233,9 @@ typedef struct InputStream {
|
||||||
AVDictionary *opts;
|
AVDictionary *opts;
|
||||||
AVRational framerate; /* framerate forced with -r */
|
AVRational framerate; /* framerate forced with -r */
|
||||||
|
|
||||||
|
/* number of packets successfully read for this stream */
|
||||||
|
uint64_t nb_packets;
|
||||||
|
|
||||||
int resample_height;
|
int resample_height;
|
||||||
int resample_width;
|
int resample_width;
|
||||||
int resample_pix_fmt;
|
int resample_pix_fmt;
|
||||||
|
|
Loading…
Reference in New Issue