Lines Matching refs:st
17 static int create_sink(Stream *st, AVFilterGraph *graph,
31 ret = avfilter_graph_create_filter(&st->sink,
36 ret = avfilter_link(f, idx, st->sink, 0);
47 Stream *streams = NULL, *st;
112 st = streams;
117 if ((ret = create_sink(st++, in_graph, f, j)) < 0)
122 av_assert0(st - streams == nb_streams);
131 st = &streams[i];
136 ret = avformat_alloc_output_context2(&st->mux, NULL, fmt, dev);
142 if (!(st->mux->oformat->flags & AVFMT_NOFILE)) {
143 ret = avio_open2(&st->mux->pb, st->mux->url, AVIO_FLAG_WRITE,
146 av_log(st->mux, AV_LOG_ERROR, "Failed to init output: %s\n",
157 st = &streams[i];
158 if (!(st->stream = avformat_new_stream(st->mux, NULL))) {
163 st->stream->codecpar->codec_type = av_buffersink_get_type(st->sink);
164 st->stream->time_base = av_buffersink_get_time_base(st->sink);
165 switch (av_buffersink_get_type(st->sink)) {
167 st->stream->codecpar->codec_id = AV_CODEC_ID_RAWVIDEO;
168 st->stream->avg_frame_rate =
169 st->stream-> r_frame_rate = av_buffersink_get_frame_rate(st->sink);
170 st->stream->codecpar->width = av_buffersink_get_w(st->sink);
171 st->stream->codecpar->height = av_buffersink_get_h(st->sink);
172 st->stream->codecpar->sample_aspect_ratio = av_buffersink_get_sample_aspect_ratio(st->sink);
173 st->stream->codecpar->format = av_buffersink_get_format(st->sink);
176 ret = av_buffersink_get_ch_layout(st->sink, &st->stream->codecpar->ch_layout);
179 st->stream->codecpar->sample_rate = av_buffersink_get_sample_rate(st->sink);
180 st->stream->codecpar->format = av_buffersink_get_format(st->sink);
181 st->stream->codecpar->codec_id = av_get_pcm_codec(st->stream->codecpar->format, -1);
190 st = &streams[i];
191 if ((ret = avformat_write_header(st->mux, NULL)) < 0) {
192 av_log(st->mux, AV_LOG_ERROR, "Failed to init output: %s\n",
200 st = &streams[i];
201 ret = av_write_uncoded_frame_query(st->mux, st->stream->index);
203 av_log(st->mux, AV_LOG_ERROR,
222 st = &streams[i];
229 ret = av_buffersink_get_frame_flags(st->sink, frame,
239 av_buffersink_get_time_base(st->sink),
240 st->stream->time_base);
241 ret = av_interleaved_write_uncoded_frame(st->mux,
242 st->stream->index,
246 av_log(st->mux, AV_LOG_ERROR,
256 st = &streams[i];
257 av_write_trailer(st->mux);
265 st = &streams[i];
266 if (st->mux) {
267 if (st->mux->pb)
268 avio_closep(&st->mux->pb);
269 avformat_free_context(st->mux);