|
|
|
@ -1858,6 +1858,10 @@ static int configure_video_filters(AVFilterGraph *graph, VideoState *is, const c |
|
|
|
|
const AVDictionaryEntry *e = NULL; |
|
|
|
|
int nb_pix_fmts = 0; |
|
|
|
|
int i, j; |
|
|
|
|
AVBufferSrcParameters *par = av_buffersrc_parameters_alloc(); |
|
|
|
|
|
|
|
|
|
if (!par) |
|
|
|
|
return AVERROR(ENOMEM); |
|
|
|
|
|
|
|
|
|
for (i = 0; i < renderer_info.num_texture_formats; i++) { |
|
|
|
|
for (j = 0; j < FF_ARRAY_ELEMS(sdl_texture_format_map) - 1; j++) { |
|
|
|
@ -1893,6 +1897,10 @@ static int configure_video_filters(AVFilterGraph *graph, VideoState *is, const c |
|
|
|
|
"ffplay_buffer", buffersrc_args, NULL, |
|
|
|
|
graph)) < 0) |
|
|
|
|
goto fail; |
|
|
|
|
par->hw_frames_ctx = frame->hw_frames_ctx; |
|
|
|
|
ret = av_buffersrc_parameters_set(filt_src, par); |
|
|
|
|
if (ret < 0) |
|
|
|
|
goto fail; |
|
|
|
|
|
|
|
|
|
ret = avfilter_graph_create_filter(&filt_out, |
|
|
|
|
avfilter_get_by_name("buffersink"), |
|
|
|
@ -1959,6 +1967,7 @@ static int configure_video_filters(AVFilterGraph *graph, VideoState *is, const c |
|
|
|
|
is->out_video_filter = filt_out; |
|
|
|
|
|
|
|
|
|
fail: |
|
|
|
|
av_freep(&par); |
|
|
|
|
return ret; |
|
|
|
|
} |
|
|
|
|
|
|
|
|
|