mirror of
https://github.com/FFmpeg/FFmpeg.git
synced 2025-03-28 12:32:17 +02:00
avformat/mpegtsenc: remove section_write_packet forward declaration
Signed-off-by: Marton Balint <cus@passwd.hu>
This commit is contained in:
parent
47ea654bd8
commit
9de40bf624
@ -717,7 +717,30 @@ invalid:
|
|||||||
return 0;
|
return 0;
|
||||||
}
|
}
|
||||||
|
|
||||||
static void section_write_packet(MpegTSSection *s, const uint8_t *packet);
|
static int64_t get_pcr(const MpegTSWrite *ts, AVIOContext *pb)
|
||||||
|
{
|
||||||
|
return av_rescale(avio_tell(pb) + 11, 8 * PCR_TIME_BASE, ts->mux_rate) +
|
||||||
|
ts->first_pcr;
|
||||||
|
}
|
||||||
|
|
||||||
|
static void mpegts_prefix_m2ts_header(AVFormatContext *s)
|
||||||
|
{
|
||||||
|
MpegTSWrite *ts = s->priv_data;
|
||||||
|
if (ts->m2ts_mode) {
|
||||||
|
int64_t pcr = get_pcr(s->priv_data, s->pb);
|
||||||
|
uint32_t tp_extra_header = pcr % 0x3fffffff;
|
||||||
|
tp_extra_header = AV_RB32(&tp_extra_header);
|
||||||
|
avio_write(s->pb, (unsigned char *) &tp_extra_header,
|
||||||
|
sizeof(tp_extra_header));
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
static void section_write_packet(MpegTSSection *s, const uint8_t *packet)
|
||||||
|
{
|
||||||
|
AVFormatContext *ctx = s->opaque;
|
||||||
|
mpegts_prefix_m2ts_header(ctx);
|
||||||
|
avio_write(ctx->pb, packet, TS_PACKET_SIZE);
|
||||||
|
}
|
||||||
|
|
||||||
static MpegTSService *mpegts_add_service(AVFormatContext *s, int sid,
|
static MpegTSService *mpegts_add_service(AVFormatContext *s, int sid,
|
||||||
const AVDictionary *metadata,
|
const AVDictionary *metadata,
|
||||||
@ -762,31 +785,6 @@ fail:
|
|||||||
return NULL;
|
return NULL;
|
||||||
}
|
}
|
||||||
|
|
||||||
static int64_t get_pcr(const MpegTSWrite *ts, AVIOContext *pb)
|
|
||||||
{
|
|
||||||
return av_rescale(avio_tell(pb) + 11, 8 * PCR_TIME_BASE, ts->mux_rate) +
|
|
||||||
ts->first_pcr;
|
|
||||||
}
|
|
||||||
|
|
||||||
static void mpegts_prefix_m2ts_header(AVFormatContext *s)
|
|
||||||
{
|
|
||||||
MpegTSWrite *ts = s->priv_data;
|
|
||||||
if (ts->m2ts_mode) {
|
|
||||||
int64_t pcr = get_pcr(s->priv_data, s->pb);
|
|
||||||
uint32_t tp_extra_header = pcr % 0x3fffffff;
|
|
||||||
tp_extra_header = AV_RB32(&tp_extra_header);
|
|
||||||
avio_write(s->pb, (unsigned char *) &tp_extra_header,
|
|
||||||
sizeof(tp_extra_header));
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
static void section_write_packet(MpegTSSection *s, const uint8_t *packet)
|
|
||||||
{
|
|
||||||
AVFormatContext *ctx = s->opaque;
|
|
||||||
mpegts_prefix_m2ts_header(ctx);
|
|
||||||
avio_write(ctx->pb, packet, TS_PACKET_SIZE);
|
|
||||||
}
|
|
||||||
|
|
||||||
static void enable_pcr_generation_for_stream(AVFormatContext *s, AVStream *pcr_st)
|
static void enable_pcr_generation_for_stream(AVFormatContext *s, AVStream *pcr_st)
|
||||||
{
|
{
|
||||||
MpegTSWrite *ts = s->priv_data;
|
MpegTSWrite *ts = s->priv_data;
|
||||||
|
Loading…
x
Reference in New Issue
Block a user