| 2088 | } |
| 2089 | |
| 2090 | static av_cold int encode_end(AVCodecContext *avctx) |
| 2091 | { |
| 2092 | SnowEncContext *const enc = avctx->priv_data; |
| 2093 | SnowContext *const s = &enc->com; |
| 2094 | |
| 2095 | ff_snow_common_end(s); |
| 2096 | ff_rate_control_uninit(&enc->m.rc_context); |
| 2097 | av_frame_free(&s->input_picture); |
| 2098 | |
| 2099 | for (int i = 0; i < MAX_REF_FRAMES; i++) { |
| 2100 | av_freep(&s->ref_mvs[i]); |
| 2101 | av_freep(&s->ref_scores[i]); |
| 2102 | } |
| 2103 | |
| 2104 | enc->m.s.me.temp = NULL; |
| 2105 | av_freep(&enc->m.s.me.scratchpad); |
| 2106 | av_freep(&enc->emu_edge_buffer); |
| 2107 | |
| 2108 | av_freep(&avctx->stats_out); |
| 2109 | |
| 2110 | return 0; |
| 2111 | } |
| 2112 | |
| 2113 | #define OFFSET(x) offsetof(SnowEncContext, x) |
| 2114 | #define VE AV_OPT_FLAG_VIDEO_PARAM | AV_OPT_FLAG_ENCODING_PARAM |
nothing calls this directly
no test coverage detected