Lines Matching defs:ts_st

350     MpegTSWriteStream *ts_st = st->priv_data;
437 av_log_once(s, AV_LOG_WARNING, AV_LOG_DEBUG, &ts_st->data_st_warning,
451 MpegTSWriteStream *ts_st = st->priv_data;
491 av_log_once(s, AV_LOG_WARNING, AV_LOG_DEBUG, &ts_st->data_st_warning,
530 MpegTSWriteStream *ts_st = st->priv_data;
558 put16(&q, 0xe000 | ts_st->pid);
584 DVBAC3Descriptor *dvb_ac3_desc = ts_st->dvb_ac3_desc;
1041 MpegTSWriteStream *ts_st = pcr_st->priv_data;
1045 ts_st->pcr_period = av_rescale(pcr_period_ms, PCR_TIME_BASE, 1000);
1060 ts_st->pcr_period = frame_period * (PCR_TIME_BASE / 10 / frame_period);
1062 ts_st->pcr_period = 1;
1066 ts_st->last_pcr = ts->first_pcr - ts_st->pcr_period;
1089 MpegTSWriteStream *ts_st = pcr_st->priv_data;
1090 service->pcr_pid = ts_st->pid;
1093 service->sid, service->pcr_pid, av_rescale(ts_st->pcr_period, 1000, PCR_TIME_BASE));
1170 MpegTSWriteStream *ts_st;
1172 ts_st = av_mallocz(sizeof(MpegTSWriteStream));
1173 if (!ts_st) {
1176 st->priv_data = ts_st;
1180 ts_st->payload = av_mallocz(ts->pes_payload_size);
1181 if (!ts_st->payload) {
1191 ts_st->pid = ts->m2ts_video_pid++;
1194 ts_st->pid = ts->m2ts_audio_pid++;
1199 ts_st->pid = ts->m2ts_pgssub_pid++;
1202 ts_st->pid = ts->m2ts_textsub_pid++;
1211 ts_st->pid < 16) {
1216 ts_st->pid = ts->start_pid + i;
1219 ts_st->pid = st->id;
1221 if (ts_st->pid >= 0x1FFF) {
1232 if (ts_st->pid == ts->services[j]->pmt.pid) {
1233 av_log(s, AV_LOG_ERROR, "PID %d cannot be both elementary and PMT PID\n", ts_st->pid);
1239 if (ts_st_prev->pid == ts_st->pid) {
1240 av_log(s, AV_LOG_ERROR, "Duplicate stream id %d\n", ts_st->pid);
1244 ts_st->payload_pts = AV_NOPTS_VALUE;
1245 ts_st->payload_dts = AV_NOPTS_VALUE;
1246 ts_st->cc = 15;
1247 ts_st->discontinuity = ts->flags & MPEGTS_FLAG_DISCONT;
1251 ts_st->amux = avformat_alloc_context();
1252 if (!ts_st->amux) {
1255 ts_st->amux->oformat =
1258 if (!ts_st->amux->oformat) {
1261 if (!(ast = avformat_new_stream(ts_st->amux, NULL))) {
1268 ret = avformat_write_header(ts_st->amux, NULL);
1273 ts_st->opus_pending_trim_start = st->codecpar->initial_padding * 48000 / st->codecpar->sample_rate;
1379 MpegTSWriteStream *ts_st = st->priv_data;
1385 *q++ = ts_st->pid >> 8;
1386 *q++ = ts_st->pid;
1387 *q++ = 0x20 | ts_st->cc; /* Adaptation only */
1391 if (ts_st->discontinuity) {
1393 ts_st->discontinuity = 0;
1489 MpegTSWriteStream *ts_st = st->priv_data;
1499 int force_pat = st->codecpar->codec_type == AVMEDIA_TYPE_VIDEO && key && !ts_st->prev_payload_key;
1503 av_assert0(ts_st->payload != buf || st->codecpar->codec_type != AVMEDIA_TYPE_VIDEO);
1564 } else if (ts_st->pcr_period && pcr != AV_NOPTS_VALUE) {
1565 if (pcr - ts_st->last_pcr >= ts_st->pcr_period && is_start) {
1566 ts_st->last_pcr = FFMAX(pcr - ts_st->pcr_period, ts_st->last_pcr + ts_st->pcr_period);
1574 val = ts_st->pid >> 8;
1580 *q++ = ts_st->pid;
1581 ts_st->cc = ts_st->cc + 1 & 0xf;
1582 *q++ = 0x10 | ts_st->cc; // payload indicator + CC
1583 if (ts_st->discontinuity) {
1586 ts_st->discontinuity = 0;
1591 if (ts_st->pcr_period)
1772 ts_st->prev_payload_key = key;
1866 MpegTSWriteStream *ts_st = st->priv_data;
1893 if (!ts_st->first_timestamp_checked && (pts == AV_NOPTS_VALUE || dts == AV_NOPTS_VALUE)) {
1897 ts_st->first_timestamp_checked = 1;
1941 if (!ts_st->amux) {
1949 pkt2->dts = av_rescale_q(pkt->dts, st->time_base, ts_st->amux->streams[0]->time_base);
1951 ret = avio_open_dyn_buf(&ts_st->amux->pb);
1955 ret = av_write_frame(ts_st->amux, pkt2);
1957 ffio_free_dyn_buf(&ts_st->amux->pb);
1960 size = avio_close_dyn_buf(ts_st->amux->pb, &data);
1961 ts_st->amux->pb = NULL;
2024 if (ts_st->opus_pending_trim_start)
2035 if (ts_st->opus_pending_trim_start)
2050 if (ts_st->opus_pending_trim_start) {
2051 trim_start = FFMIN(ts_st->opus_pending_trim_start, opus_samples);
2054 ts_st->opus_pending_trim_start -= trim_start;
2070 } else if (st->codecpar->codec_id == AV_CODEC_ID_AC3 && !ts_st->dvb_ac3_desc) {
2124 ts_st->dvb_ac3_desc = dvb_ac3_desc;
2133 if (ts_st->payload_size && (ts_st->payload_size + size > ts->pes_payload_size ||
2134 (dts != AV_NOPTS_VALUE && ts_st->payload_dts != AV_NOPTS_VALUE &&
2135 dts - ts_st->payload_dts >= max_audio_delay) ||
2136 ts_st->opus_queued_samples + opus_samples >= 5760 /* 120ms */)) {
2137 mpegts_write_pes(s, st, ts_st->payload, ts_st->payload_size,
2138 ts_st->payload_pts, ts_st->payload_dts,
2139 ts_st->payload_flags & AV_PKT_FLAG_KEY, stream_id);
2140 ts_st->payload_size = 0;
2141 ts_st->opus_queued_samples = 0;
2145 av_assert0(!ts_st->payload_size);
2149 ts_st->opus_queued_samples = 0;
2154 if (!ts_st->payload_size) {
2155 ts_st->payload_pts = pts;
2156 ts_st->payload_dts = dts;
2157 ts_st->payload_flags = pkt->flags;
2160 memcpy(ts_st->payload + ts_st->payload_size, buf, size);
2161 ts_st->payload_size += size;
2162 ts_st->opus_queued_samples += opus_samples;
2177 MpegTSWriteStream *ts_st = st->priv_data;
2178 if (ts_st->payload_size > 0) {
2179 mpegts_write_pes(s, st, ts_st->payload, ts_st->payload_size,
2180 ts_st->payload_pts, ts_st->payload_dts,
2181 ts_st->payload_flags & AV_PKT_FLAG_KEY, -1);
2182 ts_st->payload_size = 0;
2183 ts_st->opus_queued_samples = 0;
2220 MpegTSWriteStream *ts_st = st->priv_data;
2221 if (ts_st) {
2222 av_freep(&ts_st->dvb_ac3_desc);
2223 av_freep(&ts_st->payload);
2224 if (ts_st->amux) {
2225 avformat_free_context(ts_st->amux);
2226 ts_st->amux = NULL;