History

avfilter/avfilter: Add numbers of (in|out)pads directly to AVFilter

Up until now, an AVFilter's lists of input and output AVFilterPads were terminated by a sentinel and the only way to get the length of these lists was by using avfilter_pad_count(). This has two drawbacks: first, sizeof(AVFilterPad) is not negligible (i.e. 64B on 64bit systems); second, getting the size involves a function call instead of just reading the data. This commit therefore changes this. The sentinels are removed and new private fields nb_inputs and nb_outputs are added to AVFilter that contain the number of elements of the respective AVFilterPad array. Given that AVFilter.(in|out)puts are the only arrays of zero-terminated AVFilterPads an API user has access to (AVFilterContext.(in|out)put_pads are not zero-terminated and they already have a size field) the argument to avfilter_pad_count() is always one of these lists, so it just has to find the filter the list belongs to and read said number. This is slower than before, but a replacement function that just reads the internal numbers that users are expected to switch to will be added soon; and furthermore, avfilter_pad_count() is probably never called in hot loops anyway. This saves about 49KiB from the binary; notice that these sentinels are not in .bss despite being zeroed: they are in .data.rel.ro due to the non-sentinels.

Andreas Rheinhardt committed 5 years ago

Commit 8be701d1 parent d53d48c389 files · +906 −1696Browse files

Unified · Split

389 files
  1. libavfilter/aeval.c +3 −6
  2. libavfilter/af_acontrast.c +2 −4
  3. libavfilter/af_acopy.c +2 −4
  4. libavfilter/af_acrossover.c +1 −2
  5. libavfilter/af_acrusher.c +2 −4
  6. libavfilter/af_adeclick.c +4 −6
  7. libavfilter/af_adelay.c +2 −4
  8. libavfilter/af_adenorm.c +2 −4
  9. libavfilter/af_aderivative.c +4 −6
  10. libavfilter/af_aecho.c +2 −4
  11. libavfilter/af_aemphasis.c +2 −4
  12. libavfilter/af_aexciter.c +2 −4
  13. libavfilter/af_afade.c +4 −8
  14. libavfilter/af_afftdn.c +2 −4
  15. libavfilter/af_afftfilt.c +2 −4
  16. libavfilter/af_aformat.c +2 −4
  17. libavfilter/af_afreqshift.c +4 −6
  18. libavfilter/af_afwtdn.c +2 −4
  19. libavfilter/af_agate.c +4 −8
  20. libavfilter/af_aiir.c +1 −2
  21. libavfilter/af_alimiter.c +2 −4
  22. libavfilter/af_amerge.c +1 −2
  23. libavfilter/af_amix.c +1 −2
  24. libavfilter/af_amultiply.c +2 −4
  25. libavfilter/af_anequalizer.c +1 −2
  26. libavfilter/af_anlmdn.c +2 −4
  27. libavfilter/af_anlms.c +2 −4
  28. libavfilter/af_anull.c +2 −4
  29. libavfilter/af_apad.c +2 −4
  30. libavfilter/af_aphaser.c +2 −4
  31. libavfilter/af_apulsator.c +2 −4
  32. libavfilter/af_aresample.c +2 −4
  33. libavfilter/af_arnndn.c +2 −4
  34. libavfilter/af_asetnsamples.c +2 −4
  35. libavfilter/af_asetrate.c +2 −4
  36. libavfilter/af_ashowinfo.c +2 −4
  37. libavfilter/af_asoftclip.c +2 −4
  38. libavfilter/af_asr.c +2 −4
  39. libavfilter/af_astats.c +2 −4
  40. libavfilter/af_asubboost.c +2 −4
  41. libavfilter/af_asupercut.c +8 −10
  42. libavfilter/af_atempo.c +2 −4
  43. libavfilter/af_axcorrelate.c +2 −4
  44. libavfilter/af_biquads.c +2 −4
  45. libavfilter/af_bs2b.c +2 −4
  46. libavfilter/af_channelmap.c +2 −4
  47. libavfilter/af_channelsplit.c +1 −2
  48. libavfilter/af_chorus.c +2 −4
  49. libavfilter/af_compand.c +2 −4
  50. libavfilter/af_compensationdelay.c +2 −4
  51. libavfilter/af_crossfeed.c +2 −4
  52. libavfilter/af_crystalizer.c +2 −4
  53. libavfilter/af_dcshift.c +2 −4
  54. libavfilter/af_deesser.c +2 −4
  55. libavfilter/af_drmeter.c +2 −4
  56. libavfilter/af_dynaudnorm.c +2 −4
  57. libavfilter/af_earwax.c +2 −4
  58. libavfilter/af_extrastereo.c +2 −4
  59. libavfilter/af_firequalizer.c +2 −4
  60. libavfilter/af_flanger.c +2 −4
  61. libavfilter/af_haas.c +2 −4
  62. libavfilter/af_hdcd.c +2 −4
  63. libavfilter/af_headphone.c +1 −2
  64. libavfilter/af_join.c +1 −2
  65. libavfilter/af_ladspa.c +1 −2
  66. libavfilter/af_loudnorm.c +2 −4
  67. libavfilter/af_lv2.c +1 −2
  68. libavfilter/af_mcompand.c +2 −4
  69. libavfilter/af_pan.c +2 −4
  70. libavfilter/af_replaygain.c +2 −4
  71. libavfilter/af_rubberband.c +2 −4
  72. libavfilter/af_sidechaincompress.c +4 −8
  73. libavfilter/af_silencedetect.c +2 −4
  74. libavfilter/af_silenceremove.c +2 −4
  75. libavfilter/af_sofalizer.c +2 −4
  76. libavfilter/af_speechnorm.c +2 −4
  77. libavfilter/af_stereotools.c +2 −4
  78. libavfilter/af_stereowiden.c +2 −4
  79. libavfilter/af_superequalizer.c +2 −4
  80. libavfilter/af_surround.c +2 −4
  81. libavfilter/af_tremolo.c +2 −4
  82. libavfilter/af_vibrato.c +2 −4
  83. libavfilter/af_volume.c +2 −4
  84. libavfilter/af_volumedetect.c +2 −4
  85. libavfilter/asink_anullsink.c +1 −2
  86. libavfilter/asrc_afirsrc.c +1 −2
  87. libavfilter/asrc_anoisesrc.c +1 −2
  88. libavfilter/asrc_anullsrc.c +1 −2
  89. libavfilter/asrc_flite.c +1 −2
  90. libavfilter/asrc_hilbert.c +1 −2
  91. libavfilter/asrc_sinc.c +1 −2
  92. libavfilter/asrc_sine.c +1 −2
  93. libavfilter/avf_abitscope.c +2 −4
  94. libavfilter/avf_ahistogram.c +2 −4
  95. libavfilter/avf_aphasemeter.c +1 −2
  96. libavfilter/avf_avectorscope.c +2 −4
  97. libavfilter/avf_showcqt.c +2 −4
  98. libavfilter/avf_showfreqs.c +2 −4
  99. libavfilter/avf_showspatial.c +2 −4
  100. libavfilter/avf_showspectrum.c +4 −8
  101. libavfilter/avf_showvolume.c +2 −4
  102. libavfilter/avf_showwaves.c +4 −8
  103. libavfilter/avfilter.c +12 −6
  104. libavfilter/avfilter.h +14 −4
  105. libavfilter/buffersink.c +2 −4
  106. libavfilter/buffersrc.c +2 −4
  107. libavfilter/f_bench.c +4 −8
  108. libavfilter/f_cue.c +4 −8
  109. libavfilter/f_drawgraph.c +4 −8
  110. libavfilter/f_ebur128.c +1 −2
  111. libavfilter/f_graphmonitor.c +4 −8
  112. libavfilter/f_interleave.c +2 −4
  113. libavfilter/f_loop.c +4 −8
  114. libavfilter/f_metadata.c +4 −8
  115. libavfilter/f_perms.c +4 −8
  116. libavfilter/f_realtime.c +4 −8
  117. libavfilter/f_reverse.c +4 −8
  118. libavfilter/f_segment.c +2 −4
  119. libavfilter/f_select.c +2 −4
  120. libavfilter/f_sendcmd.c +4 −8
  121. libavfilter/f_sidedata.c +4 −8
  122. libavfilter/f_zmq.c +4 −8
  123. libavfilter/fifo.c +4 −8
  124. libavfilter/internal.h +6 −0
  125. libavfilter/setpts.c +4 −8
  126. libavfilter/settb.c +4 −8
  127. libavfilter/split.c +2 −4
  128. libavfilter/trim.c +4 −8
  129. libavfilter/vaf_spectrumsynth.c +2 −4
  130. libavfilter/vf_addroi.c +2 −4
  131. libavfilter/vf_alphamerge.c +2 −4
  132. libavfilter/vf_amplify.c +2 −4
  133. libavfilter/vf_aspect.c +4 −8
  134. libavfilter/vf_atadenoise.c +2 −4
  135. libavfilter/vf_avgblur.c +2 −4
  136. libavfilter/vf_avgblur_opencl.c +4 −6
  137. libavfilter/vf_avgblur_vulkan.c +2 −4
  138. libavfilter/vf_bbox.c +2 −4
  139. libavfilter/vf_bilateral.c +2 −4
  140. libavfilter/vf_bitplanenoise.c +2 −4
  141. libavfilter/vf_blackdetect.c +2 −4
  142. libavfilter/vf_blackframe.c +2 −4
  143. libavfilter/vf_blend.c +4 −8
  144. libavfilter/vf_bm3d.c +1 −2
  145. libavfilter/vf_boxblur.c +2 −4
  146. libavfilter/vf_bwdif.c +2 −4
  147. libavfilter/vf_cas.c +2 −4
  148. libavfilter/vf_chromaber_vulkan.c +2 −4
  149. libavfilter/vf_chromakey.c +4 −8
  150. libavfilter/vf_chromanr.c +2 −4
  151. libavfilter/vf_chromashift.c +4 −6
  152. libavfilter/vf_ciescope.c +2 −4
  153. libavfilter/vf_codecview.c +2 −4
  154. libavfilter/vf_colorbalance.c +2 −4
  155. libavfilter/vf_colorchannelmixer.c +2 −4
  156. libavfilter/vf_colorconstancy.c +2 −4
  157. libavfilter/vf_colorcontrast.c +2 −4
  158. libavfilter/vf_colorcorrect.c +2 −4
  159. libavfilter/vf_colorize.c +2 −4
  160. libavfilter/vf_colorkey.c +4 −6
  161. libavfilter/vf_colorkey_opencl.c +2 −4
  162. libavfilter/vf_colorlevels.c +2 −4
  163. libavfilter/vf_colormatrix.c +2 −4
  164. libavfilter/vf_colorspace.c +2 −4
  165. libavfilter/vf_colortemperature.c +2 −4
  166. libavfilter/vf_convolution.c +10 −12
  167. libavfilter/vf_convolution_opencl.c +8 −10
  168. libavfilter/vf_convolve.c +4 −6
  169. libavfilter/vf_copy.c +2 −4
  170. libavfilter/vf_coreimage.m +3 −6
  171. libavfilter/vf_cover_rect.c +2 −4
  172. libavfilter/vf_crop.c +2 −4
  173. libavfilter/vf_cropdetect.c +2 −4
  174. libavfilter/vf_curves.c +2 −4
  175. libavfilter/vf_datascope.c +6 −12
  176. libavfilter/vf_dblur.c +2 −4
  177. libavfilter/vf_dctdnoiz.c +2 −4
  178. libavfilter/vf_deband.c +2 −4
  179. libavfilter/vf_deblock.c +2 −4
  180. libavfilter/vf_decimate.c +1 −2
  181. libavfilter/vf_dedot.c +2 −4
  182. libavfilter/vf_deflicker.c +2 −4
  183. libavfilter/vf_deinterlace_qsv.c +2 −4
  184. libavfilter/vf_deinterlace_vaapi.c +2 −4
  185. libavfilter/vf_dejudder.c +2 −4
  186. libavfilter/vf_delogo.c +2 −4
  187. libavfilter/vf_derain.c +2 −4
  188. libavfilter/vf_deshake.c +2 −4
  189. libavfilter/vf_deshake_opencl.c +2 −4
  190. libavfilter/vf_despill.c +2 −4
  191. libavfilter/vf_detelecine.c +2 −4
  192. libavfilter/vf_displace.c +2 −4
  193. libavfilter/vf_dnn_classify.c +2 −4
  194. libavfilter/vf_dnn_detect.c +2 −4
  195. libavfilter/vf_dnn_processing.c +2 −4
  196. libavfilter/vf_drawbox.c +4 −8
  197. libavfilter/vf_drawtext.c +2 −4
  198. libavfilter/vf_edgedetect.c +2 −4
  199. libavfilter/vf_elbg.c +2 −4
  200. libavfilter/vf_entropy.c +2 −4
  201. libavfilter/vf_epx.c +2 −4
  202. libavfilter/vf_eq.c +2 −4
  203. libavfilter/vf_estdif.c +2 −4
  204. libavfilter/vf_exposure.c +2 −4
  205. libavfilter/vf_extractplanes.c +2 −3
  206. libavfilter/vf_fade.c +2 −4
  207. libavfilter/vf_fftdnoiz.c +2 −4
  208. libavfilter/vf_fftfilt.c +2 −4
  209. libavfilter/vf_field.c +2 −4
  210. libavfilter/vf_fieldhint.c +2 −4
  211. libavfilter/vf_fieldmatch.c +1 −2
  212. libavfilter/vf_fieldorder.c +2 −4
  213. libavfilter/vf_fillborders.c +2 −4
  214. libavfilter/vf_find_rect.c +2 −4
  215. libavfilter/vf_floodfill.c +2 −4
  216. libavfilter/vf_format.c +4 −8
  217. libavfilter/vf_fps.c +2 −4
  218. libavfilter/vf_framepack.c +2 −4
  219. libavfilter/vf_framerate.c +2 −4
  220. libavfilter/vf_framestep.c +2 −4
  221. libavfilter/vf_freezedetect.c +2 −4
  222. libavfilter/vf_freezeframes.c +2 −4
  223. libavfilter/vf_frei0r.c +3 −6
  224. libavfilter/vf_fspp.c +2 −4
  225. libavfilter/vf_gblur.c +2 −4
  226. libavfilter/vf_geq.c +2 −4
  227. libavfilter/vf_gradfun.c +2 −4
  228. libavfilter/vf_guided.c +1 −2
  229. libavfilter/vf_hflip.c +2 −4
  230. libavfilter/vf_histeq.c +2 −4
  231. libavfilter/vf_histogram.c +4 −6
  232. libavfilter/vf_hqdn3d.c +2 −4
  233. libavfilter/vf_hqx.c +2 −4
  234. libavfilter/vf_hue.c +2 −4
  235. libavfilter/vf_hwdownload.c +2 −4
  236. libavfilter/vf_hwmap.c +2 −4
  237. libavfilter/vf_hwupload.c +2 −4
  238. libavfilter/vf_hwupload_cuda.c +2 −4
  239. libavfilter/vf_hysteresis.c +2 −4
  240. libavfilter/vf_identity.c +4 −6
  241. libavfilter/vf_idet.c +2 −4
  242. libavfilter/vf_il.c +2 −4
  243. libavfilter/vf_kerndeint.c +2 −4
  244. libavfilter/vf_lagfun.c +2 −4
  245. libavfilter/vf_lenscorrection.c +2 −4
  246. libavfilter/vf_lensfun.c +2 −4
  247. libavfilter/vf_libopencv.c +2 −4
  248. libavfilter/vf_libvmaf.c +2 −4
  249. libavfilter/vf_limiter.c +2 −4
  250. libavfilter/vf_lumakey.c +2 −4
  251. libavfilter/vf_lut.c +2 −4
  252. libavfilter/vf_lut2.c +4 −8
  253. libavfilter/vf_lut3d.c +6 −12
  254. libavfilter/vf_maskedclamp.c +2 −4
  255. libavfilter/vf_maskedmerge.c +2 −4
  256. libavfilter/vf_maskedminmax.c +4 −6
  257. libavfilter/vf_maskedthreshold.c +2 −4
  258. libavfilter/vf_maskfun.c +2 −4
  259. libavfilter/vf_mcdeint.c +2 −4
  260. libavfilter/vf_median.c +2 −4
  261. libavfilter/vf_mergeplanes.c +1 −2
  262. libavfilter/vf_mestimate.c +2 −4
  263. libavfilter/vf_midequalizer.c +2 −4
  264. libavfilter/vf_minterpolate.c +2 −4
  265. libavfilter/vf_misc_vaapi.c +4 −6
  266. libavfilter/vf_mix.c +3 −5
  267. libavfilter/vf_monochrome.c +2 −4
  268. libavfilter/vf_mpdecimate.c +2 −4
  269. libavfilter/vf_neighbor.c +2 −4
  270. libavfilter/vf_neighbor_opencl.c +4 −6
  271. libavfilter/vf_nlmeans.c +2 −4
  272. libavfilter/vf_nlmeans_opencl.c +2 −4
  273. libavfilter/vf_nnedi.c +2 −4
  274. libavfilter/vf_noise.c +2 −4
  275. libavfilter/vf_normalize.c +2 −4
  276. libavfilter/vf_null.c +2 −4
  277. libavfilter/vf_ocr.c +2 −4
  278. libavfilter/vf_overlay.c +2 −4
  279. libavfilter/vf_overlay_cuda.c +2 −4
  280. libavfilter/vf_overlay_opencl.c +2 −4
  281. libavfilter/vf_overlay_qsv.c +2 −4
  282. libavfilter/vf_overlay_vulkan.c +2 −4
  283. libavfilter/vf_owdenoise.c +2 −4
  284. libavfilter/vf_pad.c +2 −4
  285. libavfilter/vf_pad_opencl.c +2 −4
  286. libavfilter/vf_palettegen.c +2 −4
  287. libavfilter/vf_paletteuse.c +2 −4
  288. libavfilter/vf_perspective.c +2 −4
  289. libavfilter/vf_phase.c +2 −4
  290. libavfilter/vf_photosensitivity.c +2 −4
  291. libavfilter/vf_pixdesctest.c +2 −4
  292. libavfilter/vf_pp.c +2 −4
  293. libavfilter/vf_pp7.c +2 −4
  294. libavfilter/vf_premultiply.c +2 −3
  295. libavfilter/vf_procamp_vaapi.c +2 −4
  296. libavfilter/vf_program_opencl.c +2 −4
  297. libavfilter/vf_pseudocolor.c +2 −4
  298. libavfilter/vf_psnr.c +2 −4
  299. libavfilter/vf_pullup.c +2 −4
  300. libavfilter/vf_qp.c +2 −4
  301. libavfilter/vf_random.c +2 −4
  302. libavfilter/vf_readeia608.c +2 −4
  303. libavfilter/vf_readvitc.c +2 −4
  304. libavfilter/vf_remap.c +2 −4
  305. libavfilter/vf_removegrain.c +2 −4
  306. libavfilter/vf_removelogo.c +2 −4
  307. libavfilter/vf_repeatfields.c +2 −4
  308. libavfilter/vf_rotate.c +2 −4
  309. libavfilter/vf_sab.c +2 −4
  310. libavfilter/vf_scale.c +4 −8
  311. libavfilter/vf_scale_cuda.c +2 −4
  312. libavfilter/vf_scale_npp.c +2 −4
  313. libavfilter/vf_scale_qsv.c +2 −4
  314. libavfilter/vf_scale_vaapi.c +2 −4
  315. libavfilter/vf_scale_vulkan.c +2 −4
  316. libavfilter/vf_scdet.c +2 −4
  317. libavfilter/vf_scroll.c +2 −4
  318. libavfilter/vf_selectivecolor.c +2 −4
  319. libavfilter/vf_separatefields.c +2 −4
  320. libavfilter/vf_setparams.c +6 −8
  321. libavfilter/vf_shear.c +2 −4
  322. libavfilter/vf_showinfo.c +2 −4
  323. libavfilter/vf_showpalette.c +2 −4
  324. libavfilter/vf_shuffleframes.c +2 −4
  325. libavfilter/vf_shufflepixels.c +2 −4
  326. libavfilter/vf_shuffleplanes.c +2 −4
  327. libavfilter/vf_signalstats.c +2 −4
  328. libavfilter/vf_signature.c +1 −2
  329. libavfilter/vf_smartblur.c +2 −4
  330. libavfilter/vf_spp.c +2 −4
  331. libavfilter/vf_sr.c +2 −4
  332. libavfilter/vf_ssim.c +2 −4
  333. libavfilter/vf_stack.c +3 −4
  334. libavfilter/vf_stereo3d.c +2 −4
  335. libavfilter/vf_subtitles.c +4 −6
  336. libavfilter/vf_super2xsai.c +2 −4
  337. libavfilter/vf_swaprect.c +2 −4
  338. libavfilter/vf_swapuv.c +2 −4
  339. libavfilter/vf_telecine.c +2 −4
  340. libavfilter/vf_threshold.c +2 −4
  341. libavfilter/vf_thumbnail.c +2 −4
  342. libavfilter/vf_thumbnail_cuda.c +2 −4
  343. libavfilter/vf_tile.c +2 −4
  344. libavfilter/vf_tinterlace.c +4 −6
  345. libavfilter/vf_tmidequalizer.c +2 −4
  346. libavfilter/vf_tonemap.c +2 −4
  347. libavfilter/vf_tonemap_opencl.c +2 −4
  348. libavfilter/vf_tonemap_vaapi.c +2 −4
  349. libavfilter/vf_tpad.c +2 −4
  350. libavfilter/vf_transpose.c +2 −4
  351. libavfilter/vf_transpose_npp.c +2 −4
  352. libavfilter/vf_transpose_opencl.c +2 −4
  353. libavfilter/vf_transpose_vaapi.c +2 −4
  354. libavfilter/vf_unsharp.c +2 −4
  355. libavfilter/vf_unsharp_opencl.c +2 −4
  356. libavfilter/vf_untile.c +2 −4
  357. libavfilter/vf_uspp.c +2 −4
  358. libavfilter/vf_v360.c +2 −4
  359. libavfilter/vf_vaguedenoiser.c +2 −4
  360. libavfilter/vf_vectorscope.c +2 −4
  361. libavfilter/vf_vflip.c +2 −4
  362. libavfilter/vf_vfrdet.c +2 −4
  363. libavfilter/vf_vibrance.c +2 −4
  364. libavfilter/vf_vidstabdetect.c +2 −4
  365. libavfilter/vf_vidstabtransform.c +2 −4
  366. libavfilter/vf_vif.c +2 −4
  367. libavfilter/vf_vignette.c +2 −4
  368. libavfilter/vf_vmafmotion.c +2 −4
  369. libavfilter/vf_vpp_qsv.c +2 −4
  370. libavfilter/vf_w3fdif.c +2 −4
  371. libavfilter/vf_waveform.c +2 −4
  372. libavfilter/vf_weave.c +4 −6
  373. libavfilter/vf_xbr.c +2 −4
  374. libavfilter/vf_xfade.c +2 −4
  375. libavfilter/vf_xfade_opencl.c +2 −4
  376. libavfilter/vf_xmedian.c +3 −6
  377. libavfilter/vf_yadif.c +2 −4
  378. libavfilter/vf_yadif_cuda.c +2 −4
  379. libavfilter/vf_yaepblur.c +2 −4
  380. libavfilter/vf_zoompan.c +2 −4
  381. libavfilter/vf_zscale.c +2 −4
  382. libavfilter/vsink_nullsink.c +1 −2
  383. libavfilter/vsrc_cellauto.c +1 −2
  384. libavfilter/vsrc_gradients.c +1 −2
  385. libavfilter/vsrc_life.c +1 −2
  386. libavfilter/vsrc_mandelbrot.c +1 −2
  387. libavfilter/vsrc_mptestsrc.c +1 −2
  388. libavfilter/vsrc_sierpinski.c +1 −2
  389. libavfilter/vsrc_testsrc.c +13 −23
libavfilter/aeval.c+3−6
@@ -307,7 +307,6 @@ static const AVFilterPad aevalsrc_outputs[] = { · 306 unmodified lines
307 .config_props = config_props,307 .config_props = config_props,
308 .request_frame = request_frame,308 .request_frame = request_frame,
309 },309 },
310 { NULL }
311};310};
312 311
313const AVFilter ff_asrc_aevalsrc = {312const AVFilter ff_asrc_aevalsrc = {
@@ -318,7 +317,7 @@ const AVFilter ff_asrc_aevalsrc = { · 4 unmodified lines
318 .uninit = uninit,317 .uninit = uninit,
319 .priv_size = sizeof(EvalContext),318 .priv_size = sizeof(EvalContext),
320 .inputs = NULL,319 .inputs = NULL,
321 .outputs = aevalsrc_outputs,320 FILTER_OUTPUTS(aevalsrc_outputs),
322 .priv_class = &aevalsrc_class,321 .priv_class = &aevalsrc_class,
323};322};
324 323
@@ -445,7 +444,6 @@ static const AVFilterPad aeval_inputs[] = { · 120 unmodified lines
445 .type = AVMEDIA_TYPE_AUDIO,444 .type = AVMEDIA_TYPE_AUDIO,
446 .filter_frame = filter_frame,445 .filter_frame = filter_frame,
447 },446 },
448 { NULL }
449};447};
450 448
451static const AVFilterPad aeval_outputs[] = {449static const AVFilterPad aeval_outputs[] = {
@@ -454,7 +452,6 @@ static const AVFilterPad aeval_outputs[] = { · 2 unmodified lines
454 .type = AVMEDIA_TYPE_AUDIO,452 .type = AVMEDIA_TYPE_AUDIO,
455 .config_props = aeval_config_output,453 .config_props = aeval_config_output,
456 },454 },
457 { NULL }
458};455};
459 456
460const AVFilter ff_af_aeval = {457const AVFilter ff_af_aeval = {
@@ -464,8 +461,8 @@ const AVFilter ff_af_aeval = { · 3 unmodified lines
464 .init = init,461 .init = init,
465 .uninit = uninit,462 .uninit = uninit,
466 .priv_size = sizeof(EvalContext),463 .priv_size = sizeof(EvalContext),
467 .inputs = aeval_inputs,464 FILTER_INPUTS(aeval_inputs),
468 .outputs = aeval_outputs,465 FILTER_OUTPUTS(aeval_outputs),
469 .priv_class = &aeval_class,466 .priv_class = &aeval_class,
470 .flags = AVFILTER_FLAG_SUPPORT_TIMELINE_GENERIC,467 .flags = AVFILTER_FLAG_SUPPORT_TIMELINE_GENERIC,
471};468};
libavfilter/af_acontrast.c+2−4
@@ -187,7 +187,6 @@ static const AVFilterPad inputs[] = { · 186 unmodified lines
187 .filter_frame = filter_frame,187 .filter_frame = filter_frame,
188 .config_props = config_input,188 .config_props = config_input,
189 },189 },
190 { NULL }
191};190};
192 191
193static const AVFilterPad outputs[] = {192static const AVFilterPad outputs[] = {
@@ -195,7 +194,6 @@ static const AVFilterPad outputs[] = { · 1 unmodified line
195 .name = "default",194 .name = "default",
196 .type = AVMEDIA_TYPE_AUDIO,195 .type = AVMEDIA_TYPE_AUDIO,
197 },196 },
198 { NULL }
199};197};
200 198
201const AVFilter ff_af_acontrast = {199const AVFilter ff_af_acontrast = {
@@ -204,6 +202,6 @@ const AVFilter ff_af_acontrast = { · 2 unmodified lines
204 .query_formats = query_formats,202 .query_formats = query_formats,
205 .priv_size = sizeof(AudioContrastContext),203 .priv_size = sizeof(AudioContrastContext),
206 .priv_class = &acontrast_class,204 .priv_class = &acontrast_class,
207 .inputs = inputs,205 FILTER_INPUTS(inputs),
208 .outputs = outputs,206 FILTER_OUTPUTS(outputs),
209};207};
libavfilter/af_acopy.c+2−4
@@ -51,7 +51,6 @@ static const AVFilterPad acopy_inputs[] = { · 50 unmodified lines
51 .type = AVMEDIA_TYPE_AUDIO,51 .type = AVMEDIA_TYPE_AUDIO,
52 .filter_frame = filter_frame,52 .filter_frame = filter_frame,
53 },53 },
54 { NULL }
55};54};
56 55
57static const AVFilterPad acopy_outputs[] = {56static const AVFilterPad acopy_outputs[] = {
@@ -59,12 +58,11 @@ static const AVFilterPad acopy_outputs[] = { · 1 unmodified line
59 .name = "default",58 .name = "default",
60 .type = AVMEDIA_TYPE_AUDIO,59 .type = AVMEDIA_TYPE_AUDIO,
61 },60 },
62 { NULL }
63};61};
64 62
65const AVFilter ff_af_acopy = {63const AVFilter ff_af_acopy = {
66 .name = "acopy",64 .name = "acopy",
67 .description = NULL_IF_CONFIG_SMALL("Copy the input audio unchanged to the output."),65 .description = NULL_IF_CONFIG_SMALL("Copy the input audio unchanged to the output."),
68 .inputs = acopy_inputs,66 FILTER_INPUTS(acopy_inputs),
69 .outputs = acopy_outputs,67 FILTER_OUTPUTS(acopy_outputs),
70};68};
libavfilter/af_acrossover.c+1−2
@@ -555,7 +555,6 @@ static const AVFilterPad inputs[] = { · 554 unmodified lines
555 .filter_frame = filter_frame,555 .filter_frame = filter_frame,
556 .config_props = config_input,556 .config_props = config_input,
557 },557 },
558 { NULL }
559};558};
560 559
561const AVFilter ff_af_acrossover = {560const AVFilter ff_af_acrossover = {
@@ -566,7 +565,7 @@ const AVFilter ff_af_acrossover = { · 4 unmodified lines
566 .init = init,565 .init = init,
567 .uninit = uninit,566 .uninit = uninit,
568 .query_formats = query_formats,567 .query_formats = query_formats,
569 .inputs = inputs,568 FILTER_INPUTS(inputs),
570 .outputs = NULL,569 .outputs = NULL,
571 .flags = AVFILTER_FLAG_DYNAMIC_OUTPUTS |570 .flags = AVFILTER_FLAG_DYNAMIC_OUTPUTS |
572 AVFILTER_FLAG_SLICE_THREADS,571 AVFILTER_FLAG_SLICE_THREADS,
libavfilter/af_acrusher.c+2−4
@@ -342,7 +342,6 @@ static const AVFilterPad avfilter_af_acrusher_inputs[] = { · 341 unmodified lines
342 .config_props = config_input,342 .config_props = config_input,
343 .filter_frame = filter_frame,343 .filter_frame = filter_frame,
344 },344 },
345 { NULL }
346};345};
347 346
348static const AVFilterPad avfilter_af_acrusher_outputs[] = {347static const AVFilterPad avfilter_af_acrusher_outputs[] = {
@@ -350,7 +349,6 @@ static const AVFilterPad avfilter_af_acrusher_outputs[] = { · 1 unmodified line
350 .name = "default",349 .name = "default",
351 .type = AVMEDIA_TYPE_AUDIO,350 .type = AVMEDIA_TYPE_AUDIO,
352 },351 },
353 { NULL }
354};352};
355 353
356const AVFilter ff_af_acrusher = {354const AVFilter ff_af_acrusher = {
@@ -360,7 +358,7 @@ const AVFilter ff_af_acrusher = { · 3 unmodified lines
360 .priv_class = &acrusher_class,358 .priv_class = &acrusher_class,
361 .uninit = uninit,359 .uninit = uninit,
362 .query_formats = query_formats,360 .query_formats = query_formats,
363 .inputs = avfilter_af_acrusher_inputs,361 FILTER_INPUTS(avfilter_af_acrusher_inputs),
364 .outputs = avfilter_af_acrusher_outputs,362 FILTER_OUTPUTS(avfilter_af_acrusher_outputs),
365 .process_command = process_command,363 .process_command = process_command,
366};364};
libavfilter/af_adeclick.c+4−6
@@ -741,7 +741,6 @@ static const AVFilterPad inputs[] = { · 740 unmodified lines
741 .type = AVMEDIA_TYPE_AUDIO,741 .type = AVMEDIA_TYPE_AUDIO,
742 .config_props = config_input,742 .config_props = config_input,
743 },743 },
744 { NULL }
745};744};
746 745
747static const AVFilterPad outputs[] = {746static const AVFilterPad outputs[] = {
@@ -749,7 +748,6 @@ static const AVFilterPad outputs[] = { · 1 unmodified line
749 .name = "default",748 .name = "default",
750 .type = AVMEDIA_TYPE_AUDIO,749 .type = AVMEDIA_TYPE_AUDIO,
751 },750 },
752 { NULL }
753};751};
754 752
755const AVFilter ff_af_adeclick = {753const AVFilter ff_af_adeclick = {
@@ -761,8 +759,8 @@ const AVFilter ff_af_adeclick = { · 5 unmodified lines
761 .init = init,759 .init = init,
762 .activate = activate,760 .activate = activate,
763 .uninit = uninit,761 .uninit = uninit,
764 .inputs = inputs,762 FILTER_INPUTS(inputs),
765 .outputs = outputs,763 FILTER_OUTPUTS(outputs),
766 .flags = AVFILTER_FLAG_SLICE_THREADS | AVFILTER_FLAG_SUPPORT_TIMELINE_INTERNAL,764 .flags = AVFILTER_FLAG_SLICE_THREADS | AVFILTER_FLAG_SUPPORT_TIMELINE_INTERNAL,
767};765};
768 766
@@ -797,7 +795,7 @@ const AVFilter ff_af_adeclip = { · 28 unmodified lines
797 .init = init,795 .init = init,
798 .activate = activate,796 .activate = activate,
799 .uninit = uninit,797 .uninit = uninit,
800 .inputs = inputs,798 FILTER_INPUTS(inputs),
801 .outputs = outputs,799 FILTER_OUTPUTS(outputs),
802 .flags = AVFILTER_FLAG_SLICE_THREADS | AVFILTER_FLAG_SUPPORT_TIMELINE_INTERNAL,800 .flags = AVFILTER_FLAG_SLICE_THREADS | AVFILTER_FLAG_SUPPORT_TIMELINE_INTERNAL,
803};801};
libavfilter/af_adelay.c+2−4
@@ -326,7 +326,6 @@ static const AVFilterPad adelay_inputs[] = { · 325 unmodified lines
326 .type = AVMEDIA_TYPE_AUDIO,326 .type = AVMEDIA_TYPE_AUDIO,
327 .config_props = config_input,327 .config_props = config_input,
328 },328 },
329 { NULL }
330};329};
331 330
332static const AVFilterPad adelay_outputs[] = {331static const AVFilterPad adelay_outputs[] = {
@@ -334,7 +333,6 @@ static const AVFilterPad adelay_outputs[] = { · 1 unmodified line
334 .name = "default",333 .name = "default",
335 .type = AVMEDIA_TYPE_AUDIO,334 .type = AVMEDIA_TYPE_AUDIO,
336 },335 },
337 { NULL }
338};336};
339 337
340const AVFilter ff_af_adelay = {338const AVFilter ff_af_adelay = {
@@ -345,7 +343,7 @@ const AVFilter ff_af_adelay = { · 4 unmodified lines
345 .priv_class = &adelay_class,343 .priv_class = &adelay_class,
346 .activate = activate,344 .activate = activate,
347 .uninit = uninit,345 .uninit = uninit,
348 .inputs = adelay_inputs,346 FILTER_INPUTS(adelay_inputs),
349 .outputs = adelay_outputs,347 FILTER_OUTPUTS(adelay_outputs),
350 .flags = AVFILTER_FLAG_SUPPORT_TIMELINE_INTERNAL,348 .flags = AVFILTER_FLAG_SUPPORT_TIMELINE_INTERNAL,
351};349};
libavfilter/af_adenorm.c+2−4
@@ -279,7 +279,6 @@ static const AVFilterPad adenorm_inputs[] = { · 278 unmodified lines
279 .type = AVMEDIA_TYPE_AUDIO,279 .type = AVMEDIA_TYPE_AUDIO,
280 .filter_frame = filter_frame,280 .filter_frame = filter_frame,
281 },281 },
282 { NULL }
283};282};
284 283
285static const AVFilterPad adenorm_outputs[] = {284static const AVFilterPad adenorm_outputs[] = {
@@ -288,7 +287,6 @@ static const AVFilterPad adenorm_outputs[] = { · 2 unmodified lines
288 .type = AVMEDIA_TYPE_AUDIO,287 .type = AVMEDIA_TYPE_AUDIO,
289 .config_props = config_output,288 .config_props = config_output,
290 },289 },
291 { NULL }
292};290};
293 291
294#define OFFSET(x) offsetof(ADenormContext, x)292#define OFFSET(x) offsetof(ADenormContext, x)
@@ -311,8 +309,8 @@ const AVFilter ff_af_adenorm = { · 16 unmodified lines
311 .description = NULL_IF_CONFIG_SMALL("Remedy denormals by adding extremely low-level noise."),309 .description = NULL_IF_CONFIG_SMALL("Remedy denormals by adding extremely low-level noise."),
312 .query_formats = query_formats,310 .query_formats = query_formats,
313 .priv_size = sizeof(ADenormContext),311 .priv_size = sizeof(ADenormContext),
314 .inputs = adenorm_inputs,312 FILTER_INPUTS(adenorm_inputs),
315 .outputs = adenorm_outputs,313 FILTER_OUTPUTS(adenorm_outputs),
316 .priv_class = &adenorm_class,314 .priv_class = &adenorm_class,
317 .process_command = process_command,315 .process_command = process_command,
318 .flags = AVFILTER_FLAG_SUPPORT_TIMELINE_GENERIC |316 .flags = AVFILTER_FLAG_SUPPORT_TIMELINE_GENERIC |
libavfilter/af_aderivative.c+4−6
@@ -163,7 +163,6 @@ static const AVFilterPad aderivative_inputs[] = { · 162 unmodified lines
163 .filter_frame = filter_frame,163 .filter_frame = filter_frame,
164 .config_props = config_input,164 .config_props = config_input,
165 },165 },
166 { NULL }
167};166};
168 167
169static const AVFilterPad aderivative_outputs[] = {168static const AVFilterPad aderivative_outputs[] = {
@@ -171,7 +170,6 @@ static const AVFilterPad aderivative_outputs[] = { · 1 unmodified line
171 .name = "default",170 .name = "default",
172 .type = AVMEDIA_TYPE_AUDIO,171 .type = AVMEDIA_TYPE_AUDIO,
173 },172 },
174 { NULL }
175};173};
176 174
177const AVFilter ff_af_aderivative = {175const AVFilter ff_af_aderivative = {
@@ -180,8 +178,8 @@ const AVFilter ff_af_aderivative = { · 2 unmodified lines
180 .query_formats = query_formats,178 .query_formats = query_formats,
181 .priv_size = sizeof(ADerivativeContext),179 .priv_size = sizeof(ADerivativeContext),
182 .uninit = uninit,180 .uninit = uninit,
183 .inputs = aderivative_inputs,181 FILTER_INPUTS(aderivative_inputs),
184 .outputs = aderivative_outputs,182 FILTER_OUTPUTS(aderivative_outputs),
185};183};
186 184
187const AVFilter ff_af_aintegral = {185const AVFilter ff_af_aintegral = {
@@ -190,6 +188,6 @@ const AVFilter ff_af_aintegral = { · 2 unmodified lines
190 .query_formats = query_formats,188 .query_formats = query_formats,
191 .priv_size = sizeof(ADerivativeContext),189 .priv_size = sizeof(ADerivativeContext),
192 .uninit = uninit,190 .uninit = uninit,
193 .inputs = aderivative_inputs,191 FILTER_INPUTS(aderivative_inputs),
194 .outputs = aderivative_outputs,192 FILTER_OUTPUTS(aderivative_outputs),
195};193};
libavfilter/af_aecho.c+2−4
@@ -351,7 +351,6 @@ static const AVFilterPad aecho_inputs[] = { · 350 unmodified lines
351 .name = "default",351 .name = "default",
352 .type = AVMEDIA_TYPE_AUDIO,352 .type = AVMEDIA_TYPE_AUDIO,
353 },353 },
354 { NULL }
355};354};
356 355
357static const AVFilterPad aecho_outputs[] = {356static const AVFilterPad aecho_outputs[] = {
@@ -360,7 +359,6 @@ static const AVFilterPad aecho_outputs[] = { · 2 unmodified lines
360 .config_props = config_output,359 .config_props = config_output,
361 .type = AVMEDIA_TYPE_AUDIO,360 .type = AVMEDIA_TYPE_AUDIO,
362 },361 },
363 { NULL }
364};362};
365 363
366const AVFilter ff_af_aecho = {364const AVFilter ff_af_aecho = {
@@ -372,6 +370,6 @@ const AVFilter ff_af_aecho = { · 5 unmodified lines
372 .init = init,370 .init = init,
373 .activate = activate,371 .activate = activate,
374 .uninit = uninit,372 .uninit = uninit,
375 .inputs = aecho_inputs,373 FILTER_INPUTS(aecho_inputs),
376 .outputs = aecho_outputs,374 FILTER_OUTPUTS(aecho_outputs),
377};375};
libavfilter/af_aemphasis.c+2−4
@@ -376,7 +376,6 @@ static const AVFilterPad avfilter_af_aemphasis_inputs[] = { · 375 unmodified lines
376 .config_props = config_input,376 .config_props = config_input,
377 .filter_frame = filter_frame,377 .filter_frame = filter_frame,
378 },378 },
379 { NULL }
380};379};
381 380
382static const AVFilterPad avfilter_af_aemphasis_outputs[] = {381static const AVFilterPad avfilter_af_aemphasis_outputs[] = {
@@ -384,7 +383,6 @@ static const AVFilterPad avfilter_af_aemphasis_outputs[] = { · 1 unmodified line
384 .name = "default",383 .name = "default",
385 .type = AVMEDIA_TYPE_AUDIO,384 .type = AVMEDIA_TYPE_AUDIO,
386 },385 },
387 { NULL }
388};386};
389 387
390const AVFilter ff_af_aemphasis = {388const AVFilter ff_af_aemphasis = {
@@ -394,8 +392,8 @@ const AVFilter ff_af_aemphasis = { · 3 unmodified lines
394 .priv_class = &aemphasis_class,392 .priv_class = &aemphasis_class,
395 .uninit = uninit,393 .uninit = uninit,
396 .query_formats = query_formats,394 .query_formats = query_formats,
397 .inputs = avfilter_af_aemphasis_inputs,395 FILTER_INPUTS(avfilter_af_aemphasis_inputs),
398 .outputs = avfilter_af_aemphasis_outputs,396 FILTER_OUTPUTS(avfilter_af_aemphasis_outputs),
399 .process_command = process_command,397 .process_command = process_command,
400 .flags = AVFILTER_FLAG_SUPPORT_TIMELINE_GENERIC |398 .flags = AVFILTER_FLAG_SUPPORT_TIMELINE_GENERIC |
401 AVFILTER_FLAG_SLICE_THREADS,399 AVFILTER_FLAG_SLICE_THREADS,
libavfilter/af_aexciter.c+2−4
@@ -279,7 +279,6 @@ static const AVFilterPad avfilter_af_aexciter_inputs[] = { · 278 unmodified lines
279 .config_props = config_input,279 .config_props = config_input,
280 .filter_frame = filter_frame,280 .filter_frame = filter_frame,
281 },281 },
282 { NULL }
283};282};
284 283
285static const AVFilterPad avfilter_af_aexciter_outputs[] = {284static const AVFilterPad avfilter_af_aexciter_outputs[] = {
@@ -287,7 +286,6 @@ static const AVFilterPad avfilter_af_aexciter_outputs[] = { · 1 unmodified line
287 .name = "default",286 .name = "default",
288 .type = AVMEDIA_TYPE_AUDIO,287 .type = AVMEDIA_TYPE_AUDIO,
289 },288 },
290 { NULL }
291};289};
292 290
293const AVFilter ff_af_aexciter = {291const AVFilter ff_af_aexciter = {
@@ -297,8 +295,8 @@ const AVFilter ff_af_aexciter = { · 3 unmodified lines
297 .priv_class = &aexciter_class,295 .priv_class = &aexciter_class,
298 .uninit = uninit,296 .uninit = uninit,
299 .query_formats = query_formats,297 .query_formats = query_formats,
300 .inputs = avfilter_af_aexciter_inputs,298 FILTER_INPUTS(avfilter_af_aexciter_inputs),
301 .outputs = avfilter_af_aexciter_outputs,299 FILTER_OUTPUTS(avfilter_af_aexciter_outputs),
302 .process_command = process_command,300 .process_command = process_command,
303 .flags = AVFILTER_FLAG_SUPPORT_TIMELINE_INTERNAL,301 .flags = AVFILTER_FLAG_SUPPORT_TIMELINE_INTERNAL,
304};302};
libavfilter/af_afade.c+4−8
@@ -340,7 +340,6 @@ static const AVFilterPad avfilter_af_afade_inputs[] = { · 339 unmodified lines
340 .type = AVMEDIA_TYPE_AUDIO,340 .type = AVMEDIA_TYPE_AUDIO,
341 .filter_frame = filter_frame,341 .filter_frame = filter_frame,
342 },342 },
343 { NULL }
344};343};
345 344
346static const AVFilterPad avfilter_af_afade_outputs[] = {345static const AVFilterPad avfilter_af_afade_outputs[] = {
@@ -349,7 +348,6 @@ static const AVFilterPad avfilter_af_afade_outputs[] = { · 2 unmodified lines
349 .type = AVMEDIA_TYPE_AUDIO,348 .type = AVMEDIA_TYPE_AUDIO,
350 .config_props = config_output,349 .config_props = config_output,
351 },350 },
352 { NULL }
353};351};
354 352
355const AVFilter ff_af_afade = {353const AVFilter ff_af_afade = {
@@ -358,8 +356,8 @@ const AVFilter ff_af_afade = { · 2 unmodified lines
358 .query_formats = query_formats,356 .query_formats = query_formats,
359 .priv_size = sizeof(AudioFadeContext),357 .priv_size = sizeof(AudioFadeContext),
360 .init = init,358 .init = init,
361 .inputs = avfilter_af_afade_inputs,359 FILTER_INPUTS(avfilter_af_afade_inputs),
362 .outputs = avfilter_af_afade_outputs,360 FILTER_OUTPUTS(avfilter_af_afade_outputs),
363 .priv_class = &afade_class,361 .priv_class = &afade_class,
364 .process_command = process_command,362 .process_command = process_command,
365 .flags = AVFILTER_FLAG_SUPPORT_TIMELINE_GENERIC,363 .flags = AVFILTER_FLAG_SUPPORT_TIMELINE_GENERIC,
@@ -628,7 +626,6 @@ static const AVFilterPad avfilter_af_acrossfade_inputs[] = { · 262 unmodified lines
628 .name = "crossfade1",626 .name = "crossfade1",
629 .type = AVMEDIA_TYPE_AUDIO,627 .type = AVMEDIA_TYPE_AUDIO,
630 },628 },
631 { NULL }
632};629};
633 630
634static const AVFilterPad avfilter_af_acrossfade_outputs[] = {631static const AVFilterPad avfilter_af_acrossfade_outputs[] = {
@@ -637,7 +634,6 @@ static const AVFilterPad avfilter_af_acrossfade_outputs[] = { · 2 unmodified lines
637 .type = AVMEDIA_TYPE_AUDIO,634 .type = AVMEDIA_TYPE_AUDIO,
638 .config_props = acrossfade_config_output,635 .config_props = acrossfade_config_output,
639 },636 },
640 { NULL }
641};637};
642 638
643const AVFilter ff_af_acrossfade = {639const AVFilter ff_af_acrossfade = {
@@ -647,8 +643,8 @@ const AVFilter ff_af_acrossfade = { · 3 unmodified lines
647 .priv_size = sizeof(AudioFadeContext),643 .priv_size = sizeof(AudioFadeContext),
648 .activate = activate,644 .activate = activate,
649 .priv_class = &acrossfade_class,645 .priv_class = &acrossfade_class,
650 .inputs = avfilter_af_acrossfade_inputs,646 FILTER_INPUTS(avfilter_af_acrossfade_inputs),
651 .outputs = avfilter_af_acrossfade_outputs,647 FILTER_OUTPUTS(avfilter_af_acrossfade_outputs),
652};648};
653 649
654#endif /* CONFIG_ACROSSFADE_FILTER */650#endif /* CONFIG_ACROSSFADE_FILTER */
libavfilter/af_afftdn.c+2−4
@@ -1400,7 +1400,6 @@ static const AVFilterPad inputs[] = { · 1399 unmodified lines
1400 .type = AVMEDIA_TYPE_AUDIO,1400 .type = AVMEDIA_TYPE_AUDIO,
1401 .config_props = config_input,1401 .config_props = config_input,
1402 },1402 },
1403 { NULL }
1404};1403};
1405 1404
1406static const AVFilterPad outputs[] = {1405static const AVFilterPad outputs[] = {
@@ -1408,7 +1407,6 @@ static const AVFilterPad outputs[] = { · 1 unmodified line
1408 .name = "default",1407 .name = "default",
1409 .type = AVMEDIA_TYPE_AUDIO,1408 .type = AVMEDIA_TYPE_AUDIO,
1410 },1409 },
1411 { NULL }
1412};1410};
1413 1411
1414const AVFilter ff_af_afftdn = {1412const AVFilter ff_af_afftdn = {
@@ -1419,8 +1417,8 @@ const AVFilter ff_af_afftdn = { · 4 unmodified lines
1419 .priv_class = &afftdn_class,1417 .priv_class = &afftdn_class,
1420 .activate = activate,1418 .activate = activate,
1421 .uninit = uninit,1419 .uninit = uninit,
1422 .inputs = inputs,1420 FILTER_INPUTS(inputs),
1423 .outputs = outputs,1421 FILTER_OUTPUTS(outputs),
1424 .process_command = process_command,1422 .process_command = process_command,
1425 .flags = AVFILTER_FLAG_SUPPORT_TIMELINE_GENERIC |1423 .flags = AVFILTER_FLAG_SUPPORT_TIMELINE_GENERIC |
1426 AVFILTER_FLAG_SLICE_THREADS,1424 AVFILTER_FLAG_SLICE_THREADS,
libavfilter/af_afftfilt.c+2−4
@@ -466,7 +466,6 @@ static const AVFilterPad inputs[] = { · 465 unmodified lines
466 .type = AVMEDIA_TYPE_AUDIO,466 .type = AVMEDIA_TYPE_AUDIO,
467 .config_props = config_input,467 .config_props = config_input,
468 },468 },
469 { NULL }
470};469};
471 470
472static const AVFilterPad outputs[] = {471static const AVFilterPad outputs[] = {
@@ -474,7 +473,6 @@ static const AVFilterPad outputs[] = { · 1 unmodified line
474 .name = "default",473 .name = "default",
475 .type = AVMEDIA_TYPE_AUDIO,474 .type = AVMEDIA_TYPE_AUDIO,
476 },475 },
477 { NULL }
478};476};
479 477
480const AVFilter ff_af_afftfilt = {478const AVFilter ff_af_afftfilt = {
@@ -482,8 +480,8 @@ const AVFilter ff_af_afftfilt = { · 1 unmodified line
482 .description = NULL_IF_CONFIG_SMALL("Apply arbitrary expressions to samples in frequency domain."),480 .description = NULL_IF_CONFIG_SMALL("Apply arbitrary expressions to samples in frequency domain."),
483 .priv_size = sizeof(AFFTFiltContext),481 .priv_size = sizeof(AFFTFiltContext),
484 .priv_class = &afftfilt_class,482 .priv_class = &afftfilt_class,
485 .inputs = inputs,483 FILTER_INPUTS(inputs),
486 .outputs = outputs,484 FILTER_OUTPUTS(outputs),
487 .activate = activate,485 .activate = activate,
488 .query_formats = query_formats,486 .query_formats = query_formats,
489 .uninit = uninit,487 .uninit = uninit,
libavfilter/af_aformat.c+2−4
@@ -146,7 +146,6 @@ static const AVFilterPad avfilter_af_aformat_inputs[] = { · 145 unmodified lines
146 .name = "default",146 .name = "default",
147 .type = AVMEDIA_TYPE_AUDIO,147 .type = AVMEDIA_TYPE_AUDIO,
148 },148 },
149 { NULL }
150};149};
151 150
152static const AVFilterPad avfilter_af_aformat_outputs[] = {151static const AVFilterPad avfilter_af_aformat_outputs[] = {
@@ -154,7 +153,6 @@ static const AVFilterPad avfilter_af_aformat_outputs[] = { · 1 unmodified line
154 .name = "default",153 .name = "default",
155 .type = AVMEDIA_TYPE_AUDIO154 .type = AVMEDIA_TYPE_AUDIO
156 },155 },
157 { NULL }
158};156};
159 157
160const AVFilter ff_af_aformat = {158const AVFilter ff_af_aformat = {
@@ -165,6 +163,6 @@ const AVFilter ff_af_aformat = { · 4 unmodified lines
165 .query_formats = query_formats,163 .query_formats = query_formats,
166 .priv_size = sizeof(AFormatContext),164 .priv_size = sizeof(AFormatContext),
167 .priv_class = &aformat_class,165 .priv_class = &aformat_class,
168 .inputs = avfilter_af_aformat_inputs,166 FILTER_INPUTS(avfilter_af_aformat_inputs),
169 .outputs = avfilter_af_aformat_outputs,167 FILTER_OUTPUTS(avfilter_af_aformat_outputs),
170};168};
libavfilter/af_afreqshift.c+4−6
@@ -367,7 +367,6 @@ static const AVFilterPad inputs[] = { · 366 unmodified lines
367 .filter_frame = filter_frame,367 .filter_frame = filter_frame,
368 .config_props = config_input,368 .config_props = config_input,
369 },369 },
370 { NULL }
371};370};
372 371
373static const AVFilterPad outputs[] = {372static const AVFilterPad outputs[] = {
@@ -375,7 +374,6 @@ static const AVFilterPad outputs[] = { · 1 unmodified line
375 .name = "default",374 .name = "default",
376 .type = AVMEDIA_TYPE_AUDIO,375 .type = AVMEDIA_TYPE_AUDIO,
377 },376 },
378 { NULL }
379};377};
380 378
381const AVFilter ff_af_afreqshift = {379const AVFilter ff_af_afreqshift = {
@@ -385,8 +383,8 @@ const AVFilter ff_af_afreqshift = { · 3 unmodified lines
385 .priv_size = sizeof(AFreqShift),383 .priv_size = sizeof(AFreqShift),
386 .priv_class = &afreqshift_class,384 .priv_class = &afreqshift_class,
387 .uninit = uninit,385 .uninit = uninit,
388 .inputs = inputs,386 FILTER_INPUTS(inputs),
389 .outputs = outputs,387 FILTER_OUTPUTS(outputs),
390 .process_command = ff_filter_process_command,388 .process_command = ff_filter_process_command,
391 .flags = AVFILTER_FLAG_SUPPORT_TIMELINE_GENERIC |389 .flags = AVFILTER_FLAG_SUPPORT_TIMELINE_GENERIC |
392 AVFILTER_FLAG_SLICE_THREADS,390 AVFILTER_FLAG_SLICE_THREADS,
@@ -407,8 +405,8 @@ const AVFilter ff_af_aphaseshift = { · 14 unmodified lines
407 .priv_size = sizeof(AFreqShift),405 .priv_size = sizeof(AFreqShift),
408 .priv_class = &aphaseshift_class,406 .priv_class = &aphaseshift_class,
409 .uninit = uninit,407 .uninit = uninit,
410 .inputs = inputs,408 FILTER_INPUTS(inputs),
411 .outputs = outputs,409 FILTER_OUTPUTS(outputs),
412 .process_command = ff_filter_process_command,410 .process_command = ff_filter_process_command,
413 .flags = AVFILTER_FLAG_SUPPORT_TIMELINE_GENERIC |411 .flags = AVFILTER_FLAG_SUPPORT_TIMELINE_GENERIC |
414 AVFILTER_FLAG_SLICE_THREADS,412 AVFILTER_FLAG_SLICE_THREADS,
libavfilter/af_afwtdn.c+2−4
@@ -1311,7 +1311,6 @@ static const AVFilterPad inputs[] = { · 1310 unmodified lines
1311 .name = "default",1311 .name = "default",
1312 .type = AVMEDIA_TYPE_AUDIO,1312 .type = AVMEDIA_TYPE_AUDIO,
1313 },1313 },
1314 { NULL }
1315};1314};
1316 1315
1317static const AVFilterPad outputs[] = {1316static const AVFilterPad outputs[] = {
@@ -1320,7 +1319,6 @@ static const AVFilterPad outputs[] = { · 2 unmodified lines
1320 .type = AVMEDIA_TYPE_AUDIO,1319 .type = AVMEDIA_TYPE_AUDIO,
1321 .config_props = config_output,1320 .config_props = config_output,
1322 },1321 },
1323 { NULL }
1324};1322};
1325 1323
1326const AVFilter ff_af_afwtdn = {1324const AVFilter ff_af_afwtdn = {
@@ -1331,8 +1329,8 @@ const AVFilter ff_af_afwtdn = { · 4 unmodified lines
1331 .priv_class = &afwtdn_class,1329 .priv_class = &afwtdn_class,
1332 .activate = activate,1330 .activate = activate,
1333 .uninit = uninit,1331 .uninit = uninit,
1334 .inputs = inputs,1332 FILTER_INPUTS(inputs),
1335 .outputs = outputs,1333 FILTER_OUTPUTS(outputs),
1336 .process_command = process_command,1334 .process_command = process_command,
1337 .flags = AVFILTER_FLAG_SLICE_THREADS,1335 .flags = AVFILTER_FLAG_SLICE_THREADS,
1338};1336};
libavfilter/af_agate.c+4−8
@@ -240,7 +240,6 @@ static const AVFilterPad inputs[] = { · 239 unmodified lines
240 .filter_frame = filter_frame,240 .filter_frame = filter_frame,
241 .config_props = agate_config_input,241 .config_props = agate_config_input,
242 },242 },
243 { NULL }
244};243};
245 244
246static const AVFilterPad outputs[] = {245static const AVFilterPad outputs[] = {
@@ -248,7 +247,6 @@ static const AVFilterPad outputs[] = { · 1 unmodified line
248 .name = "default",247 .name = "default",
249 .type = AVMEDIA_TYPE_AUDIO,248 .type = AVMEDIA_TYPE_AUDIO,
250 },249 },
251 { NULL }
252};250};
253 251
254const AVFilter ff_af_agate = {252const AVFilter ff_af_agate = {
@@ -257,8 +255,8 @@ const AVFilter ff_af_agate = { · 2 unmodified lines
257 .query_formats = query_formats,255 .query_formats = query_formats,
258 .priv_size = sizeof(AudioGateContext),256 .priv_size = sizeof(AudioGateContext),
259 .priv_class = &agate_class,257 .priv_class = &agate_class,
260 .inputs = inputs,258 FILTER_INPUTS(inputs),
261 .outputs = outputs,259 FILTER_OUTPUTS(outputs),
262 .process_command = ff_filter_process_command,260 .process_command = ff_filter_process_command,
263 .flags = AVFILTER_FLAG_SUPPORT_TIMELINE_GENERIC,261 .flags = AVFILTER_FLAG_SUPPORT_TIMELINE_GENERIC,
264};262};
@@ -413,7 +411,6 @@ static const AVFilterPad sidechaingate_inputs[] = { · 148 unmodified lines
413 .name = "sidechain",411 .name = "sidechain",
414 .type = AVMEDIA_TYPE_AUDIO,412 .type = AVMEDIA_TYPE_AUDIO,
415 },413 },
416 { NULL }
417};414};
418 415
419static const AVFilterPad sidechaingate_outputs[] = {416static const AVFilterPad sidechaingate_outputs[] = {
@@ -422,7 +419,6 @@ static const AVFilterPad sidechaingate_outputs[] = { · 2 unmodified lines
422 .type = AVMEDIA_TYPE_AUDIO,419 .type = AVMEDIA_TYPE_AUDIO,
423 .config_props = scconfig_output,420 .config_props = scconfig_output,
424 },421 },
425 { NULL }
426};422};
427 423
428const AVFilter ff_af_sidechaingate = {424const AVFilter ff_af_sidechaingate = {
@@ -433,8 +429,8 @@ const AVFilter ff_af_sidechaingate = { · 4 unmodified lines
433 .query_formats = scquery_formats,429 .query_formats = scquery_formats,
434 .activate = activate,430 .activate = activate,
435 .uninit = uninit,431 .uninit = uninit,
436 .inputs = sidechaingate_inputs,432 FILTER_INPUTS(sidechaingate_inputs),
437 .outputs = sidechaingate_outputs,433 FILTER_OUTPUTS(sidechaingate_outputs),
438 .process_command = ff_filter_process_command,434 .process_command = ff_filter_process_command,
439 .flags = AVFILTER_FLAG_SUPPORT_TIMELINE_GENERIC,435 .flags = AVFILTER_FLAG_SUPPORT_TIMELINE_GENERIC,
440};436};
libavfilter/af_aiir.c+1−2
@@ -1518,7 +1518,6 @@ static const AVFilterPad inputs[] = { · 1517 unmodified lines
1518 .type = AVMEDIA_TYPE_AUDIO,1518 .type = AVMEDIA_TYPE_AUDIO,
1519 .filter_frame = filter_frame,1519 .filter_frame = filter_frame,
1520 },1520 },
1521 { NULL }
1522};1521};
1523 1522
1524#define OFFSET(x) offsetof(AudioIIRContext, x)1523#define OFFSET(x) offsetof(AudioIIRContext, x)
@@ -1574,7 +1573,7 @@ const AVFilter ff_af_aiir = { · 49 unmodified lines
1574 .init = init,1573 .init = init,
1575 .uninit = uninit,1574 .uninit = uninit,
1576 .query_formats = query_formats,1575 .query_formats = query_formats,
1577 .inputs = inputs,1576 FILTER_INPUTS(inputs),
1578 .flags = AVFILTER_FLAG_DYNAMIC_OUTPUTS |1577 .flags = AVFILTER_FLAG_DYNAMIC_OUTPUTS |
1579 AVFILTER_FLAG_SLICE_THREADS,1578 AVFILTER_FLAG_SLICE_THREADS,
1580};1579};
libavfilter/af_alimiter.c+2−4
@@ -337,7 +337,6 @@ static const AVFilterPad alimiter_inputs[] = { · 336 unmodified lines
337 .filter_frame = filter_frame,337 .filter_frame = filter_frame,
338 .config_props = config_input,338 .config_props = config_input,
339 },339 },
340 { NULL }
341};340};
342 341
343static const AVFilterPad alimiter_outputs[] = {342static const AVFilterPad alimiter_outputs[] = {
@@ -345,7 +344,6 @@ static const AVFilterPad alimiter_outputs[] = { · 1 unmodified line
345 .name = "default",344 .name = "default",
346 .type = AVMEDIA_TYPE_AUDIO,345 .type = AVMEDIA_TYPE_AUDIO,
347 },346 },
348 { NULL }
349};347};
350 348
351const AVFilter ff_af_alimiter = {349const AVFilter ff_af_alimiter = {
@@ -356,6 +354,6 @@ const AVFilter ff_af_alimiter = { · 4 unmodified lines
356 .init = init,354 .init = init,
357 .uninit = uninit,355 .uninit = uninit,
358 .query_formats = query_formats,356 .query_formats = query_formats,
359 .inputs = alimiter_inputs,357 FILTER_INPUTS(alimiter_inputs),
360 .outputs = alimiter_outputs,358 FILTER_OUTPUTS(alimiter_outputs),
361};359};
libavfilter/af_amerge.c+1−2
@@ -342,7 +342,6 @@ static const AVFilterPad amerge_outputs[] = { · 341 unmodified lines
342 .type = AVMEDIA_TYPE_AUDIO,342 .type = AVMEDIA_TYPE_AUDIO,
343 .config_props = config_output,343 .config_props = config_output,
344 },344 },
345 { NULL }
346};345};
347 346
348const AVFilter ff_af_amerge = {347const AVFilter ff_af_amerge = {
@@ -355,7 +354,7 @@ const AVFilter ff_af_amerge = { · 6 unmodified lines
355 .query_formats = query_formats,354 .query_formats = query_formats,
356 .activate = activate,355 .activate = activate,
357 .inputs = NULL,356 .inputs = NULL,
358 .outputs = amerge_outputs,357 FILTER_OUTPUTS(amerge_outputs),
359 .priv_class = &amerge_class,358 .priv_class = &amerge_class,
360 .flags = AVFILTER_FLAG_DYNAMIC_INPUTS,359 .flags = AVFILTER_FLAG_DYNAMIC_INPUTS,
361};360};
libavfilter/af_amix.c+1−2
@@ -634,7 +634,6 @@ static const AVFilterPad avfilter_af_amix_outputs[] = { · 633 unmodified lines
634 .type = AVMEDIA_TYPE_AUDIO,634 .type = AVMEDIA_TYPE_AUDIO,
635 .config_props = config_output,635 .config_props = config_output,
636 },636 },
637 { NULL }
638};637};
639 638
640const AVFilter ff_af_amix = {639const AVFilter ff_af_amix = {
@@ -647,7 +646,7 @@ const AVFilter ff_af_amix = { · 6 unmodified lines
647 .activate = activate,646 .activate = activate,
648 .query_formats = query_formats,647 .query_formats = query_formats,
649 .inputs = NULL,648 .inputs = NULL,
650 .outputs = avfilter_af_amix_outputs,649 FILTER_OUTPUTS(avfilter_af_amix_outputs),
651 .process_command = process_command,650 .process_command = process_command,
652 .flags = AVFILTER_FLAG_DYNAMIC_INPUTS,651 .flags = AVFILTER_FLAG_DYNAMIC_INPUTS,
653};652};
libavfilter/af_amultiply.c+2−4
@@ -179,7 +179,6 @@ static const AVFilterPad inputs[] = { · 178 unmodified lines
179 .name = "multiply1",179 .name = "multiply1",
180 .type = AVMEDIA_TYPE_AUDIO,180 .type = AVMEDIA_TYPE_AUDIO,
181 },181 },
182 { NULL }
183};182};
184 183
185static const AVFilterPad outputs[] = {184static const AVFilterPad outputs[] = {
@@ -188,7 +187,6 @@ static const AVFilterPad outputs[] = { · 2 unmodified lines
188 .type = AVMEDIA_TYPE_AUDIO,187 .type = AVMEDIA_TYPE_AUDIO,
189 .config_props = config_output,188 .config_props = config_output,
190 },189 },
191 { NULL }
192};190};
193 191
194const AVFilter ff_af_amultiply = {192const AVFilter ff_af_amultiply = {
@@ -199,6 +197,6 @@ const AVFilter ff_af_amultiply = { · 4 unmodified lines
199 .uninit = uninit,197 .uninit = uninit,
200 .activate = activate,198 .activate = activate,
201 .query_formats = query_formats,199 .query_formats = query_formats,
202 .inputs = inputs,200 FILTER_INPUTS(inputs),
203 .outputs = outputs,201 FILTER_OUTPUTS(outputs),
204};202};
libavfilter/af_anequalizer.c+1−2
@@ -761,7 +761,6 @@ static const AVFilterPad inputs[] = { · 760 unmodified lines
761 .config_props = config_input,761 .config_props = config_input,
762 .filter_frame = filter_frame,762 .filter_frame = filter_frame,
763 },763 },
764 { NULL }
765};764};
766 765
767const AVFilter ff_af_anequalizer = {766const AVFilter ff_af_anequalizer = {
@@ -772,7 +771,7 @@ const AVFilter ff_af_anequalizer = { · 4 unmodified lines
772 .init = init,771 .init = init,
773 .uninit = uninit,772 .uninit = uninit,
774 .query_formats = query_formats,773 .query_formats = query_formats,
775 .inputs = inputs,774 FILTER_INPUTS(inputs),
776 .outputs = NULL,775 .outputs = NULL,
777 .process_command = process_command,776 .process_command = process_command,
778 .flags = AVFILTER_FLAG_DYNAMIC_OUTPUTS |777 .flags = AVFILTER_FLAG_DYNAMIC_OUTPUTS |
libavfilter/af_anlmdn.c+2−4
@@ -388,7 +388,6 @@ static const AVFilterPad inputs[] = { · 387 unmodified lines
388 .type = AVMEDIA_TYPE_AUDIO,388 .type = AVMEDIA_TYPE_AUDIO,
389 .filter_frame = filter_frame,389 .filter_frame = filter_frame,
390 },390 },
391 { NULL }
392};391};
393 392
394static const AVFilterPad outputs[] = {393static const AVFilterPad outputs[] = {
@@ -398,7 +397,6 @@ static const AVFilterPad outputs[] = { · 3 unmodified lines
398 .config_props = config_output,397 .config_props = config_output,
399 .request_frame = request_frame,398 .request_frame = request_frame,
400 },399 },
401 { NULL }
402};400};
403 401
404const AVFilter ff_af_anlmdn = {402const AVFilter ff_af_anlmdn = {
@@ -408,8 +406,8 @@ const AVFilter ff_af_anlmdn = { · 3 unmodified lines
408 .priv_size = sizeof(AudioNLMeansContext),406 .priv_size = sizeof(AudioNLMeansContext),
409 .priv_class = &anlmdn_class,407 .priv_class = &anlmdn_class,
410 .uninit = uninit,408 .uninit = uninit,
411 .inputs = inputs,409 FILTER_INPUTS(inputs),
412 .outputs = outputs,410 FILTER_OUTPUTS(outputs),
413 .process_command = process_command,411 .process_command = process_command,
414 .flags = AVFILTER_FLAG_SUPPORT_TIMELINE_INTERNAL |412 .flags = AVFILTER_FLAG_SUPPORT_TIMELINE_INTERNAL |
415 AVFILTER_FLAG_SLICE_THREADS,413 AVFILTER_FLAG_SLICE_THREADS,
libavfilter/af_anlms.c+2−4
@@ -288,7 +288,6 @@ static const AVFilterPad inputs[] = { · 287 unmodified lines
288 .name = "desired",288 .name = "desired",
289 .type = AVMEDIA_TYPE_AUDIO,289 .type = AVMEDIA_TYPE_AUDIO,
290 },290 },
291 { NULL }
292};291};
293 292
294static const AVFilterPad outputs[] = {293static const AVFilterPad outputs[] = {
@@ -297,7 +296,6 @@ static const AVFilterPad outputs[] = { · 2 unmodified lines
297 .type = AVMEDIA_TYPE_AUDIO,296 .type = AVMEDIA_TYPE_AUDIO,
298 .config_props = config_output,297 .config_props = config_output,
299 },298 },
300 { NULL }
301};299};
302 300
303const AVFilter ff_af_anlms = {301const AVFilter ff_af_anlms = {
@@ -309,8 +307,8 @@ const AVFilter ff_af_anlms = { · 5 unmodified lines
309 .uninit = uninit,307 .uninit = uninit,
310 .activate = activate,308 .activate = activate,
311 .query_formats = query_formats,309 .query_formats = query_formats,
312 .inputs = inputs,310 FILTER_INPUTS(inputs),
313 .outputs = outputs,311 FILTER_OUTPUTS(outputs),
314 .flags = AVFILTER_FLAG_SLICE_THREADS,312 .flags = AVFILTER_FLAG_SLICE_THREADS,
315 .process_command = ff_filter_process_command,313 .process_command = ff_filter_process_command,
316};314};
libavfilter/af_anull.c+2−4
@@ -32,7 +32,6 @@ static const AVFilterPad avfilter_af_anull_inputs[] = { · 31 unmodified lines
32 .name = "default",32 .name = "default",
33 .type = AVMEDIA_TYPE_AUDIO,33 .type = AVMEDIA_TYPE_AUDIO,
34 },34 },
35 { NULL }
36};35};
37 36
38static const AVFilterPad avfilter_af_anull_outputs[] = {37static const AVFilterPad avfilter_af_anull_outputs[] = {
@@ -40,12 +39,11 @@ static const AVFilterPad avfilter_af_anull_outputs[] = { · 1 unmodified line
40 .name = "default",39 .name = "default",
41 .type = AVMEDIA_TYPE_AUDIO,40 .type = AVMEDIA_TYPE_AUDIO,
42 },41 },
43 { NULL }
44};42};
45 43
46const AVFilter ff_af_anull = {44const AVFilter ff_af_anull = {
47 .name = "anull",45 .name = "anull",
48 .description = NULL_IF_CONFIG_SMALL("Pass the source unchanged to the output."),46 .description = NULL_IF_CONFIG_SMALL("Pass the source unchanged to the output."),
49 .inputs = avfilter_af_anull_inputs,47 FILTER_INPUTS(avfilter_af_anull_inputs),
50 .outputs = avfilter_af_anull_outputs,48 FILTER_OUTPUTS(avfilter_af_anull_outputs),
51};49};
libavfilter/af_apad.c+2−4
@@ -155,7 +155,6 @@ static const AVFilterPad apad_inputs[] = { · 154 unmodified lines
155 .type = AVMEDIA_TYPE_AUDIO,155 .type = AVMEDIA_TYPE_AUDIO,
156 .filter_frame = filter_frame,156 .filter_frame = filter_frame,
157 },157 },
158 { NULL }
159};158};
160 159
161static const AVFilterPad apad_outputs[] = {160static const AVFilterPad apad_outputs[] = {
@@ -165,7 +164,6 @@ static const AVFilterPad apad_outputs[] = { · 3 unmodified lines
165 .config_props = config_output,164 .config_props = config_output,
166 .type = AVMEDIA_TYPE_AUDIO,165 .type = AVMEDIA_TYPE_AUDIO,
167 },166 },
168 { NULL }
169};167};
170 168
171const AVFilter ff_af_apad = {169const AVFilter ff_af_apad = {
@@ -173,8 +171,8 @@ const AVFilter ff_af_apad = { · 1 unmodified line
173 .description = NULL_IF_CONFIG_SMALL("Pad audio with silence."),171 .description = NULL_IF_CONFIG_SMALL("Pad audio with silence."),
174 .init = init,172 .init = init,
175 .priv_size = sizeof(APadContext),173 .priv_size = sizeof(APadContext),
176 .inputs = apad_inputs,174 FILTER_INPUTS(apad_inputs),
177 .outputs = apad_outputs,175 FILTER_OUTPUTS(apad_outputs),
178 .priv_class = &apad_class,176 .priv_class = &apad_class,
179 .flags = AVFILTER_FLAG_SUPPORT_TIMELINE_INTERNAL,177 .flags = AVFILTER_FLAG_SUPPORT_TIMELINE_INTERNAL,
180};178};
libavfilter/af_aphaser.c+2−4
@@ -265,7 +265,6 @@ static const AVFilterPad aphaser_inputs[] = { · 264 unmodified lines
265 .type = AVMEDIA_TYPE_AUDIO,265 .type = AVMEDIA_TYPE_AUDIO,
266 .filter_frame = filter_frame,266 .filter_frame = filter_frame,
267 },267 },
268 { NULL }
269};268};
270 269
271static const AVFilterPad aphaser_outputs[] = {270static const AVFilterPad aphaser_outputs[] = {
@@ -274,7 +273,6 @@ static const AVFilterPad aphaser_outputs[] = { · 2 unmodified lines
274 .type = AVMEDIA_TYPE_AUDIO,273 .type = AVMEDIA_TYPE_AUDIO,
275 .config_props = config_output,274 .config_props = config_output,
276 },275 },
277 { NULL }
278};276};
279 277
280const AVFilter ff_af_aphaser = {278const AVFilter ff_af_aphaser = {
@@ -284,7 +282,7 @@ const AVFilter ff_af_aphaser = { · 3 unmodified lines
284 .priv_size = sizeof(AudioPhaserContext),282 .priv_size = sizeof(AudioPhaserContext),
285 .init = init,283 .init = init,
286 .uninit = uninit,284 .uninit = uninit,
287 .inputs = aphaser_inputs,285 FILTER_INPUTS(aphaser_inputs),
288 .outputs = aphaser_outputs,286 FILTER_OUTPUTS(aphaser_outputs),
289 .priv_class = &aphaser_class,287 .priv_class = &aphaser_class,
290};288};
libavfilter/af_apulsator.c+2−4
@@ -235,7 +235,6 @@ static const AVFilterPad inputs[] = { · 234 unmodified lines
235 .config_props = config_input,235 .config_props = config_input,
236 .filter_frame = filter_frame,236 .filter_frame = filter_frame,
237 },237 },
238 { NULL }
239};238};
240 239
241static const AVFilterPad outputs[] = {240static const AVFilterPad outputs[] = {
@@ -243,7 +242,6 @@ static const AVFilterPad outputs[] = { · 1 unmodified line
243 .name = "default",242 .name = "default",
244 .type = AVMEDIA_TYPE_AUDIO,243 .type = AVMEDIA_TYPE_AUDIO,
245 },244 },
246 { NULL }
247};245};
248 246
249const AVFilter ff_af_apulsator = {247const AVFilter ff_af_apulsator = {
@@ -252,6 +250,6 @@ const AVFilter ff_af_apulsator = { · 2 unmodified lines
252 .priv_size = sizeof(AudioPulsatorContext),250 .priv_size = sizeof(AudioPulsatorContext),
253 .priv_class = &apulsator_class,251 .priv_class = &apulsator_class,
254 .query_formats = query_formats,252 .query_formats = query_formats,
255 .inputs = inputs,253 FILTER_INPUTS(inputs),
256 .outputs = outputs,254 FILTER_OUTPUTS(outputs),
257};255};
libavfilter/af_aresample.c+2−4
@@ -329,7 +329,6 @@ static const AVFilterPad aresample_inputs[] = { · 328 unmodified lines
329 .type = AVMEDIA_TYPE_AUDIO,329 .type = AVMEDIA_TYPE_AUDIO,
330 .filter_frame = filter_frame,330 .filter_frame = filter_frame,
331 },331 },
332 { NULL }
333};332};
334 333
335static const AVFilterPad aresample_outputs[] = {334static const AVFilterPad aresample_outputs[] = {
@@ -339,7 +338,6 @@ static const AVFilterPad aresample_outputs[] = { · 3 unmodified lines
339 .request_frame = request_frame,338 .request_frame = request_frame,
340 .type = AVMEDIA_TYPE_AUDIO,339 .type = AVMEDIA_TYPE_AUDIO,
341 },340 },
342 { NULL }
343};341};
344 342
345const AVFilter ff_af_aresample = {343const AVFilter ff_af_aresample = {
@@ -350,6 +348,6 @@ const AVFilter ff_af_aresample = { · 4 unmodified lines
350 .query_formats = query_formats,348 .query_formats = query_formats,
351 .priv_size = sizeof(AResampleContext),349 .priv_size = sizeof(AResampleContext),
352 .priv_class = &aresample_class,350 .priv_class = &aresample_class,
353 .inputs = aresample_inputs,351 FILTER_INPUTS(aresample_inputs),
354 .outputs = aresample_outputs,352 FILTER_OUTPUTS(aresample_outputs),
355};353};
libavfilter/af_arnndn.c+2−4
@@ -1584,7 +1584,6 @@ static const AVFilterPad inputs[] = { · 1583 unmodified lines
1584 .type = AVMEDIA_TYPE_AUDIO,1584 .type = AVMEDIA_TYPE_AUDIO,
1585 .config_props = config_input,1585 .config_props = config_input,
1586 },1586 },
1587 { NULL }
1588};1587};
1589 1588
1590static const AVFilterPad outputs[] = {1589static const AVFilterPad outputs[] = {
@@ -1592,7 +1591,6 @@ static const AVFilterPad outputs[] = { · 1 unmodified line
1592 .name = "default",1591 .name = "default",
1593 .type = AVMEDIA_TYPE_AUDIO,1592 .type = AVMEDIA_TYPE_AUDIO,
1594 },1593 },
1595 { NULL }
1596};1594};
1597 1595
1598#define OFFSET(x) offsetof(AudioRNNContext, x)1596#define OFFSET(x) offsetof(AudioRNNContext, x)
@@ -1616,8 +1614,8 @@ const AVFilter ff_af_arnndn = { · 17 unmodified lines
1616 .activate = activate,1614 .activate = activate,
1617 .init = init,1615 .init = init,
1618 .uninit = uninit,1616 .uninit = uninit,
1619 .inputs = inputs,1617 FILTER_INPUTS(inputs),
1620 .outputs = outputs,1618 FILTER_OUTPUTS(outputs),
1621 .flags = AVFILTER_FLAG_SUPPORT_TIMELINE_INTERNAL |1619 .flags = AVFILTER_FLAG_SUPPORT_TIMELINE_INTERNAL |
1622 AVFILTER_FLAG_SLICE_THREADS,1620 AVFILTER_FLAG_SLICE_THREADS,
1623 .process_command = process_command,1621 .process_command = process_command,
libavfilter/af_asetnsamples.c+2−4
@@ -106,7 +106,6 @@ static const AVFilterPad asetnsamples_inputs[] = { · 105 unmodified lines
106 .name = "default",106 .name = "default",
107 .type = AVMEDIA_TYPE_AUDIO,107 .type = AVMEDIA_TYPE_AUDIO,
108 },108 },
109 { NULL }
110};109};
111 110
112static const AVFilterPad asetnsamples_outputs[] = {111static const AVFilterPad asetnsamples_outputs[] = {
@@ -114,7 +113,6 @@ static const AVFilterPad asetnsamples_outputs[] = { · 1 unmodified line
114 .name = "default",113 .name = "default",
115 .type = AVMEDIA_TYPE_AUDIO,114 .type = AVMEDIA_TYPE_AUDIO,
116 },115 },
117 { NULL }
118};116};
119 117
120const AVFilter ff_af_asetnsamples = {118const AVFilter ff_af_asetnsamples = {
@@ -122,7 +120,7 @@ const AVFilter ff_af_asetnsamples = { · 1 unmodified line
122 .description = NULL_IF_CONFIG_SMALL("Set the number of samples for each output audio frames."),120 .description = NULL_IF_CONFIG_SMALL("Set the number of samples for each output audio frames."),
123 .priv_size = sizeof(ASNSContext),121 .priv_size = sizeof(ASNSContext),
124 .priv_class = &asetnsamples_class,122 .priv_class = &asetnsamples_class,
125 .inputs = asetnsamples_inputs,123 FILTER_INPUTS(asetnsamples_inputs),
126 .outputs = asetnsamples_outputs,124 FILTER_OUTPUTS(asetnsamples_outputs),
127 .activate = activate,125 .activate = activate,
128};126};
libavfilter/af_asetrate.c+2−4
@@ -94,7 +94,6 @@ static const AVFilterPad asetrate_inputs[] = { · 93 unmodified lines
94 .type = AVMEDIA_TYPE_AUDIO,94 .type = AVMEDIA_TYPE_AUDIO,
95 .filter_frame = filter_frame,95 .filter_frame = filter_frame,
96 },96 },
97 { NULL }
98};97};
99 98
100static const AVFilterPad asetrate_outputs[] = {99static const AVFilterPad asetrate_outputs[] = {
@@ -103,7 +102,6 @@ static const AVFilterPad asetrate_outputs[] = { · 2 unmodified lines
103 .type = AVMEDIA_TYPE_AUDIO,102 .type = AVMEDIA_TYPE_AUDIO,
104 .config_props = config_props,103 .config_props = config_props,
105 },104 },
106 { NULL }
107};105};
108 106
109const AVFilter ff_af_asetrate = {107const AVFilter ff_af_asetrate = {
@@ -112,7 +110,7 @@ const AVFilter ff_af_asetrate = { · 2 unmodified lines
112 "altering the data."),110 "altering the data."),
113 .query_formats = query_formats,111 .query_formats = query_formats,
114 .priv_size = sizeof(ASetRateContext),112 .priv_size = sizeof(ASetRateContext),
115 .inputs = asetrate_inputs,113 FILTER_INPUTS(asetrate_inputs),
116 .outputs = asetrate_outputs,114 FILTER_OUTPUTS(asetrate_outputs),
117 .priv_class = &asetrate_class,115 .priv_class = &asetrate_class,
118};116};
libavfilter/af_ashowinfo.c+2−4
@@ -243,7 +243,6 @@ static const AVFilterPad inputs[] = { · 242 unmodified lines
243 .type = AVMEDIA_TYPE_AUDIO,243 .type = AVMEDIA_TYPE_AUDIO,
244 .filter_frame = filter_frame,244 .filter_frame = filter_frame,
245 },245 },
246 { NULL }
247};246};
248 247
249static const AVFilterPad outputs[] = {248static const AVFilterPad outputs[] = {
@@ -251,7 +250,6 @@ static const AVFilterPad outputs[] = { · 1 unmodified line
251 .name = "default",250 .name = "default",
252 .type = AVMEDIA_TYPE_AUDIO,251 .type = AVMEDIA_TYPE_AUDIO,
253 },252 },
254 { NULL }
255};253};
256 254
257const AVFilter ff_af_ashowinfo = {255const AVFilter ff_af_ashowinfo = {
@@ -259,6 +257,6 @@ const AVFilter ff_af_ashowinfo = { · 1 unmodified line
259 .description = NULL_IF_CONFIG_SMALL("Show textual information for each audio frame."),257 .description = NULL_IF_CONFIG_SMALL("Show textual information for each audio frame."),
260 .priv_size = sizeof(AShowInfoContext),258 .priv_size = sizeof(AShowInfoContext),
261 .uninit = uninit,259 .uninit = uninit,
262 .inputs = inputs,260 FILTER_INPUTS(inputs),
263 .outputs = outputs,261 FILTER_OUTPUTS(outputs),
264};262};
libavfilter/af_asoftclip.c+2−4
@@ -451,7 +451,6 @@ static const AVFilterPad inputs[] = { · 450 unmodified lines
451 .filter_frame = filter_frame,451 .filter_frame = filter_frame,
452 .config_props = config_input,452 .config_props = config_input,
453 },453 },
454 { NULL }
455};454};
456 455
457static const AVFilterPad outputs[] = {456static const AVFilterPad outputs[] = {
@@ -459,7 +458,6 @@ static const AVFilterPad outputs[] = { · 1 unmodified line
459 .name = "default",458 .name = "default",
460 .type = AVMEDIA_TYPE_AUDIO,459 .type = AVMEDIA_TYPE_AUDIO,
461 },460 },
462 { NULL }
463};461};
464 462
465const AVFilter ff_af_asoftclip = {463const AVFilter ff_af_asoftclip = {
@@ -468,8 +466,8 @@ const AVFilter ff_af_asoftclip = { · 2 unmodified lines
468 .query_formats = query_formats,466 .query_formats = query_formats,
469 .priv_size = sizeof(ASoftClipContext),467 .priv_size = sizeof(ASoftClipContext),
470 .priv_class = &asoftclip_class,468 .priv_class = &asoftclip_class,
471 .inputs = inputs,469 FILTER_INPUTS(inputs),
472 .outputs = outputs,470 FILTER_OUTPUTS(outputs),
473 .uninit = uninit,471 .uninit = uninit,
474 .process_command = ff_filter_process_command,472 .process_command = ff_filter_process_command,
475 .flags = AVFILTER_FLAG_SUPPORT_TIMELINE_GENERIC |473 .flags = AVFILTER_FLAG_SUPPORT_TIMELINE_GENERIC |
libavfilter/af_asr.c+2−4
@@ -156,7 +156,6 @@ static const AVFilterPad asr_inputs[] = { · 155 unmodified lines
156 .filter_frame = filter_frame,156 .filter_frame = filter_frame,
157 .config_props = config_input,157 .config_props = config_input,
158 },158 },
159 { NULL }
160};159};
161 160
162static const AVFilterPad asr_outputs[] = {161static const AVFilterPad asr_outputs[] = {
@@ -164,7 +163,6 @@ static const AVFilterPad asr_outputs[] = { · 1 unmodified line
164 .name = "default",163 .name = "default",
165 .type = AVMEDIA_TYPE_AUDIO,164 .type = AVMEDIA_TYPE_AUDIO,
166 },165 },
167 { NULL }
168};166};
169 167
170const AVFilter ff_af_asr = {168const AVFilter ff_af_asr = {
@@ -175,6 +173,6 @@ const AVFilter ff_af_asr = { · 4 unmodified lines
175 .init = asr_init,173 .init = asr_init,
176 .uninit = asr_uninit,174 .uninit = asr_uninit,
177 .query_formats = query_formats,175 .query_formats = query_formats,
178 .inputs = asr_inputs,176 FILTER_INPUTS(asr_inputs),
179 .outputs = asr_outputs,177 FILTER_OUTPUTS(asr_outputs),
180};178};
libavfilter/af_astats.c+2−4
@@ -815,7 +815,6 @@ static const AVFilterPad astats_inputs[] = { · 814 unmodified lines
815 .type = AVMEDIA_TYPE_AUDIO,815 .type = AVMEDIA_TYPE_AUDIO,
816 .filter_frame = filter_frame,816 .filter_frame = filter_frame,
817 },817 },
818 { NULL }
819};818};
820 819
821static const AVFilterPad astats_outputs[] = {820static const AVFilterPad astats_outputs[] = {
@@ -824,7 +823,6 @@ static const AVFilterPad astats_outputs[] = { · 2 unmodified lines
824 .type = AVMEDIA_TYPE_AUDIO,823 .type = AVMEDIA_TYPE_AUDIO,
825 .config_props = config_output,824 .config_props = config_output,
826 },825 },
827 { NULL }
828};826};
829 827
830const AVFilter ff_af_astats = {828const AVFilter ff_af_astats = {
@@ -834,7 +832,7 @@ const AVFilter ff_af_astats = { · 3 unmodified lines
834 .priv_size = sizeof(AudioStatsContext),832 .priv_size = sizeof(AudioStatsContext),
835 .priv_class = &astats_class,833 .priv_class = &astats_class,
836 .uninit = uninit,834 .uninit = uninit,
837 .inputs = astats_inputs,835 FILTER_INPUTS(astats_inputs),
838 .outputs = astats_outputs,836 FILTER_OUTPUTS(astats_outputs),
839 .flags = AVFILTER_FLAG_SLICE_THREADS,837 .flags = AVFILTER_FLAG_SLICE_THREADS,
840};838};
libavfilter/af_asubboost.c+2−4
@@ -221,7 +221,6 @@ static const AVFilterPad inputs[] = { · 220 unmodified lines
221 .filter_frame = filter_frame,221 .filter_frame = filter_frame,
222 .config_props = config_input,222 .config_props = config_input,
223 },223 },
224 { NULL }
225};224};
226 225
227static const AVFilterPad outputs[] = {226static const AVFilterPad outputs[] = {
@@ -229,7 +228,6 @@ static const AVFilterPad outputs[] = { · 1 unmodified line
229 .name = "default",228 .name = "default",
230 .type = AVMEDIA_TYPE_AUDIO,229 .type = AVMEDIA_TYPE_AUDIO,
231 },230 },
232 { NULL }
233};231};
234 232
235const AVFilter ff_af_asubboost = {233const AVFilter ff_af_asubboost = {
@@ -239,8 +237,8 @@ const AVFilter ff_af_asubboost = { · 3 unmodified lines
239 .priv_size = sizeof(ASubBoostContext),237 .priv_size = sizeof(ASubBoostContext),
240 .priv_class = &asubboost_class,238 .priv_class = &asubboost_class,
241 .uninit = uninit,239 .uninit = uninit,
242 .inputs = inputs,240 FILTER_INPUTS(inputs),
243 .outputs = outputs,241 FILTER_OUTPUTS(outputs),
244 .process_command = process_command,242 .process_command = process_command,
245 .flags = AVFILTER_FLAG_SUPPORT_TIMELINE_INTERNAL |243 .flags = AVFILTER_FLAG_SUPPORT_TIMELINE_INTERNAL |
246 AVFILTER_FLAG_SLICE_THREADS,244 AVFILTER_FLAG_SLICE_THREADS,
libavfilter/af_asupercut.c+8−10
@@ -345,7 +345,6 @@ static const AVFilterPad inputs[] = { · 344 unmodified lines
345 .filter_frame = filter_frame,345 .filter_frame = filter_frame,
346 .config_props = config_input,346 .config_props = config_input,
347 },347 },
348 { NULL }
349};348};
350 349
351static const AVFilterPad outputs[] = {350static const AVFilterPad outputs[] = {
@@ -353,7 +352,6 @@ static const AVFilterPad outputs[] = { · 1 unmodified line
353 .name = "default",352 .name = "default",
354 .type = AVMEDIA_TYPE_AUDIO,353 .type = AVMEDIA_TYPE_AUDIO,
355 },354 },
356 { NULL }
357};355};
358 356
359const AVFilter ff_af_asupercut = {357const AVFilter ff_af_asupercut = {
@@ -363,8 +361,8 @@ const AVFilter ff_af_asupercut = { · 3 unmodified lines
363 .priv_size = sizeof(ASuperCutContext),361 .priv_size = sizeof(ASuperCutContext),
364 .priv_class = &asupercut_class,362 .priv_class = &asupercut_class,
365 .uninit = uninit,363 .uninit = uninit,
366 .inputs = inputs,364 FILTER_INPUTS(inputs),
367 .outputs = outputs,365 FILTER_OUTPUTS(outputs),
368 .process_command = process_command,366 .process_command = process_command,
369 .flags = AVFILTER_FLAG_SUPPORT_TIMELINE_GENERIC |367 .flags = AVFILTER_FLAG_SUPPORT_TIMELINE_GENERIC |
370 AVFILTER_FLAG_SLICE_THREADS,368 AVFILTER_FLAG_SLICE_THREADS,
@@ -386,8 +384,8 @@ const AVFilter ff_af_asubcut = { · 15 unmodified lines
386 .priv_size = sizeof(ASuperCutContext),384 .priv_size = sizeof(ASuperCutContext),
387 .priv_class = &asubcut_class,385 .priv_class = &asubcut_class,
388 .uninit = uninit,386 .uninit = uninit,
389 .inputs = inputs,387 FILTER_INPUTS(inputs),
390 .outputs = outputs,388 FILTER_OUTPUTS(outputs),
391 .process_command = process_command,389 .process_command = process_command,
392 .flags = AVFILTER_FLAG_SUPPORT_TIMELINE_GENERIC |390 .flags = AVFILTER_FLAG_SUPPORT_TIMELINE_GENERIC |
393 AVFILTER_FLAG_SLICE_THREADS,391 AVFILTER_FLAG_SLICE_THREADS,
@@ -411,8 +409,8 @@ const AVFilter ff_af_asuperpass = { · 17 unmodified lines
411 .priv_size = sizeof(ASuperCutContext),409 .priv_size = sizeof(ASuperCutContext),
412 .priv_class = &asuperpass_class,410 .priv_class = &asuperpass_class,
413 .uninit = uninit,411 .uninit = uninit,
414 .inputs = inputs,412 FILTER_INPUTS(inputs),
415 .outputs = outputs,413 FILTER_OUTPUTS(outputs),
416 .process_command = process_command,414 .process_command = process_command,
417 .flags = AVFILTER_FLAG_SUPPORT_TIMELINE_GENERIC |415 .flags = AVFILTER_FLAG_SUPPORT_TIMELINE_GENERIC |
418 AVFILTER_FLAG_SLICE_THREADS,416 AVFILTER_FLAG_SLICE_THREADS,
@@ -428,8 +426,8 @@ const AVFilter ff_af_asuperstop = { · 9 unmodified lines
428 .priv_size = sizeof(ASuperCutContext),426 .priv_size = sizeof(ASuperCutContext),
429 .priv_class = &asuperstop_class,427 .priv_class = &asuperstop_class,
430 .uninit = uninit,428 .uninit = uninit,
431 .inputs = inputs,429 FILTER_INPUTS(inputs),
432 .outputs = outputs,430 FILTER_OUTPUTS(outputs),
433 .process_command = process_command,431 .process_command = process_command,
434 .flags = AVFILTER_FLAG_SUPPORT_TIMELINE_GENERIC |432 .flags = AVFILTER_FLAG_SUPPORT_TIMELINE_GENERIC |
435 AVFILTER_FLAG_SLICE_THREADS,433 AVFILTER_FLAG_SLICE_THREADS,
libavfilter/af_atempo.c+2−4
@@ -1173,7 +1173,6 @@ static const AVFilterPad atempo_inputs[] = { · 1172 unmodified lines
1173 .filter_frame = filter_frame,1173 .filter_frame = filter_frame,
1174 .config_props = config_props,1174 .config_props = config_props,
1175 },1175 },
1176 { NULL }
1177};1176};
1178 1177
1179static const AVFilterPad atempo_outputs[] = {1178static const AVFilterPad atempo_outputs[] = {
@@ -1182,7 +1181,6 @@ static const AVFilterPad atempo_outputs[] = { · 2 unmodified lines
1182 .request_frame = request_frame,1181 .request_frame = request_frame,
1183 .type = AVMEDIA_TYPE_AUDIO,1182 .type = AVMEDIA_TYPE_AUDIO,
1184 },1183 },
1185 { NULL }
1186};1184};
1187 1185
1188const AVFilter ff_af_atempo = {1186const AVFilter ff_af_atempo = {
@@ -1194,6 +1192,6 @@ const AVFilter ff_af_atempo = { · 5 unmodified lines
1194 .process_command = process_command,1192 .process_command = process_command,
1195 .priv_size = sizeof(ATempoContext),1193 .priv_size = sizeof(ATempoContext),
1196 .priv_class = &atempo_class,1194 .priv_class = &atempo_class,
1197 .inputs = atempo_inputs,1195 FILTER_INPUTS(atempo_inputs),
1198 .outputs = atempo_outputs,1196 FILTER_OUTPUTS(atempo_outputs),
1199};1197};
libavfilter/af_axcorrelate.c+2−4
@@ -326,7 +326,6 @@ static const AVFilterPad inputs[] = { · 325 unmodified lines
326 .name = "axcorrelate1",326 .name = "axcorrelate1",
327 .type = AVMEDIA_TYPE_AUDIO,327 .type = AVMEDIA_TYPE_AUDIO,
328 },328 },
329 { NULL }
330};329};
331 330
332static const AVFilterPad outputs[] = {331static const AVFilterPad outputs[] = {
@@ -335,7 +334,6 @@ static const AVFilterPad outputs[] = { · 2 unmodified lines
335 .type = AVMEDIA_TYPE_AUDIO,334 .type = AVMEDIA_TYPE_AUDIO,
336 .config_props = config_output,335 .config_props = config_output,
337 },336 },
338 { NULL }
339};337};
340 338
341#define AF AV_OPT_FLAG_AUDIO_PARAM|AV_OPT_FLAG_FILTERING_PARAM339#define AF AV_OPT_FLAG_AUDIO_PARAM|AV_OPT_FLAG_FILTERING_PARAM
@@ -359,6 +357,6 @@ const AVFilter ff_af_axcorrelate = { · 17 unmodified lines
359 .query_formats = query_formats,357 .query_formats = query_formats,
360 .activate = activate,358 .activate = activate,
361 .uninit = uninit,359 .uninit = uninit,
362 .inputs = inputs,360 FILTER_INPUTS(inputs),
363 .outputs = outputs,361 FILTER_OUTPUTS(outputs),
364};362};
libavfilter/af_biquads.c+2−4
@@ -839,7 +839,6 @@ static const AVFilterPad inputs[] = { · 838 unmodified lines
839 .type = AVMEDIA_TYPE_AUDIO,839 .type = AVMEDIA_TYPE_AUDIO,
840 .filter_frame = filter_frame,840 .filter_frame = filter_frame,
841 },841 },
842 { NULL }
843};842};
844 843
845static const AVFilterPad outputs[] = {844static const AVFilterPad outputs[] = {
@@ -848,7 +847,6 @@ static const AVFilterPad outputs[] = { · 2 unmodified lines
848 .type = AVMEDIA_TYPE_AUDIO,847 .type = AVMEDIA_TYPE_AUDIO,
849 .config_props = config_output,848 .config_props = config_output,
850 },849 },
851 { NULL }
852};850};
853 851
854#define OFFSET(x) offsetof(BiquadsContext, x)852#define OFFSET(x) offsetof(BiquadsContext, x)
@@ -871,8 +869,8 @@ const AVFilter ff_af_##name_ = { \ · 16 unmodified lines
871 .init = name_##_init, \869 .init = name_##_init, \
872 .uninit = uninit, \870 .uninit = uninit, \
873 .query_formats = query_formats, \871 .query_formats = query_formats, \
874 .inputs = inputs, \872 FILTER_INPUTS(inputs), \
875 .outputs = outputs, \873 FILTER_OUTPUTS(outputs), \
876 .priv_class = &name_##_class, \874 .priv_class = &name_##_class, \
877 .process_command = process_command, \875 .process_command = process_command, \
878 .flags = AVFILTER_FLAG_SLICE_THREADS | AVFILTER_FLAG_SUPPORT_TIMELINE_INTERNAL, \876 .flags = AVFILTER_FLAG_SLICE_THREADS | AVFILTER_FLAG_SUPPORT_TIMELINE_INTERNAL, \
libavfilter/af_bs2b.c+2−4
@@ -192,7 +192,6 @@ static const AVFilterPad bs2b_inputs[] = { · 191 unmodified lines
192 .type = AVMEDIA_TYPE_AUDIO,192 .type = AVMEDIA_TYPE_AUDIO,
193 .filter_frame = filter_frame,193 .filter_frame = filter_frame,
194 },194 },
195 { NULL }
196};195};
197 196
198static const AVFilterPad bs2b_outputs[] = {197static const AVFilterPad bs2b_outputs[] = {
@@ -201,7 +200,6 @@ static const AVFilterPad bs2b_outputs[] = { · 2 unmodified lines
201 .type = AVMEDIA_TYPE_AUDIO,200 .type = AVMEDIA_TYPE_AUDIO,
202 .config_props = config_output,201 .config_props = config_output,
203 },202 },
204 { NULL }
205};203};
206 204
207const AVFilter ff_af_bs2b = {205const AVFilter ff_af_bs2b = {
@@ -212,6 +210,6 @@ const AVFilter ff_af_bs2b = { · 4 unmodified lines
212 .priv_class = &bs2b_class,210 .priv_class = &bs2b_class,
213 .init = init,211 .init = init,
214 .uninit = uninit,212 .uninit = uninit,
215 .inputs = bs2b_inputs,213 FILTER_INPUTS(bs2b_inputs),
216 .outputs = bs2b_outputs,214 FILTER_OUTPUTS(bs2b_outputs),
217};215};
libavfilter/af_channelmap.c+2−4
@@ -387,7 +387,6 @@ static const AVFilterPad avfilter_af_channelmap_inputs[] = { · 386 unmodified lines
387 .filter_frame = channelmap_filter_frame,387 .filter_frame = channelmap_filter_frame,
388 .config_props = channelmap_config_input,388 .config_props = channelmap_config_input,
389 },389 },
390 { NULL }
391};390};
392 391
393static const AVFilterPad avfilter_af_channelmap_outputs[] = {392static const AVFilterPad avfilter_af_channelmap_outputs[] = {
@@ -395,7 +394,6 @@ static const AVFilterPad avfilter_af_channelmap_outputs[] = { · 1 unmodified line
395 .name = "default",394 .name = "default",
396 .type = AVMEDIA_TYPE_AUDIO395 .type = AVMEDIA_TYPE_AUDIO
397 },396 },
398 { NULL }
399};397};
400 398
401const AVFilter ff_af_channelmap = {399const AVFilter ff_af_channelmap = {
@@ -405,6 +403,6 @@ const AVFilter ff_af_channelmap = { · 3 unmodified lines
405 .query_formats = channelmap_query_formats,403 .query_formats = channelmap_query_formats,
406 .priv_size = sizeof(ChannelMapContext),404 .priv_size = sizeof(ChannelMapContext),
407 .priv_class = &channelmap_class,405 .priv_class = &channelmap_class,
408 .inputs = avfilter_af_channelmap_inputs,406 FILTER_INPUTS(avfilter_af_channelmap_inputs),
409 .outputs = avfilter_af_channelmap_outputs,407 FILTER_OUTPUTS(avfilter_af_channelmap_outputs),
410};408};
libavfilter/af_channelsplit.c+1−2
@@ -164,7 +164,6 @@ static const AVFilterPad avfilter_af_channelsplit_inputs[] = { · 163 unmodified lines
164 .type = AVMEDIA_TYPE_AUDIO,164 .type = AVMEDIA_TYPE_AUDIO,
165 .filter_frame = filter_frame,165 .filter_frame = filter_frame,
166 },166 },
167 { NULL }
168};167};
169 168
170const AVFilter ff_af_channelsplit = {169const AVFilter ff_af_channelsplit = {
@@ -174,7 +173,7 @@ const AVFilter ff_af_channelsplit = { · 3 unmodified lines
174 .priv_class = &channelsplit_class,173 .priv_class = &channelsplit_class,
175 .init = init,174 .init = init,
176 .query_formats = query_formats,175 .query_formats = query_formats,
177 .inputs = avfilter_af_channelsplit_inputs,176 FILTER_INPUTS(avfilter_af_channelsplit_inputs),
178 .outputs = NULL,177 .outputs = NULL,
179 .flags = AVFILTER_FLAG_DYNAMIC_OUTPUTS,178 .flags = AVFILTER_FLAG_DYNAMIC_OUTPUTS,
180};179};
libavfilter/af_chorus.c+2−4
@@ -343,7 +343,6 @@ static const AVFilterPad chorus_inputs[] = { · 342 unmodified lines
343 .type = AVMEDIA_TYPE_AUDIO,343 .type = AVMEDIA_TYPE_AUDIO,
344 .filter_frame = filter_frame,344 .filter_frame = filter_frame,
345 },345 },
346 { NULL }
347};346};
348 347
349static const AVFilterPad chorus_outputs[] = {348static const AVFilterPad chorus_outputs[] = {
@@ -353,7 +352,6 @@ static const AVFilterPad chorus_outputs[] = { · 3 unmodified lines
353 .request_frame = request_frame,352 .request_frame = request_frame,
354 .config_props = config_output,353 .config_props = config_output,
355 },354 },
356 { NULL }
357};355};
358 356
359const AVFilter ff_af_chorus = {357const AVFilter ff_af_chorus = {
@@ -364,6 +362,6 @@ const AVFilter ff_af_chorus = { · 4 unmodified lines
364 .priv_class = &chorus_class,362 .priv_class = &chorus_class,
365 .init = init,363 .init = init,
366 .uninit = uninit,364 .uninit = uninit,
367 .inputs = chorus_inputs,365 FILTER_INPUTS(chorus_inputs),
368 .outputs = chorus_outputs,366 FILTER_OUTPUTS(chorus_outputs),
369};367};
libavfilter/af_compand.c+2−4
@@ -558,7 +558,6 @@ static const AVFilterPad compand_inputs[] = { · 557 unmodified lines
558 .type = AVMEDIA_TYPE_AUDIO,558 .type = AVMEDIA_TYPE_AUDIO,
559 .filter_frame = filter_frame,559 .filter_frame = filter_frame,
560 },560 },
561 { NULL }
562};561};
563 562
564static const AVFilterPad compand_outputs[] = {563static const AVFilterPad compand_outputs[] = {
@@ -568,7 +567,6 @@ static const AVFilterPad compand_outputs[] = { · 3 unmodified lines
568 .config_props = config_output,567 .config_props = config_output,
569 .type = AVMEDIA_TYPE_AUDIO,568 .type = AVMEDIA_TYPE_AUDIO,
570 },569 },
571 { NULL }
572};570};
573 571
574 572
@@ -581,6 +579,6 @@ const AVFilter ff_af_compand = { · 6 unmodified lines
581 .priv_class = &compand_class,579 .priv_class = &compand_class,
582 .init = init,580 .init = init,
583 .uninit = uninit,581 .uninit = uninit,
584 .inputs = compand_inputs,582 FILTER_INPUTS(compand_inputs),
585 .outputs = compand_outputs,583 FILTER_OUTPUTS(compand_outputs),
586};584};
libavfilter/af_compensationdelay.c+2−4
@@ -162,7 +162,6 @@ static const AVFilterPad compensationdelay_inputs[] = { · 161 unmodified lines
162 .config_props = config_input,162 .config_props = config_input,
163 .filter_frame = filter_frame,163 .filter_frame = filter_frame,
164 },164 },
165 { NULL }
166};165};
167 166
168static const AVFilterPad compensationdelay_outputs[] = {167static const AVFilterPad compensationdelay_outputs[] = {
@@ -170,7 +169,6 @@ static const AVFilterPad compensationdelay_outputs[] = { · 1 unmodified line
170 .name = "default",169 .name = "default",
171 .type = AVMEDIA_TYPE_AUDIO,170 .type = AVMEDIA_TYPE_AUDIO,
172 },171 },
173 { NULL }
174};172};
175 173
176const AVFilter ff_af_compensationdelay = {174const AVFilter ff_af_compensationdelay = {
@@ -180,6 +178,6 @@ const AVFilter ff_af_compensationdelay = { · 3 unmodified lines
180 .priv_size = sizeof(CompensationDelayContext),178 .priv_size = sizeof(CompensationDelayContext),
181 .priv_class = &compensationdelay_class,179 .priv_class = &compensationdelay_class,
182 .uninit = uninit,180 .uninit = uninit,
183 .inputs = compensationdelay_inputs,181 FILTER_INPUTS(compensationdelay_inputs),
184 .outputs = compensationdelay_outputs,182 FILTER_OUTPUTS(compensationdelay_outputs),
185};183};
libavfilter/af_crossfeed.c+2−4
@@ -164,7 +164,6 @@ static const AVFilterPad inputs[] = { · 163 unmodified lines
164 .filter_frame = filter_frame,164 .filter_frame = filter_frame,
165 .config_props = config_input,165 .config_props = config_input,
166 },166 },
167 { NULL }
168};167};
169 168
170static const AVFilterPad outputs[] = {169static const AVFilterPad outputs[] = {
@@ -172,7 +171,6 @@ static const AVFilterPad outputs[] = { · 1 unmodified line
172 .name = "default",171 .name = "default",
173 .type = AVMEDIA_TYPE_AUDIO,172 .type = AVMEDIA_TYPE_AUDIO,
174 },173 },
175 { NULL }
176};174};
177 175
178const AVFilter ff_af_crossfeed = {176const AVFilter ff_af_crossfeed = {
@@ -181,8 +179,8 @@ const AVFilter ff_af_crossfeed = { · 2 unmodified lines
181 .query_formats = query_formats,179 .query_formats = query_formats,
182 .priv_size = sizeof(CrossfeedContext),180 .priv_size = sizeof(CrossfeedContext),
183 .priv_class = &crossfeed_class,181 .priv_class = &crossfeed_class,
184 .inputs = inputs,182 FILTER_INPUTS(inputs),
185 .outputs = outputs,183 FILTER_OUTPUTS(outputs),
186 .flags = AVFILTER_FLAG_SUPPORT_TIMELINE_INTERNAL,184 .flags = AVFILTER_FLAG_SUPPORT_TIMELINE_INTERNAL,
187 .process_command = process_command,185 .process_command = process_command,
188};186};
libavfilter/af_crystalizer.c+2−4
@@ -433,7 +433,6 @@ static const AVFilterPad inputs[] = { · 432 unmodified lines
433 .filter_frame = filter_frame,433 .filter_frame = filter_frame,
434 .config_props = config_input,434 .config_props = config_input,
435 },435 },
436 { NULL }
437};436};
438 437
439static const AVFilterPad outputs[] = {438static const AVFilterPad outputs[] = {
@@ -441,7 +440,6 @@ static const AVFilterPad outputs[] = { · 1 unmodified line
441 .name = "default",440 .name = "default",
442 .type = AVMEDIA_TYPE_AUDIO,441 .type = AVMEDIA_TYPE_AUDIO,
443 },442 },
444 { NULL }
445};443};
446 444
447const AVFilter ff_af_crystalizer = {445const AVFilter ff_af_crystalizer = {
@@ -451,8 +449,8 @@ const AVFilter ff_af_crystalizer = { · 3 unmodified lines
451 .priv_size = sizeof(CrystalizerContext),449 .priv_size = sizeof(CrystalizerContext),
452 .priv_class = &crystalizer_class,450 .priv_class = &crystalizer_class,
453 .uninit = uninit,451 .uninit = uninit,
454 .inputs = inputs,452 FILTER_INPUTS(inputs),
455 .outputs = outputs,453 FILTER_OUTPUTS(outputs),
456 .process_command = process_command,454 .process_command = process_command,
457 .flags = AVFILTER_FLAG_SUPPORT_TIMELINE_INTERNAL |455 .flags = AVFILTER_FLAG_SUPPORT_TIMELINE_INTERNAL |
458 AVFILTER_FLAG_SLICE_THREADS,456 AVFILTER_FLAG_SLICE_THREADS,
libavfilter/af_dcshift.c+2−4
@@ -136,7 +136,6 @@ static const AVFilterPad dcshift_inputs[] = { · 135 unmodified lines
136 .type = AVMEDIA_TYPE_AUDIO,136 .type = AVMEDIA_TYPE_AUDIO,
137 .filter_frame = filter_frame,137 .filter_frame = filter_frame,
138 },138 },
139 { NULL }
140};139};
141 140
142static const AVFilterPad dcshift_outputs[] = {141static const AVFilterPad dcshift_outputs[] = {
@@ -144,7 +143,6 @@ static const AVFilterPad dcshift_outputs[] = { · 1 unmodified line
144 .name = "default",143 .name = "default",
145 .type = AVMEDIA_TYPE_AUDIO,144 .type = AVMEDIA_TYPE_AUDIO,
146 },145 },
147 { NULL }
148};146};
149 147
150const AVFilter ff_af_dcshift = {148const AVFilter ff_af_dcshift = {
@@ -154,7 +152,7 @@ const AVFilter ff_af_dcshift = { · 3 unmodified lines
154 .priv_size = sizeof(DCShiftContext),152 .priv_size = sizeof(DCShiftContext),
155 .priv_class = &dcshift_class,153 .priv_class = &dcshift_class,
156 .init = init,154 .init = init,
157 .inputs = dcshift_inputs,155 FILTER_INPUTS(dcshift_inputs),
158 .outputs = dcshift_outputs,156 FILTER_OUTPUTS(dcshift_outputs),
159 .flags = AVFILTER_FLAG_SUPPORT_TIMELINE_GENERIC,157 .flags = AVFILTER_FLAG_SUPPORT_TIMELINE_GENERIC,
160};158};
libavfilter/af_deesser.c+2−4
@@ -208,7 +208,6 @@ static const AVFilterPad inputs[] = { · 207 unmodified lines
208 .filter_frame = filter_frame,208 .filter_frame = filter_frame,
209 .config_props = config_input,209 .config_props = config_input,
210 },210 },
211 { NULL }
212};211};
213 212
214static const AVFilterPad outputs[] = {213static const AVFilterPad outputs[] = {
@@ -216,7 +215,6 @@ static const AVFilterPad outputs[] = { · 1 unmodified line
216 .name = "default",215 .name = "default",
217 .type = AVMEDIA_TYPE_AUDIO,216 .type = AVMEDIA_TYPE_AUDIO,
218 },217 },
219 { NULL }
220};218};
221 219
222const AVFilter ff_af_deesser = {220const AVFilter ff_af_deesser = {
@@ -226,7 +224,7 @@ const AVFilter ff_af_deesser = { · 3 unmodified lines
226 .priv_size = sizeof(DeesserContext),224 .priv_size = sizeof(DeesserContext),
227 .priv_class = &deesser_class,225 .priv_class = &deesser_class,
228 .uninit = uninit,226 .uninit = uninit,
229 .inputs = inputs,227 FILTER_INPUTS(inputs),
230 .outputs = outputs,228 FILTER_OUTPUTS(outputs),
231 .flags = AVFILTER_FLAG_SUPPORT_TIMELINE_INTERNAL,229 .flags = AVFILTER_FLAG_SUPPORT_TIMELINE_INTERNAL,
232};230};
libavfilter/af_drmeter.c+2−4
@@ -201,7 +201,6 @@ static const AVFilterPad drmeter_inputs[] = { · 200 unmodified lines
201 .type = AVMEDIA_TYPE_AUDIO,201 .type = AVMEDIA_TYPE_AUDIO,
202 .filter_frame = filter_frame,202 .filter_frame = filter_frame,
203 },203 },
204 { NULL }
205};204};
206 205
207static const AVFilterPad drmeter_outputs[] = {206static const AVFilterPad drmeter_outputs[] = {
@@ -210,7 +209,6 @@ static const AVFilterPad drmeter_outputs[] = { · 2 unmodified lines
210 .type = AVMEDIA_TYPE_AUDIO,209 .type = AVMEDIA_TYPE_AUDIO,
211 .config_props = config_output,210 .config_props = config_output,
212 },211 },
213 { NULL }
214};212};
215 213
216const AVFilter ff_af_drmeter = {214const AVFilter ff_af_drmeter = {
@@ -220,6 +218,6 @@ const AVFilter ff_af_drmeter = { · 3 unmodified lines
220 .priv_size = sizeof(DRMeterContext),218 .priv_size = sizeof(DRMeterContext),
221 .priv_class = &drmeter_class,219 .priv_class = &drmeter_class,
222 .uninit = uninit,220 .uninit = uninit,
223 .inputs = drmeter_inputs,221 FILTER_INPUTS(drmeter_inputs),
224 .outputs = drmeter_outputs,222 FILTER_OUTPUTS(drmeter_outputs),
225};223};
libavfilter/af_dynaudnorm.c+2−4
@@ -844,7 +844,6 @@ static const AVFilterPad avfilter_af_dynaudnorm_inputs[] = { · 843 unmodified lines
844 .type = AVMEDIA_TYPE_AUDIO,844 .type = AVMEDIA_TYPE_AUDIO,
845 .config_props = config_input,845 .config_props = config_input,
846 },846 },
847 { NULL }
848};847};
849 848
850static const AVFilterPad avfilter_af_dynaudnorm_outputs[] = {849static const AVFilterPad avfilter_af_dynaudnorm_outputs[] = {
@@ -852,7 +851,6 @@ static const AVFilterPad avfilter_af_dynaudnorm_outputs[] = { · 1 unmodified line
852 .name = "default",851 .name = "default",
853 .type = AVMEDIA_TYPE_AUDIO,852 .type = AVMEDIA_TYPE_AUDIO,
854 },853 },
855 { NULL }
856};854};
857 855
858const AVFilter ff_af_dynaudnorm = {856const AVFilter ff_af_dynaudnorm = {
@@ -863,8 +861,8 @@ const AVFilter ff_af_dynaudnorm = { · 4 unmodified lines
863 .init = init,861 .init = init,
864 .uninit = uninit,862 .uninit = uninit,
865 .activate = activate,863 .activate = activate,
866 .inputs = avfilter_af_dynaudnorm_inputs,864 FILTER_INPUTS(avfilter_af_dynaudnorm_inputs),
867 .outputs = avfilter_af_dynaudnorm_outputs,865 FILTER_OUTPUTS(avfilter_af_dynaudnorm_outputs),
868 .priv_class = &dynaudnorm_class,866 .priv_class = &dynaudnorm_class,
869 .flags = AVFILTER_FLAG_SUPPORT_TIMELINE_INTERNAL,867 .flags = AVFILTER_FLAG_SUPPORT_TIMELINE_INTERNAL,
870 .process_command = process_command,868 .process_command = process_command,
libavfilter/af_earwax.c+2−4
@@ -220,7 +220,6 @@ static const AVFilterPad earwax_inputs[] = { · 219 unmodified lines
220 .filter_frame = filter_frame,220 .filter_frame = filter_frame,
221 .config_props = config_input,221 .config_props = config_input,
222 },222 },
223 { NULL }
224};223};
225 224
226static const AVFilterPad earwax_outputs[] = {225static const AVFilterPad earwax_outputs[] = {
@@ -228,7 +227,6 @@ static const AVFilterPad earwax_outputs[] = { · 1 unmodified line
228 .name = "default",227 .name = "default",
229 .type = AVMEDIA_TYPE_AUDIO,228 .type = AVMEDIA_TYPE_AUDIO,
230 },229 },
231 { NULL }
232};230};
233 231
234const AVFilter ff_af_earwax = {232const AVFilter ff_af_earwax = {
@@ -237,6 +235,6 @@ const AVFilter ff_af_earwax = { · 2 unmodified lines
237 .query_formats = query_formats,235 .query_formats = query_formats,
238 .priv_size = sizeof(EarwaxContext),236 .priv_size = sizeof(EarwaxContext),
239 .uninit = uninit,237 .uninit = uninit,
240 .inputs = earwax_inputs,238 FILTER_INPUTS(earwax_inputs),
241 .outputs = earwax_outputs,239 FILTER_OUTPUTS(earwax_outputs),
242};240};
libavfilter/af_extrastereo.c+2−4
@@ -108,7 +108,6 @@ static const AVFilterPad inputs[] = { · 107 unmodified lines
108 .type = AVMEDIA_TYPE_AUDIO,108 .type = AVMEDIA_TYPE_AUDIO,
109 .filter_frame = filter_frame,109 .filter_frame = filter_frame,
110 },110 },
111 { NULL }
112};111};
113 112
114static const AVFilterPad outputs[] = {113static const AVFilterPad outputs[] = {
@@ -116,7 +115,6 @@ static const AVFilterPad outputs[] = { · 1 unmodified line
116 .name = "default",115 .name = "default",
117 .type = AVMEDIA_TYPE_AUDIO,116 .type = AVMEDIA_TYPE_AUDIO,
118 },117 },
119 { NULL }
120};118};
121 119
122const AVFilter ff_af_extrastereo = {120const AVFilter ff_af_extrastereo = {
@@ -125,8 +123,8 @@ const AVFilter ff_af_extrastereo = { · 2 unmodified lines
125 .query_formats = query_formats,123 .query_formats = query_formats,
126 .priv_size = sizeof(ExtraStereoContext),124 .priv_size = sizeof(ExtraStereoContext),
127 .priv_class = &extrastereo_class,125 .priv_class = &extrastereo_class,
128 .inputs = inputs,126 FILTER_INPUTS(inputs),
129 .outputs = outputs,127 FILTER_OUTPUTS(outputs),
130 .flags = AVFILTER_FLAG_SUPPORT_TIMELINE_GENERIC,128 .flags = AVFILTER_FLAG_SUPPORT_TIMELINE_GENERIC,
131 .process_command = ff_filter_process_command,129 .process_command = ff_filter_process_command,
132};130};
libavfilter/af_firequalizer.c+2−4
@@ -944,7 +944,6 @@ static const AVFilterPad firequalizer_inputs[] = { · 943 unmodified lines
944 .filter_frame = filter_frame,944 .filter_frame = filter_frame,
945 .type = AVMEDIA_TYPE_AUDIO,945 .type = AVMEDIA_TYPE_AUDIO,
946 },946 },
947 { NULL }
948};947};
949 948
950static const AVFilterPad firequalizer_outputs[] = {949static const AVFilterPad firequalizer_outputs[] = {
@@ -953,7 +952,6 @@ static const AVFilterPad firequalizer_outputs[] = { · 2 unmodified lines
953 .request_frame = request_frame,952 .request_frame = request_frame,
954 .type = AVMEDIA_TYPE_AUDIO,953 .type = AVMEDIA_TYPE_AUDIO,
955 },954 },
956 { NULL }
957};955};
958 956
959const AVFilter ff_af_firequalizer = {957const AVFilter ff_af_firequalizer = {
@@ -963,7 +961,7 @@ const AVFilter ff_af_firequalizer = { · 3 unmodified lines
963 .query_formats = query_formats,961 .query_formats = query_formats,
964 .process_command = process_command,962 .process_command = process_command,
965 .priv_size = sizeof(FIREqualizerContext),963 .priv_size = sizeof(FIREqualizerContext),
966 .inputs = firequalizer_inputs,964 FILTER_INPUTS(firequalizer_inputs),
967 .outputs = firequalizer_outputs,965 FILTER_OUTPUTS(firequalizer_outputs),
968 .priv_class = &firequalizer_class,966 .priv_class = &firequalizer_class,
969};967};
libavfilter/af_flanger.c+2−4
@@ -209,7 +209,6 @@ static const AVFilterPad flanger_inputs[] = { · 208 unmodified lines
209 .config_props = config_input,209 .config_props = config_input,
210 .filter_frame = filter_frame,210 .filter_frame = filter_frame,
211 },211 },
212 { NULL }
213};212};
214 213
215static const AVFilterPad flanger_outputs[] = {214static const AVFilterPad flanger_outputs[] = {
@@ -217,7 +216,6 @@ static const AVFilterPad flanger_outputs[] = { · 1 unmodified line
217 .name = "default",216 .name = "default",
218 .type = AVMEDIA_TYPE_AUDIO,217 .type = AVMEDIA_TYPE_AUDIO,
219 },218 },
220 { NULL }
221};219};
222 220
223const AVFilter ff_af_flanger = {221const AVFilter ff_af_flanger = {
@@ -228,6 +226,6 @@ const AVFilter ff_af_flanger = { · 4 unmodified lines
228 .priv_class = &flanger_class,226 .priv_class = &flanger_class,
229 .init = init,227 .init = init,
230 .uninit = uninit,228 .uninit = uninit,
231 .inputs = flanger_inputs,229 FILTER_INPUTS(flanger_inputs),
232 .outputs = flanger_outputs,230 FILTER_OUTPUTS(flanger_outputs),
233};231};
libavfilter/af_haas.c+2−4
@@ -204,7 +204,6 @@ static const AVFilterPad inputs[] = { · 203 unmodified lines
204 .filter_frame = filter_frame,204 .filter_frame = filter_frame,
205 .config_props = config_input,205 .config_props = config_input,
206 },206 },
207 { NULL }
208};207};
209 208
210static const AVFilterPad outputs[] = {209static const AVFilterPad outputs[] = {
@@ -212,7 +211,6 @@ static const AVFilterPad outputs[] = { · 1 unmodified line
212 .name = "default",211 .name = "default",
213 .type = AVMEDIA_TYPE_AUDIO,212 .type = AVMEDIA_TYPE_AUDIO,
214 },213 },
215 { NULL }
216};214};
217 215
218const AVFilter ff_af_haas = {216const AVFilter ff_af_haas = {
@@ -222,6 +220,6 @@ const AVFilter ff_af_haas = { · 3 unmodified lines
222 .priv_size = sizeof(HaasContext),220 .priv_size = sizeof(HaasContext),
223 .priv_class = &haas_class,221 .priv_class = &haas_class,
224 .uninit = uninit,222 .uninit = uninit,
225 .inputs = inputs,223 FILTER_INPUTS(inputs),
226 .outputs = outputs,224 FILTER_OUTPUTS(outputs),
227};225};
libavfilter/af_hdcd.c+2−4
@@ -1761,7 +1761,6 @@ static const AVFilterPad avfilter_af_hdcd_inputs[] = { · 1760 unmodified lines
1761 .filter_frame = filter_frame,1761 .filter_frame = filter_frame,
1762 .config_props = config_input,1762 .config_props = config_input,
1763 },1763 },
1764 { NULL }
1765};1764};
1766 1765
1767static const AVFilterPad avfilter_af_hdcd_outputs[] = {1766static const AVFilterPad avfilter_af_hdcd_outputs[] = {
@@ -1769,7 +1768,6 @@ static const AVFilterPad avfilter_af_hdcd_outputs[] = { · 1 unmodified line
1769 .name = "default",1768 .name = "default",
1770 .type = AVMEDIA_TYPE_AUDIO,1769 .type = AVMEDIA_TYPE_AUDIO,
1771 },1770 },
1772 { NULL }
1773};1771};
1774 1772
1775const AVFilter ff_af_hdcd = {1773const AVFilter ff_af_hdcd = {
@@ -1780,6 +1778,6 @@ const AVFilter ff_af_hdcd = { · 4 unmodified lines
1780 .init = init,1778 .init = init,
1781 .uninit = uninit,1779 .uninit = uninit,
1782 .query_formats = query_formats,1780 .query_formats = query_formats,
1783 .inputs = avfilter_af_hdcd_inputs,1781 FILTER_INPUTS(avfilter_af_hdcd_inputs),
1784 .outputs = avfilter_af_hdcd_outputs,1782 FILTER_OUTPUTS(avfilter_af_hdcd_outputs),
1785};1783};
libavfilter/af_headphone.c+1−2
@@ -759,7 +759,6 @@ static const AVFilterPad outputs[] = { · 758 unmodified lines
759 .type = AVMEDIA_TYPE_AUDIO,759 .type = AVMEDIA_TYPE_AUDIO,
760 .config_props = config_output,760 .config_props = config_output,
761 },761 },
762 { NULL }
763};762};
764 763
765const AVFilter ff_af_headphone = {764const AVFilter ff_af_headphone = {
@@ -772,6 +771,6 @@ const AVFilter ff_af_headphone = { · 6 unmodified lines
772 .query_formats = query_formats,771 .query_formats = query_formats,
773 .activate = activate,772 .activate = activate,
774 .inputs = NULL,773 .inputs = NULL,
775 .outputs = outputs,774 FILTER_OUTPUTS(outputs),
776 .flags = AVFILTER_FLAG_SLICE_THREADS | AVFILTER_FLAG_DYNAMIC_INPUTS,775 .flags = AVFILTER_FLAG_SLICE_THREADS | AVFILTER_FLAG_DYNAMIC_INPUTS,
777};776};
libavfilter/af_join.c+1−2
@@ -536,7 +536,6 @@ static const AVFilterPad avfilter_af_join_outputs[] = { · 535 unmodified lines
536 .type = AVMEDIA_TYPE_AUDIO,536 .type = AVMEDIA_TYPE_AUDIO,
537 .config_props = join_config_output,537 .config_props = join_config_output,
538 },538 },
539 { NULL }
540};539};
541 540
542const AVFilter ff_af_join = {541const AVFilter ff_af_join = {
@@ -550,6 +549,6 @@ const AVFilter ff_af_join = { · 7 unmodified lines
550 .activate = activate,549 .activate = activate,
551 .query_formats = join_query_formats,550 .query_formats = join_query_formats,
552 .inputs = NULL,551 .inputs = NULL,
553 .outputs = avfilter_af_join_outputs,552 FILTER_OUTPUTS(avfilter_af_join_outputs),
554 .flags = AVFILTER_FLAG_DYNAMIC_INPUTS,553 .flags = AVFILTER_FLAG_DYNAMIC_INPUTS,
555};554};
libavfilter/af_ladspa.c+1−2
@@ -774,7 +774,6 @@ static const AVFilterPad ladspa_outputs[] = { · 773 unmodified lines
774 .config_props = config_output,774 .config_props = config_output,
775 .request_frame = request_frame,775 .request_frame = request_frame,
776 },776 },
777 { NULL }
778};777};
779 778
780const AVFilter ff_af_ladspa = {779const AVFilter ff_af_ladspa = {
@@ -787,6 +786,6 @@ const AVFilter ff_af_ladspa = { · 6 unmodified lines
787 .query_formats = query_formats,786 .query_formats = query_formats,
788 .process_command = process_command,787 .process_command = process_command,
789 .inputs = 0,788 .inputs = 0,
790 .outputs = ladspa_outputs,789 FILTER_OUTPUTS(ladspa_outputs),
791 .flags = AVFILTER_FLAG_DYNAMIC_INPUTS,790 .flags = AVFILTER_FLAG_DYNAMIC_INPUTS,
792};791};
libavfilter/af_loudnorm.c+2−4
@@ -896,7 +896,6 @@ static const AVFilterPad avfilter_af_loudnorm_inputs[] = { · 895 unmodified lines
896 .config_props = config_input,896 .config_props = config_input,
897 .filter_frame = filter_frame,897 .filter_frame = filter_frame,
898 },898 },
899 { NULL }
900};899};
901 900
902static const AVFilterPad avfilter_af_loudnorm_outputs[] = {901static const AVFilterPad avfilter_af_loudnorm_outputs[] = {
@@ -905,7 +904,6 @@ static const AVFilterPad avfilter_af_loudnorm_outputs[] = { · 2 unmodified lines
905 .request_frame = request_frame,904 .request_frame = request_frame,
906 .type = AVMEDIA_TYPE_AUDIO,905 .type = AVMEDIA_TYPE_AUDIO,
907 },906 },
908 { NULL }
909};907};
910 908
911const AVFilter ff_af_loudnorm = {909const AVFilter ff_af_loudnorm = {
@@ -916,6 +914,6 @@ const AVFilter ff_af_loudnorm = { · 4 unmodified lines
916 .query_formats = query_formats,914 .query_formats = query_formats,
917 .init = init,915 .init = init,
918 .uninit = uninit,916 .uninit = uninit,
919 .inputs = avfilter_af_loudnorm_inputs,917 FILTER_INPUTS(avfilter_af_loudnorm_inputs),
920 .outputs = avfilter_af_loudnorm_outputs,918 FILTER_OUTPUTS(avfilter_af_loudnorm_outputs),
921};919};
libavfilter/af_lv2.c+1−2
@@ -574,7 +574,6 @@ static const AVFilterPad lv2_outputs[] = { · 573 unmodified lines
574 .config_props = config_output,574 .config_props = config_output,
575 .request_frame = request_frame,575 .request_frame = request_frame,
576 },576 },
577 { NULL }
578};577};
579 578
580const AVFilter ff_af_lv2 = {579const AVFilter ff_af_lv2 = {
@@ -586,6 +585,6 @@ const AVFilter ff_af_lv2 = { · 5 unmodified lines
586 .uninit = uninit,585 .uninit = uninit,
587 .query_formats = query_formats,586 .query_formats = query_formats,
588 .inputs = 0,587 .inputs = 0,
589 .outputs = lv2_outputs,588 FILTER_OUTPUTS(lv2_outputs),
590 .flags = AVFILTER_FLAG_DYNAMIC_INPUTS,589 .flags = AVFILTER_FLAG_DYNAMIC_INPUTS,
591};590};
libavfilter/af_mcompand.c+2−4
@@ -638,7 +638,6 @@ static const AVFilterPad mcompand_inputs[] = { · 637 unmodified lines
638 .type = AVMEDIA_TYPE_AUDIO,638 .type = AVMEDIA_TYPE_AUDIO,
639 .filter_frame = filter_frame,639 .filter_frame = filter_frame,
640 },640 },
641 { NULL }
642};641};
643 642
644static const AVFilterPad mcompand_outputs[] = {643static const AVFilterPad mcompand_outputs[] = {
@@ -648,7 +647,6 @@ static const AVFilterPad mcompand_outputs[] = { · 3 unmodified lines
648 .request_frame = request_frame,647 .request_frame = request_frame,
649 .config_props = config_output,648 .config_props = config_output,
650 },649 },
651 { NULL }
652};650};
653 651
654 652
@@ -660,6 +658,6 @@ const AVFilter ff_af_mcompand = { · 5 unmodified lines
660 .priv_size = sizeof(MCompandContext),658 .priv_size = sizeof(MCompandContext),
661 .priv_class = &mcompand_class,659 .priv_class = &mcompand_class,
662 .uninit = uninit,660 .uninit = uninit,
663 .inputs = mcompand_inputs,661 FILTER_INPUTS(mcompand_inputs),
664 .outputs = mcompand_outputs,662 FILTER_OUTPUTS(mcompand_outputs),
665};663};
libavfilter/af_pan.c+2−4
@@ -435,7 +435,6 @@ static const AVFilterPad pan_inputs[] = { · 434 unmodified lines
435 .config_props = config_props,435 .config_props = config_props,
436 .filter_frame = filter_frame,436 .filter_frame = filter_frame,
437 },437 },
438 { NULL }
439};438};
440 439
441static const AVFilterPad pan_outputs[] = {440static const AVFilterPad pan_outputs[] = {
@@ -443,7 +442,6 @@ static const AVFilterPad pan_outputs[] = { · 1 unmodified line
443 .name = "default",442 .name = "default",
444 .type = AVMEDIA_TYPE_AUDIO,443 .type = AVMEDIA_TYPE_AUDIO,
445 },444 },
446 { NULL }
447};445};
448 446
449const AVFilter ff_af_pan = {447const AVFilter ff_af_pan = {
@@ -454,6 +452,6 @@ const AVFilter ff_af_pan = { · 4 unmodified lines
454 .init = init,452 .init = init,
455 .uninit = uninit,453 .uninit = uninit,
456 .query_formats = query_formats,454 .query_formats = query_formats,
457 .inputs = pan_inputs,455 FILTER_INPUTS(pan_inputs),
458 .outputs = pan_outputs,456 FILTER_OUTPUTS(pan_outputs),
459};457};
libavfilter/af_replaygain.c+2−4
@@ -592,7 +592,6 @@ static const AVFilterPad replaygain_inputs[] = { · 591 unmodified lines
592 .filter_frame = filter_frame,592 .filter_frame = filter_frame,
593 .config_props = config_input,593 .config_props = config_input,
594 },594 },
595 { NULL }
596};595};
597 596
598static const AVFilterPad replaygain_outputs[] = {597static const AVFilterPad replaygain_outputs[] = {
@@ -600,7 +599,6 @@ static const AVFilterPad replaygain_outputs[] = { · 1 unmodified line
600 .name = "default",599 .name = "default",
601 .type = AVMEDIA_TYPE_AUDIO,600 .type = AVMEDIA_TYPE_AUDIO,
602 },601 },
603 { NULL }
604};602};
605 603
606const AVFilter ff_af_replaygain = {604const AVFilter ff_af_replaygain = {
@@ -609,6 +607,6 @@ const AVFilter ff_af_replaygain = { · 2 unmodified lines
609 .query_formats = query_formats,607 .query_formats = query_formats,
610 .uninit = uninit,608 .uninit = uninit,
611 .priv_size = sizeof(ReplayGainContext),609 .priv_size = sizeof(ReplayGainContext),
612 .inputs = replaygain_inputs,610 FILTER_INPUTS(replaygain_inputs),
613 .outputs = replaygain_outputs,611 FILTER_OUTPUTS(replaygain_outputs),
614};612};
libavfilter/af_rubberband.c+2−4
@@ -210,7 +210,6 @@ static const AVFilterPad rubberband_inputs[] = { · 209 unmodified lines
210 .type = AVMEDIA_TYPE_AUDIO,210 .type = AVMEDIA_TYPE_AUDIO,
211 .config_props = config_input,211 .config_props = config_input,
212 },212 },
213 { NULL }
214};213};
215 214
216static const AVFilterPad rubberband_outputs[] = {215static const AVFilterPad rubberband_outputs[] = {
@@ -218,7 +217,6 @@ static const AVFilterPad rubberband_outputs[] = { · 1 unmodified line
218 .name = "default",217 .name = "default",
219 .type = AVMEDIA_TYPE_AUDIO,218 .type = AVMEDIA_TYPE_AUDIO,
220 },219 },
221 { NULL }
222};220};
223 221
224const AVFilter ff_af_rubberband = {222const AVFilter ff_af_rubberband = {
@@ -229,7 +227,7 @@ const AVFilter ff_af_rubberband = { · 4 unmodified lines
229 .priv_class = &rubberband_class,227 .priv_class = &rubberband_class,
230 .uninit = uninit,228 .uninit = uninit,
231 .activate = activate,229 .activate = activate,
232 .inputs = rubberband_inputs,230 FILTER_INPUTS(rubberband_inputs),
233 .outputs = rubberband_outputs,231 FILTER_OUTPUTS(rubberband_outputs),
234 .process_command = process_command,232 .process_command = process_command,
235};233};
libavfilter/af_sidechaincompress.c+4−8
@@ -371,7 +371,6 @@ static const AVFilterPad sidechaincompress_inputs[] = { · 370 unmodified lines
371 .name = "sidechain",371 .name = "sidechain",
372 .type = AVMEDIA_TYPE_AUDIO,372 .type = AVMEDIA_TYPE_AUDIO,
373 },373 },
374 { NULL }
375};374};
376 375
377static const AVFilterPad sidechaincompress_outputs[] = {376static const AVFilterPad sidechaincompress_outputs[] = {
@@ -380,7 +379,6 @@ static const AVFilterPad sidechaincompress_outputs[] = { · 2 unmodified lines
380 .type = AVMEDIA_TYPE_AUDIO,379 .type = AVMEDIA_TYPE_AUDIO,
381 .config_props = config_output,380 .config_props = config_output,
382 },381 },
383 { NULL }
384};382};
385 383
386const AVFilter ff_af_sidechaincompress = {384const AVFilter ff_af_sidechaincompress = {
@@ -391,8 +389,8 @@ const AVFilter ff_af_sidechaincompress = { · 4 unmodified lines
391 .query_formats = query_formats,389 .query_formats = query_formats,
392 .activate = activate,390 .activate = activate,
393 .uninit = uninit,391 .uninit = uninit,
394 .inputs = sidechaincompress_inputs,392 FILTER_INPUTS(sidechaincompress_inputs),
395 .outputs = sidechaincompress_outputs,393 FILTER_OUTPUTS(sidechaincompress_outputs),
396 .process_command = process_command,394 .process_command = process_command,
397};395};
398#endif /* CONFIG_SIDECHAINCOMPRESS_FILTER */396#endif /* CONFIG_SIDECHAINCOMPRESS_FILTER */
@@ -454,7 +452,6 @@ static const AVFilterPad acompressor_inputs[] = { · 55 unmodified lines
454 .type = AVMEDIA_TYPE_AUDIO,452 .type = AVMEDIA_TYPE_AUDIO,
455 .filter_frame = acompressor_filter_frame,453 .filter_frame = acompressor_filter_frame,
456 },454 },
457 { NULL }
458};455};
459 456
460static const AVFilterPad acompressor_outputs[] = {457static const AVFilterPad acompressor_outputs[] = {
@@ -463,7 +460,6 @@ static const AVFilterPad acompressor_outputs[] = { · 2 unmodified lines
463 .type = AVMEDIA_TYPE_AUDIO,460 .type = AVMEDIA_TYPE_AUDIO,
464 .config_props = compressor_config_output,461 .config_props = compressor_config_output,
465 },462 },
466 { NULL }
467};463};
468 464
469const AVFilter ff_af_acompressor = {465const AVFilter ff_af_acompressor = {
@@ -472,8 +468,8 @@ const AVFilter ff_af_acompressor = { · 2 unmodified lines
472 .priv_size = sizeof(SidechainCompressContext),468 .priv_size = sizeof(SidechainCompressContext),
473 .priv_class = &acompressor_class,469 .priv_class = &acompressor_class,
474 .query_formats = acompressor_query_formats,470 .query_formats = acompressor_query_formats,
475 .inputs = acompressor_inputs,471 FILTER_INPUTS(acompressor_inputs),
476 .outputs = acompressor_outputs,472 FILTER_OUTPUTS(acompressor_outputs),
477 .process_command = process_command,473 .process_command = process_command,
478};474};
479#endif /* CONFIG_ACOMPRESSOR_FILTER */475#endif /* CONFIG_ACOMPRESSOR_FILTER */
libavfilter/af_silencedetect.c+2−4
@@ -240,7 +240,6 @@ static const AVFilterPad silencedetect_inputs[] = { · 239 unmodified lines
240 .config_props = config_input,240 .config_props = config_input,
241 .filter_frame = filter_frame,241 .filter_frame = filter_frame,
242 },242 },
243 { NULL }
244};243};
245 244
246static const AVFilterPad silencedetect_outputs[] = {245static const AVFilterPad silencedetect_outputs[] = {
@@ -248,7 +247,6 @@ static const AVFilterPad silencedetect_outputs[] = { · 1 unmodified line
248 .name = "default",247 .name = "default",
249 .type = AVMEDIA_TYPE_AUDIO,248 .type = AVMEDIA_TYPE_AUDIO,
250 },249 },
251 { NULL }
252};250};
253 251
254const AVFilter ff_af_silencedetect = {252const AVFilter ff_af_silencedetect = {
@@ -257,7 +255,7 @@ const AVFilter ff_af_silencedetect = { · 2 unmodified lines
257 .priv_size = sizeof(SilenceDetectContext),255 .priv_size = sizeof(SilenceDetectContext),
258 .query_formats = query_formats,256 .query_formats = query_formats,
259 .uninit = uninit,257 .uninit = uninit,
260 .inputs = silencedetect_inputs,258 FILTER_INPUTS(silencedetect_inputs),
261 .outputs = silencedetect_outputs,259 FILTER_OUTPUTS(silencedetect_outputs),
262 .priv_class = &silencedetect_class,260 .priv_class = &silencedetect_class,
263};261};
libavfilter/af_silenceremove.c+2−4
@@ -923,7 +923,6 @@ static const AVFilterPad silenceremove_inputs[] = { · 922 unmodified lines
923 .config_props = config_input,923 .config_props = config_input,
924 .filter_frame = filter_frame,924 .filter_frame = filter_frame,
925 },925 },
926 { NULL }
927};926};
928 927
929static const AVFilterPad silenceremove_outputs[] = {928static const AVFilterPad silenceremove_outputs[] = {
@@ -932,7 +931,6 @@ static const AVFilterPad silenceremove_outputs[] = { · 2 unmodified lines
932 .type = AVMEDIA_TYPE_AUDIO,931 .type = AVMEDIA_TYPE_AUDIO,
933 .request_frame = request_frame,932 .request_frame = request_frame,
934 },933 },
935 { NULL }
936};934};
937 935
938const AVFilter ff_af_silenceremove = {936const AVFilter ff_af_silenceremove = {
@@ -943,6 +941,6 @@ const AVFilter ff_af_silenceremove = { · 4 unmodified lines
943 .init = init,941 .init = init,
944 .uninit = uninit,942 .uninit = uninit,
945 .query_formats = query_formats,943 .query_formats = query_formats,
946 .inputs = silenceremove_inputs,944 FILTER_INPUTS(silenceremove_inputs),
947 .outputs = silenceremove_outputs,945 FILTER_OUTPUTS(silenceremove_outputs),
948};946};
libavfilter/af_sofalizer.c+2−4
@@ -1095,7 +1095,6 @@ static const AVFilterPad inputs[] = { · 1094 unmodified lines
1095 .type = AVMEDIA_TYPE_AUDIO,1095 .type = AVMEDIA_TYPE_AUDIO,
1096 .config_props = config_input,1096 .config_props = config_input,
1097 },1097 },
1098 { NULL }
1099};1098};
1100 1099
1101static const AVFilterPad outputs[] = {1100static const AVFilterPad outputs[] = {
@@ -1103,7 +1102,6 @@ static const AVFilterPad outputs[] = { · 1 unmodified line
1103 .name = "default",1102 .name = "default",
1104 .type = AVMEDIA_TYPE_AUDIO,1103 .type = AVMEDIA_TYPE_AUDIO,
1105 },1104 },
1106 { NULL }
1107};1105};
1108 1106
1109const AVFilter ff_af_sofalizer = {1107const AVFilter ff_af_sofalizer = {
@@ -1115,7 +1113,7 @@ const AVFilter ff_af_sofalizer = { · 5 unmodified lines
1115 .activate = activate,1113 .activate = activate,
1116 .uninit = uninit,1114 .uninit = uninit,
1117 .query_formats = query_formats,1115 .query_formats = query_formats,
1118 .inputs = inputs,1116 FILTER_INPUTS(inputs),
1119 .outputs = outputs,1117 FILTER_OUTPUTS(outputs),
1120 .flags = AVFILTER_FLAG_SLICE_THREADS,1118 .flags = AVFILTER_FLAG_SLICE_THREADS,
1121};1119};
libavfilter/af_speechnorm.c+2−4
@@ -542,7 +542,6 @@ static const AVFilterPad inputs[] = { · 541 unmodified lines
542 .type = AVMEDIA_TYPE_AUDIO,542 .type = AVMEDIA_TYPE_AUDIO,
543 .config_props = config_input,543 .config_props = config_input,
544 },544 },
545 { NULL }
546};545};
547 546
548static const AVFilterPad outputs[] = {547static const AVFilterPad outputs[] = {
@@ -550,7 +549,6 @@ static const AVFilterPad outputs[] = { · 1 unmodified line
550 .name = "default",549 .name = "default",
551 .type = AVMEDIA_TYPE_AUDIO,550 .type = AVMEDIA_TYPE_AUDIO,
552 },551 },
553 { NULL }
554};552};
555 553
556const AVFilter ff_af_speechnorm = {554const AVFilter ff_af_speechnorm = {
@@ -561,7 +559,7 @@ const AVFilter ff_af_speechnorm = { · 4 unmodified lines
561 .priv_class = &speechnorm_class,559 .priv_class = &speechnorm_class,
562 .activate = activate,560 .activate = activate,
563 .uninit = uninit,561 .uninit = uninit,
564 .inputs = inputs,562 FILTER_INPUTS(inputs),
565 .outputs = outputs,563 FILTER_OUTPUTS(outputs),
566 .process_command = process_command,564 .process_command = process_command,
567};565};
libavfilter/af_stereotools.c+2−4
@@ -363,7 +363,6 @@ static const AVFilterPad inputs[] = { · 362 unmodified lines
363 .filter_frame = filter_frame,363 .filter_frame = filter_frame,
364 .config_props = config_input,364 .config_props = config_input,
365 },365 },
366 { NULL }
367};366};
368 367
369static const AVFilterPad outputs[] = {368static const AVFilterPad outputs[] = {
@@ -371,7 +370,6 @@ static const AVFilterPad outputs[] = { · 1 unmodified line
371 .name = "default",370 .name = "default",
372 .type = AVMEDIA_TYPE_AUDIO,371 .type = AVMEDIA_TYPE_AUDIO,
373 },372 },
374 { NULL }
375};373};
376 374
377const AVFilter ff_af_stereotools = {375const AVFilter ff_af_stereotools = {
@@ -381,8 +379,8 @@ const AVFilter ff_af_stereotools = { · 3 unmodified lines
381 .priv_size = sizeof(StereoToolsContext),379 .priv_size = sizeof(StereoToolsContext),
382 .priv_class = &stereotools_class,380 .priv_class = &stereotools_class,
383 .uninit = uninit,381 .uninit = uninit,
384 .inputs = inputs,382 FILTER_INPUTS(inputs),
385 .outputs = outputs,383 FILTER_OUTPUTS(outputs),
386 .process_command = process_command,384 .process_command = process_command,
387 .flags = AVFILTER_FLAG_SUPPORT_TIMELINE_INTERNAL,385 .flags = AVFILTER_FLAG_SUPPORT_TIMELINE_INTERNAL,
388};386};
libavfilter/af_stereowiden.c+2−4
@@ -144,7 +144,6 @@ static const AVFilterPad inputs[] = { · 143 unmodified lines
144 .filter_frame = filter_frame,144 .filter_frame = filter_frame,
145 .config_props = config_input,145 .config_props = config_input,
146 },146 },
147 { NULL }
148};147};
149 148
150static const AVFilterPad outputs[] = {149static const AVFilterPad outputs[] = {
@@ -152,7 +151,6 @@ static const AVFilterPad outputs[] = { · 1 unmodified line
152 .name = "default",151 .name = "default",
153 .type = AVMEDIA_TYPE_AUDIO,152 .type = AVMEDIA_TYPE_AUDIO,
154 },153 },
155 { NULL }
156};154};
157 155
158const AVFilter ff_af_stereowiden = {156const AVFilter ff_af_stereowiden = {
@@ -162,8 +160,8 @@ const AVFilter ff_af_stereowiden = { · 3 unmodified lines
162 .priv_size = sizeof(StereoWidenContext),160 .priv_size = sizeof(StereoWidenContext),
163 .priv_class = &stereowiden_class,161 .priv_class = &stereowiden_class,
164 .uninit = uninit,162 .uninit = uninit,
165 .inputs = inputs,163 FILTER_INPUTS(inputs),
166 .outputs = outputs,164 FILTER_OUTPUTS(outputs),
167 .flags = AVFILTER_FLAG_SUPPORT_TIMELINE_INTERNAL,165 .flags = AVFILTER_FLAG_SUPPORT_TIMELINE_INTERNAL,
168 .process_command = ff_filter_process_command,166 .process_command = ff_filter_process_command,
169};167};
libavfilter/af_superequalizer.c+2−4
@@ -326,7 +326,6 @@ static const AVFilterPad superequalizer_inputs[] = { · 325 unmodified lines
326 .type = AVMEDIA_TYPE_AUDIO,326 .type = AVMEDIA_TYPE_AUDIO,
327 .config_props = config_input,327 .config_props = config_input,
328 },328 },
329 { NULL }
330};329};
331 330
332static const AVFilterPad superequalizer_outputs[] = {331static const AVFilterPad superequalizer_outputs[] = {
@@ -335,7 +334,6 @@ static const AVFilterPad superequalizer_outputs[] = { · 2 unmodified lines
335 .type = AVMEDIA_TYPE_AUDIO,334 .type = AVMEDIA_TYPE_AUDIO,
336 .config_props = config_output,335 .config_props = config_output,
337 },336 },
338 { NULL }
339};337};
340 338
341#define AF AV_OPT_FLAG_AUDIO_PARAM|AV_OPT_FLAG_FILTERING_PARAM339#define AF AV_OPT_FLAG_AUDIO_PARAM|AV_OPT_FLAG_FILTERING_PARAM
@@ -374,6 +372,6 @@ const AVFilter ff_af_superequalizer = { · 32 unmodified lines
374 .init = init,372 .init = init,
375 .activate = activate,373 .activate = activate,
376 .uninit = uninit,374 .uninit = uninit,
377 .inputs = superequalizer_inputs,375 FILTER_INPUTS(superequalizer_inputs),
378 .outputs = superequalizer_outputs,376 FILTER_OUTPUTS(superequalizer_outputs),
379};377};
libavfilter/af_surround.c+2−4
@@ -1770,7 +1770,6 @@ static const AVFilterPad inputs[] = { · 1769 unmodified lines
1770 .type = AVMEDIA_TYPE_AUDIO,1770 .type = AVMEDIA_TYPE_AUDIO,
1771 .config_props = config_input,1771 .config_props = config_input,
1772 },1772 },
1773 { NULL }
1774};1773};
1775 1774
1776static const AVFilterPad outputs[] = {1775static const AVFilterPad outputs[] = {
@@ -1779,7 +1778,6 @@ static const AVFilterPad outputs[] = { · 2 unmodified lines
1779 .type = AVMEDIA_TYPE_AUDIO,1778 .type = AVMEDIA_TYPE_AUDIO,
1780 .config_props = config_output,1779 .config_props = config_output,
1781 },1780 },
1782 { NULL }
1783};1781};
1784 1782
1785const AVFilter ff_af_surround = {1783const AVFilter ff_af_surround = {
@@ -1791,7 +1789,7 @@ const AVFilter ff_af_surround = { · 5 unmodified lines
1791 .init = init,1789 .init = init,
1792 .uninit = uninit,1790 .uninit = uninit,
1793 .activate = activate,1791 .activate = activate,
1794 .inputs = inputs,1792 FILTER_INPUTS(inputs),
1795 .outputs = outputs,1793 FILTER_OUTPUTS(outputs),
1796 .flags = AVFILTER_FLAG_SLICE_THREADS,1794 .flags = AVFILTER_FLAG_SLICE_THREADS,
1797};1795};
libavfilter/af_tremolo.c+2−4
@@ -136,7 +136,6 @@ static const AVFilterPad avfilter_af_tremolo_inputs[] = { · 135 unmodified lines
136 .config_props = config_input,136 .config_props = config_input,
137 .filter_frame = filter_frame,137 .filter_frame = filter_frame,
138 },138 },
139 { NULL }
140};139};
141 140
142static const AVFilterPad avfilter_af_tremolo_outputs[] = {141static const AVFilterPad avfilter_af_tremolo_outputs[] = {
@@ -144,7 +143,6 @@ static const AVFilterPad avfilter_af_tremolo_outputs[] = { · 1 unmodified line
144 .name = "default",143 .name = "default",
145 .type = AVMEDIA_TYPE_AUDIO,144 .type = AVMEDIA_TYPE_AUDIO,
146 },145 },
147 { NULL }
148};146};
149 147
150const AVFilter ff_af_tremolo = {148const AVFilter ff_af_tremolo = {
@@ -154,6 +152,6 @@ const AVFilter ff_af_tremolo = { · 3 unmodified lines
154 .priv_class = &tremolo_class,152 .priv_class = &tremolo_class,
155 .uninit = uninit,153 .uninit = uninit,
156 .query_formats = query_formats,154 .query_formats = query_formats,
157 .inputs = avfilter_af_tremolo_inputs,155 FILTER_INPUTS(avfilter_af_tremolo_inputs),
158 .outputs = avfilter_af_tremolo_outputs,156 FILTER_OUTPUTS(avfilter_af_tremolo_outputs),
159};157};
libavfilter/af_vibrato.c+2−4
@@ -174,7 +174,6 @@ static const AVFilterPad avfilter_af_vibrato_inputs[] = { · 173 unmodified lines
174 .config_props = config_input,174 .config_props = config_input,
175 .filter_frame = filter_frame,175 .filter_frame = filter_frame,
176 },176 },
177 { NULL }
178};177};
179 178
180static const AVFilterPad avfilter_af_vibrato_outputs[] = {179static const AVFilterPad avfilter_af_vibrato_outputs[] = {
@@ -182,7 +181,6 @@ static const AVFilterPad avfilter_af_vibrato_outputs[] = { · 1 unmodified line
182 .name = "default",181 .name = "default",
183 .type = AVMEDIA_TYPE_AUDIO,182 .type = AVMEDIA_TYPE_AUDIO,
184 },183 },
185 { NULL }
186};184};
187 185
188const AVFilter ff_af_vibrato = {186const AVFilter ff_af_vibrato = {
@@ -192,6 +190,6 @@ const AVFilter ff_af_vibrato = { · 3 unmodified lines
192 .priv_class = &vibrato_class,190 .priv_class = &vibrato_class,
193 .uninit = uninit,191 .uninit = uninit,
194 .query_formats = query_formats,192 .query_formats = query_formats,
195 .inputs = avfilter_af_vibrato_inputs,193 FILTER_INPUTS(avfilter_af_vibrato_inputs),
196 .outputs = avfilter_af_vibrato_outputs,194 FILTER_OUTPUTS(avfilter_af_vibrato_outputs),
197};195};
libavfilter/af_volume.c+2−4
@@ -452,7 +452,6 @@ static const AVFilterPad avfilter_af_volume_inputs[] = { · 451 unmodified lines
452 .type = AVMEDIA_TYPE_AUDIO,452 .type = AVMEDIA_TYPE_AUDIO,
453 .filter_frame = filter_frame,453 .filter_frame = filter_frame,
454 },454 },
455 { NULL }
456};455};
457 456
458static const AVFilterPad avfilter_af_volume_outputs[] = {457static const AVFilterPad avfilter_af_volume_outputs[] = {
@@ -461,7 +460,6 @@ static const AVFilterPad avfilter_af_volume_outputs[] = { · 2 unmodified lines
461 .type = AVMEDIA_TYPE_AUDIO,460 .type = AVMEDIA_TYPE_AUDIO,
462 .config_props = config_output,461 .config_props = config_output,
463 },462 },
464 { NULL }
465};463};
466 464
467const AVFilter ff_af_volume = {465const AVFilter ff_af_volume = {
@@ -472,8 +470,8 @@ const AVFilter ff_af_volume = { · 4 unmodified lines
472 .priv_class = &volume_class,470 .priv_class = &volume_class,
473 .init = init,471 .init = init,
474 .uninit = uninit,472 .uninit = uninit,
475 .inputs = avfilter_af_volume_inputs,473 FILTER_INPUTS(avfilter_af_volume_inputs),
476 .outputs = avfilter_af_volume_outputs,474 FILTER_OUTPUTS(avfilter_af_volume_outputs),
477 .flags = AVFILTER_FLAG_SUPPORT_TIMELINE_GENERIC,475 .flags = AVFILTER_FLAG_SUPPORT_TIMELINE_GENERIC,
478 .process_command = process_command,476 .process_command = process_command,
479};477};
libavfilter/af_volumedetect.c+2−4
@@ -134,7 +134,6 @@ static const AVFilterPad volumedetect_inputs[] = { · 133 unmodified lines
134 .type = AVMEDIA_TYPE_AUDIO,134 .type = AVMEDIA_TYPE_AUDIO,
135 .filter_frame = filter_frame,135 .filter_frame = filter_frame,
136 },136 },
137 { NULL }
138};137};
139 138
140static const AVFilterPad volumedetect_outputs[] = {139static const AVFilterPad volumedetect_outputs[] = {
@@ -142,7 +141,6 @@ static const AVFilterPad volumedetect_outputs[] = { · 1 unmodified line
142 .name = "default",141 .name = "default",
143 .type = AVMEDIA_TYPE_AUDIO,142 .type = AVMEDIA_TYPE_AUDIO,
144 },143 },
145 { NULL }
146};144};
147 145
148const AVFilter ff_af_volumedetect = {146const AVFilter ff_af_volumedetect = {
@@ -151,6 +149,6 @@ const AVFilter ff_af_volumedetect = { · 2 unmodified lines
151 .priv_size = sizeof(VolDetectContext),149 .priv_size = sizeof(VolDetectContext),
152 .query_formats = query_formats,150 .query_formats = query_formats,
153 .uninit = uninit,151 .uninit = uninit,
154 .inputs = volumedetect_inputs,152 FILTER_INPUTS(volumedetect_inputs),
155 .outputs = volumedetect_outputs,153 FILTER_OUTPUTS(volumedetect_outputs),
156};154};
libavfilter/asink_anullsink.c+1−2
@@ -34,13 +34,12 @@ static const AVFilterPad avfilter_asink_anullsink_inputs[] = { · 33 unmodified lines
34 .type = AVMEDIA_TYPE_AUDIO,34 .type = AVMEDIA_TYPE_AUDIO,
35 .filter_frame = null_filter_frame,35 .filter_frame = null_filter_frame,
36 },36 },
37 { NULL },
38};37};
39 38
40const AVFilter ff_asink_anullsink = {39const AVFilter ff_asink_anullsink = {
41 .name = "anullsink",40 .name = "anullsink",
42 .description = NULL_IF_CONFIG_SMALL("Do absolutely nothing with the input audio."),41 .description = NULL_IF_CONFIG_SMALL("Do absolutely nothing with the input audio."),
43 .priv_size = 0,42 .priv_size = 0,
44 .inputs = avfilter_asink_anullsink_inputs,43 FILTER_INPUTS(avfilter_asink_anullsink_inputs),
45 .outputs = NULL,44 .outputs = NULL,
46};45};
libavfilter/asrc_afirsrc.c+1−2
@@ -301,7 +301,6 @@ static const AVFilterPad afirsrc_outputs[] = { · 300 unmodified lines
301 .request_frame = request_frame,301 .request_frame = request_frame,
302 .config_props = config_output,302 .config_props = config_output,
303 },303 },
304 { NULL }
305};304};
306 305
307const AVFilter ff_asrc_afirsrc = {306const AVFilter ff_asrc_afirsrc = {
@@ -312,6 +311,6 @@ const AVFilter ff_asrc_afirsrc = { · 4 unmodified lines
312 .uninit = uninit,311 .uninit = uninit,
313 .priv_size = sizeof(AudioFIRSourceContext),312 .priv_size = sizeof(AudioFIRSourceContext),
314 .inputs = NULL,313 .inputs = NULL,
315 .outputs = afirsrc_outputs,314 FILTER_OUTPUTS(afirsrc_outputs),
316 .priv_class = &afirsrc_class,315 .priv_class = &afirsrc_class,
317};316};
libavfilter/asrc_anoisesrc.c+1−2
@@ -230,7 +230,6 @@ static const AVFilterPad anoisesrc_outputs[] = { · 229 unmodified lines
230 .type = AVMEDIA_TYPE_AUDIO,230 .type = AVMEDIA_TYPE_AUDIO,
231 .config_props = config_props,231 .config_props = config_props,
232 },232 },
233 { NULL }
234};233};
235 234
236const AVFilter ff_asrc_anoisesrc = {235const AVFilter ff_asrc_anoisesrc = {
@@ -240,6 +239,6 @@ const AVFilter ff_asrc_anoisesrc = { · 3 unmodified lines
240 .priv_size = sizeof(ANoiseSrcContext),239 .priv_size = sizeof(ANoiseSrcContext),
241 .inputs = NULL,240 .inputs = NULL,
242 .activate = activate,241 .activate = activate,
243 .outputs = anoisesrc_outputs,242 FILTER_OUTPUTS(anoisesrc_outputs),
244 .priv_class = &anoisesrc_class,243 .priv_class = &anoisesrc_class,
245};244};
libavfilter/asrc_anullsrc.c+1−2
@@ -134,7 +134,6 @@ static const AVFilterPad avfilter_asrc_anullsrc_outputs[] = { · 133 unmodified lines
134 .type = AVMEDIA_TYPE_AUDIO,134 .type = AVMEDIA_TYPE_AUDIO,
135 .config_props = config_props,135 .config_props = config_props,
136 },136 },
137 { NULL }
138};137};
139 138
140const AVFilter ff_asrc_anullsrc = {139const AVFilter ff_asrc_anullsrc = {
@@ -144,7 +143,7 @@ const AVFilter ff_asrc_anullsrc = { · 3 unmodified lines
144 .query_formats = query_formats,143 .query_formats = query_formats,
145 .priv_size = sizeof(ANullContext),144 .priv_size = sizeof(ANullContext),
146 .inputs = NULL,145 .inputs = NULL,
147 .outputs = avfilter_asrc_anullsrc_outputs,146 FILTER_OUTPUTS(avfilter_asrc_anullsrc_outputs),
148 .activate = activate,147 .activate = activate,
149 .priv_class = &anullsrc_class,148 .priv_class = &anullsrc_class,
150};149};
libavfilter/asrc_flite.c+1−2
@@ -271,7 +271,6 @@ static const AVFilterPad flite_outputs[] = { · 270 unmodified lines
271 .config_props = config_props,271 .config_props = config_props,
272 .request_frame = request_frame,272 .request_frame = request_frame,
273 },273 },
274 { NULL }
275};274};
276 275
277const AVFilter ff_asrc_flite = {276const AVFilter ff_asrc_flite = {
@@ -282,6 +281,6 @@ const AVFilter ff_asrc_flite = { · 4 unmodified lines
282 .uninit = uninit,281 .uninit = uninit,
283 .priv_size = sizeof(FliteContext),282 .priv_size = sizeof(FliteContext),
284 .inputs = NULL,283 .inputs = NULL,
285 .outputs = flite_outputs,284 FILTER_OUTPUTS(flite_outputs),
286 .priv_class = &flite_class,285 .priv_class = &flite_class,
287};286};
libavfilter/asrc_hilbert.c+1−2
@@ -171,7 +171,6 @@ static const AVFilterPad hilbert_outputs[] = { · 170 unmodified lines
171 .request_frame = request_frame,171 .request_frame = request_frame,
172 .config_props = config_props,172 .config_props = config_props,
173 },173 },
174 { NULL }
175};174};
176 175
177const AVFilter ff_asrc_hilbert = {176const AVFilter ff_asrc_hilbert = {
@@ -182,6 +181,6 @@ const AVFilter ff_asrc_hilbert = { · 4 unmodified lines
182 .uninit = uninit,181 .uninit = uninit,
183 .priv_size = sizeof(HilbertContext),182 .priv_size = sizeof(HilbertContext),
184 .inputs = NULL,183 .inputs = NULL,
185 .outputs = hilbert_outputs,184 FILTER_OUTPUTS(hilbert_outputs),
186 .priv_class = &hilbert_class,185 .priv_class = &hilbert_class,
187};186};
libavfilter/asrc_sinc.c+1−2
@@ -408,7 +408,6 @@ static const AVFilterPad sinc_outputs[] = { · 407 unmodified lines
408 .config_props = config_output,408 .config_props = config_output,
409 .request_frame = request_frame,409 .request_frame = request_frame,
410 },410 },
411 { NULL }
412};411};
413 412
414#define AF AV_OPT_FLAG_AUDIO_PARAM|AV_OPT_FLAG_FILTERING_PARAM413#define AF AV_OPT_FLAG_AUDIO_PARAM|AV_OPT_FLAG_FILTERING_PARAM
@@ -440,5 +439,5 @@ const AVFilter ff_asrc_sinc = { · 25 unmodified lines
440 .query_formats = query_formats,439 .query_formats = query_formats,
441 .uninit = uninit,440 .uninit = uninit,
442 .inputs = NULL,441 .inputs = NULL,
443 .outputs = sinc_outputs,442 FILTER_OUTPUTS(sinc_outputs),
444};443};
libavfilter/asrc_sine.c+1−2
@@ -253,7 +253,6 @@ static const AVFilterPad sine_outputs[] = { · 252 unmodified lines
253 .request_frame = request_frame,253 .request_frame = request_frame,
254 .config_props = config_props,254 .config_props = config_props,
255 },255 },
256 { NULL }
257};256};
258 257
259const AVFilter ff_asrc_sine = {258const AVFilter ff_asrc_sine = {
@@ -264,6 +263,6 @@ const AVFilter ff_asrc_sine = { · 4 unmodified lines
264 .uninit = uninit,263 .uninit = uninit,
265 .priv_size = sizeof(SineContext),264 .priv_size = sizeof(SineContext),
266 .inputs = NULL,265 .inputs = NULL,
267 .outputs = sine_outputs,266 FILTER_OUTPUTS(sine_outputs),
268 .priv_class = &sine_class,267 .priv_class = &sine_class,
269};268};
libavfilter/avf_abitscope.c+2−4
@@ -248,7 +248,6 @@ static const AVFilterPad inputs[] = { · 247 unmodified lines
248 .type = AVMEDIA_TYPE_AUDIO,248 .type = AVMEDIA_TYPE_AUDIO,
249 .config_props = config_input,249 .config_props = config_input,
250 },250 },
251 { NULL }
252};251};
253 252
254static const AVFilterPad outputs[] = {253static const AVFilterPad outputs[] = {
@@ -257,7 +256,6 @@ static const AVFilterPad outputs[] = { · 2 unmodified lines
257 .type = AVMEDIA_TYPE_VIDEO,256 .type = AVMEDIA_TYPE_VIDEO,
258 .config_props = config_output,257 .config_props = config_output,
259 },258 },
260 { NULL }
261};259};
262 260
263const AVFilter ff_avf_abitscope = {261const AVFilter ff_avf_abitscope = {
@@ -265,8 +263,8 @@ const AVFilter ff_avf_abitscope = { · 1 unmodified line
265 .description = NULL_IF_CONFIG_SMALL("Convert input audio to audio bit scope video output."),263 .description = NULL_IF_CONFIG_SMALL("Convert input audio to audio bit scope video output."),
266 .query_formats = query_formats,264 .query_formats = query_formats,
267 .priv_size = sizeof(AudioBitScopeContext),265 .priv_size = sizeof(AudioBitScopeContext),
268 .inputs = inputs,266 FILTER_INPUTS(inputs),
269 .outputs = outputs,267 FILTER_OUTPUTS(outputs),
270 .activate = activate,268 .activate = activate,
271 .priv_class = &abitscope_class,269 .priv_class = &abitscope_class,
272};270};
libavfilter/avf_ahistogram.c+2−4
@@ -412,7 +412,6 @@ static const AVFilterPad ahistogram_inputs[] = { · 411 unmodified lines
412 .type = AVMEDIA_TYPE_AUDIO,412 .type = AVMEDIA_TYPE_AUDIO,
413 .config_props = config_input,413 .config_props = config_input,
414 },414 },
415 { NULL }
416};415};
417 416
418static const AVFilterPad ahistogram_outputs[] = {417static const AVFilterPad ahistogram_outputs[] = {
@@ -421,7 +420,6 @@ static const AVFilterPad ahistogram_outputs[] = { · 2 unmodified lines
421 .type = AVMEDIA_TYPE_VIDEO,420 .type = AVMEDIA_TYPE_VIDEO,
422 .config_props = config_output,421 .config_props = config_output,
423 },422 },
424 { NULL }
425};423};
426 424
427const AVFilter ff_avf_ahistogram = {425const AVFilter ff_avf_ahistogram = {
@@ -431,7 +429,7 @@ const AVFilter ff_avf_ahistogram = { · 3 unmodified lines
431 .query_formats = query_formats,429 .query_formats = query_formats,
432 .priv_size = sizeof(AudioHistogramContext),430 .priv_size = sizeof(AudioHistogramContext),
433 .activate = activate,431 .activate = activate,
434 .inputs = ahistogram_inputs,432 FILTER_INPUTS(ahistogram_inputs),
435 .outputs = ahistogram_outputs,433 FILTER_OUTPUTS(ahistogram_outputs),
436 .priv_class = &ahistogram_class,434 .priv_class = &ahistogram_class,
437};435};
libavfilter/avf_aphasemeter.c+1−2
@@ -380,7 +380,6 @@ static const AVFilterPad inputs[] = { · 379 unmodified lines
380 .config_props = config_input,380 .config_props = config_input,
381 .filter_frame = filter_frame,381 .filter_frame = filter_frame,
382 },382 },
383 { NULL }
384};383};
385 384
386const AVFilter ff_avf_aphasemeter = {385const AVFilter ff_avf_aphasemeter = {
@@ -390,7 +389,7 @@ const AVFilter ff_avf_aphasemeter = { · 3 unmodified lines
390 .uninit = uninit,389 .uninit = uninit,
391 .query_formats = query_formats,390 .query_formats = query_formats,
392 .priv_size = sizeof(AudioPhaseMeterContext),391 .priv_size = sizeof(AudioPhaseMeterContext),
393 .inputs = inputs,392 FILTER_INPUTS(inputs),
394 .outputs = NULL,393 .outputs = NULL,
395 .priv_class = &aphasemeter_class,394 .priv_class = &aphasemeter_class,
396 .flags = AVFILTER_FLAG_DYNAMIC_OUTPUTS,395 .flags = AVFILTER_FLAG_DYNAMIC_OUTPUTS,
libavfilter/avf_avectorscope.c+2−4
@@ -403,7 +403,6 @@ static const AVFilterPad audiovectorscope_inputs[] = { · 402 unmodified lines
403 .type = AVMEDIA_TYPE_AUDIO,403 .type = AVMEDIA_TYPE_AUDIO,
404 .config_props = config_input,404 .config_props = config_input,
405 },405 },
406 { NULL }
407};406};
408 407
409static const AVFilterPad audiovectorscope_outputs[] = {408static const AVFilterPad audiovectorscope_outputs[] = {
@@ -412,7 +411,6 @@ static const AVFilterPad audiovectorscope_outputs[] = { · 2 unmodified lines
412 .type = AVMEDIA_TYPE_VIDEO,411 .type = AVMEDIA_TYPE_VIDEO,
413 .config_props = config_output,412 .config_props = config_output,
414 },413 },
415 { NULL }
416};414};
417 415
418const AVFilter ff_avf_avectorscope = {416const AVFilter ff_avf_avectorscope = {
@@ -422,7 +420,7 @@ const AVFilter ff_avf_avectorscope = { · 3 unmodified lines
422 .query_formats = query_formats,420 .query_formats = query_formats,
423 .priv_size = sizeof(AudioVectorScopeContext),421 .priv_size = sizeof(AudioVectorScopeContext),
424 .activate = activate,422 .activate = activate,
425 .inputs = audiovectorscope_inputs,423 FILTER_INPUTS(audiovectorscope_inputs),
426 .outputs = audiovectorscope_outputs,424 FILTER_OUTPUTS(audiovectorscope_outputs),
427 .priv_class = &avectorscope_class,425 .priv_class = &avectorscope_class,
428};426};
libavfilter/avf_showcqt.c+2−4
@@ -1577,7 +1577,6 @@ static const AVFilterPad showcqt_inputs[] = { · 1576 unmodified lines
1577 .type = AVMEDIA_TYPE_AUDIO,1577 .type = AVMEDIA_TYPE_AUDIO,
1578 .filter_frame = filter_frame,1578 .filter_frame = filter_frame,
1579 },1579 },
1580 { NULL }
1581};1580};
1582 1581
1583static const AVFilterPad showcqt_outputs[] = {1582static const AVFilterPad showcqt_outputs[] = {
@@ -1587,7 +1586,6 @@ static const AVFilterPad showcqt_outputs[] = { · 3 unmodified lines
1587 .config_props = config_output,1586 .config_props = config_output,
1588 .request_frame = request_frame,1587 .request_frame = request_frame,
1589 },1588 },
1590 { NULL }
1591};1589};
1592 1590
1593const AVFilter ff_avf_showcqt = {1591const AVFilter ff_avf_showcqt = {
@@ -1597,7 +1595,7 @@ const AVFilter ff_avf_showcqt = { · 3 unmodified lines
1597 .uninit = uninit,1595 .uninit = uninit,
1598 .query_formats = query_formats,1596 .query_formats = query_formats,
1599 .priv_size = sizeof(ShowCQTContext),1597 .priv_size = sizeof(ShowCQTContext),
1600 .inputs = showcqt_inputs,1598 FILTER_INPUTS(showcqt_inputs),
1601 .outputs = showcqt_outputs,1599 FILTER_OUTPUTS(showcqt_outputs),
1602 .priv_class = &showcqt_class,1600 .priv_class = &showcqt_class,
1603};1601};
libavfilter/avf_showfreqs.c+2−4
@@ -552,7 +552,6 @@ static const AVFilterPad showfreqs_inputs[] = { · 551 unmodified lines
552 .name = "default",552 .name = "default",
553 .type = AVMEDIA_TYPE_AUDIO,553 .type = AVMEDIA_TYPE_AUDIO,
554 },554 },
555 { NULL }
556};555};
557 556
558static const AVFilterPad showfreqs_outputs[] = {557static const AVFilterPad showfreqs_outputs[] = {
@@ -561,7 +560,6 @@ static const AVFilterPad showfreqs_outputs[] = { · 2 unmodified lines
561 .type = AVMEDIA_TYPE_VIDEO,560 .type = AVMEDIA_TYPE_VIDEO,
562 .config_props = config_output,561 .config_props = config_output,
563 },562 },
564 { NULL }
565};563};
566 564
567const AVFilter ff_avf_showfreqs = {565const AVFilter ff_avf_showfreqs = {
@@ -572,7 +570,7 @@ const AVFilter ff_avf_showfreqs = { · 4 unmodified lines
572 .query_formats = query_formats,570 .query_formats = query_formats,
573 .priv_size = sizeof(ShowFreqsContext),571 .priv_size = sizeof(ShowFreqsContext),
574 .activate = activate,572 .activate = activate,
575 .inputs = showfreqs_inputs,573 FILTER_INPUTS(showfreqs_inputs),
576 .outputs = showfreqs_outputs,574 FILTER_OUTPUTS(showfreqs_outputs),
577 .priv_class = &showfreqs_class,575 .priv_class = &showfreqs_class,
578};576};
libavfilter/avf_showspatial.c+2−4
@@ -346,7 +346,6 @@ static const AVFilterPad showspatial_inputs[] = { · 345 unmodified lines
346 .name = "default",346 .name = "default",
347 .type = AVMEDIA_TYPE_AUDIO,347 .type = AVMEDIA_TYPE_AUDIO,
348 },348 },
349 { NULL }
350};349};
351 350
352static const AVFilterPad showspatial_outputs[] = {351static const AVFilterPad showspatial_outputs[] = {
@@ -355,7 +354,6 @@ static const AVFilterPad showspatial_outputs[] = { · 2 unmodified lines
355 .type = AVMEDIA_TYPE_VIDEO,354 .type = AVMEDIA_TYPE_VIDEO,
356 .config_props = config_output,355 .config_props = config_output,
357 },356 },
358 { NULL }
359};357};
360 358
361const AVFilter ff_avf_showspatial = {359const AVFilter ff_avf_showspatial = {
@@ -364,8 +362,8 @@ const AVFilter ff_avf_showspatial = { · 2 unmodified lines
364 .uninit = uninit,362 .uninit = uninit,
365 .query_formats = query_formats,363 .query_formats = query_formats,
366 .priv_size = sizeof(ShowSpatialContext),364 .priv_size = sizeof(ShowSpatialContext),
367 .inputs = showspatial_inputs,365 FILTER_INPUTS(showspatial_inputs),
368 .outputs = showspatial_outputs,366 FILTER_OUTPUTS(showspatial_outputs),
369 .activate = spatial_activate,367 .activate = spatial_activate,
370 .priv_class = &showspatial_class,368 .priv_class = &showspatial_class,
371 .flags = AVFILTER_FLAG_SLICE_THREADS,369 .flags = AVFILTER_FLAG_SLICE_THREADS,
libavfilter/avf_showspectrum.c+4−8
@@ -1654,7 +1654,6 @@ static const AVFilterPad showspectrum_inputs[] = { · 1653 unmodified lines
1654 .name = "default",1654 .name = "default",
1655 .type = AVMEDIA_TYPE_AUDIO,1655 .type = AVMEDIA_TYPE_AUDIO,
1656 },1656 },
1657 { NULL }
1658};1657};
1659 1658
1660static const AVFilterPad showspectrum_outputs[] = {1659static const AVFilterPad showspectrum_outputs[] = {
@@ -1663,7 +1662,6 @@ static const AVFilterPad showspectrum_outputs[] = { · 2 unmodified lines
1663 .type = AVMEDIA_TYPE_VIDEO,1662 .type = AVMEDIA_TYPE_VIDEO,
1664 .config_props = config_output,1663 .config_props = config_output,
1665 },1664 },
1666 { NULL }
1667};1665};
1668 1666
1669const AVFilter ff_avf_showspectrum = {1667const AVFilter ff_avf_showspectrum = {
@@ -1672,8 +1670,8 @@ const AVFilter ff_avf_showspectrum = { · 2 unmodified lines
1672 .uninit = uninit,1670 .uninit = uninit,
1673 .query_formats = query_formats,1671 .query_formats = query_formats,
1674 .priv_size = sizeof(ShowSpectrumContext),1672 .priv_size = sizeof(ShowSpectrumContext),
1675 .inputs = showspectrum_inputs,1673 FILTER_INPUTS(showspectrum_inputs),
1676 .outputs = showspectrum_outputs,1674 FILTER_OUTPUTS(showspectrum_outputs),
1677 .activate = activate,1675 .activate = activate,
1678 .priv_class = &showspectrum_class,1676 .priv_class = &showspectrum_class,
1679 .flags = AVFILTER_FLAG_SLICE_THREADS,1677 .flags = AVFILTER_FLAG_SLICE_THREADS,
@@ -1838,7 +1836,6 @@ static const AVFilterPad showspectrumpic_inputs[] = { · 158 unmodified lines
1838 .type = AVMEDIA_TYPE_AUDIO,1836 .type = AVMEDIA_TYPE_AUDIO,
1839 .filter_frame = showspectrumpic_filter_frame,1837 .filter_frame = showspectrumpic_filter_frame,
1840 },1838 },
1841 { NULL }
1842};1839};
1843 1840
1844static const AVFilterPad showspectrumpic_outputs[] = {1841static const AVFilterPad showspectrumpic_outputs[] = {
@@ -1848,7 +1845,6 @@ static const AVFilterPad showspectrumpic_outputs[] = { · 3 unmodified lines
1848 .config_props = config_output,1845 .config_props = config_output,
1849 .request_frame = showspectrumpic_request_frame,1846 .request_frame = showspectrumpic_request_frame,
1850 },1847 },
1851 { NULL }
1852};1848};
1853 1849
1854const AVFilter ff_avf_showspectrumpic = {1850const AVFilter ff_avf_showspectrumpic = {
@@ -1857,8 +1853,8 @@ const AVFilter ff_avf_showspectrumpic = { · 2 unmodified lines
1857 .uninit = uninit,1853 .uninit = uninit,
1858 .query_formats = query_formats,1854 .query_formats = query_formats,
1859 .priv_size = sizeof(ShowSpectrumContext),1855 .priv_size = sizeof(ShowSpectrumContext),
1860 .inputs = showspectrumpic_inputs,1856 FILTER_INPUTS(showspectrumpic_inputs),
1861 .outputs = showspectrumpic_outputs,1857 FILTER_OUTPUTS(showspectrumpic_outputs),
1862 .priv_class = &showspectrumpic_class,1858 .priv_class = &showspectrumpic_class,
1863 .flags = AVFILTER_FLAG_SLICE_THREADS,1859 .flags = AVFILTER_FLAG_SLICE_THREADS,
1864};1860};
libavfilter/avf_showvolume.c+2−4
@@ -486,7 +486,6 @@ static const AVFilterPad showvolume_inputs[] = { · 485 unmodified lines
486 .type = AVMEDIA_TYPE_AUDIO,486 .type = AVMEDIA_TYPE_AUDIO,
487 .config_props = config_input,487 .config_props = config_input,
488 },488 },
489 { NULL }
490};489};
491 490
492static const AVFilterPad showvolume_outputs[] = {491static const AVFilterPad showvolume_outputs[] = {
@@ -495,7 +494,6 @@ static const AVFilterPad showvolume_outputs[] = { · 2 unmodified lines
495 .type = AVMEDIA_TYPE_VIDEO,494 .type = AVMEDIA_TYPE_VIDEO,
496 .config_props = config_output,495 .config_props = config_output,
497 },496 },
498 { NULL }
499};497};
500 498
501const AVFilter ff_avf_showvolume = {499const AVFilter ff_avf_showvolume = {
@@ -506,7 +504,7 @@ const AVFilter ff_avf_showvolume = { · 4 unmodified lines
506 .uninit = uninit,504 .uninit = uninit,
507 .query_formats = query_formats,505 .query_formats = query_formats,
508 .priv_size = sizeof(ShowVolumeContext),506 .priv_size = sizeof(ShowVolumeContext),
509 .inputs = showvolume_inputs,507 FILTER_INPUTS(showvolume_inputs),
510 .outputs = showvolume_outputs,508 FILTER_OUTPUTS(showvolume_outputs),
511 .priv_class = &showvolume_class,509 .priv_class = &showvolume_class,
512};510};
libavfilter/avf_showwaves.c+4−8
@@ -763,7 +763,6 @@ static const AVFilterPad showwaves_inputs[] = { · 762 unmodified lines
763 .name = "default",763 .name = "default",
764 .type = AVMEDIA_TYPE_AUDIO,764 .type = AVMEDIA_TYPE_AUDIO,
765 },765 },
766 { NULL }
767};766};
768 767
769static const AVFilterPad showwaves_outputs[] = {768static const AVFilterPad showwaves_outputs[] = {
@@ -772,7 +771,6 @@ static const AVFilterPad showwaves_outputs[] = { · 2 unmodified lines
772 .type = AVMEDIA_TYPE_VIDEO,771 .type = AVMEDIA_TYPE_VIDEO,
773 .config_props = config_output,772 .config_props = config_output,
774 },773 },
775 { NULL }
776};774};
777 775
778const AVFilter ff_avf_showwaves = {776const AVFilter ff_avf_showwaves = {
@@ -782,9 +780,9 @@ const AVFilter ff_avf_showwaves = { · 3 unmodified lines
782 .uninit = uninit,780 .uninit = uninit,
783 .query_formats = query_formats,781 .query_formats = query_formats,
784 .priv_size = sizeof(ShowWavesContext),782 .priv_size = sizeof(ShowWavesContext),
785 .inputs = showwaves_inputs,783 FILTER_INPUTS(showwaves_inputs),
786 .activate = activate,784 .activate = activate,
787 .outputs = showwaves_outputs,785 FILTER_OUTPUTS(showwaves_outputs),
788 .priv_class = &showwaves_class,786 .priv_class = &showwaves_class,
789};787};
790 788
@@ -877,7 +875,6 @@ static const AVFilterPad showwavespic_inputs[] = { · 86 unmodified lines
877 .config_props = showwavespic_config_input,875 .config_props = showwavespic_config_input,
878 .filter_frame = showwavespic_filter_frame,876 .filter_frame = showwavespic_filter_frame,
879 },877 },
880 { NULL }
881};878};
882 879
883static const AVFilterPad showwavespic_outputs[] = {880static const AVFilterPad showwavespic_outputs[] = {
@@ -887,7 +884,6 @@ static const AVFilterPad showwavespic_outputs[] = { · 3 unmodified lines
887 .config_props = config_output,884 .config_props = config_output,
888 .request_frame = request_frame,885 .request_frame = request_frame,
889 },886 },
890 { NULL }
891};887};
892 888
893const AVFilter ff_avf_showwavespic = {889const AVFilter ff_avf_showwavespic = {
@@ -897,8 +893,8 @@ const AVFilter ff_avf_showwavespic = { · 3 unmodified lines
897 .uninit = uninit,893 .uninit = uninit,
898 .query_formats = query_formats,894 .query_formats = query_formats,
899 .priv_size = sizeof(ShowWavesContext),895 .priv_size = sizeof(ShowWavesContext),
900 .inputs = showwavespic_inputs,896 FILTER_INPUTS(showwavespic_inputs),
901 .outputs = showwavespic_outputs,897 FILTER_OUTPUTS(showwavespic_outputs),
902 .priv_class = &showwavespic_class,898 .priv_class = &showwavespic_class,
903};899};
904 900
libavfilter/avfilter.c+12−6
@@ -540,14 +540,20 @@ int avfilter_process_command(AVFilterContext *filter, const char *cmd, const cha · 539 unmodified lines
540 540
541int avfilter_pad_count(const AVFilterPad *pads)541int avfilter_pad_count(const AVFilterPad *pads)
542{542{
543 int count;543 const AVFilter *filter;
544 void *opaque = NULL;
544 545
545 if (!pads)546 if (!pads)
546 return 0;547 return 0;
547 548
548 for (count = 0; pads->name; count++)549 while (filter = av_filter_iterate(&opaque)) {
549 pads++;550 if (pads == filter->inputs)
550 return count;551 return filter->nb_inputs;
552 if (pads == filter->outputs)
553 return filter->nb_outputs;
554 }
555
556 av_assert0(!"AVFilterPad list not from a filter");
551}557}
552 558
553static const char *default_filter_name(void *filter_ctx)559static const char *default_filter_name(void *filter_ctx)
@@ -650,7 +656,7 @@ AVFilterContext *ff_filter_alloc(const AVFilter *filter, const char *inst_name) · 96 unmodified lines
650 goto err;656 goto err;
651 ret->internal->execute = default_execute;657 ret->internal->execute = default_execute;
652 658
653 ret->nb_inputs = avfilter_pad_count(filter->inputs);659 ret->nb_inputs = filter->nb_inputs;
654 if (ret->nb_inputs ) {660 if (ret->nb_inputs ) {
655 ret->input_pads = av_memdup(filter->inputs, ret->nb_inputs * sizeof(*filter->inputs));661 ret->input_pads = av_memdup(filter->inputs, ret->nb_inputs * sizeof(*filter->inputs));
656 if (!ret->input_pads)662 if (!ret->input_pads)
@@ -660,7 +666,7 @@ AVFilterContext *ff_filter_alloc(const AVFilter *filter, const char *inst_name) · 3 unmodified lines
660 goto err;666 goto err;
661 }667 }
662 668
663 ret->nb_outputs = avfilter_pad_count(filter->outputs);669 ret->nb_outputs = filter->nb_outputs;
664 if (ret->nb_outputs) {670 if (ret->nb_outputs) {
665 ret->output_pads = av_memdup(filter->outputs, ret->nb_outputs * sizeof(*filter->outputs));671 ret->output_pads = av_memdup(filter->outputs, ret->nb_outputs * sizeof(*filter->outputs));
666 if (!ret->output_pads)672 if (!ret->output_pads)
libavfilter/avfilter.h+14−4
@@ -71,8 +71,7 @@ typedef struct AVFilterFormats AVFilterFormats; · 70 unmodified lines
71typedef struct AVFilterChannelLayouts AVFilterChannelLayouts;71typedef struct AVFilterChannelLayouts AVFilterChannelLayouts;
72 72
73/**73/**
74 * Get the number of elements in a NULL-terminated array of AVFilterPads (e.g.74 * Get the number of elements in an AVFilter's inputs or outputs array.
75 * AVFilter.inputs/outputs).
76 */75 */
77int avfilter_pad_count(const AVFilterPad *pads);76int avfilter_pad_count(const AVFilterPad *pads);
78 77
@@ -156,15 +155,16 @@ typedef struct AVFilter { · 77 unmodified lines
156 const char *description;155 const char *description;
157 156
158 /**157 /**
159 * List of inputs, terminated by a zeroed element.158 * List of static inputs.
160 *159 *
161 * NULL if there are no (static) inputs. Instances of filters with160 * NULL if there are no (static) inputs. Instances of filters with
162 * AVFILTER_FLAG_DYNAMIC_INPUTS set may have more inputs than present in161 * AVFILTER_FLAG_DYNAMIC_INPUTS set may have more inputs than present in
163 * this list.162 * this list.
164 */163 */
165 const AVFilterPad *inputs;164 const AVFilterPad *inputs;
165
166 /**166 /**
167 * List of outputs, terminated by a zeroed element.167 * List of static outputs.
168 *168 *
169 * NULL if there are no (static) outputs. Instances of filters with169 * NULL if there are no (static) outputs. Instances of filters with
170 * AVFILTER_FLAG_DYNAMIC_OUTPUTS set may have more outputs than present in170 * AVFILTER_FLAG_DYNAMIC_OUTPUTS set may have more outputs than present in
@@ -195,6 +195,16 @@ typedef struct AVFilter { · 24 unmodified lines
195 *****************************************************************195 *****************************************************************
196 */196 */
197 197
198 /**
199 * The number of entries in the list of inputs.
200 */
201 uint16_t nb_inputs;
202
203 /**
204 * The number of entries in the list of outputs.
205 */
206 uint16_t nb_outputs;
207
198 /**208 /**
199 * Filter pre-initialization function209 * Filter pre-initialization function
200 *210 *
libavfilter/buffersink.c+2−4
@@ -331,7 +331,6 @@ static const AVFilterPad avfilter_vsink_buffer_inputs[] = { · 330 unmodified lines
331 .name = "default",331 .name = "default",
332 .type = AVMEDIA_TYPE_VIDEO,332 .type = AVMEDIA_TYPE_VIDEO,
333 },333 },
334 { NULL }
335};334};
336 335
337const AVFilter ff_vsink_buffer = {336const AVFilter ff_vsink_buffer = {
@@ -342,7 +341,7 @@ const AVFilter ff_vsink_buffer = { · 4 unmodified lines
342 .init = common_init,341 .init = common_init,
343 .query_formats = vsink_query_formats,342 .query_formats = vsink_query_formats,
344 .activate = activate,343 .activate = activate,
345 .inputs = avfilter_vsink_buffer_inputs,344 FILTER_INPUTS(avfilter_vsink_buffer_inputs),
346 .outputs = NULL,345 .outputs = NULL,
347};346};
348 347
@@ -351,7 +350,6 @@ static const AVFilterPad avfilter_asink_abuffer_inputs[] = { · 2 unmodified lines
351 .name = "default",350 .name = "default",
352 .type = AVMEDIA_TYPE_AUDIO,351 .type = AVMEDIA_TYPE_AUDIO,
353 },352 },
354 { NULL }
355};353};
356 354
357const AVFilter ff_asink_abuffer = {355const AVFilter ff_asink_abuffer = {
@@ -362,6 +360,6 @@ const AVFilter ff_asink_abuffer = { · 4 unmodified lines
362 .init = common_init,360 .init = common_init,
363 .query_formats = asink_query_formats,361 .query_formats = asink_query_formats,
364 .activate = activate,362 .activate = activate,
365 .inputs = avfilter_asink_abuffer_inputs,363 FILTER_INPUTS(avfilter_asink_abuffer_inputs),
366 .outputs = NULL,364 .outputs = NULL,
367};365};
libavfilter/buffersrc.c+2−4
@@ -434,7 +434,6 @@ static const AVFilterPad avfilter_vsrc_buffer_outputs[] = { · 433 unmodified lines
434 .request_frame = request_frame,434 .request_frame = request_frame,
435 .config_props = config_props,435 .config_props = config_props,
436 },436 },
437 { NULL }
438};437};
439 438
440const AVFilter ff_vsrc_buffer = {439const AVFilter ff_vsrc_buffer = {
@@ -447,7 +446,7 @@ const AVFilter ff_vsrc_buffer = { · 6 unmodified lines
447 .uninit = uninit,446 .uninit = uninit,
448 447
449 .inputs = NULL,448 .inputs = NULL,
450 .outputs = avfilter_vsrc_buffer_outputs,449 FILTER_OUTPUTS(avfilter_vsrc_buffer_outputs),
451 .priv_class = &buffer_class,450 .priv_class = &buffer_class,
452};451};
453 452
@@ -458,7 +457,6 @@ static const AVFilterPad avfilter_asrc_abuffer_outputs[] = { · 4 unmodified lines
458 .request_frame = request_frame,457 .request_frame = request_frame,
459 .config_props = config_props,458 .config_props = config_props,
460 },459 },
461 { NULL }
462};460};
463 461
464const AVFilter ff_asrc_abuffer = {462const AVFilter ff_asrc_abuffer = {
@@ -471,6 +469,6 @@ const AVFilter ff_asrc_abuffer = { · 6 unmodified lines
471 .uninit = uninit,469 .uninit = uninit,
472 470
473 .inputs = NULL,471 .inputs = NULL,
474 .outputs = avfilter_asrc_abuffer_outputs,472 FILTER_OUTPUTS(avfilter_asrc_abuffer_outputs),
475 .priv_class = &abuffer_class,473 .priv_class = &abuffer_class,
476};474};
libavfilter/f_bench.c+4−8
@@ -96,7 +96,6 @@ static const AVFilterPad bench_inputs[] = { · 95 unmodified lines
96 .type = AVMEDIA_TYPE_VIDEO,96 .type = AVMEDIA_TYPE_VIDEO,
97 .filter_frame = filter_frame,97 .filter_frame = filter_frame,
98 },98 },
99 { NULL }
100};99};
101 100
102static const AVFilterPad bench_outputs[] = {101static const AVFilterPad bench_outputs[] = {
@@ -104,7 +103,6 @@ static const AVFilterPad bench_outputs[] = { · 1 unmodified line
104 .name = "default",103 .name = "default",
105 .type = AVMEDIA_TYPE_VIDEO,104 .type = AVMEDIA_TYPE_VIDEO,
106 },105 },
107 { NULL }
108};106};
109 107
110const AVFilter ff_vf_bench = {108const AVFilter ff_vf_bench = {
@@ -112,8 +110,8 @@ const AVFilter ff_vf_bench = { · 1 unmodified line
112 .description = NULL_IF_CONFIG_SMALL("Benchmark part of a filtergraph."),110 .description = NULL_IF_CONFIG_SMALL("Benchmark part of a filtergraph."),
113 .priv_size = sizeof(BenchContext),111 .priv_size = sizeof(BenchContext),
114 .init = init,112 .init = init,
115 .inputs = bench_inputs,113 FILTER_INPUTS(bench_inputs),
116 .outputs = bench_outputs,114 FILTER_OUTPUTS(bench_outputs),
117 .priv_class = &bench_class,115 .priv_class = &bench_class,
118};116};
119#endif /* CONFIG_BENCH_FILTER */117#endif /* CONFIG_BENCH_FILTER */
@@ -128,7 +126,6 @@ static const AVFilterPad abench_inputs[] = { · 8 unmodified lines
128 .type = AVMEDIA_TYPE_AUDIO,126 .type = AVMEDIA_TYPE_AUDIO,
129 .filter_frame = filter_frame,127 .filter_frame = filter_frame,
130 },128 },
131 { NULL }
132};129};
133 130
134static const AVFilterPad abench_outputs[] = {131static const AVFilterPad abench_outputs[] = {
@@ -136,7 +133,6 @@ static const AVFilterPad abench_outputs[] = { · 1 unmodified line
136 .name = "default",133 .name = "default",
137 .type = AVMEDIA_TYPE_AUDIO,134 .type = AVMEDIA_TYPE_AUDIO,
138 },135 },
139 { NULL }
140};136};
141 137
142const AVFilter ff_af_abench = {138const AVFilter ff_af_abench = {
@@ -144,8 +140,8 @@ const AVFilter ff_af_abench = { · 1 unmodified line
144 .description = NULL_IF_CONFIG_SMALL("Benchmark part of a filtergraph."),140 .description = NULL_IF_CONFIG_SMALL("Benchmark part of a filtergraph."),
145 .priv_size = sizeof(BenchContext),141 .priv_size = sizeof(BenchContext),
146 .init = init,142 .init = init,
147 .inputs = abench_inputs,143 FILTER_INPUTS(abench_inputs),
148 .outputs = abench_outputs,144 FILTER_OUTPUTS(abench_outputs),
149 .priv_class = &abench_class,145 .priv_class = &abench_class,
150};146};
151#endif /* CONFIG_ABENCH_FILTER */147#endif /* CONFIG_ABENCH_FILTER */
libavfilter/f_cue.c+4−8
@@ -103,7 +103,6 @@ static const AVFilterPad cue_inputs[] = { · 102 unmodified lines
103 .name = "default",103 .name = "default",
104 .type = AVMEDIA_TYPE_VIDEO,104 .type = AVMEDIA_TYPE_VIDEO,
105 },105 },
106 { NULL }
107};106};
108 107
109static const AVFilterPad cue_outputs[] = {108static const AVFilterPad cue_outputs[] = {
@@ -111,7 +110,6 @@ static const AVFilterPad cue_outputs[] = { · 1 unmodified line
111 .name = "default",110 .name = "default",
112 .type = AVMEDIA_TYPE_VIDEO,111 .type = AVMEDIA_TYPE_VIDEO,
113 },112 },
114 { NULL }
115};113};
116 114
117const AVFilter ff_vf_cue = {115const AVFilter ff_vf_cue = {
@@ -119,8 +117,8 @@ const AVFilter ff_vf_cue = { · 1 unmodified line
119 .description = NULL_IF_CONFIG_SMALL("Delay filtering to match a cue."),117 .description = NULL_IF_CONFIG_SMALL("Delay filtering to match a cue."),
120 .priv_size = sizeof(CueContext),118 .priv_size = sizeof(CueContext),
121 .priv_class = &cue_class,119 .priv_class = &cue_class,
122 .inputs = cue_inputs,120 FILTER_INPUTS(cue_inputs),
123 .outputs = cue_outputs,121 FILTER_OUTPUTS(cue_outputs),
124 .activate = activate,122 .activate = activate,
125};123};
126#endif /* CONFIG_CUE_FILTER */124#endif /* CONFIG_CUE_FILTER */
@@ -134,7 +132,6 @@ static const AVFilterPad acue_inputs[] = { · 7 unmodified lines
134 .name = "default",132 .name = "default",
135 .type = AVMEDIA_TYPE_AUDIO,133 .type = AVMEDIA_TYPE_AUDIO,
136 },134 },
137 { NULL }
138};135};
139 136
140static const AVFilterPad acue_outputs[] = {137static const AVFilterPad acue_outputs[] = {
@@ -142,7 +139,6 @@ static const AVFilterPad acue_outputs[] = { · 1 unmodified line
142 .name = "default",139 .name = "default",
143 .type = AVMEDIA_TYPE_AUDIO,140 .type = AVMEDIA_TYPE_AUDIO,
144 },141 },
145 { NULL }
146};142};
147 143
148const AVFilter ff_af_acue = {144const AVFilter ff_af_acue = {
@@ -150,8 +146,8 @@ const AVFilter ff_af_acue = { · 1 unmodified line
150 .description = NULL_IF_CONFIG_SMALL("Delay filtering to match a cue."),146 .description = NULL_IF_CONFIG_SMALL("Delay filtering to match a cue."),
151 .priv_size = sizeof(CueContext),147 .priv_size = sizeof(CueContext),
152 .priv_class = &acue_class,148 .priv_class = &acue_class,
153 .inputs = acue_inputs,149 FILTER_INPUTS(acue_inputs),
154 .outputs = acue_outputs,150 FILTER_OUTPUTS(acue_outputs),
155 .activate = activate,151 .activate = activate,
156};152};
157#endif /* CONFIG_ACUE_FILTER */153#endif /* CONFIG_ACUE_FILTER */
libavfilter/f_drawgraph.c+4−8
@@ -458,7 +458,6 @@ static const AVFilterPad drawgraph_inputs[] = { · 457 unmodified lines
458 .type = AVMEDIA_TYPE_VIDEO,458 .type = AVMEDIA_TYPE_VIDEO,
459 .filter_frame = filter_frame,459 .filter_frame = filter_frame,
460 },460 },
461 { NULL }
462};461};
463 462
464static const AVFilterPad drawgraph_outputs[] = {463static const AVFilterPad drawgraph_outputs[] = {
@@ -468,7 +467,6 @@ static const AVFilterPad drawgraph_outputs[] = { · 3 unmodified lines
468 .config_props = config_output,467 .config_props = config_output,
469 .request_frame = request_frame,468 .request_frame = request_frame,
470 },469 },
471 { NULL }
472};470};
473 471
474const AVFilter ff_vf_drawgraph = {472const AVFilter ff_vf_drawgraph = {
@@ -479,8 +477,8 @@ const AVFilter ff_vf_drawgraph = { · 4 unmodified lines
479 .query_formats = query_formats,477 .query_formats = query_formats,
480 .init = init,478 .init = init,
481 .uninit = uninit,479 .uninit = uninit,
482 .inputs = drawgraph_inputs,480 FILTER_INPUTS(drawgraph_inputs),
483 .outputs = drawgraph_outputs,481 FILTER_OUTPUTS(drawgraph_outputs),
484};482};
485 483
486#endif // CONFIG_DRAWGRAPH_FILTER484#endif // CONFIG_DRAWGRAPH_FILTER
@@ -496,7 +494,6 @@ static const AVFilterPad adrawgraph_inputs[] = { · 9 unmodified lines
496 .type = AVMEDIA_TYPE_AUDIO,494 .type = AVMEDIA_TYPE_AUDIO,
497 .filter_frame = filter_frame,495 .filter_frame = filter_frame,
498 },496 },
499 { NULL }
500};497};
501 498
502static const AVFilterPad adrawgraph_outputs[] = {499static const AVFilterPad adrawgraph_outputs[] = {
@@ -506,7 +503,6 @@ static const AVFilterPad adrawgraph_outputs[] = { · 3 unmodified lines
506 .config_props = config_output,503 .config_props = config_output,
507 .request_frame = request_frame,504 .request_frame = request_frame,
508 },505 },
509 { NULL }
510};506};
511 507
512const AVFilter ff_avf_adrawgraph = {508const AVFilter ff_avf_adrawgraph = {
@@ -517,7 +513,7 @@ const AVFilter ff_avf_adrawgraph = { · 4 unmodified lines
517 .query_formats = query_formats,513 .query_formats = query_formats,
518 .init = init,514 .init = init,
519 .uninit = uninit,515 .uninit = uninit,
520 .inputs = adrawgraph_inputs,516 FILTER_INPUTS(adrawgraph_inputs),
521 .outputs = adrawgraph_outputs,517 FILTER_OUTPUTS(adrawgraph_outputs),
522};518};
523#endif // CONFIG_ADRAWGRAPH_FILTER519#endif // CONFIG_ADRAWGRAPH_FILTER
libavfilter/f_ebur128.c+1−2
@@ -1017,7 +1017,6 @@ static const AVFilterPad ebur128_inputs[] = { · 1016 unmodified lines
1017 .filter_frame = filter_frame,1017 .filter_frame = filter_frame,
1018 .config_props = config_audio_input,1018 .config_props = config_audio_input,
1019 },1019 },
1020 { NULL }
1021};1020};
1022 1021
1023const AVFilter ff_af_ebur128 = {1022const AVFilter ff_af_ebur128 = {
@@ -1027,7 +1026,7 @@ const AVFilter ff_af_ebur128 = { · 3 unmodified lines
1027 .init = init,1026 .init = init,
1028 .uninit = uninit,1027 .uninit = uninit,
1029 .query_formats = query_formats,1028 .query_formats = query_formats,
1030 .inputs = ebur128_inputs,1029 FILTER_INPUTS(ebur128_inputs),
1031 .outputs = NULL,1030 .outputs = NULL,
1032 .priv_class = &ebur128_class,1031 .priv_class = &ebur128_class,
1033 .flags = AVFILTER_FLAG_DYNAMIC_OUTPUTS,1032 .flags = AVFILTER_FLAG_DYNAMIC_OUTPUTS,
libavfilter/f_graphmonitor.c+4−8
@@ -395,7 +395,6 @@ static const AVFilterPad graphmonitor_inputs[] = { · 394 unmodified lines
395 .name = "default",395 .name = "default",
396 .type = AVMEDIA_TYPE_VIDEO,396 .type = AVMEDIA_TYPE_VIDEO,
397 },397 },
398 { NULL }
399};398};
400 399
401static const AVFilterPad graphmonitor_outputs[] = {400static const AVFilterPad graphmonitor_outputs[] = {
@@ -404,7 +403,6 @@ static const AVFilterPad graphmonitor_outputs[] = { · 2 unmodified lines
404 .type = AVMEDIA_TYPE_VIDEO,403 .type = AVMEDIA_TYPE_VIDEO,
405 .config_props = config_output,404 .config_props = config_output,
406 },405 },
407 { NULL }
408};406};
409 407
410const AVFilter ff_vf_graphmonitor = {408const AVFilter ff_vf_graphmonitor = {
@@ -414,8 +412,8 @@ const AVFilter ff_vf_graphmonitor = { · 3 unmodified lines
414 .priv_class = &graphmonitor_class,412 .priv_class = &graphmonitor_class,
415 .query_formats = query_formats,413 .query_formats = query_formats,
416 .activate = activate,414 .activate = activate,
417 .inputs = graphmonitor_inputs,415 FILTER_INPUTS(graphmonitor_inputs),
418 .outputs = graphmonitor_outputs,416 FILTER_OUTPUTS(graphmonitor_outputs),
419};417};
420 418
421#endif // CONFIG_GRAPHMONITOR_FILTER419#endif // CONFIG_GRAPHMONITOR_FILTER
@@ -430,7 +428,6 @@ static const AVFilterPad agraphmonitor_inputs[] = { · 8 unmodified lines
430 .name = "default",428 .name = "default",
431 .type = AVMEDIA_TYPE_AUDIO,429 .type = AVMEDIA_TYPE_AUDIO,
432 },430 },
433 { NULL }
434};431};
435 432
436static const AVFilterPad agraphmonitor_outputs[] = {433static const AVFilterPad agraphmonitor_outputs[] = {
@@ -439,7 +436,6 @@ static const AVFilterPad agraphmonitor_outputs[] = { · 2 unmodified lines
439 .type = AVMEDIA_TYPE_VIDEO,436 .type = AVMEDIA_TYPE_VIDEO,
440 .config_props = config_output,437 .config_props = config_output,
441 },438 },
442 { NULL }
443};439};
444 440
445const AVFilter ff_avf_agraphmonitor = {441const AVFilter ff_avf_agraphmonitor = {
@@ -449,7 +445,7 @@ const AVFilter ff_avf_agraphmonitor = { · 3 unmodified lines
449 .priv_class = &agraphmonitor_class,445 .priv_class = &agraphmonitor_class,
450 .query_formats = query_formats,446 .query_formats = query_formats,
451 .activate = activate,447 .activate = activate,
452 .inputs = agraphmonitor_inputs,448 FILTER_INPUTS(agraphmonitor_inputs),
453 .outputs = agraphmonitor_outputs,449 FILTER_OUTPUTS(agraphmonitor_outputs),
454};450};
455#endif // CONFIG_AGRAPHMONITOR_FILTER451#endif // CONFIG_AGRAPHMONITOR_FILTER
libavfilter/f_interleave.c+2−4
@@ -235,7 +235,6 @@ static const AVFilterPad interleave_outputs[] = { · 234 unmodified lines
235 .type = AVMEDIA_TYPE_VIDEO,235 .type = AVMEDIA_TYPE_VIDEO,
236 .config_props = config_output,236 .config_props = config_output,
237 },237 },
238 { NULL }
239};238};
240 239
241const AVFilter ff_vf_interleave = {240const AVFilter ff_vf_interleave = {
@@ -245,7 +244,7 @@ const AVFilter ff_vf_interleave = { · 3 unmodified lines
245 .init = init,244 .init = init,
246 .uninit = uninit,245 .uninit = uninit,
247 .activate = activate,246 .activate = activate,
248 .outputs = interleave_outputs,247 FILTER_OUTPUTS(interleave_outputs),
249 .priv_class = &interleave_class,248 .priv_class = &interleave_class,
250 .flags = AVFILTER_FLAG_DYNAMIC_INPUTS,249 .flags = AVFILTER_FLAG_DYNAMIC_INPUTS,
251};250};
@@ -263,7 +262,6 @@ static const AVFilterPad ainterleave_outputs[] = { · 11 unmodified lines
263 .type = AVMEDIA_TYPE_AUDIO,262 .type = AVMEDIA_TYPE_AUDIO,
264 .config_props = config_output,263 .config_props = config_output,
265 },264 },
266 { NULL }
267};265};
268 266
269const AVFilter ff_af_ainterleave = {267const AVFilter ff_af_ainterleave = {
@@ -273,7 +271,7 @@ const AVFilter ff_af_ainterleave = { · 3 unmodified lines
273 .init = init,271 .init = init,
274 .uninit = uninit,272 .uninit = uninit,
275 .activate = activate,273 .activate = activate,
276 .outputs = ainterleave_outputs,274 FILTER_OUTPUTS(ainterleave_outputs),
277 .priv_class = &ainterleave_class,275 .priv_class = &ainterleave_class,
278 .flags = AVFILTER_FLAG_DYNAMIC_INPUTS,276 .flags = AVFILTER_FLAG_DYNAMIC_INPUTS,
279};277};
libavfilter/f_loop.c+4−8
@@ -269,7 +269,6 @@ static const AVFilterPad ainputs[] = { · 268 unmodified lines
269 .type = AVMEDIA_TYPE_AUDIO,269 .type = AVMEDIA_TYPE_AUDIO,
270 .config_props = aconfig_input,270 .config_props = aconfig_input,
271 },271 },
272 { NULL }
273};272};
274 273
275static const AVFilterPad aoutputs[] = {274static const AVFilterPad aoutputs[] = {
@@ -277,7 +276,6 @@ static const AVFilterPad aoutputs[] = { · 1 unmodified line
277 .name = "default",276 .name = "default",
278 .type = AVMEDIA_TYPE_AUDIO,277 .type = AVMEDIA_TYPE_AUDIO,
279 },278 },
280 { NULL }
281};279};
282 280
283const AVFilter ff_af_aloop = {281const AVFilter ff_af_aloop = {
@@ -287,8 +285,8 @@ const AVFilter ff_af_aloop = { · 3 unmodified lines
287 .priv_class = &aloop_class,285 .priv_class = &aloop_class,
288 .activate = aactivate,286 .activate = aactivate,
289 .uninit = auninit,287 .uninit = auninit,
290 .inputs = ainputs,288 FILTER_INPUTS(ainputs),
291 .outputs = aoutputs,289 FILTER_OUTPUTS(aoutputs),
292};290};
293#endif /* CONFIG_ALOOP_FILTER */291#endif /* CONFIG_ALOOP_FILTER */
294 292
@@ -442,7 +440,6 @@ static const AVFilterPad inputs[] = { · 147 unmodified lines
442 .name = "default",440 .name = "default",
443 .type = AVMEDIA_TYPE_VIDEO,441 .type = AVMEDIA_TYPE_VIDEO,
444 },442 },
445 { NULL }
446};443};
447 444
448static const AVFilterPad outputs[] = {445static const AVFilterPad outputs[] = {
@@ -450,7 +447,6 @@ static const AVFilterPad outputs[] = { · 1 unmodified line
450 .name = "default",447 .name = "default",
451 .type = AVMEDIA_TYPE_VIDEO,448 .type = AVMEDIA_TYPE_VIDEO,
452 },449 },
453 { NULL }
454};450};
455 451
456const AVFilter ff_vf_loop = {452const AVFilter ff_vf_loop = {
@@ -461,7 +457,7 @@ const AVFilter ff_vf_loop = { · 4 unmodified lines
461 .init = init,457 .init = init,
462 .uninit = uninit,458 .uninit = uninit,
463 .activate = activate,459 .activate = activate,
464 .inputs = inputs,460 FILTER_INPUTS(inputs),
465 .outputs = outputs,461 FILTER_OUTPUTS(outputs),
466};462};
467#endif /* CONFIG_LOOP_FILTER */463#endif /* CONFIG_LOOP_FILTER */
libavfilter/f_metadata.c+4−8
@@ -373,7 +373,6 @@ static const AVFilterPad ainputs[] = { · 372 unmodified lines
373 .type = AVMEDIA_TYPE_AUDIO,373 .type = AVMEDIA_TYPE_AUDIO,
374 .filter_frame = filter_frame,374 .filter_frame = filter_frame,
375 },375 },
376 { NULL }
377};376};
378 377
379static const AVFilterPad aoutputs[] = {378static const AVFilterPad aoutputs[] = {
@@ -381,7 +380,6 @@ static const AVFilterPad aoutputs[] = { · 1 unmodified line
381 .name = "default",380 .name = "default",
382 .type = AVMEDIA_TYPE_AUDIO,381 .type = AVMEDIA_TYPE_AUDIO,
383 },382 },
384 { NULL }
385};383};
386 384
387const AVFilter ff_af_ametadata = {385const AVFilter ff_af_ametadata = {
@@ -391,8 +389,8 @@ const AVFilter ff_af_ametadata = { · 3 unmodified lines
391 .priv_class = &ametadata_class,389 .priv_class = &ametadata_class,
392 .init = init,390 .init = init,
393 .uninit = uninit,391 .uninit = uninit,
394 .inputs = ainputs,392 FILTER_INPUTS(ainputs),
395 .outputs = aoutputs,393 FILTER_OUTPUTS(aoutputs),
396 .flags = AVFILTER_FLAG_SUPPORT_TIMELINE_GENERIC,394 .flags = AVFILTER_FLAG_SUPPORT_TIMELINE_GENERIC,
397};395};
398#endif /* CONFIG_AMETADATA_FILTER */396#endif /* CONFIG_AMETADATA_FILTER */
@@ -408,7 +406,6 @@ static const AVFilterPad inputs[] = { · 9 unmodified lines
408 .type = AVMEDIA_TYPE_VIDEO,406 .type = AVMEDIA_TYPE_VIDEO,
409 .filter_frame = filter_frame,407 .filter_frame = filter_frame,
410 },408 },
411 { NULL }
412};409};
413 410
414static const AVFilterPad outputs[] = {411static const AVFilterPad outputs[] = {
@@ -416,7 +413,6 @@ static const AVFilterPad outputs[] = { · 1 unmodified line
416 .name = "default",413 .name = "default",
417 .type = AVMEDIA_TYPE_VIDEO,414 .type = AVMEDIA_TYPE_VIDEO,
418 },415 },
419 { NULL }
420};416};
421 417
422const AVFilter ff_vf_metadata = {418const AVFilter ff_vf_metadata = {
@@ -426,8 +422,8 @@ const AVFilter ff_vf_metadata = { · 3 unmodified lines
426 .priv_class = &metadata_class,422 .priv_class = &metadata_class,
427 .init = init,423 .init = init,
428 .uninit = uninit,424 .uninit = uninit,
429 .inputs = inputs,425 FILTER_INPUTS(inputs),
430 .outputs = outputs,426 FILTER_OUTPUTS(outputs),
431 .flags = AVFILTER_FLAG_SUPPORT_TIMELINE_GENERIC,427 .flags = AVFILTER_FLAG_SUPPORT_TIMELINE_GENERIC,
432};428};
433#endif /* CONFIG_METADATA_FILTER */429#endif /* CONFIG_METADATA_FILTER */
libavfilter/f_perms.c+4−8
@@ -122,7 +122,6 @@ static const AVFilterPad aperms_inputs[] = { · 121 unmodified lines
122 .type = AVMEDIA_TYPE_AUDIO,122 .type = AVMEDIA_TYPE_AUDIO,
123 .filter_frame = filter_frame,123 .filter_frame = filter_frame,
124 },124 },
125 { NULL }
126};125};
127 126
128static const AVFilterPad aperms_outputs[] = {127static const AVFilterPad aperms_outputs[] = {
@@ -130,7 +129,6 @@ static const AVFilterPad aperms_outputs[] = { · 1 unmodified line
130 .name = "default",129 .name = "default",
131 .type = AVMEDIA_TYPE_AUDIO,130 .type = AVMEDIA_TYPE_AUDIO,
132 },131 },
133 { NULL }
134};132};
135 133
136const AVFilter ff_af_aperms = {134const AVFilter ff_af_aperms = {
@@ -138,8 +136,8 @@ const AVFilter ff_af_aperms = { · 1 unmodified line
138 .description = NULL_IF_CONFIG_SMALL("Set permissions for the output audio frame."),136 .description = NULL_IF_CONFIG_SMALL("Set permissions for the output audio frame."),
139 .init = init,137 .init = init,
140 .priv_size = sizeof(PermsContext),138 .priv_size = sizeof(PermsContext),
141 .inputs = aperms_inputs,139 FILTER_INPUTS(aperms_inputs),
142 .outputs = aperms_outputs,140 FILTER_OUTPUTS(aperms_outputs),
143 .priv_class = &aperms_class,141 .priv_class = &aperms_class,
144 .flags = AVFILTER_FLAG_SUPPORT_TIMELINE_GENERIC,142 .flags = AVFILTER_FLAG_SUPPORT_TIMELINE_GENERIC,
145};143};
@@ -156,7 +154,6 @@ static const AVFilterPad perms_inputs[] = { · 10 unmodified lines
156 .type = AVMEDIA_TYPE_VIDEO,154 .type = AVMEDIA_TYPE_VIDEO,
157 .filter_frame = filter_frame,155 .filter_frame = filter_frame,
158 },156 },
159 { NULL }
160};157};
161 158
162static const AVFilterPad perms_outputs[] = {159static const AVFilterPad perms_outputs[] = {
@@ -164,7 +161,6 @@ static const AVFilterPad perms_outputs[] = { · 1 unmodified line
164 .name = "default",161 .name = "default",
165 .type = AVMEDIA_TYPE_VIDEO,162 .type = AVMEDIA_TYPE_VIDEO,
166 },163 },
167 { NULL }
168};164};
169 165
170const AVFilter ff_vf_perms = {166const AVFilter ff_vf_perms = {
@@ -172,8 +168,8 @@ const AVFilter ff_vf_perms = { · 1 unmodified line
172 .description = NULL_IF_CONFIG_SMALL("Set permissions for the output video frame."),168 .description = NULL_IF_CONFIG_SMALL("Set permissions for the output video frame."),
173 .init = init,169 .init = init,
174 .priv_size = sizeof(PermsContext),170 .priv_size = sizeof(PermsContext),
175 .inputs = perms_inputs,171 FILTER_INPUTS(perms_inputs),
176 .outputs = perms_outputs,172 FILTER_OUTPUTS(perms_outputs),
177 .priv_class = &perms_class,173 .priv_class = &perms_class,
178 .flags = AVFILTER_FLAG_SUPPORT_TIMELINE_GENERIC,174 .flags = AVFILTER_FLAG_SUPPORT_TIMELINE_GENERIC,
179};175};
libavfilter/f_realtime.c+4−8
@@ -81,7 +81,6 @@ static const AVFilterPad avfilter_vf_realtime_inputs[] = { · 80 unmodified lines
81 .type = AVMEDIA_TYPE_VIDEO,81 .type = AVMEDIA_TYPE_VIDEO,
82 .filter_frame = filter_frame,82 .filter_frame = filter_frame,
83 },83 },
84 { NULL }
85};84};
86 85
87static const AVFilterPad avfilter_vf_realtime_outputs[] = {86static const AVFilterPad avfilter_vf_realtime_outputs[] = {
@@ -89,7 +88,6 @@ static const AVFilterPad avfilter_vf_realtime_outputs[] = { · 1 unmodified line
89 .name = "default",88 .name = "default",
90 .type = AVMEDIA_TYPE_VIDEO,89 .type = AVMEDIA_TYPE_VIDEO,
91 },90 },
92 { NULL }
93};91};
94 92
95const AVFilter ff_vf_realtime = {93const AVFilter ff_vf_realtime = {
@@ -97,8 +95,8 @@ const AVFilter ff_vf_realtime = { · 1 unmodified line
97 .description = NULL_IF_CONFIG_SMALL("Slow down filtering to match realtime."),95 .description = NULL_IF_CONFIG_SMALL("Slow down filtering to match realtime."),
98 .priv_size = sizeof(RealtimeContext),96 .priv_size = sizeof(RealtimeContext),
99 .priv_class = &realtime_class,97 .priv_class = &realtime_class,
100 .inputs = avfilter_vf_realtime_inputs,98 FILTER_INPUTS(avfilter_vf_realtime_inputs),
101 .outputs = avfilter_vf_realtime_outputs,99 FILTER_OUTPUTS(avfilter_vf_realtime_outputs),
102};100};
103#endif /* CONFIG_REALTIME_FILTER */101#endif /* CONFIG_REALTIME_FILTER */
104 102
@@ -113,7 +111,6 @@ static const AVFilterPad arealtime_inputs[] = { · 8 unmodified lines
113 .type = AVMEDIA_TYPE_AUDIO,111 .type = AVMEDIA_TYPE_AUDIO,
114 .filter_frame = filter_frame,112 .filter_frame = filter_frame,
115 },113 },
116 { NULL }
117};114};
118 115
119static const AVFilterPad arealtime_outputs[] = {116static const AVFilterPad arealtime_outputs[] = {
@@ -121,7 +118,6 @@ static const AVFilterPad arealtime_outputs[] = { · 1 unmodified line
121 .name = "default",118 .name = "default",
122 .type = AVMEDIA_TYPE_AUDIO,119 .type = AVMEDIA_TYPE_AUDIO,
123 },120 },
124 { NULL }
125};121};
126 122
127const AVFilter ff_af_arealtime = {123const AVFilter ff_af_arealtime = {
@@ -129,7 +125,7 @@ const AVFilter ff_af_arealtime = { · 1 unmodified line
129 .description = NULL_IF_CONFIG_SMALL("Slow down filtering to match realtime."),125 .description = NULL_IF_CONFIG_SMALL("Slow down filtering to match realtime."),
130 .priv_size = sizeof(RealtimeContext),126 .priv_size = sizeof(RealtimeContext),
131 .priv_class = &arealtime_class,127 .priv_class = &arealtime_class,
132 .inputs = arealtime_inputs,128 FILTER_INPUTS(arealtime_inputs),
133 .outputs = arealtime_outputs,129 FILTER_OUTPUTS(arealtime_outputs),
134};130};
135#endif /* CONFIG_AREALTIME_FILTER */131#endif /* CONFIG_AREALTIME_FILTER */
libavfilter/f_reverse.c+4−8
@@ -121,7 +121,6 @@ static const AVFilterPad reverse_inputs[] = { · 120 unmodified lines
121 .type = AVMEDIA_TYPE_VIDEO,121 .type = AVMEDIA_TYPE_VIDEO,
122 .filter_frame = filter_frame,122 .filter_frame = filter_frame,
123 },123 },
124 { NULL }
125};124};
126 125
127static const AVFilterPad reverse_outputs[] = {126static const AVFilterPad reverse_outputs[] = {
@@ -130,7 +129,6 @@ static const AVFilterPad reverse_outputs[] = { · 2 unmodified lines
130 .type = AVMEDIA_TYPE_VIDEO,129 .type = AVMEDIA_TYPE_VIDEO,
131 .request_frame = request_frame,130 .request_frame = request_frame,
132 },131 },
133 { NULL }
134};132};
135 133
136const AVFilter ff_vf_reverse = {134const AVFilter ff_vf_reverse = {
@@ -139,8 +137,8 @@ const AVFilter ff_vf_reverse = { · 2 unmodified lines
139 .priv_size = sizeof(ReverseContext),137 .priv_size = sizeof(ReverseContext),
140 .init = init,138 .init = init,
141 .uninit = uninit,139 .uninit = uninit,
142 .inputs = reverse_inputs,140 FILTER_INPUTS(reverse_inputs),
143 .outputs = reverse_outputs,141 FILTER_OUTPUTS(reverse_outputs),
144};142};
145 143
146#endif /* CONFIG_REVERSE_FILTER */144#endif /* CONFIG_REVERSE_FILTER */
@@ -272,7 +270,6 @@ static const AVFilterPad areverse_inputs[] = { · 125 unmodified lines
272 .flags = AVFILTERPAD_FLAG_NEEDS_WRITABLE,270 .flags = AVFILTERPAD_FLAG_NEEDS_WRITABLE,
273 .filter_frame = filter_frame,271 .filter_frame = filter_frame,
274 },272 },
275 { NULL }
276};273};
277 274
278static const AVFilterPad areverse_outputs[] = {275static const AVFilterPad areverse_outputs[] = {
@@ -281,7 +278,6 @@ static const AVFilterPad areverse_outputs[] = { · 2 unmodified lines
281 .type = AVMEDIA_TYPE_AUDIO,278 .type = AVMEDIA_TYPE_AUDIO,
282 .request_frame = areverse_request_frame,279 .request_frame = areverse_request_frame,
283 },280 },
284 { NULL }
285};281};
286 282
287const AVFilter ff_af_areverse = {283const AVFilter ff_af_areverse = {
@@ -291,8 +287,8 @@ const AVFilter ff_af_areverse = { · 3 unmodified lines
291 .priv_size = sizeof(ReverseContext),287 .priv_size = sizeof(ReverseContext),
292 .init = init,288 .init = init,
293 .uninit = uninit,289 .uninit = uninit,
294 .inputs = areverse_inputs,290 FILTER_INPUTS(areverse_inputs),
295 .outputs = areverse_outputs,291 FILTER_OUTPUTS(areverse_outputs),
296};292};
297 293
298#endif /* CONFIG_AREVERSE_FILTER */294#endif /* CONFIG_AREVERSE_FILTER */
libavfilter/f_segment.c+2−4
@@ -277,7 +277,6 @@ static const AVFilterPad segment_inputs[] = { · 276 unmodified lines
277 .type = AVMEDIA_TYPE_VIDEO,277 .type = AVMEDIA_TYPE_VIDEO,
278 .config_props = config_input,278 .config_props = config_input,
279 },279 },
280 { NULL }
281};280};
282 281
283const AVFilter ff_vf_segment = {282const AVFilter ff_vf_segment = {
@@ -288,7 +287,7 @@ const AVFilter ff_vf_segment = { · 4 unmodified lines
288 .priv_size = sizeof(SegmentContext),287 .priv_size = sizeof(SegmentContext),
289 .priv_class = &segment_class,288 .priv_class = &segment_class,
290 .activate = activate,289 .activate = activate,
291 .inputs = segment_inputs,290 FILTER_INPUTS(segment_inputs),
292 .outputs = NULL,291 .outputs = NULL,
293 .flags = AVFILTER_FLAG_DYNAMIC_OUTPUTS,292 .flags = AVFILTER_FLAG_DYNAMIC_OUTPUTS,
294};293};
@@ -317,7 +316,6 @@ static const AVFilterPad asegment_inputs[] = { · 22 unmodified lines
317 .type = AVMEDIA_TYPE_AUDIO,316 .type = AVMEDIA_TYPE_AUDIO,
318 .config_props = config_input,317 .config_props = config_input,
319 },318 },
320 { NULL }
321};319};
322 320
323const AVFilter ff_af_asegment = {321const AVFilter ff_af_asegment = {
@@ -328,7 +326,7 @@ const AVFilter ff_af_asegment = { · 4 unmodified lines
328 .priv_size = sizeof(SegmentContext),326 .priv_size = sizeof(SegmentContext),
329 .priv_class = &asegment_class,327 .priv_class = &asegment_class,
330 .activate = activate,328 .activate = activate,
331 .inputs = asegment_inputs,329 FILTER_INPUTS(asegment_inputs),
332 .outputs = NULL,330 .outputs = NULL,
333 .flags = AVFILTER_FLAG_DYNAMIC_OUTPUTS,331 .flags = AVFILTER_FLAG_DYNAMIC_OUTPUTS,
334};332};
libavfilter/f_select.c+2−4
@@ -473,7 +473,6 @@ static const AVFilterPad avfilter_af_aselect_inputs[] = { · 472 unmodified lines
473 .config_props = config_input,473 .config_props = config_input,
474 .filter_frame = filter_frame,474 .filter_frame = filter_frame,
475 },475 },
476 { NULL }
477};476};
478 477
479const AVFilter ff_af_aselect = {478const AVFilter ff_af_aselect = {
@@ -482,7 +481,7 @@ const AVFilter ff_af_aselect = { · 2 unmodified lines
482 .init = aselect_init,481 .init = aselect_init,
483 .uninit = uninit,482 .uninit = uninit,
484 .priv_size = sizeof(SelectContext),483 .priv_size = sizeof(SelectContext),
485 .inputs = avfilter_af_aselect_inputs,484 FILTER_INPUTS(avfilter_af_aselect_inputs),
486 .priv_class = &aselect_class,485 .priv_class = &aselect_class,
487 .flags = AVFILTER_FLAG_DYNAMIC_OUTPUTS,486 .flags = AVFILTER_FLAG_DYNAMIC_OUTPUTS,
488};487};
@@ -529,7 +528,6 @@ static const AVFilterPad avfilter_vf_select_inputs[] = { · 40 unmodified lines
529 .config_props = config_input,528 .config_props = config_input,
530 .filter_frame = filter_frame,529 .filter_frame = filter_frame,
531 },530 },
532 { NULL }
533};531};
534 532
535const AVFilter ff_vf_select = {533const AVFilter ff_vf_select = {
@@ -540,7 +538,7 @@ const AVFilter ff_vf_select = { · 4 unmodified lines
540 .query_formats = query_formats,538 .query_formats = query_formats,
541 .priv_size = sizeof(SelectContext),539 .priv_size = sizeof(SelectContext),
542 .priv_class = &select_class,540 .priv_class = &select_class,
543 .inputs = avfilter_vf_select_inputs,541 FILTER_INPUTS(avfilter_vf_select_inputs),
544 .flags = AVFILTER_FLAG_DYNAMIC_OUTPUTS,542 .flags = AVFILTER_FLAG_DYNAMIC_OUTPUTS,
545};543};
546#endif /* CONFIG_SELECT_FILTER */544#endif /* CONFIG_SELECT_FILTER */
libavfilter/f_sendcmd.c+4−8
@@ -583,7 +583,6 @@ static const AVFilterPad sendcmd_inputs[] = { · 582 unmodified lines
583 .type = AVMEDIA_TYPE_VIDEO,583 .type = AVMEDIA_TYPE_VIDEO,
584 .filter_frame = filter_frame,584 .filter_frame = filter_frame,
585 },585 },
586 { NULL }
587};586};
588 587
589static const AVFilterPad sendcmd_outputs[] = {588static const AVFilterPad sendcmd_outputs[] = {
@@ -591,7 +590,6 @@ static const AVFilterPad sendcmd_outputs[] = { · 1 unmodified line
591 .name = "default",590 .name = "default",
592 .type = AVMEDIA_TYPE_VIDEO,591 .type = AVMEDIA_TYPE_VIDEO,
593 },592 },
594 { NULL }
595};593};
596 594
597const AVFilter ff_vf_sendcmd = {595const AVFilter ff_vf_sendcmd = {
@@ -600,8 +598,8 @@ const AVFilter ff_vf_sendcmd = { · 2 unmodified lines
600 .init = init,598 .init = init,
601 .uninit = uninit,599 .uninit = uninit,
602 .priv_size = sizeof(SendCmdContext),600 .priv_size = sizeof(SendCmdContext),
603 .inputs = sendcmd_inputs,601 FILTER_INPUTS(sendcmd_inputs),
604 .outputs = sendcmd_outputs,602 FILTER_OUTPUTS(sendcmd_outputs),
605 .priv_class = &sendcmd_class,603 .priv_class = &sendcmd_class,
606};604};
607 605
@@ -618,7 +616,6 @@ static const AVFilterPad asendcmd_inputs[] = { · 10 unmodified lines
618 .type = AVMEDIA_TYPE_AUDIO,616 .type = AVMEDIA_TYPE_AUDIO,
619 .filter_frame = filter_frame,617 .filter_frame = filter_frame,
620 },618 },
621 { NULL }
622};619};
623 620
624static const AVFilterPad asendcmd_outputs[] = {621static const AVFilterPad asendcmd_outputs[] = {
@@ -626,7 +623,6 @@ static const AVFilterPad asendcmd_outputs[] = { · 1 unmodified line
626 .name = "default",623 .name = "default",
627 .type = AVMEDIA_TYPE_AUDIO,624 .type = AVMEDIA_TYPE_AUDIO,
628 },625 },
629 { NULL }
630};626};
631 627
632const AVFilter ff_af_asendcmd = {628const AVFilter ff_af_asendcmd = {
@@ -635,8 +631,8 @@ const AVFilter ff_af_asendcmd = { · 2 unmodified lines
635 .init = init,631 .init = init,
636 .uninit = uninit,632 .uninit = uninit,
637 .priv_size = sizeof(SendCmdContext),633 .priv_size = sizeof(SendCmdContext),
638 .inputs = asendcmd_inputs,634 FILTER_INPUTS(asendcmd_inputs),
639 .outputs = asendcmd_outputs,635 FILTER_OUTPUTS(asendcmd_outputs),
640 .priv_class = &asendcmd_class,636 .priv_class = &asendcmd_class,
641};637};
642 638
libavfilter/f_sidedata.c+4−8
@@ -130,7 +130,6 @@ static const AVFilterPad ainputs[] = { · 129 unmodified lines
130 .type = AVMEDIA_TYPE_AUDIO,130 .type = AVMEDIA_TYPE_AUDIO,
131 .filter_frame = filter_frame,131 .filter_frame = filter_frame,
132 },132 },
133 { NULL }
134};133};
135 134
136static const AVFilterPad aoutputs[] = {135static const AVFilterPad aoutputs[] = {
@@ -138,7 +137,6 @@ static const AVFilterPad aoutputs[] = { · 1 unmodified line
138 .name = "default",137 .name = "default",
139 .type = AVMEDIA_TYPE_AUDIO,138 .type = AVMEDIA_TYPE_AUDIO,
140 },139 },
141 { NULL }
142};140};
143 141
144const AVFilter ff_af_asidedata = {142const AVFilter ff_af_asidedata = {
@@ -147,8 +145,8 @@ const AVFilter ff_af_asidedata = { · 2 unmodified lines
147 .priv_size = sizeof(SideDataContext),145 .priv_size = sizeof(SideDataContext),
148 .priv_class = &asidedata_class,146 .priv_class = &asidedata_class,
149 .init = init,147 .init = init,
150 .inputs = ainputs,148 FILTER_INPUTS(ainputs),
151 .outputs = aoutputs,149 FILTER_OUTPUTS(aoutputs),
152 .flags = AVFILTER_FLAG_SUPPORT_TIMELINE_GENERIC,150 .flags = AVFILTER_FLAG_SUPPORT_TIMELINE_GENERIC,
153};151};
154#endif /* CONFIG_ASIDEDATA_FILTER */152#endif /* CONFIG_ASIDEDATA_FILTER */
@@ -164,7 +162,6 @@ static const AVFilterPad inputs[] = { · 9 unmodified lines
164 .type = AVMEDIA_TYPE_VIDEO,162 .type = AVMEDIA_TYPE_VIDEO,
165 .filter_frame = filter_frame,163 .filter_frame = filter_frame,
166 },164 },
167 { NULL }
168};165};
169 166
170static const AVFilterPad outputs[] = {167static const AVFilterPad outputs[] = {
@@ -172,7 +169,6 @@ static const AVFilterPad outputs[] = { · 1 unmodified line
172 .name = "default",169 .name = "default",
173 .type = AVMEDIA_TYPE_VIDEO,170 .type = AVMEDIA_TYPE_VIDEO,
174 },171 },
175 { NULL }
176};172};
177 173
178const AVFilter ff_vf_sidedata = {174const AVFilter ff_vf_sidedata = {
@@ -181,8 +177,8 @@ const AVFilter ff_vf_sidedata = { · 2 unmodified lines
181 .priv_size = sizeof(SideDataContext),177 .priv_size = sizeof(SideDataContext),
182 .priv_class = &sidedata_class,178 .priv_class = &sidedata_class,
183 .init = init,179 .init = init,
184 .inputs = inputs,180 FILTER_INPUTS(inputs),
185 .outputs = outputs,181 FILTER_OUTPUTS(outputs),
186 .flags = AVFILTER_FLAG_SUPPORT_TIMELINE_GENERIC,182 .flags = AVFILTER_FLAG_SUPPORT_TIMELINE_GENERIC,
187};183};
188#endif /* CONFIG_SIDEDATA_FILTER */184#endif /* CONFIG_SIDEDATA_FILTER */
libavfilter/f_zmq.c+4−8
@@ -214,7 +214,6 @@ static const AVFilterPad zmq_inputs[] = { · 213 unmodified lines
214 .type = AVMEDIA_TYPE_VIDEO,214 .type = AVMEDIA_TYPE_VIDEO,
215 .filter_frame = filter_frame,215 .filter_frame = filter_frame,
216 },216 },
217 { NULL }
218};217};
219 218
220static const AVFilterPad zmq_outputs[] = {219static const AVFilterPad zmq_outputs[] = {
@@ -222,7 +221,6 @@ static const AVFilterPad zmq_outputs[] = { · 1 unmodified line
222 .name = "default",221 .name = "default",
223 .type = AVMEDIA_TYPE_VIDEO,222 .type = AVMEDIA_TYPE_VIDEO,
224 },223 },
225 { NULL }
226};224};
227 225
228const AVFilter ff_vf_zmq = {226const AVFilter ff_vf_zmq = {
@@ -231,8 +229,8 @@ const AVFilter ff_vf_zmq = { · 2 unmodified lines
231 .init = init,229 .init = init,
232 .uninit = uninit,230 .uninit = uninit,
233 .priv_size = sizeof(ZMQContext),231 .priv_size = sizeof(ZMQContext),
234 .inputs = zmq_inputs,232 FILTER_INPUTS(zmq_inputs),
235 .outputs = zmq_outputs,233 FILTER_OUTPUTS(zmq_outputs),
236 .priv_class = &zmq_class,234 .priv_class = &zmq_class,
237};235};
238 236
@@ -249,7 +247,6 @@ static const AVFilterPad azmq_inputs[] = { · 10 unmodified lines
249 .type = AVMEDIA_TYPE_AUDIO,247 .type = AVMEDIA_TYPE_AUDIO,
250 .filter_frame = filter_frame,248 .filter_frame = filter_frame,
251 },249 },
252 { NULL }
253};250};
254 251
255static const AVFilterPad azmq_outputs[] = {252static const AVFilterPad azmq_outputs[] = {
@@ -257,7 +254,6 @@ static const AVFilterPad azmq_outputs[] = { · 1 unmodified line
257 .name = "default",254 .name = "default",
258 .type = AVMEDIA_TYPE_AUDIO,255 .type = AVMEDIA_TYPE_AUDIO,
259 },256 },
260 { NULL }
261};257};
262 258
263const AVFilter ff_af_azmq = {259const AVFilter ff_af_azmq = {
@@ -266,8 +262,8 @@ const AVFilter ff_af_azmq = { · 2 unmodified lines
266 .init = init,262 .init = init,
267 .uninit = uninit,263 .uninit = uninit,
268 .priv_size = sizeof(ZMQContext),264 .priv_size = sizeof(ZMQContext),
269 .inputs = azmq_inputs,265 FILTER_INPUTS(azmq_inputs),
270 .outputs = azmq_outputs,266 FILTER_OUTPUTS(azmq_outputs),
271 .priv_class = &azmq_class,267 .priv_class = &azmq_class,
272};268};
273 269
libavfilter/fifo.c+4−8
@@ -116,7 +116,6 @@ static const AVFilterPad avfilter_vf_fifo_inputs[] = { · 115 unmodified lines
116 .type = AVMEDIA_TYPE_VIDEO,116 .type = AVMEDIA_TYPE_VIDEO,
117 .filter_frame = add_to_queue,117 .filter_frame = add_to_queue,
118 },118 },
119 { NULL }
120};119};
121 120
122static const AVFilterPad avfilter_vf_fifo_outputs[] = {121static const AVFilterPad avfilter_vf_fifo_outputs[] = {
@@ -125,7 +124,6 @@ static const AVFilterPad avfilter_vf_fifo_outputs[] = { · 2 unmodified lines
125 .type = AVMEDIA_TYPE_VIDEO,124 .type = AVMEDIA_TYPE_VIDEO,
126 .request_frame = request_frame,125 .request_frame = request_frame,
127 },126 },
128 { NULL }
129};127};
130 128
131const AVFilter ff_vf_fifo = {129const AVFilter ff_vf_fifo = {
@@ -134,8 +132,8 @@ const AVFilter ff_vf_fifo = { · 2 unmodified lines
134 .init = init,132 .init = init,
135 .uninit = uninit,133 .uninit = uninit,
136 .priv_size = sizeof(FifoContext),134 .priv_size = sizeof(FifoContext),
137 .inputs = avfilter_vf_fifo_inputs,135 FILTER_INPUTS(avfilter_vf_fifo_inputs),
138 .outputs = avfilter_vf_fifo_outputs,136 FILTER_OUTPUTS(avfilter_vf_fifo_outputs),
139};137};
140 138
141static const AVFilterPad avfilter_af_afifo_inputs[] = {139static const AVFilterPad avfilter_af_afifo_inputs[] = {
@@ -144,7 +142,6 @@ static const AVFilterPad avfilter_af_afifo_inputs[] = { · 2 unmodified lines
144 .type = AVMEDIA_TYPE_AUDIO,142 .type = AVMEDIA_TYPE_AUDIO,
145 .filter_frame = add_to_queue,143 .filter_frame = add_to_queue,
146 },144 },
147 { NULL }
148};145};
149 146
150static const AVFilterPad avfilter_af_afifo_outputs[] = {147static const AVFilterPad avfilter_af_afifo_outputs[] = {
@@ -153,7 +150,6 @@ static const AVFilterPad avfilter_af_afifo_outputs[] = { · 2 unmodified lines
153 .type = AVMEDIA_TYPE_AUDIO,150 .type = AVMEDIA_TYPE_AUDIO,
154 .request_frame = request_frame,151 .request_frame = request_frame,
155 },152 },
156 { NULL }
157};153};
158 154
159const AVFilter ff_af_afifo = {155const AVFilter ff_af_afifo = {
@@ -162,6 +158,6 @@ const AVFilter ff_af_afifo = { · 2 unmodified lines
162 .init = init,158 .init = init,
163 .uninit = uninit,159 .uninit = uninit,
164 .priv_size = sizeof(FifoContext),160 .priv_size = sizeof(FifoContext),
165 .inputs = avfilter_af_afifo_inputs,161 FILTER_INPUTS(avfilter_af_afifo_inputs),
166 .outputs = avfilter_af_afifo_outputs,162 FILTER_OUTPUTS(avfilter_af_afifo_outputs),
167};163};
libavfilter/internal.h+6−0
@@ -141,6 +141,12 @@ static av_always_inline int ff_filter_execute(AVFilterContext *ctx, avfilter_act · 140 unmodified lines
141 return ctx->internal->execute(ctx, func, arg, ret, nb_jobs);141 return ctx->internal->execute(ctx, func, arg, ret, nb_jobs);
142}142}
143 143
144#define FILTER_INOUTPADS(inout, array) \
145 .inout = array, \
146 .nb_ ## inout = FF_ARRAY_ELEMS(array)
147#define FILTER_INPUTS(array) FILTER_INOUTPADS(inputs, (array))
148#define FILTER_OUTPUTS(array) FILTER_INOUTPADS(outputs, (array))
149
144/**150/**
145 * Tell if an integer is contained in the provided -1-terminated list of integers.151 * Tell if an integer is contained in the provided -1-terminated list of integers.
146 * This is useful for determining (for instance) if an AVPixelFormat is in an152 * This is useful for determining (for instance) if an AVPixelFormat is in an
libavfilter/setpts.c+4−8
@@ -279,7 +279,6 @@ static const AVFilterPad avfilter_vf_setpts_inputs[] = { · 278 unmodified lines
279 .type = AVMEDIA_TYPE_VIDEO,279 .type = AVMEDIA_TYPE_VIDEO,
280 .config_props = config_input,280 .config_props = config_input,
281 },281 },
282 { NULL }
283};282};
284 283
285static const AVFilterPad avfilter_vf_setpts_outputs[] = {284static const AVFilterPad avfilter_vf_setpts_outputs[] = {
@@ -287,7 +286,6 @@ static const AVFilterPad avfilter_vf_setpts_outputs[] = { · 1 unmodified line
287 .name = "default",286 .name = "default",
288 .type = AVMEDIA_TYPE_VIDEO,287 .type = AVMEDIA_TYPE_VIDEO,
289 },288 },
290 { NULL }
291};289};
292 290
293const AVFilter ff_vf_setpts = {291const AVFilter ff_vf_setpts = {
@@ -300,8 +298,8 @@ const AVFilter ff_vf_setpts = { · 6 unmodified lines
300 .priv_size = sizeof(SetPTSContext),298 .priv_size = sizeof(SetPTSContext),
301 .priv_class = &setpts_class,299 .priv_class = &setpts_class,
302 300
303 .inputs = avfilter_vf_setpts_inputs,301 FILTER_INPUTS(avfilter_vf_setpts_inputs),
304 .outputs = avfilter_vf_setpts_outputs,302 FILTER_OUTPUTS(avfilter_vf_setpts_outputs),
305};303};
306#endif /* CONFIG_SETPTS_FILTER */304#endif /* CONFIG_SETPTS_FILTER */
307 305
@@ -319,7 +317,6 @@ static const AVFilterPad asetpts_inputs[] = { · 11 unmodified lines
319 .type = AVMEDIA_TYPE_AUDIO,317 .type = AVMEDIA_TYPE_AUDIO,
320 .config_props = config_input,318 .config_props = config_input,
321 },319 },
322 { NULL }
323};320};
324 321
325static const AVFilterPad asetpts_outputs[] = {322static const AVFilterPad asetpts_outputs[] = {
@@ -327,7 +324,6 @@ static const AVFilterPad asetpts_outputs[] = { · 1 unmodified line
327 .name = "default",324 .name = "default",
328 .type = AVMEDIA_TYPE_AUDIO,325 .type = AVMEDIA_TYPE_AUDIO,
329 },326 },
330 { NULL }
331};327};
332 328
333const AVFilter ff_af_asetpts = {329const AVFilter ff_af_asetpts = {
@@ -338,7 +334,7 @@ const AVFilter ff_af_asetpts = { · 4 unmodified lines
338 .uninit = uninit,334 .uninit = uninit,
339 .priv_size = sizeof(SetPTSContext),335 .priv_size = sizeof(SetPTSContext),
340 .priv_class = &asetpts_class,336 .priv_class = &asetpts_class,
341 .inputs = asetpts_inputs,337 FILTER_INPUTS(asetpts_inputs),
342 .outputs = asetpts_outputs,338 FILTER_OUTPUTS(asetpts_outputs),
343};339};
344#endif /* CONFIG_ASETPTS_FILTER */340#endif /* CONFIG_ASETPTS_FILTER */
libavfilter/settb.c+4−8
@@ -167,7 +167,6 @@ static const AVFilterPad avfilter_vf_settb_inputs[] = { · 166 unmodified lines
167 .name = "default",167 .name = "default",
168 .type = AVMEDIA_TYPE_VIDEO,168 .type = AVMEDIA_TYPE_VIDEO,
169 },169 },
170 { NULL }
171};170};
172 171
173static const AVFilterPad avfilter_vf_settb_outputs[] = {172static const AVFilterPad avfilter_vf_settb_outputs[] = {
@@ -176,7 +175,6 @@ static const AVFilterPad avfilter_vf_settb_outputs[] = { · 2 unmodified lines
176 .type = AVMEDIA_TYPE_VIDEO,175 .type = AVMEDIA_TYPE_VIDEO,
177 .config_props = config_output_props,176 .config_props = config_output_props,
178 },177 },
179 { NULL }
180};178};
181 179
182const AVFilter ff_vf_settb = {180const AVFilter ff_vf_settb = {
@@ -184,8 +182,8 @@ const AVFilter ff_vf_settb = { · 1 unmodified line
184 .description = NULL_IF_CONFIG_SMALL("Set timebase for the video output link."),182 .description = NULL_IF_CONFIG_SMALL("Set timebase for the video output link."),
185 .priv_size = sizeof(SetTBContext),183 .priv_size = sizeof(SetTBContext),
186 .priv_class = &settb_class,184 .priv_class = &settb_class,
187 .inputs = avfilter_vf_settb_inputs,185 FILTER_INPUTS(avfilter_vf_settb_inputs),
188 .outputs = avfilter_vf_settb_outputs,186 FILTER_OUTPUTS(avfilter_vf_settb_outputs),
189 .activate = activate,187 .activate = activate,
190};188};
191#endif /* CONFIG_SETTB_FILTER */189#endif /* CONFIG_SETTB_FILTER */
@@ -200,7 +198,6 @@ static const AVFilterPad avfilter_af_asettb_inputs[] = { · 8 unmodified lines
200 .name = "default",198 .name = "default",
201 .type = AVMEDIA_TYPE_AUDIO,199 .type = AVMEDIA_TYPE_AUDIO,
202 },200 },
203 { NULL }
204};201};
205 202
206static const AVFilterPad avfilter_af_asettb_outputs[] = {203static const AVFilterPad avfilter_af_asettb_outputs[] = {
@@ -209,15 +206,14 @@ static const AVFilterPad avfilter_af_asettb_outputs[] = { · 2 unmodified lines
209 .type = AVMEDIA_TYPE_AUDIO,206 .type = AVMEDIA_TYPE_AUDIO,
210 .config_props = config_output_props,207 .config_props = config_output_props,
211 },208 },
212 { NULL }
213};209};
214 210
215const AVFilter ff_af_asettb = {211const AVFilter ff_af_asettb = {
216 .name = "asettb",212 .name = "asettb",
217 .description = NULL_IF_CONFIG_SMALL("Set timebase for the audio output link."),213 .description = NULL_IF_CONFIG_SMALL("Set timebase for the audio output link."),
218 .priv_size = sizeof(SetTBContext),214 .priv_size = sizeof(SetTBContext),
219 .inputs = avfilter_af_asettb_inputs,215 FILTER_INPUTS(avfilter_af_asettb_inputs),
220 .outputs = avfilter_af_asettb_outputs,216 FILTER_OUTPUTS(avfilter_af_asettb_outputs),
221 .priv_class = &asettb_class,217 .priv_class = &asettb_class,
222 .activate = activate,218 .activate = activate,
223};219};
libavfilter/split.c+2−4
@@ -116,7 +116,6 @@ static const AVFilterPad avfilter_vf_split_inputs[] = { · 115 unmodified lines
116 .type = AVMEDIA_TYPE_VIDEO,116 .type = AVMEDIA_TYPE_VIDEO,
117 .filter_frame = filter_frame,117 .filter_frame = filter_frame,
118 },118 },
119 { NULL }
120};119};
121 120
122const AVFilter ff_vf_split = {121const AVFilter ff_vf_split = {
@@ -126,7 +125,7 @@ const AVFilter ff_vf_split = { · 3 unmodified lines
126 .priv_class = &split_class,125 .priv_class = &split_class,
127 .init = split_init,126 .init = split_init,
128 .uninit = split_uninit,127 .uninit = split_uninit,
129 .inputs = avfilter_vf_split_inputs,128 FILTER_INPUTS(avfilter_vf_split_inputs),
130 .outputs = NULL,129 .outputs = NULL,
131 .flags = AVFILTER_FLAG_DYNAMIC_OUTPUTS,130 .flags = AVFILTER_FLAG_DYNAMIC_OUTPUTS,
132};131};
@@ -137,7 +136,6 @@ static const AVFilterPad avfilter_af_asplit_inputs[] = { · 4 unmodified lines
137 .type = AVMEDIA_TYPE_AUDIO,136 .type = AVMEDIA_TYPE_AUDIO,
138 .filter_frame = filter_frame,137 .filter_frame = filter_frame,
139 },138 },
140 { NULL }
141};139};
142 140
143const AVFilter ff_af_asplit = {141const AVFilter ff_af_asplit = {
@@ -147,7 +145,7 @@ const AVFilter ff_af_asplit = { · 3 unmodified lines
147 .priv_class = &asplit_class,145 .priv_class = &asplit_class,
148 .init = split_init,146 .init = split_init,
149 .uninit = split_uninit,147 .uninit = split_uninit,
150 .inputs = avfilter_af_asplit_inputs,148 FILTER_INPUTS(avfilter_af_asplit_inputs),
151 .outputs = NULL,149 .outputs = NULL,
152 .flags = AVFILTER_FLAG_DYNAMIC_OUTPUTS,150 .flags = AVFILTER_FLAG_DYNAMIC_OUTPUTS,
153};151};
libavfilter/trim.c+4−8
@@ -195,7 +195,6 @@ static const AVFilterPad trim_inputs[] = { · 194 unmodified lines
195 .filter_frame = trim_filter_frame,195 .filter_frame = trim_filter_frame,
196 .config_props = config_input,196 .config_props = config_input,
197 },197 },
198 { NULL }
199};198};
200 199
201static const AVFilterPad trim_outputs[] = {200static const AVFilterPad trim_outputs[] = {
@@ -203,7 +202,6 @@ static const AVFilterPad trim_outputs[] = { · 1 unmodified line
203 .name = "default",202 .name = "default",
204 .type = AVMEDIA_TYPE_VIDEO,203 .type = AVMEDIA_TYPE_VIDEO,
205 },204 },
206 { NULL }
207};205};
208 206
209const AVFilter ff_vf_trim = {207const AVFilter ff_vf_trim = {
@@ -212,8 +210,8 @@ const AVFilter ff_vf_trim = { · 2 unmodified lines
212 .init = init,210 .init = init,
213 .priv_size = sizeof(TrimContext),211 .priv_size = sizeof(TrimContext),
214 .priv_class = &trim_class,212 .priv_class = &trim_class,
215 .inputs = trim_inputs,213 FILTER_INPUTS(trim_inputs),
216 .outputs = trim_outputs,214 FILTER_OUTPUTS(trim_outputs),
217};215};
218#endif // CONFIG_TRIM_FILTER216#endif // CONFIG_TRIM_FILTER
219 217
@@ -350,7 +348,6 @@ static const AVFilterPad atrim_inputs[] = { · 130 unmodified lines
350 .filter_frame = atrim_filter_frame,348 .filter_frame = atrim_filter_frame,
351 .config_props = config_input,349 .config_props = config_input,
352 },350 },
353 { NULL }
354};351};
355 352
356static const AVFilterPad atrim_outputs[] = {353static const AVFilterPad atrim_outputs[] = {
@@ -358,7 +355,6 @@ static const AVFilterPad atrim_outputs[] = { · 1 unmodified line
358 .name = "default",355 .name = "default",
359 .type = AVMEDIA_TYPE_AUDIO,356 .type = AVMEDIA_TYPE_AUDIO,
360 },357 },
361 { NULL }
362};358};
363 359
364const AVFilter ff_af_atrim = {360const AVFilter ff_af_atrim = {
@@ -367,7 +363,7 @@ const AVFilter ff_af_atrim = { · 2 unmodified lines
367 .init = init,363 .init = init,
368 .priv_size = sizeof(TrimContext),364 .priv_size = sizeof(TrimContext),
369 .priv_class = &atrim_class,365 .priv_class = &atrim_class,
370 .inputs = atrim_inputs,366 FILTER_INPUTS(atrim_inputs),
371 .outputs = atrim_outputs,367 FILTER_OUTPUTS(atrim_outputs),
372};368};
373#endif // CONFIG_ATRIM_FILTER369#endif // CONFIG_ATRIM_FILTER
libavfilter/vaf_spectrumsynth.c+2−4
@@ -532,7 +532,6 @@ static const AVFilterPad spectrumsynth_inputs[] = { · 531 unmodified lines
532 .name = "phase",532 .name = "phase",
533 .type = AVMEDIA_TYPE_VIDEO,533 .type = AVMEDIA_TYPE_VIDEO,
534 },534 },
535 { NULL }
536};535};
537 536
538static const AVFilterPad spectrumsynth_outputs[] = {537static const AVFilterPad spectrumsynth_outputs[] = {
@@ -541,7 +540,6 @@ static const AVFilterPad spectrumsynth_outputs[] = { · 2 unmodified lines
541 .type = AVMEDIA_TYPE_AUDIO,540 .type = AVMEDIA_TYPE_AUDIO,
542 .config_props = config_output,541 .config_props = config_output,
543 },542 },
544 { NULL }
545};543};
546 544
547const AVFilter ff_vaf_spectrumsynth = {545const AVFilter ff_vaf_spectrumsynth = {
@@ -551,7 +549,7 @@ const AVFilter ff_vaf_spectrumsynth = { · 3 unmodified lines
551 .query_formats = query_formats,549 .query_formats = query_formats,
552 .activate = activate,550 .activate = activate,
553 .priv_size = sizeof(SpectrumSynthContext),551 .priv_size = sizeof(SpectrumSynthContext),
554 .inputs = spectrumsynth_inputs,552 FILTER_INPUTS(spectrumsynth_inputs),
555 .outputs = spectrumsynth_outputs,553 FILTER_OUTPUTS(spectrumsynth_outputs),
556 .priv_class = &spectrumsynth_class,554 .priv_class = &spectrumsynth_class,
557};555};
libavfilter/vf_addroi.c+2−4
@@ -244,7 +244,6 @@ static const AVFilterPad addroi_inputs[] = { · 243 unmodified lines
244 .config_props = addroi_config_input,244 .config_props = addroi_config_input,
245 .filter_frame = addroi_filter_frame,245 .filter_frame = addroi_filter_frame,
246 },246 },
247 { NULL }
248};247};
249 248
250static const AVFilterPad addroi_outputs[] = {249static const AVFilterPad addroi_outputs[] = {
@@ -252,7 +251,6 @@ static const AVFilterPad addroi_outputs[] = { · 1 unmodified line
252 .name = "default",251 .name = "default",
253 .type = AVMEDIA_TYPE_VIDEO,252 .type = AVMEDIA_TYPE_VIDEO,
254 },253 },
255 { NULL }
256};254};
257 255
258const AVFilter ff_vf_addroi = {256const AVFilter ff_vf_addroi = {
@@ -264,6 +262,6 @@ const AVFilter ff_vf_addroi = { · 5 unmodified lines
264 .priv_size = sizeof(AddROIContext),262 .priv_size = sizeof(AddROIContext),
265 .priv_class = &addroi_class,263 .priv_class = &addroi_class,
266 264
267 .inputs = addroi_inputs,265 FILTER_INPUTS(addroi_inputs),
268 .outputs = addroi_outputs,266 FILTER_OUTPUTS(addroi_outputs),
269};267};
libavfilter/vf_alphamerge.c+2−4
@@ -170,7 +170,6 @@ static const AVFilterPad alphamerge_inputs[] = { · 169 unmodified lines
170 .name = "alpha",170 .name = "alpha",
171 .type = AVMEDIA_TYPE_VIDEO,171 .type = AVMEDIA_TYPE_VIDEO,
172 },172 },
173 { NULL }
174};173};
175 174
176static const AVFilterPad alphamerge_outputs[] = {175static const AVFilterPad alphamerge_outputs[] = {
@@ -179,7 +178,6 @@ static const AVFilterPad alphamerge_outputs[] = { · 2 unmodified lines
179 .type = AVMEDIA_TYPE_VIDEO,178 .type = AVMEDIA_TYPE_VIDEO,
180 .config_props = config_output,179 .config_props = config_output,
181 },180 },
182 { NULL }
183};181};
184 182
185static const AVOption alphamerge_options[] = {183static const AVOption alphamerge_options[] = {
@@ -197,8 +195,8 @@ const AVFilter ff_vf_alphamerge = { · 11 unmodified lines
197 .priv_class = &alphamerge_class,195 .priv_class = &alphamerge_class,
198 .init = init,196 .init = init,
199 .query_formats = query_formats,197 .query_formats = query_formats,
200 .inputs = alphamerge_inputs,198 FILTER_INPUTS(alphamerge_inputs),
201 .outputs = alphamerge_outputs,199 FILTER_OUTPUTS(alphamerge_outputs),
202 .uninit = uninit,200 .uninit = uninit,
203 .activate = activate,201 .activate = activate,
204 .flags = AVFILTER_FLAG_SUPPORT_TIMELINE_INTERNAL,202 .flags = AVFILTER_FLAG_SUPPORT_TIMELINE_INTERNAL,
libavfilter/vf_amplify.c+2−4
@@ -297,7 +297,6 @@ static const AVFilterPad inputs[] = { · 296 unmodified lines
297 .type = AVMEDIA_TYPE_VIDEO,297 .type = AVMEDIA_TYPE_VIDEO,
298 .filter_frame = filter_frame,298 .filter_frame = filter_frame,
299 },299 },
300 { NULL }
301};300};
302 301
303static const AVFilterPad outputs[] = {302static const AVFilterPad outputs[] = {
@@ -306,7 +305,6 @@ static const AVFilterPad outputs[] = { · 2 unmodified lines
306 .type = AVMEDIA_TYPE_VIDEO,305 .type = AVMEDIA_TYPE_VIDEO,
307 .config_props = config_output,306 .config_props = config_output,
308 },307 },
309 { NULL }
310};308};
311 309
312AVFILTER_DEFINE_CLASS(amplify);310AVFILTER_DEFINE_CLASS(amplify);
@@ -317,8 +315,8 @@ const AVFilter ff_vf_amplify = { · 4 unmodified lines
317 .priv_size = sizeof(AmplifyContext),315 .priv_size = sizeof(AmplifyContext),
318 .priv_class = &amplify_class,316 .priv_class = &amplify_class,
319 .query_formats = query_formats,317 .query_formats = query_formats,
320 .outputs = outputs,318 FILTER_OUTPUTS(outputs),
321 .inputs = inputs,319 FILTER_INPUTS(inputs),
322 .init = init,320 .init = init,
323 .uninit = uninit,321 .uninit = uninit,
324 .flags = AVFILTER_FLAG_SUPPORT_TIMELINE_INTERNAL | AVFILTER_FLAG_SLICE_THREADS,322 .flags = AVFILTER_FLAG_SUPPORT_TIMELINE_INTERNAL | AVFILTER_FLAG_SLICE_THREADS,
libavfilter/vf_aspect.c+4−8
@@ -173,7 +173,6 @@ static const AVFilterPad avfilter_vf_setdar_inputs[] = { · 172 unmodified lines
173 .type = AVMEDIA_TYPE_VIDEO,173 .type = AVMEDIA_TYPE_VIDEO,
174 .filter_frame = filter_frame,174 .filter_frame = filter_frame,
175 },175 },
176 { NULL }
177};176};
178 177
179static const AVFilterPad avfilter_vf_setdar_outputs[] = {178static const AVFilterPad avfilter_vf_setdar_outputs[] = {
@@ -182,7 +181,6 @@ static const AVFilterPad avfilter_vf_setdar_outputs[] = { · 2 unmodified lines
182 .type = AVMEDIA_TYPE_VIDEO,181 .type = AVMEDIA_TYPE_VIDEO,
183 .config_props = setdar_config_props,182 .config_props = setdar_config_props,
184 },183 },
185 { NULL }
186};184};
187 185
188const AVFilter ff_vf_setdar = {186const AVFilter ff_vf_setdar = {
@@ -190,8 +188,8 @@ const AVFilter ff_vf_setdar = { · 1 unmodified line
190 .description = NULL_IF_CONFIG_SMALL("Set the frame display aspect ratio."),188 .description = NULL_IF_CONFIG_SMALL("Set the frame display aspect ratio."),
191 .priv_size = sizeof(AspectContext),189 .priv_size = sizeof(AspectContext),
192 .priv_class = &setdar_class,190 .priv_class = &setdar_class,
193 .inputs = avfilter_vf_setdar_inputs,191 FILTER_INPUTS(avfilter_vf_setdar_inputs),
194 .outputs = avfilter_vf_setdar_outputs,192 FILTER_OUTPUTS(avfilter_vf_setdar_outputs),
195};193};
196 194
197#endif /* CONFIG_SETDAR_FILTER */195#endif /* CONFIG_SETDAR_FILTER */
@@ -237,7 +235,6 @@ static const AVFilterPad avfilter_vf_setsar_inputs[] = { · 39 unmodified lines
237 .type = AVMEDIA_TYPE_VIDEO,235 .type = AVMEDIA_TYPE_VIDEO,
238 .filter_frame = filter_frame,236 .filter_frame = filter_frame,
239 },237 },
240 { NULL }
241};238};
242 239
243static const AVFilterPad avfilter_vf_setsar_outputs[] = {240static const AVFilterPad avfilter_vf_setsar_outputs[] = {
@@ -246,7 +243,6 @@ static const AVFilterPad avfilter_vf_setsar_outputs[] = { · 2 unmodified lines
246 .type = AVMEDIA_TYPE_VIDEO,243 .type = AVMEDIA_TYPE_VIDEO,
247 .config_props = setsar_config_props,244 .config_props = setsar_config_props,
248 },245 },
249 { NULL }
250};246};
251 247
252const AVFilter ff_vf_setsar = {248const AVFilter ff_vf_setsar = {
@@ -254,8 +250,8 @@ const AVFilter ff_vf_setsar = { · 1 unmodified line
254 .description = NULL_IF_CONFIG_SMALL("Set the pixel sample aspect ratio."),250 .description = NULL_IF_CONFIG_SMALL("Set the pixel sample aspect ratio."),
255 .priv_size = sizeof(AspectContext),251 .priv_size = sizeof(AspectContext),
256 .priv_class = &setsar_class,252 .priv_class = &setsar_class,
257 .inputs = avfilter_vf_setsar_inputs,253 FILTER_INPUTS(avfilter_vf_setsar_inputs),
258 .outputs = avfilter_vf_setsar_outputs,254 FILTER_OUTPUTS(avfilter_vf_setsar_outputs),
259};255};
260 256
261#endif /* CONFIG_SETSAR_FILTER */257#endif /* CONFIG_SETSAR_FILTER */
libavfilter/vf_atadenoise.c+2−4
@@ -557,7 +557,6 @@ static const AVFilterPad inputs[] = { · 556 unmodified lines
557 .filter_frame = filter_frame,557 .filter_frame = filter_frame,
558 .config_props = config_input,558 .config_props = config_input,
559 },559 },
560 { NULL }
561};560};
562 561
563static const AVFilterPad outputs[] = {562static const AVFilterPad outputs[] = {
@@ -566,7 +565,6 @@ static const AVFilterPad outputs[] = { · 2 unmodified lines
566 .type = AVMEDIA_TYPE_VIDEO,565 .type = AVMEDIA_TYPE_VIDEO,
567 .request_frame = request_frame,566 .request_frame = request_frame,
568 },567 },
569 { NULL }
570};568};
571 569
572const AVFilter ff_vf_atadenoise = {570const AVFilter ff_vf_atadenoise = {
@@ -577,8 +575,8 @@ const AVFilter ff_vf_atadenoise = { · 4 unmodified lines
577 .init = init,575 .init = init,
578 .uninit = uninit,576 .uninit = uninit,
579 .query_formats = query_formats,577 .query_formats = query_formats,
580 .inputs = inputs,578 FILTER_INPUTS(inputs),
581 .outputs = outputs,579 FILTER_OUTPUTS(outputs),
582 .flags = AVFILTER_FLAG_SUPPORT_TIMELINE_INTERNAL | AVFILTER_FLAG_SLICE_THREADS,580 .flags = AVFILTER_FLAG_SUPPORT_TIMELINE_INTERNAL | AVFILTER_FLAG_SLICE_THREADS,
583 .process_command = process_command,581 .process_command = process_command,
584};582};
libavfilter/vf_avgblur.c+2−4
@@ -304,7 +304,6 @@ static const AVFilterPad avgblur_inputs[] = { · 303 unmodified lines
304 .config_props = config_input,304 .config_props = config_input,
305 .filter_frame = filter_frame,305 .filter_frame = filter_frame,
306 },306 },
307 { NULL }
308};307};
309 308
310static const AVFilterPad avgblur_outputs[] = {309static const AVFilterPad avgblur_outputs[] = {
@@ -312,7 +311,6 @@ static const AVFilterPad avgblur_outputs[] = { · 1 unmodified line
312 .name = "default",311 .name = "default",
313 .type = AVMEDIA_TYPE_VIDEO,312 .type = AVMEDIA_TYPE_VIDEO,
314 },313 },
315 { NULL }
316};314};
317 315
318const AVFilter ff_vf_avgblur = {316const AVFilter ff_vf_avgblur = {
@@ -322,8 +320,8 @@ const AVFilter ff_vf_avgblur = { · 3 unmodified lines
322 .priv_class = &avgblur_class,320 .priv_class = &avgblur_class,
323 .uninit = uninit,321 .uninit = uninit,
324 .query_formats = query_formats,322 .query_formats = query_formats,
325 .inputs = avgblur_inputs,323 FILTER_INPUTS(avgblur_inputs),
326 .outputs = avgblur_outputs,324 FILTER_OUTPUTS(avgblur_outputs),
327 .flags = AVFILTER_FLAG_SUPPORT_TIMELINE_GENERIC | AVFILTER_FLAG_SLICE_THREADS,325 .flags = AVFILTER_FLAG_SUPPORT_TIMELINE_GENERIC | AVFILTER_FLAG_SLICE_THREADS,
328 .process_command = ff_filter_process_command,326 .process_command = ff_filter_process_command,
329};327};
libavfilter/vf_avgblur_opencl.c+4−6
@@ -311,7 +311,6 @@ static const AVFilterPad avgblur_opencl_inputs[] = { · 310 unmodified lines
311 .filter_frame = &avgblur_opencl_filter_frame,311 .filter_frame = &avgblur_opencl_filter_frame,
312 .config_props = &ff_opencl_filter_config_input,312 .config_props = &ff_opencl_filter_config_input,
313 },313 },
314 { NULL }
315};314};
316 315
317 316
@@ -321,7 +320,6 @@ static const AVFilterPad avgblur_opencl_outputs[] = { · 3 unmodified lines
321 .type = AVMEDIA_TYPE_VIDEO,320 .type = AVMEDIA_TYPE_VIDEO,
322 .config_props = &ff_opencl_filter_config_output,321 .config_props = &ff_opencl_filter_config_output,
323 },322 },
324 { NULL }
325};323};
326 324
327 325
@@ -348,8 +346,8 @@ const AVFilter ff_vf_avgblur_opencl = { · 20 unmodified lines
348 .init = &ff_opencl_filter_init,346 .init = &ff_opencl_filter_init,
349 .uninit = &avgblur_opencl_uninit,347 .uninit = &avgblur_opencl_uninit,
350 .query_formats = &ff_opencl_filter_query_formats,348 .query_formats = &ff_opencl_filter_query_formats,
351 .inputs = avgblur_opencl_inputs,349 FILTER_INPUTS(avgblur_opencl_inputs),
352 .outputs = avgblur_opencl_outputs,350 FILTER_OUTPUTS(avgblur_opencl_outputs),
353 .flags_internal = FF_FILTER_FLAG_HWFRAME_AWARE,351 .flags_internal = FF_FILTER_FLAG_HWFRAME_AWARE,
354};352};
355 353
@@ -387,8 +385,8 @@ const AVFilter ff_vf_boxblur_opencl = { · 31 unmodified lines
387 .init = &ff_opencl_filter_init,385 .init = &ff_opencl_filter_init,
388 .uninit = &avgblur_opencl_uninit,386 .uninit = &avgblur_opencl_uninit,
389 .query_formats = &ff_opencl_filter_query_formats,387 .query_formats = &ff_opencl_filter_query_formats,
390 .inputs = avgblur_opencl_inputs,388 FILTER_INPUTS(avgblur_opencl_inputs),
391 .outputs = avgblur_opencl_outputs,389 FILTER_OUTPUTS(avgblur_opencl_outputs),
392 .flags_internal = FF_FILTER_FLAG_HWFRAME_AWARE,390 .flags_internal = FF_FILTER_FLAG_HWFRAME_AWARE,
393};391};
394 392
libavfilter/vf_avgblur_vulkan.c+2−4
@@ -386,7 +386,6 @@ static const AVFilterPad avgblur_vulkan_inputs[] = { · 385 unmodified lines
386 .filter_frame = &avgblur_vulkan_filter_frame,386 .filter_frame = &avgblur_vulkan_filter_frame,
387 .config_props = &ff_vk_filter_config_input,387 .config_props = &ff_vk_filter_config_input,
388 },388 },
389 { NULL }
390};389};
391 390
392static const AVFilterPad avgblur_vulkan_outputs[] = {391static const AVFilterPad avgblur_vulkan_outputs[] = {
@@ -395,7 +394,6 @@ static const AVFilterPad avgblur_vulkan_outputs[] = { · 2 unmodified lines
395 .type = AVMEDIA_TYPE_VIDEO,394 .type = AVMEDIA_TYPE_VIDEO,
396 .config_props = &ff_vk_filter_config_output,395 .config_props = &ff_vk_filter_config_output,
397 },396 },
398 { NULL }
399};397};
400 398
401const AVFilter ff_vf_avgblur_vulkan = {399const AVFilter ff_vf_avgblur_vulkan = {
@@ -405,8 +403,8 @@ const AVFilter ff_vf_avgblur_vulkan = { · 3 unmodified lines
405 .init = &ff_vk_filter_init,403 .init = &ff_vk_filter_init,
406 .uninit = &avgblur_vulkan_uninit,404 .uninit = &avgblur_vulkan_uninit,
407 .query_formats = &ff_vk_filter_query_formats,405 .query_formats = &ff_vk_filter_query_formats,
408 .inputs = avgblur_vulkan_inputs,406 FILTER_INPUTS(avgblur_vulkan_inputs),
409 .outputs = avgblur_vulkan_outputs,407 FILTER_OUTPUTS(avgblur_vulkan_outputs),
410 .priv_class = &avgblur_vulkan_class,408 .priv_class = &avgblur_vulkan_class,
411 .flags_internal = FF_FILTER_FLAG_HWFRAME_AWARE,409 .flags_internal = FF_FILTER_FLAG_HWFRAME_AWARE,
412};410};
libavfilter/vf_bbox.c+2−4
@@ -138,7 +138,6 @@ static const AVFilterPad bbox_inputs[] = { · 137 unmodified lines
138 .type = AVMEDIA_TYPE_VIDEO,138 .type = AVMEDIA_TYPE_VIDEO,
139 .filter_frame = filter_frame,139 .filter_frame = filter_frame,
140 },140 },
141 { NULL }
142};141};
143 142
144static const AVFilterPad bbox_outputs[] = {143static const AVFilterPad bbox_outputs[] = {
@@ -147,7 +146,6 @@ static const AVFilterPad bbox_outputs[] = { · 2 unmodified lines
147 .type = AVMEDIA_TYPE_VIDEO,146 .type = AVMEDIA_TYPE_VIDEO,
148 .config_props = config_output,147 .config_props = config_output,
149 },148 },
150 { NULL }
151};149};
152 150
153const AVFilter ff_vf_bbox = {151const AVFilter ff_vf_bbox = {
@@ -156,8 +154,8 @@ const AVFilter ff_vf_bbox = { · 2 unmodified lines
156 .priv_size = sizeof(BBoxContext),154 .priv_size = sizeof(BBoxContext),
157 .priv_class = &bbox_class,155 .priv_class = &bbox_class,
158 .query_formats = query_formats,156 .query_formats = query_formats,
159 .inputs = bbox_inputs,157 FILTER_INPUTS(bbox_inputs),
160 .outputs = bbox_outputs,158 FILTER_OUTPUTS(bbox_outputs),
161 .flags = AVFILTER_FLAG_SUPPORT_TIMELINE_GENERIC,159 .flags = AVFILTER_FLAG_SUPPORT_TIMELINE_GENERIC,
162 .process_command = ff_filter_process_command,160 .process_command = ff_filter_process_command,
163};161};
libavfilter/vf_bilateral.c+2−4
@@ -368,7 +368,6 @@ static const AVFilterPad bilateral_inputs[] = { · 367 unmodified lines
368 .config_props = config_input,368 .config_props = config_input,
369 .filter_frame = filter_frame,369 .filter_frame = filter_frame,
370 },370 },
371 { NULL }
372};371};
373 372
374static const AVFilterPad bilateral_outputs[] = {373static const AVFilterPad bilateral_outputs[] = {
@@ -376,7 +375,6 @@ static const AVFilterPad bilateral_outputs[] = { · 1 unmodified line
376 .name = "default",375 .name = "default",
377 .type = AVMEDIA_TYPE_VIDEO,376 .type = AVMEDIA_TYPE_VIDEO,
378 },377 },
379 { NULL }
380};378};
381 379
382const AVFilter ff_vf_bilateral = {380const AVFilter ff_vf_bilateral = {
@@ -386,8 +384,8 @@ const AVFilter ff_vf_bilateral = { · 3 unmodified lines
386 .priv_class = &bilateral_class,384 .priv_class = &bilateral_class,
387 .uninit = uninit,385 .uninit = uninit,
388 .query_formats = query_formats,386 .query_formats = query_formats,
389 .inputs = bilateral_inputs,387 FILTER_INPUTS(bilateral_inputs),
390 .outputs = bilateral_outputs,388 FILTER_OUTPUTS(bilateral_outputs),
391 .flags = AVFILTER_FLAG_SUPPORT_TIMELINE_GENERIC,389 .flags = AVFILTER_FLAG_SUPPORT_TIMELINE_GENERIC,
392 .process_command = process_command,390 .process_command = process_command,
393};391};
libavfilter/vf_bitplanenoise.c+2−4
@@ -200,7 +200,6 @@ static const AVFilterPad inputs[] = { · 199 unmodified lines
200 .filter_frame = filter_frame,200 .filter_frame = filter_frame,
201 .config_props = config_input,201 .config_props = config_input,
202 },202 },
203 { NULL }
204};203};
205 204
206static const AVFilterPad outputs[] = {205static const AVFilterPad outputs[] = {
@@ -208,7 +207,6 @@ static const AVFilterPad outputs[] = { · 1 unmodified line
208 .name = "default",207 .name = "default",
209 .type = AVMEDIA_TYPE_VIDEO,208 .type = AVMEDIA_TYPE_VIDEO,
210 },209 },
211 { NULL }
212};210};
213 211
214const AVFilter ff_vf_bitplanenoise = {212const AVFilter ff_vf_bitplanenoise = {
@@ -216,8 +214,8 @@ const AVFilter ff_vf_bitplanenoise = { · 1 unmodified line
216 .description = NULL_IF_CONFIG_SMALL("Measure bit plane noise."),214 .description = NULL_IF_CONFIG_SMALL("Measure bit plane noise."),
217 .priv_size = sizeof(BPNContext),215 .priv_size = sizeof(BPNContext),
218 .query_formats = query_formats,216 .query_formats = query_formats,
219 .inputs = inputs,217 FILTER_INPUTS(inputs),
220 .outputs = outputs,218 FILTER_OUTPUTS(outputs),
221 .priv_class = &bitplanenoise_class,219 .priv_class = &bitplanenoise_class,
222 .flags = AVFILTER_FLAG_SUPPORT_TIMELINE_GENERIC,220 .flags = AVFILTER_FLAG_SUPPORT_TIMELINE_GENERIC,
223};221};
libavfilter/vf_blackdetect.c+2−4
@@ -244,7 +244,6 @@ static const AVFilterPad blackdetect_inputs[] = { · 243 unmodified lines
244 .config_props = config_input,244 .config_props = config_input,
245 .filter_frame = filter_frame,245 .filter_frame = filter_frame,
246 },246 },
247 { NULL }
248};247};
249 248
250static const AVFilterPad blackdetect_outputs[] = {249static const AVFilterPad blackdetect_outputs[] = {
@@ -252,7 +251,6 @@ static const AVFilterPad blackdetect_outputs[] = { · 1 unmodified line
252 .name = "default",251 .name = "default",
253 .type = AVMEDIA_TYPE_VIDEO,252 .type = AVMEDIA_TYPE_VIDEO,
254 },253 },
255 { NULL }
256};254};
257 255
258const AVFilter ff_vf_blackdetect = {256const AVFilter ff_vf_blackdetect = {
@@ -260,8 +258,8 @@ const AVFilter ff_vf_blackdetect = { · 1 unmodified line
260 .description = NULL_IF_CONFIG_SMALL("Detect video intervals that are (almost) black."),258 .description = NULL_IF_CONFIG_SMALL("Detect video intervals that are (almost) black."),
261 .priv_size = sizeof(BlackDetectContext),259 .priv_size = sizeof(BlackDetectContext),
262 .query_formats = query_formats,260 .query_formats = query_formats,
263 .inputs = blackdetect_inputs,261 FILTER_INPUTS(blackdetect_inputs),
264 .outputs = blackdetect_outputs,262 FILTER_OUTPUTS(blackdetect_outputs),
265 .uninit = uninit,263 .uninit = uninit,
266 .priv_class = &blackdetect_class,264 .priv_class = &blackdetect_class,
267 .flags = AVFILTER_FLAG_SLICE_THREADS,265 .flags = AVFILTER_FLAG_SLICE_THREADS,
libavfilter/vf_blackframe.c+2−4
@@ -118,7 +118,6 @@ static const AVFilterPad avfilter_vf_blackframe_inputs[] = { · 117 unmodified lines
118 .type = AVMEDIA_TYPE_VIDEO,118 .type = AVMEDIA_TYPE_VIDEO,
119 .filter_frame = filter_frame,119 .filter_frame = filter_frame,
120 },120 },
121 { NULL }
122};121};
123 122
124static const AVFilterPad avfilter_vf_blackframe_outputs[] = {123static const AVFilterPad avfilter_vf_blackframe_outputs[] = {
@@ -126,7 +125,6 @@ static const AVFilterPad avfilter_vf_blackframe_outputs[] = { · 1 unmodified line
126 .name = "default",125 .name = "default",
127 .type = AVMEDIA_TYPE_VIDEO126 .type = AVMEDIA_TYPE_VIDEO
128 },127 },
129 { NULL }
130};128};
131 129
132const AVFilter ff_vf_blackframe = {130const AVFilter ff_vf_blackframe = {
@@ -135,6 +133,6 @@ const AVFilter ff_vf_blackframe = { · 2 unmodified lines
135 .priv_size = sizeof(BlackFrameContext),133 .priv_size = sizeof(BlackFrameContext),
136 .priv_class = &blackframe_class,134 .priv_class = &blackframe_class,
137 .query_formats = query_formats,135 .query_formats = query_formats,
138 .inputs = avfilter_vf_blackframe_inputs,136 FILTER_INPUTS(avfilter_vf_blackframe_inputs),
139 .outputs = avfilter_vf_blackframe_outputs,137 FILTER_OUTPUTS(avfilter_vf_blackframe_outputs),
140};138};
libavfilter/vf_blend.c+4−8
@@ -892,7 +892,6 @@ static const AVFilterPad blend_inputs[] = { · 891 unmodified lines
892 .name = "bottom",892 .name = "bottom",
893 .type = AVMEDIA_TYPE_VIDEO,893 .type = AVMEDIA_TYPE_VIDEO,
894 },894 },
895 { NULL }
896};895};
897 896
898static const AVFilterPad blend_outputs[] = {897static const AVFilterPad blend_outputs[] = {
@@ -901,7 +900,6 @@ static const AVFilterPad blend_outputs[] = { · 2 unmodified lines
901 .type = AVMEDIA_TYPE_VIDEO,900 .type = AVMEDIA_TYPE_VIDEO,
902 .config_props = config_output,901 .config_props = config_output,
903 },902 },
904 { NULL }
905};903};
906 904
907const AVFilter ff_vf_blend = {905const AVFilter ff_vf_blend = {
@@ -913,8 +911,8 @@ const AVFilter ff_vf_blend = { · 5 unmodified lines
913 .priv_size = sizeof(BlendContext),911 .priv_size = sizeof(BlendContext),
914 .query_formats = query_formats,912 .query_formats = query_formats,
915 .activate = activate,913 .activate = activate,
916 .inputs = blend_inputs,914 FILTER_INPUTS(blend_inputs),
917 .outputs = blend_outputs,915 FILTER_OUTPUTS(blend_outputs),
918 .priv_class = &blend_class,916 .priv_class = &blend_class,
919 .flags = AVFILTER_FLAG_SUPPORT_TIMELINE_INTERNAL | AVFILTER_FLAG_SLICE_THREADS,917 .flags = AVFILTER_FLAG_SUPPORT_TIMELINE_INTERNAL | AVFILTER_FLAG_SLICE_THREADS,
920 .process_command = process_command,918 .process_command = process_command,
@@ -954,7 +952,6 @@ static const AVFilterPad tblend_inputs[] = { · 33 unmodified lines
954 .type = AVMEDIA_TYPE_VIDEO,952 .type = AVMEDIA_TYPE_VIDEO,
955 .filter_frame = tblend_filter_frame,953 .filter_frame = tblend_filter_frame,
956 },954 },
957 { NULL }
958};955};
959 956
960static const AVFilterPad tblend_outputs[] = {957static const AVFilterPad tblend_outputs[] = {
@@ -963,7 +960,6 @@ static const AVFilterPad tblend_outputs[] = { · 2 unmodified lines
963 .type = AVMEDIA_TYPE_VIDEO,960 .type = AVMEDIA_TYPE_VIDEO,
964 .config_props = config_output,961 .config_props = config_output,
965 },962 },
966 { NULL }
967};963};
968 964
969const AVFilter ff_vf_tblend = {965const AVFilter ff_vf_tblend = {
@@ -974,8 +970,8 @@ const AVFilter ff_vf_tblend = { · 4 unmodified lines
974 .query_formats = query_formats,970 .query_formats = query_formats,
975 .init = init,971 .init = init,
976 .uninit = uninit,972 .uninit = uninit,
977 .inputs = tblend_inputs,973 FILTER_INPUTS(tblend_inputs),
978 .outputs = tblend_outputs,974 FILTER_OUTPUTS(tblend_outputs),
979 .flags = AVFILTER_FLAG_SUPPORT_TIMELINE_INTERNAL | AVFILTER_FLAG_SLICE_THREADS,975 .flags = AVFILTER_FLAG_SUPPORT_TIMELINE_INTERNAL | AVFILTER_FLAG_SLICE_THREADS,
980 .process_command = process_command,976 .process_command = process_command,
981};977};
libavfilter/vf_bm3d.c+1−2
@@ -1048,7 +1048,6 @@ static const AVFilterPad bm3d_outputs[] = { · 1047 unmodified lines
1048 .type = AVMEDIA_TYPE_VIDEO,1048 .type = AVMEDIA_TYPE_VIDEO,
1049 .config_props = config_output,1049 .config_props = config_output,
1050 },1050 },
1051 { NULL }
1052};1051};
1053 1052
1054const AVFilter ff_vf_bm3d = {1053const AVFilter ff_vf_bm3d = {
@@ -1060,7 +1059,7 @@ const AVFilter ff_vf_bm3d = { · 5 unmodified lines
1060 .activate = activate,1059 .activate = activate,
1061 .query_formats = query_formats,1060 .query_formats = query_formats,
1062 .inputs = NULL,1061 .inputs = NULL,
1063 .outputs = bm3d_outputs,1062 FILTER_OUTPUTS(bm3d_outputs),
1064 .priv_class = &bm3d_class,1063 .priv_class = &bm3d_class,
1065 .flags = AVFILTER_FLAG_SUPPORT_TIMELINE_INTERNAL |1064 .flags = AVFILTER_FLAG_SUPPORT_TIMELINE_INTERNAL |
1066 AVFILTER_FLAG_DYNAMIC_INPUTS |1065 AVFILTER_FLAG_DYNAMIC_INPUTS |
libavfilter/vf_boxblur.c+2−4
@@ -293,7 +293,6 @@ static const AVFilterPad avfilter_vf_boxblur_inputs[] = { · 292 unmodified lines
293 .config_props = config_input,293 .config_props = config_input,
294 .filter_frame = filter_frame,294 .filter_frame = filter_frame,
295 },295 },
296 { NULL }
297};296};
298 297
299static const AVFilterPad avfilter_vf_boxblur_outputs[] = {298static const AVFilterPad avfilter_vf_boxblur_outputs[] = {
@@ -301,7 +300,6 @@ static const AVFilterPad avfilter_vf_boxblur_outputs[] = { · 1 unmodified line
301 .name = "default",300 .name = "default",
302 .type = AVMEDIA_TYPE_VIDEO,301 .type = AVMEDIA_TYPE_VIDEO,
303 },302 },
304 { NULL }
305};303};
306 304
307const AVFilter ff_vf_boxblur = {305const AVFilter ff_vf_boxblur = {
@@ -311,7 +309,7 @@ const AVFilter ff_vf_boxblur = { · 3 unmodified lines
311 .priv_class = &boxblur_class,309 .priv_class = &boxblur_class,
312 .uninit = uninit,310 .uninit = uninit,
313 .query_formats = query_formats,311 .query_formats = query_formats,
314 .inputs = avfilter_vf_boxblur_inputs,312 FILTER_INPUTS(avfilter_vf_boxblur_inputs),
315 .outputs = avfilter_vf_boxblur_outputs,313 FILTER_OUTPUTS(avfilter_vf_boxblur_outputs),
316 .flags = AVFILTER_FLAG_SUPPORT_TIMELINE_GENERIC,314 .flags = AVFILTER_FLAG_SUPPORT_TIMELINE_GENERIC,
317};315};
libavfilter/vf_bwdif.c+2−4
@@ -392,7 +392,6 @@ static const AVFilterPad avfilter_vf_bwdif_inputs[] = { · 391 unmodified lines
392 .type = AVMEDIA_TYPE_VIDEO,392 .type = AVMEDIA_TYPE_VIDEO,
393 .filter_frame = ff_yadif_filter_frame,393 .filter_frame = ff_yadif_filter_frame,
394 },394 },
395 { NULL }
396};395};
397 396
398static const AVFilterPad avfilter_vf_bwdif_outputs[] = {397static const AVFilterPad avfilter_vf_bwdif_outputs[] = {
@@ -402,7 +401,6 @@ static const AVFilterPad avfilter_vf_bwdif_outputs[] = { · 3 unmodified lines
402 .request_frame = ff_yadif_request_frame,401 .request_frame = ff_yadif_request_frame,
403 .config_props = config_props,402 .config_props = config_props,
404 },403 },
405 { NULL }
406};404};
407 405
408const AVFilter ff_vf_bwdif = {406const AVFilter ff_vf_bwdif = {
@@ -412,7 +410,7 @@ const AVFilter ff_vf_bwdif = { · 3 unmodified lines
412 .priv_class = &bwdif_class,410 .priv_class = &bwdif_class,
413 .uninit = uninit,411 .uninit = uninit,
414 .query_formats = query_formats,412 .query_formats = query_formats,
415 .inputs = avfilter_vf_bwdif_inputs,413 FILTER_INPUTS(avfilter_vf_bwdif_inputs),
416 .outputs = avfilter_vf_bwdif_outputs,414 FILTER_OUTPUTS(avfilter_vf_bwdif_outputs),
417 .flags = AVFILTER_FLAG_SUPPORT_TIMELINE_INTERNAL | AVFILTER_FLAG_SLICE_THREADS,415 .flags = AVFILTER_FLAG_SUPPORT_TIMELINE_INTERNAL | AVFILTER_FLAG_SLICE_THREADS,
418};416};
libavfilter/vf_cas.c+2−4
@@ -258,7 +258,6 @@ static const AVFilterPad cas_inputs[] = { · 257 unmodified lines
258 .filter_frame = filter_frame,258 .filter_frame = filter_frame,
259 .config_props = config_input,259 .config_props = config_input,
260 },260 },
261 { NULL }
262};261};
263 262
264static const AVFilterPad cas_outputs[] = {263static const AVFilterPad cas_outputs[] = {
@@ -266,7 +265,6 @@ static const AVFilterPad cas_outputs[] = { · 1 unmodified line
266 .name = "default",265 .name = "default",
267 .type = AVMEDIA_TYPE_VIDEO,266 .type = AVMEDIA_TYPE_VIDEO,
268 },267 },
269 { NULL }
270};268};
271 269
272#define OFFSET(x) offsetof(CASContext, x)270#define OFFSET(x) offsetof(CASContext, x)
@@ -286,8 +284,8 @@ const AVFilter ff_vf_cas = { · 13 unmodified lines
286 .priv_size = sizeof(CASContext),284 .priv_size = sizeof(CASContext),
287 .priv_class = &cas_class,285 .priv_class = &cas_class,
288 .query_formats = query_formats,286 .query_formats = query_formats,
289 .inputs = cas_inputs,287 FILTER_INPUTS(cas_inputs),
290 .outputs = cas_outputs,288 FILTER_OUTPUTS(cas_outputs),
291 .flags = AVFILTER_FLAG_SUPPORT_TIMELINE_GENERIC | AVFILTER_FLAG_SLICE_THREADS,289 .flags = AVFILTER_FLAG_SUPPORT_TIMELINE_GENERIC | AVFILTER_FLAG_SLICE_THREADS,
292 .process_command = ff_filter_process_command,290 .process_command = ff_filter_process_command,
293};291};
libavfilter/vf_chromaber_vulkan.c+2−4
@@ -321,7 +321,6 @@ static const AVFilterPad chromaber_vulkan_inputs[] = { · 320 unmodified lines
321 .filter_frame = &chromaber_vulkan_filter_frame,321 .filter_frame = &chromaber_vulkan_filter_frame,
322 .config_props = &ff_vk_filter_config_input,322 .config_props = &ff_vk_filter_config_input,
323 },323 },
324 { NULL }
325};324};
326 325
327static const AVFilterPad chromaber_vulkan_outputs[] = {326static const AVFilterPad chromaber_vulkan_outputs[] = {
@@ -330,7 +329,6 @@ static const AVFilterPad chromaber_vulkan_outputs[] = { · 2 unmodified lines
330 .type = AVMEDIA_TYPE_VIDEO,329 .type = AVMEDIA_TYPE_VIDEO,
331 .config_props = &ff_vk_filter_config_output,330 .config_props = &ff_vk_filter_config_output,
332 },331 },
333 { NULL }
334};332};
335 333
336const AVFilter ff_vf_chromaber_vulkan = {334const AVFilter ff_vf_chromaber_vulkan = {
@@ -340,8 +338,8 @@ const AVFilter ff_vf_chromaber_vulkan = { · 3 unmodified lines
340 .init = &ff_vk_filter_init,338 .init = &ff_vk_filter_init,
341 .uninit = &chromaber_vulkan_uninit,339 .uninit = &chromaber_vulkan_uninit,
342 .query_formats = &ff_vk_filter_query_formats,340 .query_formats = &ff_vk_filter_query_formats,
343 .inputs = chromaber_vulkan_inputs,341 FILTER_INPUTS(chromaber_vulkan_inputs),
344 .outputs = chromaber_vulkan_outputs,342 FILTER_OUTPUTS(chromaber_vulkan_outputs),
345 .priv_class = &chromaber_vulkan_class,343 .priv_class = &chromaber_vulkan_class,
346 .flags_internal = FF_FILTER_FLAG_HWFRAME_AWARE,344 .flags_internal = FF_FILTER_FLAG_HWFRAME_AWARE,
347};345};
libavfilter/vf_chromakey.c+4−8
@@ -371,7 +371,6 @@ static const AVFilterPad chromakey_inputs[] = { · 370 unmodified lines
371 .filter_frame = filter_frame,371 .filter_frame = filter_frame,
372 .config_props = config_input,372 .config_props = config_input,
373 },373 },
374 { NULL }
375};374};
376 375
377static const AVFilterPad chromakey_outputs[] = {376static const AVFilterPad chromakey_outputs[] = {
@@ -380,7 +379,6 @@ static const AVFilterPad chromakey_outputs[] = { · 2 unmodified lines
380 .type = AVMEDIA_TYPE_VIDEO,379 .type = AVMEDIA_TYPE_VIDEO,
381 .config_props = config_output,380 .config_props = config_output,
382 },381 },
383 { NULL }
384};382};
385 383
386#define OFFSET(x) offsetof(ChromakeyContext, x)384#define OFFSET(x) offsetof(ChromakeyContext, x)
@@ -402,8 +400,8 @@ const AVFilter ff_vf_chromakey = { · 15 unmodified lines
402 .priv_size = sizeof(ChromakeyContext),400 .priv_size = sizeof(ChromakeyContext),
403 .priv_class = &chromakey_class,401 .priv_class = &chromakey_class,
404 .query_formats = query_formats,402 .query_formats = query_formats,
405 .inputs = chromakey_inputs,403 FILTER_INPUTS(chromakey_inputs),
406 .outputs = chromakey_outputs,404 FILTER_OUTPUTS(chromakey_outputs),
407 .flags = AVFILTER_FLAG_SUPPORT_TIMELINE_GENERIC | AVFILTER_FLAG_SLICE_THREADS,405 .flags = AVFILTER_FLAG_SUPPORT_TIMELINE_GENERIC | AVFILTER_FLAG_SLICE_THREADS,
408 .process_command = process_command,406 .process_command = process_command,
409};407};
@@ -424,7 +422,6 @@ static const AVFilterPad chromahold_inputs[] = { · 14 unmodified lines
424 .filter_frame = filter_frame,422 .filter_frame = filter_frame,
425 .config_props = config_input,423 .config_props = config_input,
426 },424 },
427 { NULL }
428};425};
429 426
430static const AVFilterPad chromahold_outputs[] = {427static const AVFilterPad chromahold_outputs[] = {
@@ -433,7 +430,6 @@ static const AVFilterPad chromahold_outputs[] = { · 2 unmodified lines
433 .type = AVMEDIA_TYPE_VIDEO,430 .type = AVMEDIA_TYPE_VIDEO,
434 .config_props = config_output,431 .config_props = config_output,
435 },432 },
436 { NULL }
437};433};
438 434
439AVFILTER_DEFINE_CLASS(chromahold);435AVFILTER_DEFINE_CLASS(chromahold);
@@ -444,8 +440,8 @@ const AVFilter ff_vf_chromahold = { · 4 unmodified lines
444 .priv_size = sizeof(ChromakeyContext),440 .priv_size = sizeof(ChromakeyContext),
445 .priv_class = &chromahold_class,441 .priv_class = &chromahold_class,
446 .query_formats = query_formats,442 .query_formats = query_formats,
447 .inputs = chromahold_inputs,443 FILTER_INPUTS(chromahold_inputs),
448 .outputs = chromahold_outputs,444 FILTER_OUTPUTS(chromahold_outputs),
449 .flags = AVFILTER_FLAG_SUPPORT_TIMELINE_GENERIC | AVFILTER_FLAG_SLICE_THREADS,445 .flags = AVFILTER_FLAG_SUPPORT_TIMELINE_GENERIC | AVFILTER_FLAG_SLICE_THREADS,
450 .process_command = process_command,446 .process_command = process_command,
451};447};
libavfilter/vf_chromanr.c+2−4
@@ -264,7 +264,6 @@ static const AVFilterPad inputs[] = { · 263 unmodified lines
264 .filter_frame = filter_frame,264 .filter_frame = filter_frame,
265 .config_props = config_input,265 .config_props = config_input,
266 },266 },
267 { NULL }
268};267};
269 268
270static const AVFilterPad outputs[] = {269static const AVFilterPad outputs[] = {
@@ -272,7 +271,6 @@ static const AVFilterPad outputs[] = { · 1 unmodified line
272 .name = "default",271 .name = "default",
273 .type = AVMEDIA_TYPE_VIDEO,272 .type = AVMEDIA_TYPE_VIDEO,
274 },273 },
275 { NULL }
276};274};
277 275
278AVFILTER_DEFINE_CLASS(chromanr);276AVFILTER_DEFINE_CLASS(chromanr);
@@ -283,8 +281,8 @@ const AVFilter ff_vf_chromanr = { · 4 unmodified lines
283 .priv_size = sizeof(ChromaNRContext),281 .priv_size = sizeof(ChromaNRContext),
284 .priv_class = &chromanr_class,282 .priv_class = &chromanr_class,
285 .query_formats = query_formats,283 .query_formats = query_formats,
286 .outputs = outputs,284 FILTER_OUTPUTS(outputs),
287 .inputs = inputs,285 FILTER_INPUTS(inputs),
288 .flags = AVFILTER_FLAG_SUPPORT_TIMELINE_GENERIC | AVFILTER_FLAG_SLICE_THREADS,286 .flags = AVFILTER_FLAG_SUPPORT_TIMELINE_GENERIC | AVFILTER_FLAG_SLICE_THREADS,
289 .process_command = ff_filter_process_command,287 .process_command = ff_filter_process_command,
290};288};
libavfilter/vf_chromashift.c+4−6
@@ -429,7 +429,6 @@ static const AVFilterPad inputs[] = { · 428 unmodified lines
429 .filter_frame = filter_frame,429 .filter_frame = filter_frame,
430 .config_props = config_input,430 .config_props = config_input,
431 },431 },
432 { NULL }
433};432};
434 433
435static const AVFilterPad outputs[] = {434static const AVFilterPad outputs[] = {
@@ -437,7 +436,6 @@ static const AVFilterPad outputs[] = { · 1 unmodified line
437 .name = "default",436 .name = "default",
438 .type = AVMEDIA_TYPE_VIDEO,437 .type = AVMEDIA_TYPE_VIDEO,
439 },438 },
440 { NULL }
441};439};
442 440
443AVFILTER_DEFINE_CLASS(chromashift);441AVFILTER_DEFINE_CLASS(chromashift);
@@ -448,8 +446,8 @@ const AVFilter ff_vf_chromashift = { · 4 unmodified lines
448 .priv_size = sizeof(ChromaShiftContext),446 .priv_size = sizeof(ChromaShiftContext),
449 .priv_class = &chromashift_class,447 .priv_class = &chromashift_class,
450 .query_formats = query_formats,448 .query_formats = query_formats,
451 .outputs = outputs,449 FILTER_OUTPUTS(outputs),
452 .inputs = inputs,450 FILTER_INPUTS(inputs),
453 .flags = AVFILTER_FLAG_SUPPORT_TIMELINE_GENERIC | AVFILTER_FLAG_SLICE_THREADS,451 .flags = AVFILTER_FLAG_SUPPORT_TIMELINE_GENERIC | AVFILTER_FLAG_SLICE_THREADS,
454 .process_command = process_command,452 .process_command = process_command,
455};453};
@@ -477,8 +475,8 @@ const AVFilter ff_vf_rgbashift = { · 21 unmodified lines
477 .priv_size = sizeof(ChromaShiftContext),475 .priv_size = sizeof(ChromaShiftContext),
478 .priv_class = &rgbashift_class,476 .priv_class = &rgbashift_class,
479 .query_formats = query_formats,477 .query_formats = query_formats,
480 .outputs = outputs,478 FILTER_OUTPUTS(outputs),
481 .inputs = inputs,479 FILTER_INPUTS(inputs),
482 .flags = AVFILTER_FLAG_SUPPORT_TIMELINE_GENERIC | AVFILTER_FLAG_SLICE_THREADS,480 .flags = AVFILTER_FLAG_SUPPORT_TIMELINE_GENERIC | AVFILTER_FLAG_SLICE_THREADS,
483 .process_command = process_command,481 .process_command = process_command,
484};482};
libavfilter/vf_ciescope.c+2−4
@@ -1492,7 +1492,6 @@ static const AVFilterPad inputs[] = { · 1491 unmodified lines
1492 .filter_frame = filter_frame,1492 .filter_frame = filter_frame,
1493 .config_props = config_input,1493 .config_props = config_input,
1494 },1494 },
1495 { NULL }
1496};1495};
1497 1496
1498static const AVFilterPad outputs[] = {1497static const AVFilterPad outputs[] = {
@@ -1501,7 +1500,6 @@ static const AVFilterPad outputs[] = { · 2 unmodified lines
1501 .type = AVMEDIA_TYPE_VIDEO,1500 .type = AVMEDIA_TYPE_VIDEO,
1502 .config_props = config_output,1501 .config_props = config_output,
1503 },1502 },
1504 { NULL }
1505};1503};
1506 1504
1507const AVFilter ff_vf_ciescope = {1505const AVFilter ff_vf_ciescope = {
@@ -1511,6 +1509,6 @@ const AVFilter ff_vf_ciescope = { · 3 unmodified lines
1511 .priv_class = &ciescope_class,1509 .priv_class = &ciescope_class,
1512 .query_formats = query_formats,1510 .query_formats = query_formats,
1513 .uninit = uninit,1511 .uninit = uninit,
1514 .inputs = inputs,1512 FILTER_INPUTS(inputs),
1515 .outputs = outputs,1513 FILTER_OUTPUTS(outputs),
1516};1514};
libavfilter/vf_codecview.c+2−4
@@ -304,7 +304,6 @@ static const AVFilterPad codecview_inputs[] = { · 303 unmodified lines
304 .filter_frame = filter_frame,304 .filter_frame = filter_frame,
305 .config_props = config_input,305 .config_props = config_input,
306 },306 },
307 { NULL }
308};307};
309 308
310static const AVFilterPad codecview_outputs[] = {309static const AVFilterPad codecview_outputs[] = {
@@ -312,7 +311,6 @@ static const AVFilterPad codecview_outputs[] = { · 1 unmodified line
312 .name = "default",311 .name = "default",
313 .type = AVMEDIA_TYPE_VIDEO,312 .type = AVMEDIA_TYPE_VIDEO,
314 },313 },
315 { NULL }
316};314};
317 315
318const AVFilter ff_vf_codecview = {316const AVFilter ff_vf_codecview = {
@@ -320,8 +318,8 @@ const AVFilter ff_vf_codecview = { · 1 unmodified line
320 .description = NULL_IF_CONFIG_SMALL("Visualize information about some codecs."),318 .description = NULL_IF_CONFIG_SMALL("Visualize information about some codecs."),
321 .priv_size = sizeof(CodecViewContext),319 .priv_size = sizeof(CodecViewContext),
322 .query_formats = query_formats,320 .query_formats = query_formats,
323 .inputs = codecview_inputs,321 FILTER_INPUTS(codecview_inputs),
324 .outputs = codecview_outputs,322 FILTER_OUTPUTS(codecview_outputs),
325 .priv_class = &codecview_class,323 .priv_class = &codecview_class,
326 .flags = AVFILTER_FLAG_SUPPORT_TIMELINE_GENERIC,324 .flags = AVFILTER_FLAG_SUPPORT_TIMELINE_GENERIC,
327};325};
libavfilter/vf_colorbalance.c+2−4
@@ -425,7 +425,6 @@ static const AVFilterPad colorbalance_inputs[] = { · 424 unmodified lines
425 .type = AVMEDIA_TYPE_VIDEO,425 .type = AVMEDIA_TYPE_VIDEO,
426 .filter_frame = filter_frame,426 .filter_frame = filter_frame,
427 },427 },
428 { NULL }
429};428};
430 429
431static const AVFilterPad colorbalance_outputs[] = {430static const AVFilterPad colorbalance_outputs[] = {
@@ -434,7 +433,6 @@ static const AVFilterPad colorbalance_outputs[] = { · 2 unmodified lines
434 .type = AVMEDIA_TYPE_VIDEO,433 .type = AVMEDIA_TYPE_VIDEO,
435 .config_props = config_output,434 .config_props = config_output,
436 },435 },
437 { NULL }
438};436};
439 437
440const AVFilter ff_vf_colorbalance = {438const AVFilter ff_vf_colorbalance = {
@@ -443,8 +441,8 @@ const AVFilter ff_vf_colorbalance = { · 2 unmodified lines
443 .priv_size = sizeof(ColorBalanceContext),441 .priv_size = sizeof(ColorBalanceContext),
444 .priv_class = &colorbalance_class,442 .priv_class = &colorbalance_class,
445 .query_formats = query_formats,443 .query_formats = query_formats,
446 .inputs = colorbalance_inputs,444 FILTER_INPUTS(colorbalance_inputs),
447 .outputs = colorbalance_outputs,445 FILTER_OUTPUTS(colorbalance_outputs),
448 .flags = AVFILTER_FLAG_SUPPORT_TIMELINE_GENERIC | AVFILTER_FLAG_SLICE_THREADS,446 .flags = AVFILTER_FLAG_SUPPORT_TIMELINE_GENERIC | AVFILTER_FLAG_SLICE_THREADS,
449 .process_command = ff_filter_process_command,447 .process_command = ff_filter_process_command,
450};448};
libavfilter/vf_colorchannelmixer.c+2−4
@@ -785,7 +785,6 @@ static const AVFilterPad colorchannelmixer_inputs[] = { · 784 unmodified lines
785 .type = AVMEDIA_TYPE_VIDEO,785 .type = AVMEDIA_TYPE_VIDEO,
786 .filter_frame = filter_frame,786 .filter_frame = filter_frame,
787 },787 },
788 { NULL }
789};788};
790 789
791static const AVFilterPad colorchannelmixer_outputs[] = {790static const AVFilterPad colorchannelmixer_outputs[] = {
@@ -794,7 +793,6 @@ static const AVFilterPad colorchannelmixer_outputs[] = { · 2 unmodified lines
794 .type = AVMEDIA_TYPE_VIDEO,793 .type = AVMEDIA_TYPE_VIDEO,
795 .config_props = config_output,794 .config_props = config_output,
796 },795 },
797 { NULL }
798};796};
799 797
800const AVFilter ff_vf_colorchannelmixer = {798const AVFilter ff_vf_colorchannelmixer = {
@@ -804,8 +802,8 @@ const AVFilter ff_vf_colorchannelmixer = { · 3 unmodified lines
804 .priv_class = &colorchannelmixer_class,802 .priv_class = &colorchannelmixer_class,
805 .uninit = uninit,803 .uninit = uninit,
806 .query_formats = query_formats,804 .query_formats = query_formats,
807 .inputs = colorchannelmixer_inputs,805 FILTER_INPUTS(colorchannelmixer_inputs),
808 .outputs = colorchannelmixer_outputs,806 FILTER_OUTPUTS(colorchannelmixer_outputs),
809 .flags = AVFILTER_FLAG_SUPPORT_TIMELINE_GENERIC | AVFILTER_FLAG_SLICE_THREADS,807 .flags = AVFILTER_FLAG_SUPPORT_TIMELINE_GENERIC | AVFILTER_FLAG_SLICE_THREADS,
810 .process_command = process_command,808 .process_command = process_command,
811};809};
libavfilter/vf_colorconstancy.c+2−4
@@ -726,7 +726,6 @@ static const AVFilterPad colorconstancy_inputs[] = { · 725 unmodified lines
726 .config_props = config_props,726 .config_props = config_props,
727 .filter_frame = filter_frame,727 .filter_frame = filter_frame,
728 },728 },
729 { NULL }
730};729};
731 730
732static const AVFilterPad colorconstancy_outputs[] = {731static const AVFilterPad colorconstancy_outputs[] = {
@@ -734,7 +733,6 @@ static const AVFilterPad colorconstancy_outputs[] = { · 1 unmodified line
734 .name = "default",733 .name = "default",
735 .type = AVMEDIA_TYPE_VIDEO,734 .type = AVMEDIA_TYPE_VIDEO,
736 },735 },
737 { NULL }
738};736};
739 737
740#if CONFIG_GREYEDGE_FILTER738#if CONFIG_GREYEDGE_FILTER
@@ -755,8 +753,8 @@ const AVFilter ff_vf_greyedge = { · 14 unmodified lines
755 .priv_class = &greyedge_class,753 .priv_class = &greyedge_class,
756 .query_formats = query_formats,754 .query_formats = query_formats,
757 .uninit = uninit,755 .uninit = uninit,
758 .inputs = colorconstancy_inputs,756 FILTER_INPUTS(colorconstancy_inputs),
759 .outputs = colorconstancy_outputs,757 FILTER_OUTPUTS(colorconstancy_outputs),
760 .flags = AVFILTER_FLAG_SUPPORT_TIMELINE_GENERIC | AVFILTER_FLAG_SLICE_THREADS,758 .flags = AVFILTER_FLAG_SUPPORT_TIMELINE_GENERIC | AVFILTER_FLAG_SLICE_THREADS,
761};759};
762 760
libavfilter/vf_colorcontrast.c+2−4
@@ -362,7 +362,6 @@ static const AVFilterPad colorcontrast_inputs[] = { · 361 unmodified lines
362 .filter_frame = filter_frame,362 .filter_frame = filter_frame,
363 .config_props = config_input,363 .config_props = config_input,
364 },364 },
365 { NULL }
366};365};
367 366
368static const AVFilterPad colorcontrast_outputs[] = {367static const AVFilterPad colorcontrast_outputs[] = {
@@ -370,7 +369,6 @@ static const AVFilterPad colorcontrast_outputs[] = { · 1 unmodified line
370 .name = "default",369 .name = "default",
371 .type = AVMEDIA_TYPE_VIDEO,370 .type = AVMEDIA_TYPE_VIDEO,
372 },371 },
373 { NULL }
374};372};
375 373
376#define OFFSET(x) offsetof(ColorContrastContext, x)374#define OFFSET(x) offsetof(ColorContrastContext, x)
@@ -395,8 +393,8 @@ const AVFilter ff_vf_colorcontrast = { · 18 unmodified lines
395 .priv_size = sizeof(ColorContrastContext),393 .priv_size = sizeof(ColorContrastContext),
396 .priv_class = &colorcontrast_class,394 .priv_class = &colorcontrast_class,
397 .query_formats = query_formats,395 .query_formats = query_formats,
398 .inputs = colorcontrast_inputs,396 FILTER_INPUTS(colorcontrast_inputs),
399 .outputs = colorcontrast_outputs,397 FILTER_OUTPUTS(colorcontrast_outputs),
400 .flags = AVFILTER_FLAG_SUPPORT_TIMELINE_GENERIC | AVFILTER_FLAG_SLICE_THREADS,398 .flags = AVFILTER_FLAG_SUPPORT_TIMELINE_GENERIC | AVFILTER_FLAG_SLICE_THREADS,
401 .process_command = ff_filter_process_command,399 .process_command = ff_filter_process_command,
402};400};
libavfilter/vf_colorcorrect.c+2−4
@@ -389,7 +389,6 @@ static const AVFilterPad colorcorrect_inputs[] = { · 388 unmodified lines
389 .filter_frame = filter_frame,389 .filter_frame = filter_frame,
390 .config_props = config_input,390 .config_props = config_input,
391 },391 },
392 { NULL }
393};392};
394 393
395static const AVFilterPad colorcorrect_outputs[] = {394static const AVFilterPad colorcorrect_outputs[] = {
@@ -397,7 +396,6 @@ static const AVFilterPad colorcorrect_outputs[] = { · 1 unmodified line
397 .name = "default",396 .name = "default",
398 .type = AVMEDIA_TYPE_VIDEO,397 .type = AVMEDIA_TYPE_VIDEO,
399 },398 },
400 { NULL }
401};399};
402 400
403#define OFFSET(x) offsetof(ColorCorrectContext, x)401#define OFFSET(x) offsetof(ColorCorrectContext, x)
@@ -425,8 +423,8 @@ const AVFilter ff_vf_colorcorrect = { · 21 unmodified lines
425 .priv_class = &colorcorrect_class,423 .priv_class = &colorcorrect_class,
426 .query_formats = query_formats,424 .query_formats = query_formats,
427 .uninit = uninit,425 .uninit = uninit,
428 .inputs = colorcorrect_inputs,426 FILTER_INPUTS(colorcorrect_inputs),
429 .outputs = colorcorrect_outputs,427 FILTER_OUTPUTS(colorcorrect_outputs),
430 .flags = AVFILTER_FLAG_SUPPORT_TIMELINE_GENERIC | AVFILTER_FLAG_SLICE_THREADS,428 .flags = AVFILTER_FLAG_SUPPORT_TIMELINE_GENERIC | AVFILTER_FLAG_SLICE_THREADS,
431 .process_command = ff_filter_process_command,429 .process_command = ff_filter_process_command,
432};430};
libavfilter/vf_colorize.c+2−4
@@ -263,7 +263,6 @@ static const AVFilterPad colorize_inputs[] = { · 262 unmodified lines
263 .filter_frame = filter_frame,263 .filter_frame = filter_frame,
264 .config_props = config_input,264 .config_props = config_input,
265 },265 },
266 { NULL }
267};266};
268 267
269static const AVFilterPad colorize_outputs[] = {268static const AVFilterPad colorize_outputs[] = {
@@ -271,7 +270,6 @@ static const AVFilterPad colorize_outputs[] = { · 1 unmodified line
271 .name = "default",270 .name = "default",
272 .type = AVMEDIA_TYPE_VIDEO,271 .type = AVMEDIA_TYPE_VIDEO,
273 },272 },
274 { NULL }
275};273};
276 274
277#define OFFSET(x) offsetof(ColorizeContext, x)275#define OFFSET(x) offsetof(ColorizeContext, x)
@@ -293,8 +291,8 @@ const AVFilter ff_vf_colorize = { · 15 unmodified lines
293 .priv_size = sizeof(ColorizeContext),291 .priv_size = sizeof(ColorizeContext),
294 .priv_class = &colorize_class,292 .priv_class = &colorize_class,
295 .query_formats = query_formats,293 .query_formats = query_formats,
296 .inputs = colorize_inputs,294 FILTER_INPUTS(colorize_inputs),
297 .outputs = colorize_outputs,295 FILTER_OUTPUTS(colorize_outputs),
298 .flags = AVFILTER_FLAG_SUPPORT_TIMELINE_GENERIC | AVFILTER_FLAG_SLICE_THREADS,296 .flags = AVFILTER_FLAG_SUPPORT_TIMELINE_GENERIC | AVFILTER_FLAG_SLICE_THREADS,
299 .process_command = ff_filter_process_command,297 .process_command = ff_filter_process_command,
300};298};
libavfilter/vf_colorkey.c+4−6
@@ -179,7 +179,6 @@ static const AVFilterPad colorkey_inputs[] = { · 178 unmodified lines
179 .flags = AVFILTERPAD_FLAG_NEEDS_WRITABLE,179 .flags = AVFILTERPAD_FLAG_NEEDS_WRITABLE,
180 .filter_frame = filter_frame,180 .filter_frame = filter_frame,
181 },181 },
182 { NULL }
183};182};
184 183
185static const AVFilterPad colorkey_outputs[] = {184static const AVFilterPad colorkey_outputs[] = {
@@ -188,7 +187,6 @@ static const AVFilterPad colorkey_outputs[] = { · 2 unmodified lines
188 .type = AVMEDIA_TYPE_VIDEO,187 .type = AVMEDIA_TYPE_VIDEO,
189 .config_props = config_output,188 .config_props = config_output,
190 },189 },
191 { NULL }
192};190};
193 191
194#define OFFSET(x) offsetof(ColorkeyContext, x)192#define OFFSET(x) offsetof(ColorkeyContext, x)
@@ -212,8 +210,8 @@ const AVFilter ff_vf_colorkey = { · 17 unmodified lines
212 .priv_class = &colorkey_class,210 .priv_class = &colorkey_class,
213 .query_formats = query_formats,211 .query_formats = query_formats,
214 .init = init_filter,212 .init = init_filter,
215 .inputs = colorkey_inputs,213 FILTER_INPUTS(colorkey_inputs),
216 .outputs = colorkey_outputs,214 FILTER_OUTPUTS(colorkey_outputs),
217 .flags = AVFILTER_FLAG_SUPPORT_TIMELINE_GENERIC | AVFILTER_FLAG_SLICE_THREADS,215 .flags = AVFILTER_FLAG_SUPPORT_TIMELINE_GENERIC | AVFILTER_FLAG_SLICE_THREADS,
218 .process_command = ff_filter_process_command,216 .process_command = ff_filter_process_command,
219};217};
@@ -237,8 +235,8 @@ const AVFilter ff_vf_colorhold = { · 17 unmodified lines
237 .priv_class = &colorhold_class,235 .priv_class = &colorhold_class,
238 .query_formats = query_formats,236 .query_formats = query_formats,
239 .init = init_filter,237 .init = init_filter,
240 .inputs = colorkey_inputs,238 FILTER_INPUTS(colorkey_inputs),
241 .outputs = colorkey_outputs,239 FILTER_OUTPUTS(colorkey_outputs),
242 .flags = AVFILTER_FLAG_SUPPORT_TIMELINE_GENERIC | AVFILTER_FLAG_SLICE_THREADS,240 .flags = AVFILTER_FLAG_SUPPORT_TIMELINE_GENERIC | AVFILTER_FLAG_SLICE_THREADS,
243 .process_command = ff_filter_process_command,241 .process_command = ff_filter_process_command,
244};242};
libavfilter/vf_colorkey_opencl.c+2−4
@@ -206,7 +206,6 @@ static const AVFilterPad colorkey_opencl_inputs[] = { · 205 unmodified lines
206 .filter_frame = filter_frame,206 .filter_frame = filter_frame,
207 .config_props = &ff_opencl_filter_config_input,207 .config_props = &ff_opencl_filter_config_input,
208 },208 },
209 { NULL }
210};209};
211 210
212static const AVFilterPad colorkey_opencl_outputs[] = {211static const AVFilterPad colorkey_opencl_outputs[] = {
@@ -215,7 +214,6 @@ static const AVFilterPad colorkey_opencl_outputs[] = { · 2 unmodified lines
215 .type = AVMEDIA_TYPE_VIDEO,214 .type = AVMEDIA_TYPE_VIDEO,
216 .config_props = &ff_opencl_filter_config_output,215 .config_props = &ff_opencl_filter_config_output,
217 },216 },
218 { NULL }
219};217};
220 218
221#define OFFSET(x) offsetof(ColorkeyOpenCLContext, x)219#define OFFSET(x) offsetof(ColorkeyOpenCLContext, x)
@@ -238,7 +236,7 @@ const AVFilter ff_vf_colorkey_opencl = { · 16 unmodified lines
238 .init = &ff_opencl_filter_init,236 .init = &ff_opencl_filter_init,
239 .uninit = &colorkey_opencl_uninit,237 .uninit = &colorkey_opencl_uninit,
240 .query_formats = &ff_opencl_filter_query_formats,238 .query_formats = &ff_opencl_filter_query_formats,
241 .inputs = colorkey_opencl_inputs,239 FILTER_INPUTS(colorkey_opencl_inputs),
242 .outputs = colorkey_opencl_outputs,240 FILTER_OUTPUTS(colorkey_opencl_outputs),
243 .flags_internal = FF_FILTER_FLAG_HWFRAME_AWARE241 .flags_internal = FF_FILTER_FLAG_HWFRAME_AWARE
244};242};
libavfilter/vf_colorlevels.c+2−4
@@ -301,7 +301,6 @@ static const AVFilterPad colorlevels_inputs[] = { · 300 unmodified lines
301 .filter_frame = filter_frame,301 .filter_frame = filter_frame,
302 .config_props = config_input,302 .config_props = config_input,
303 },303 },
304 { NULL }
305};304};
306 305
307static const AVFilterPad colorlevels_outputs[] = {306static const AVFilterPad colorlevels_outputs[] = {
@@ -309,7 +308,6 @@ static const AVFilterPad colorlevels_outputs[] = { · 1 unmodified line
309 .name = "default",308 .name = "default",
310 .type = AVMEDIA_TYPE_VIDEO,309 .type = AVMEDIA_TYPE_VIDEO,
311 },310 },
312 { NULL }
313};311};
314 312
315const AVFilter ff_vf_colorlevels = {313const AVFilter ff_vf_colorlevels = {
@@ -318,8 +316,8 @@ const AVFilter ff_vf_colorlevels = { · 2 unmodified lines
318 .priv_size = sizeof(ColorLevelsContext),316 .priv_size = sizeof(ColorLevelsContext),
319 .priv_class = &colorlevels_class,317 .priv_class = &colorlevels_class,
320 .query_formats = query_formats,318 .query_formats = query_formats,
321 .inputs = colorlevels_inputs,319 FILTER_INPUTS(colorlevels_inputs),
322 .outputs = colorlevels_outputs,320 FILTER_OUTPUTS(colorlevels_outputs),
323 .flags = AVFILTER_FLAG_SUPPORT_TIMELINE_GENERIC | AVFILTER_FLAG_SLICE_THREADS,321 .flags = AVFILTER_FLAG_SUPPORT_TIMELINE_GENERIC | AVFILTER_FLAG_SLICE_THREADS,
324 .process_command = ff_filter_process_command,322 .process_command = ff_filter_process_command,
325};323};
libavfilter/vf_colormatrix.c+2−4
@@ -493,7 +493,6 @@ static const AVFilterPad colormatrix_inputs[] = { · 492 unmodified lines
493 .config_props = config_input,493 .config_props = config_input,
494 .filter_frame = filter_frame,494 .filter_frame = filter_frame,
495 },495 },
496 { NULL }
497};496};
498 497
499static const AVFilterPad colormatrix_outputs[] = {498static const AVFilterPad colormatrix_outputs[] = {
@@ -501,7 +500,6 @@ static const AVFilterPad colormatrix_outputs[] = { · 1 unmodified line
501 .name = "default",500 .name = "default",
502 .type = AVMEDIA_TYPE_VIDEO,501 .type = AVMEDIA_TYPE_VIDEO,
503 },502 },
504 { NULL }
505};503};
506 504
507const AVFilter ff_vf_colormatrix = {505const AVFilter ff_vf_colormatrix = {
@@ -510,8 +508,8 @@ const AVFilter ff_vf_colormatrix = { · 2 unmodified lines
510 .priv_size = sizeof(ColorMatrixContext),508 .priv_size = sizeof(ColorMatrixContext),
511 .init = init,509 .init = init,
512 .query_formats = query_formats,510 .query_formats = query_formats,
513 .inputs = colormatrix_inputs,511 FILTER_INPUTS(colormatrix_inputs),
514 .outputs = colormatrix_outputs,512 FILTER_OUTPUTS(colormatrix_outputs),
515 .priv_class = &colormatrix_class,513 .priv_class = &colormatrix_class,
516 .flags = AVFILTER_FLAG_SUPPORT_TIMELINE_GENERIC | AVFILTER_FLAG_SLICE_THREADS,514 .flags = AVFILTER_FLAG_SUPPORT_TIMELINE_GENERIC | AVFILTER_FLAG_SLICE_THREADS,
517};515};
libavfilter/vf_colorspace.c+2−4
@@ -1057,7 +1057,6 @@ static const AVFilterPad inputs[] = { · 1056 unmodified lines
1057 .type = AVMEDIA_TYPE_VIDEO,1057 .type = AVMEDIA_TYPE_VIDEO,
1058 .filter_frame = filter_frame,1058 .filter_frame = filter_frame,
1059 },1059 },
1060 { NULL }
1061};1060};
1062 1061
1063static const AVFilterPad outputs[] = {1062static const AVFilterPad outputs[] = {
@@ -1066,7 +1065,6 @@ static const AVFilterPad outputs[] = { · 2 unmodified lines
1066 .type = AVMEDIA_TYPE_VIDEO,1065 .type = AVMEDIA_TYPE_VIDEO,
1067 .config_props = config_props,1066 .config_props = config_props,
1068 },1067 },
1069 { NULL }
1070};1068};
1071 1069
1072const AVFilter ff_vf_colorspace = {1070const AVFilter ff_vf_colorspace = {
@@ -1077,7 +1075,7 @@ const AVFilter ff_vf_colorspace = { · 4 unmodified lines
1077 .query_formats = query_formats,1075 .query_formats = query_formats,
1078 .priv_size = sizeof(ColorSpaceContext),1076 .priv_size = sizeof(ColorSpaceContext),
1079 .priv_class = &colorspace_class,1077 .priv_class = &colorspace_class,
1080 .inputs = inputs,1078 FILTER_INPUTS(inputs),
1081 .outputs = outputs,1079 FILTER_OUTPUTS(outputs),
1082 .flags = AVFILTER_FLAG_SUPPORT_TIMELINE_GENERIC | AVFILTER_FLAG_SLICE_THREADS,1080 .flags = AVFILTER_FLAG_SUPPORT_TIMELINE_GENERIC | AVFILTER_FLAG_SLICE_THREADS,
1083};1081};
libavfilter/vf_colortemperature.c+2−4
@@ -328,7 +328,6 @@ static const AVFilterPad inputs[] = { · 327 unmodified lines
328 .filter_frame = filter_frame,328 .filter_frame = filter_frame,
329 .config_props = config_input,329 .config_props = config_input,
330 },330 },
331 { NULL }
332};331};
333 332
334static const AVFilterPad outputs[] = {333static const AVFilterPad outputs[] = {
@@ -336,7 +335,6 @@ static const AVFilterPad outputs[] = { · 1 unmodified line
336 .name = "default",335 .name = "default",
337 .type = AVMEDIA_TYPE_VIDEO,336 .type = AVMEDIA_TYPE_VIDEO,
338 },337 },
339 { NULL }
340};338};
341 339
342#define OFFSET(x) offsetof(ColorTemperatureContext, x)340#define OFFSET(x) offsetof(ColorTemperatureContext, x)
@@ -357,8 +355,8 @@ const AVFilter ff_vf_colortemperature = { · 14 unmodified lines
357 .priv_size = sizeof(ColorTemperatureContext),355 .priv_size = sizeof(ColorTemperatureContext),
358 .priv_class = &colortemperature_class,356 .priv_class = &colortemperature_class,
359 .query_formats = query_formats,357 .query_formats = query_formats,
360 .inputs = inputs,358 FILTER_INPUTS(inputs),
361 .outputs = outputs,359 FILTER_OUTPUTS(outputs),
362 .flags = AVFILTER_FLAG_SUPPORT_TIMELINE_GENERIC | AVFILTER_FLAG_SLICE_THREADS,360 .flags = AVFILTER_FLAG_SUPPORT_TIMELINE_GENERIC | AVFILTER_FLAG_SLICE_THREADS,
363 .process_command = ff_filter_process_command,361 .process_command = ff_filter_process_command,
364};362};
libavfilter/vf_convolution.c+10−12
@@ -890,7 +890,6 @@ static const AVFilterPad convolution_inputs[] = { · 889 unmodified lines
890 .config_props = config_input,890 .config_props = config_input,
891 .filter_frame = filter_frame,891 .filter_frame = filter_frame,
892 },892 },
893 { NULL }
894};893};
895 894
896static const AVFilterPad convolution_outputs[] = {895static const AVFilterPad convolution_outputs[] = {
@@ -898,7 +897,6 @@ static const AVFilterPad convolution_outputs[] = { · 1 unmodified line
898 .name = "default",897 .name = "default",
899 .type = AVMEDIA_TYPE_VIDEO,898 .type = AVMEDIA_TYPE_VIDEO,
900 },899 },
901 { NULL }
902};900};
903 901
904#if CONFIG_CONVOLUTION_FILTER902#if CONFIG_CONVOLUTION_FILTER
@@ -910,8 +908,8 @@ const AVFilter ff_vf_convolution = { · 5 unmodified lines
910 .priv_class = &convolution_class,908 .priv_class = &convolution_class,
911 .init = init,909 .init = init,
912 .query_formats = query_formats,910 .query_formats = query_formats,
913 .inputs = convolution_inputs,911 FILTER_INPUTS(convolution_inputs),
914 .outputs = convolution_outputs,912 FILTER_OUTPUTS(convolution_outputs),
915 .flags = AVFILTER_FLAG_SUPPORT_TIMELINE_GENERIC | AVFILTER_FLAG_SLICE_THREADS,913 .flags = AVFILTER_FLAG_SUPPORT_TIMELINE_GENERIC | AVFILTER_FLAG_SLICE_THREADS,
916 .process_command = process_command,914 .process_command = process_command,
917};915};
@@ -939,8 +937,8 @@ const AVFilter ff_vf_prewitt = { · 21 unmodified lines
939 .priv_class = &prewitt_class,937 .priv_class = &prewitt_class,
940 .init = init,938 .init = init,
941 .query_formats = query_formats,939 .query_formats = query_formats,
942 .inputs = convolution_inputs,940 FILTER_INPUTS(convolution_inputs),
943 .outputs = convolution_outputs,941 FILTER_OUTPUTS(convolution_outputs),
944 .flags = AVFILTER_FLAG_SUPPORT_TIMELINE_GENERIC | AVFILTER_FLAG_SLICE_THREADS,942 .flags = AVFILTER_FLAG_SUPPORT_TIMELINE_GENERIC | AVFILTER_FLAG_SLICE_THREADS,
945 .process_command = process_command,943 .process_command = process_command,
946};944};
@@ -959,8 +957,8 @@ const AVFilter ff_vf_sobel = { · 12 unmodified lines
959 .priv_class = &sobel_class,957 .priv_class = &sobel_class,
960 .init = init,958 .init = init,
961 .query_formats = query_formats,959 .query_formats = query_formats,
962 .inputs = convolution_inputs,960 FILTER_INPUTS(convolution_inputs),
963 .outputs = convolution_outputs,961 FILTER_OUTPUTS(convolution_outputs),
964 .flags = AVFILTER_FLAG_SUPPORT_TIMELINE_GENERIC | AVFILTER_FLAG_SLICE_THREADS,962 .flags = AVFILTER_FLAG_SUPPORT_TIMELINE_GENERIC | AVFILTER_FLAG_SLICE_THREADS,
965 .process_command = process_command,963 .process_command = process_command,
966};964};
@@ -979,8 +977,8 @@ const AVFilter ff_vf_roberts = { · 12 unmodified lines
979 .priv_class = &roberts_class,977 .priv_class = &roberts_class,
980 .init = init,978 .init = init,
981 .query_formats = query_formats,979 .query_formats = query_formats,
982 .inputs = convolution_inputs,980 FILTER_INPUTS(convolution_inputs),
983 .outputs = convolution_outputs,981 FILTER_OUTPUTS(convolution_outputs),
984 .flags = AVFILTER_FLAG_SUPPORT_TIMELINE_GENERIC | AVFILTER_FLAG_SLICE_THREADS,982 .flags = AVFILTER_FLAG_SUPPORT_TIMELINE_GENERIC | AVFILTER_FLAG_SLICE_THREADS,
985 .process_command = process_command,983 .process_command = process_command,
986};984};
@@ -999,8 +997,8 @@ const AVFilter ff_vf_kirsch = { · 12 unmodified lines
999 .priv_class = &kirsch_class,997 .priv_class = &kirsch_class,
1000 .init = init,998 .init = init,
1001 .query_formats = query_formats,999 .query_formats = query_formats,
1002 .inputs = convolution_inputs,1000 FILTER_INPUTS(convolution_inputs),
1003 .outputs = convolution_outputs,1001 FILTER_OUTPUTS(convolution_outputs),
1004 .flags = AVFILTER_FLAG_SUPPORT_TIMELINE_GENERIC | AVFILTER_FLAG_SLICE_THREADS,1002 .flags = AVFILTER_FLAG_SUPPORT_TIMELINE_GENERIC | AVFILTER_FLAG_SLICE_THREADS,
1005 .process_command = process_command,1003 .process_command = process_command,
1006};1004};
libavfilter/vf_convolution_opencl.c+8−10
@@ -327,7 +327,6 @@ static const AVFilterPad convolution_opencl_inputs[] = { · 326 unmodified lines
327 .filter_frame = &convolution_opencl_filter_frame,327 .filter_frame = &convolution_opencl_filter_frame,
328 .config_props = &ff_opencl_filter_config_input,328 .config_props = &ff_opencl_filter_config_input,
329 },329 },
330 { NULL }
331};330};
332 331
333static const AVFilterPad convolution_opencl_outputs[] = {332static const AVFilterPad convolution_opencl_outputs[] = {
@@ -336,7 +335,6 @@ static const AVFilterPad convolution_opencl_outputs[] = { · 2 unmodified lines
336 .type = AVMEDIA_TYPE_VIDEO,335 .type = AVMEDIA_TYPE_VIDEO,
337 .config_props = &ff_opencl_filter_config_output,336 .config_props = &ff_opencl_filter_config_output,
338 },337 },
339 { NULL }
340};338};
341 339
342#define OFFSET(x) offsetof(ConvolutionOpenCLContext, x)340#define OFFSET(x) offsetof(ConvolutionOpenCLContext, x)
@@ -370,8 +368,8 @@ const AVFilter ff_vf_convolution_opencl = { · 27 unmodified lines
370 .init = &ff_opencl_filter_init,368 .init = &ff_opencl_filter_init,
371 .uninit = &convolution_opencl_uninit,369 .uninit = &convolution_opencl_uninit,
372 .query_formats = &ff_opencl_filter_query_formats,370 .query_formats = &ff_opencl_filter_query_formats,
373 .inputs = convolution_opencl_inputs,371 FILTER_INPUTS(convolution_opencl_inputs),
374 .outputs = convolution_opencl_outputs,372 FILTER_OUTPUTS(convolution_opencl_outputs),
375 .flags_internal = FF_FILTER_FLAG_HWFRAME_AWARE,373 .flags_internal = FF_FILTER_FLAG_HWFRAME_AWARE,
376};374};
377 375
@@ -396,8 +394,8 @@ const AVFilter ff_vf_sobel_opencl = { · 18 unmodified lines
396 .init = &ff_opencl_filter_init,394 .init = &ff_opencl_filter_init,
397 .uninit = &convolution_opencl_uninit,395 .uninit = &convolution_opencl_uninit,
398 .query_formats = &ff_opencl_filter_query_formats,396 .query_formats = &ff_opencl_filter_query_formats,
399 .inputs = convolution_opencl_inputs,397 FILTER_INPUTS(convolution_opencl_inputs),
400 .outputs = convolution_opencl_outputs,398 FILTER_OUTPUTS(convolution_opencl_outputs),
401 .flags_internal = FF_FILTER_FLAG_HWFRAME_AWARE,399 .flags_internal = FF_FILTER_FLAG_HWFRAME_AWARE,
402};400};
403 401
@@ -422,8 +420,8 @@ const AVFilter ff_vf_prewitt_opencl = { · 18 unmodified lines
422 .init = &ff_opencl_filter_init,420 .init = &ff_opencl_filter_init,
423 .uninit = &convolution_opencl_uninit,421 .uninit = &convolution_opencl_uninit,
424 .query_formats = &ff_opencl_filter_query_formats,422 .query_formats = &ff_opencl_filter_query_formats,
425 .inputs = convolution_opencl_inputs,423 FILTER_INPUTS(convolution_opencl_inputs),
426 .outputs = convolution_opencl_outputs,424 FILTER_OUTPUTS(convolution_opencl_outputs),
427 .flags_internal = FF_FILTER_FLAG_HWFRAME_AWARE,425 .flags_internal = FF_FILTER_FLAG_HWFRAME_AWARE,
428};426};
429 427
@@ -448,8 +446,8 @@ const AVFilter ff_vf_roberts_opencl = { · 18 unmodified lines
448 .init = &ff_opencl_filter_init,446 .init = &ff_opencl_filter_init,
449 .uninit = &convolution_opencl_uninit,447 .uninit = &convolution_opencl_uninit,
450 .query_formats = &ff_opencl_filter_query_formats,448 .query_formats = &ff_opencl_filter_query_formats,
451 .inputs = convolution_opencl_inputs,449 FILTER_INPUTS(convolution_opencl_inputs),
452 .outputs = convolution_opencl_outputs,450 FILTER_OUTPUTS(convolution_opencl_outputs),
453 .flags_internal = FF_FILTER_FLAG_HWFRAME_AWARE,451 .flags_internal = FF_FILTER_FLAG_HWFRAME_AWARE,
454};452};
455 453
libavfilter/vf_convolve.c+4−6
@@ -645,7 +645,6 @@ static const AVFilterPad convolve_inputs[] = { · 644 unmodified lines
645 .type = AVMEDIA_TYPE_VIDEO,645 .type = AVMEDIA_TYPE_VIDEO,
646 .config_props = config_input_impulse,646 .config_props = config_input_impulse,
647 },647 },
648 { NULL }
649};648};
650 649
651static const AVFilterPad convolve_outputs[] = {650static const AVFilterPad convolve_outputs[] = {
@@ -654,7 +653,6 @@ static const AVFilterPad convolve_outputs[] = { · 2 unmodified lines
654 .type = AVMEDIA_TYPE_VIDEO,653 .type = AVMEDIA_TYPE_VIDEO,
655 .config_props = config_output,654 .config_props = config_output,
656 },655 },
657 { NULL }
658};656};
659 657
660#if CONFIG_CONVOLVE_FILTER658#if CONFIG_CONVOLVE_FILTER
@@ -671,8 +669,8 @@ const AVFilter ff_vf_convolve = { · 10 unmodified lines
671 .activate = activate,669 .activate = activate,
672 .priv_size = sizeof(ConvolveContext),670 .priv_size = sizeof(ConvolveContext),
673 .priv_class = &convolve_class,671 .priv_class = &convolve_class,
674 .inputs = convolve_inputs,672 FILTER_INPUTS(convolve_inputs),
675 .outputs = convolve_outputs,673 FILTER_OUTPUTS(convolve_outputs),
676 .flags = AVFILTER_FLAG_SUPPORT_TIMELINE_INTERNAL | AVFILTER_FLAG_SLICE_THREADS,674 .flags = AVFILTER_FLAG_SUPPORT_TIMELINE_INTERNAL | AVFILTER_FLAG_SLICE_THREADS,
677};675};
678 676
@@ -701,8 +699,8 @@ const AVFilter ff_vf_deconvolve = { · 22 unmodified lines
701 .activate = activate,699 .activate = activate,
702 .priv_size = sizeof(ConvolveContext),700 .priv_size = sizeof(ConvolveContext),
703 .priv_class = &deconvolve_class,701 .priv_class = &deconvolve_class,
704 .inputs = convolve_inputs,702 FILTER_INPUTS(convolve_inputs),
705 .outputs = convolve_outputs,703 FILTER_OUTPUTS(convolve_outputs),
706 .flags = AVFILTER_FLAG_SUPPORT_TIMELINE_INTERNAL | AVFILTER_FLAG_SLICE_THREADS,704 .flags = AVFILTER_FLAG_SUPPORT_TIMELINE_INTERNAL | AVFILTER_FLAG_SLICE_THREADS,
707};705};
708 706
libavfilter/vf_copy.c+2−4
@@ -70,7 +70,6 @@ static const AVFilterPad avfilter_vf_copy_inputs[] = { · 69 unmodified lines
70 .type = AVMEDIA_TYPE_VIDEO,70 .type = AVMEDIA_TYPE_VIDEO,
71 .filter_frame = filter_frame,71 .filter_frame = filter_frame,
72 },72 },
73 { NULL }
74};73};
75 74
76static const AVFilterPad avfilter_vf_copy_outputs[] = {75static const AVFilterPad avfilter_vf_copy_outputs[] = {
@@ -78,13 +77,12 @@ static const AVFilterPad avfilter_vf_copy_outputs[] = { · 1 unmodified line
78 .name = "default",77 .name = "default",
79 .type = AVMEDIA_TYPE_VIDEO,78 .type = AVMEDIA_TYPE_VIDEO,
80 },79 },
81 { NULL }
82};80};
83 81
84const AVFilter ff_vf_copy = {82const AVFilter ff_vf_copy = {
85 .name = "copy",83 .name = "copy",
86 .description = NULL_IF_CONFIG_SMALL("Copy the input video unchanged to the output."),84 .description = NULL_IF_CONFIG_SMALL("Copy the input video unchanged to the output."),
87 .inputs = avfilter_vf_copy_inputs,85 FILTER_INPUTS(avfilter_vf_copy_inputs),
88 .outputs = avfilter_vf_copy_outputs,86 FILTER_OUTPUTS(avfilter_vf_copy_outputs),
89 .query_formats = query_formats,87 .query_formats = query_formats,
90};88};
libavfilter/vf_coreimage.m+3−6
@@ -608,7 +608,6 @@ static const AVFilterPad vf_coreimage_inputs[] = { · 607 unmodified lines
608 .filter_frame = filter_frame,608 .filter_frame = filter_frame,
609 .config_props = config_input,609 .config_props = config_input,
610 },610 },
611 { NULL }
612};611};
613 612
614static const AVFilterPad vf_coreimage_outputs[] = {613static const AVFilterPad vf_coreimage_outputs[] = {
@@ -616,7 +615,6 @@ static const AVFilterPad vf_coreimage_outputs[] = { · 1 unmodified line
616 .name = "default",615 .name = "default",
617 .type = AVMEDIA_TYPE_VIDEO,616 .type = AVMEDIA_TYPE_VIDEO,
618 },617 },
619 { NULL }
620};618};
621 619
622static const AVFilterPad vsrc_coreimagesrc_outputs[] = {620static const AVFilterPad vsrc_coreimagesrc_outputs[] = {
@@ -626,7 +624,6 @@ static const AVFilterPad vsrc_coreimagesrc_outputs[] = { · 3 unmodified lines
626 .request_frame = request_frame,624 .request_frame = request_frame,
627 .config_props = config_output,625 .config_props = config_output,
628 },626 },
629 { NULL }
630};627};
631 628
632#define OFFSET(x) offsetof(CoreImageContext, x)629#define OFFSET(x) offsetof(CoreImageContext, x)
@@ -663,8 +660,8 @@ const AVFilter ff_vf_coreimage = { · 30 unmodified lines
663 .uninit = uninit,660 .uninit = uninit,
664 .priv_size = sizeof(CoreImageContext),661 .priv_size = sizeof(CoreImageContext),
665 .priv_class = &coreimage_class,662 .priv_class = &coreimage_class,
666 .inputs = vf_coreimage_inputs,663 FILTER_INPUTS(vf_coreimage_inputs),
667 .outputs = vf_coreimage_outputs,664 FILTER_OUTPUTS(vf_coreimage_outputs),
668 .query_formats = query_formats,665 .query_formats = query_formats,
669};666};
670 667
@@ -685,6 +682,6 @@ const AVFilter ff_vsrc_coreimagesrc = { · 14 unmodified lines
685 .priv_size = sizeof(CoreImageContext),682 .priv_size = sizeof(CoreImageContext),
686 .priv_class = &coreimagesrc_class,683 .priv_class = &coreimagesrc_class,
687 .inputs = NULL,684 .inputs = NULL,
688 .outputs = vsrc_coreimagesrc_outputs,685 FILTER_OUTPUTS(vsrc_coreimagesrc_outputs),
689 .query_formats = query_formats_src,686 .query_formats = query_formats_src,
690};687};
libavfilter/vf_cover_rect.c+2−4
@@ -236,7 +236,6 @@ static const AVFilterPad cover_rect_inputs[] = { · 235 unmodified lines
236 .config_props = config_input,236 .config_props = config_input,
237 .filter_frame = filter_frame,237 .filter_frame = filter_frame,
238 },238 },
239 { NULL }
240};239};
241 240
242static const AVFilterPad cover_rect_outputs[] = {241static const AVFilterPad cover_rect_outputs[] = {
@@ -244,7 +243,6 @@ static const AVFilterPad cover_rect_outputs[] = { · 1 unmodified line
244 .name = "default",243 .name = "default",
245 .type = AVMEDIA_TYPE_VIDEO,244 .type = AVMEDIA_TYPE_VIDEO,
246 },245 },
247 { NULL }
248};246};
249 247
250const AVFilter ff_vf_cover_rect = {248const AVFilter ff_vf_cover_rect = {
@@ -254,7 +252,7 @@ const AVFilter ff_vf_cover_rect = { · 3 unmodified lines
254 .init = init,252 .init = init,
255 .uninit = uninit,253 .uninit = uninit,
256 .query_formats = query_formats,254 .query_formats = query_formats,
257 .inputs = cover_rect_inputs,255 FILTER_INPUTS(cover_rect_inputs),
258 .outputs = cover_rect_outputs,256 FILTER_OUTPUTS(cover_rect_outputs),
259 .priv_class = &cover_rect_class,257 .priv_class = &cover_rect_class,
260};258};
libavfilter/vf_crop.c+2−4
@@ -380,7 +380,6 @@ static const AVFilterPad avfilter_vf_crop_inputs[] = { · 379 unmodified lines
380 .filter_frame = filter_frame,380 .filter_frame = filter_frame,
381 .config_props = config_input,381 .config_props = config_input,
382 },382 },
383 { NULL }
384};383};
385 384
386static const AVFilterPad avfilter_vf_crop_outputs[] = {385static const AVFilterPad avfilter_vf_crop_outputs[] = {
@@ -389,7 +388,6 @@ static const AVFilterPad avfilter_vf_crop_outputs[] = { · 2 unmodified lines
389 .type = AVMEDIA_TYPE_VIDEO,388 .type = AVMEDIA_TYPE_VIDEO,
390 .config_props = config_output,389 .config_props = config_output,
391 },390 },
392 { NULL }
393};391};
394 392
395const AVFilter ff_vf_crop = {393const AVFilter ff_vf_crop = {
@@ -399,7 +397,7 @@ const AVFilter ff_vf_crop = { · 3 unmodified lines
399 .priv_class = &crop_class,397 .priv_class = &crop_class,
400 .query_formats = query_formats,398 .query_formats = query_formats,
401 .uninit = uninit,399 .uninit = uninit,
402 .inputs = avfilter_vf_crop_inputs,400 FILTER_INPUTS(avfilter_vf_crop_inputs),
403 .outputs = avfilter_vf_crop_outputs,401 FILTER_OUTPUTS(avfilter_vf_crop_outputs),
404 .process_command = process_command,402 .process_command = process_command,
405};403};
libavfilter/vf_cropdetect.c+2−4
@@ -260,7 +260,6 @@ static const AVFilterPad avfilter_vf_cropdetect_inputs[] = { · 259 unmodified lines
260 .config_props = config_input,260 .config_props = config_input,
261 .filter_frame = filter_frame,261 .filter_frame = filter_frame,
262 },262 },
263 { NULL }
264};263};
265 264
266static const AVFilterPad avfilter_vf_cropdetect_outputs[] = {265static const AVFilterPad avfilter_vf_cropdetect_outputs[] = {
@@ -268,7 +267,6 @@ static const AVFilterPad avfilter_vf_cropdetect_outputs[] = { · 1 unmodified line
268 .name = "default",267 .name = "default",
269 .type = AVMEDIA_TYPE_VIDEO268 .type = AVMEDIA_TYPE_VIDEO
270 },269 },
271 { NULL }
272};270};
273 271
274const AVFilter ff_vf_cropdetect = {272const AVFilter ff_vf_cropdetect = {
@@ -278,7 +276,7 @@ const AVFilter ff_vf_cropdetect = { · 3 unmodified lines
278 .priv_class = &cropdetect_class,276 .priv_class = &cropdetect_class,
279 .init = init,277 .init = init,
280 .query_formats = query_formats,278 .query_formats = query_formats,
281 .inputs = avfilter_vf_cropdetect_inputs,279 FILTER_INPUTS(avfilter_vf_cropdetect_inputs),
282 .outputs = avfilter_vf_cropdetect_outputs,280 FILTER_OUTPUTS(avfilter_vf_cropdetect_outputs),
283 .flags = AVFILTER_FLAG_SUPPORT_TIMELINE_GENERIC,281 .flags = AVFILTER_FLAG_SUPPORT_TIMELINE_GENERIC,
284};282};
libavfilter/vf_curves.c+2−4
@@ -800,7 +800,6 @@ static const AVFilterPad curves_inputs[] = { · 799 unmodified lines
800 .filter_frame = filter_frame,800 .filter_frame = filter_frame,
801 .config_props = config_input,801 .config_props = config_input,
802 },802 },
803 { NULL }
804};803};
805 804
806static const AVFilterPad curves_outputs[] = {805static const AVFilterPad curves_outputs[] = {
@@ -808,7 +807,6 @@ static const AVFilterPad curves_outputs[] = { · 1 unmodified line
808 .name = "default",807 .name = "default",
809 .type = AVMEDIA_TYPE_VIDEO,808 .type = AVMEDIA_TYPE_VIDEO,
810 },809 },
811 { NULL }
812};810};
813 811
814const AVFilter ff_vf_curves = {812const AVFilter ff_vf_curves = {
@@ -818,8 +816,8 @@ const AVFilter ff_vf_curves = { · 3 unmodified lines
818 .init = curves_init,816 .init = curves_init,
819 .uninit = curves_uninit,817 .uninit = curves_uninit,
820 .query_formats = query_formats,818 .query_formats = query_formats,
821 .inputs = curves_inputs,819 FILTER_INPUTS(curves_inputs),
822 .outputs = curves_outputs,820 FILTER_OUTPUTS(curves_outputs),
823 .priv_class = &curves_class,821 .priv_class = &curves_class,
824 .flags = AVFILTER_FLAG_SUPPORT_TIMELINE_GENERIC | AVFILTER_FLAG_SLICE_THREADS,822 .flags = AVFILTER_FLAG_SUPPORT_TIMELINE_GENERIC | AVFILTER_FLAG_SLICE_THREADS,
825 .process_command = process_command,823 .process_command = process_command,
libavfilter/vf_datascope.c+6−12
@@ -438,7 +438,6 @@ static const AVFilterPad inputs[] = { · 437 unmodified lines
438 .filter_frame = filter_frame,438 .filter_frame = filter_frame,
439 .config_props = config_input,439 .config_props = config_input,
440 },440 },
441 { NULL }
442};441};
443 442
444static const AVFilterPad outputs[] = {443static const AVFilterPad outputs[] = {
@@ -447,7 +446,6 @@ static const AVFilterPad outputs[] = { · 2 unmodified lines
447 .type = AVMEDIA_TYPE_VIDEO,446 .type = AVMEDIA_TYPE_VIDEO,
448 .config_props = config_output,447 .config_props = config_output,
449 },448 },
450 { NULL }
451};449};
452 450
453const AVFilter ff_vf_datascope = {451const AVFilter ff_vf_datascope = {
@@ -456,8 +454,8 @@ const AVFilter ff_vf_datascope = { · 2 unmodified lines
456 .priv_size = sizeof(DatascopeContext),454 .priv_size = sizeof(DatascopeContext),
457 .priv_class = &datascope_class,455 .priv_class = &datascope_class,
458 .query_formats = query_formats,456 .query_formats = query_formats,
459 .inputs = inputs,457 FILTER_INPUTS(inputs),
460 .outputs = outputs,458 FILTER_OUTPUTS(outputs),
461 .flags = AVFILTER_FLAG_SLICE_THREADS,459 .flags = AVFILTER_FLAG_SLICE_THREADS,
462 .process_command = process_command,460 .process_command = process_command,
463};461};
@@ -728,7 +726,6 @@ static const AVFilterPad pixscope_inputs[] = { · 264 unmodified lines
728 .filter_frame = pixscope_filter_frame,726 .filter_frame = pixscope_filter_frame,
729 .config_props = pixscope_config_input,727 .config_props = pixscope_config_input,
730 },728 },
731 { NULL }
732};729};
733 730
734static const AVFilterPad pixscope_outputs[] = {731static const AVFilterPad pixscope_outputs[] = {
@@ -736,7 +733,6 @@ static const AVFilterPad pixscope_outputs[] = { · 1 unmodified line
736 .name = "default",733 .name = "default",
737 .type = AVMEDIA_TYPE_VIDEO,734 .type = AVMEDIA_TYPE_VIDEO,
738 },735 },
739 { NULL }
740};736};
741 737
742const AVFilter ff_vf_pixscope = {738const AVFilter ff_vf_pixscope = {
@@ -745,8 +741,8 @@ const AVFilter ff_vf_pixscope = { · 2 unmodified lines
745 .priv_size = sizeof(PixscopeContext),741 .priv_size = sizeof(PixscopeContext),
746 .priv_class = &pixscope_class,742 .priv_class = &pixscope_class,
747 .query_formats = query_formats,743 .query_formats = query_formats,
748 .inputs = pixscope_inputs,744 FILTER_INPUTS(pixscope_inputs),
749 .outputs = pixscope_outputs,745 FILTER_OUTPUTS(pixscope_outputs),
750 .flags = AVFILTER_FLAG_SUPPORT_TIMELINE_GENERIC,746 .flags = AVFILTER_FLAG_SUPPORT_TIMELINE_GENERIC,
751 .process_command = pixscope_process_command,747 .process_command = pixscope_process_command,
752};748};
@@ -1134,7 +1130,6 @@ static const AVFilterPad oscilloscope_inputs[] = { · 381 unmodified lines
1134 .filter_frame = oscilloscope_filter_frame,1130 .filter_frame = oscilloscope_filter_frame,
1135 .config_props = oscilloscope_config_input,1131 .config_props = oscilloscope_config_input,
1136 },1132 },
1137 { NULL }
1138};1133};
1139 1134
1140static const AVFilterPad oscilloscope_outputs[] = {1135static const AVFilterPad oscilloscope_outputs[] = {
@@ -1142,7 +1137,6 @@ static const AVFilterPad oscilloscope_outputs[] = { · 1 unmodified line
1142 .name = "default",1137 .name = "default",
1143 .type = AVMEDIA_TYPE_VIDEO,1138 .type = AVMEDIA_TYPE_VIDEO,
1144 },1139 },
1145 { NULL }
1146};1140};
1147 1141
1148const AVFilter ff_vf_oscilloscope = {1142const AVFilter ff_vf_oscilloscope = {
@@ -1152,8 +1146,8 @@ const AVFilter ff_vf_oscilloscope = { · 3 unmodified lines
1152 .priv_class = &oscilloscope_class,1146 .priv_class = &oscilloscope_class,
1153 .query_formats = query_formats,1147 .query_formats = query_formats,
1154 .uninit = oscilloscope_uninit,1148 .uninit = oscilloscope_uninit,
1155 .inputs = oscilloscope_inputs,1149 FILTER_INPUTS(oscilloscope_inputs),
1156 .outputs = oscilloscope_outputs,1150 FILTER_OUTPUTS(oscilloscope_outputs),
1157 .flags = AVFILTER_FLAG_SUPPORT_TIMELINE_GENERIC,1151 .flags = AVFILTER_FLAG_SUPPORT_TIMELINE_GENERIC,
1158 .process_command = oscilloscope_process_command,1152 .process_command = oscilloscope_process_command,
1159};1153};
libavfilter/vf_dblur.c+2−4
@@ -281,7 +281,6 @@ static const AVFilterPad dblur_inputs[] = { · 280 unmodified lines
281 .config_props = config_input,281 .config_props = config_input,
282 .filter_frame = filter_frame,282 .filter_frame = filter_frame,
283 },283 },
284 { NULL }
285};284};
286 285
287static const AVFilterPad dblur_outputs[] = {286static const AVFilterPad dblur_outputs[] = {
@@ -289,7 +288,6 @@ static const AVFilterPad dblur_outputs[] = { · 1 unmodified line
289 .name = "default",288 .name = "default",
290 .type = AVMEDIA_TYPE_VIDEO,289 .type = AVMEDIA_TYPE_VIDEO,
291 },290 },
292 { NULL }
293};291};
294 292
295const AVFilter ff_vf_dblur = {293const AVFilter ff_vf_dblur = {
@@ -299,8 +297,8 @@ const AVFilter ff_vf_dblur = { · 3 unmodified lines
299 .priv_class = &dblur_class,297 .priv_class = &dblur_class,
300 .uninit = uninit,298 .uninit = uninit,
301 .query_formats = query_formats,299 .query_formats = query_formats,
302 .inputs = dblur_inputs,300 FILTER_INPUTS(dblur_inputs),
303 .outputs = dblur_outputs,301 FILTER_OUTPUTS(dblur_outputs),
304 .flags = AVFILTER_FLAG_SUPPORT_TIMELINE_GENERIC,302 .flags = AVFILTER_FLAG_SUPPORT_TIMELINE_GENERIC,
305 .process_command = ff_filter_process_command,303 .process_command = ff_filter_process_command,
306};304};
libavfilter/vf_dctdnoiz.c+2−4
@@ -811,7 +811,6 @@ static const AVFilterPad dctdnoiz_inputs[] = { · 810 unmodified lines
811 .filter_frame = filter_frame,811 .filter_frame = filter_frame,
812 .config_props = config_input,812 .config_props = config_input,
813 },813 },
814 { NULL }
815};814};
816 815
817static const AVFilterPad dctdnoiz_outputs[] = {816static const AVFilterPad dctdnoiz_outputs[] = {
@@ -819,7 +818,6 @@ static const AVFilterPad dctdnoiz_outputs[] = { · 1 unmodified line
819 .name = "default",818 .name = "default",
820 .type = AVMEDIA_TYPE_VIDEO,819 .type = AVMEDIA_TYPE_VIDEO,
821 },820 },
822 { NULL }
823};821};
824 822
825const AVFilter ff_vf_dctdnoiz = {823const AVFilter ff_vf_dctdnoiz = {
@@ -829,8 +827,8 @@ const AVFilter ff_vf_dctdnoiz = { · 3 unmodified lines
829 .init = init,827 .init = init,
830 .uninit = uninit,828 .uninit = uninit,
831 .query_formats = query_formats,829 .query_formats = query_formats,
832 .inputs = dctdnoiz_inputs,830 FILTER_INPUTS(dctdnoiz_inputs),
833 .outputs = dctdnoiz_outputs,831 FILTER_OUTPUTS(dctdnoiz_outputs),
834 .priv_class = &dctdnoiz_class,832 .priv_class = &dctdnoiz_class,
835 .flags = AVFILTER_FLAG_SUPPORT_TIMELINE_GENERIC | AVFILTER_FLAG_SLICE_THREADS,833 .flags = AVFILTER_FLAG_SUPPORT_TIMELINE_GENERIC | AVFILTER_FLAG_SLICE_THREADS,
836};834};
libavfilter/vf_deband.c+2−4
@@ -456,7 +456,6 @@ static const AVFilterPad avfilter_vf_deband_inputs[] = { · 455 unmodified lines
456 .config_props = config_input,456 .config_props = config_input,
457 .filter_frame = filter_frame,457 .filter_frame = filter_frame,
458 },458 },
459 { NULL }
460};459};
461 460
462static const AVFilterPad avfilter_vf_deband_outputs[] = {461static const AVFilterPad avfilter_vf_deband_outputs[] = {
@@ -464,7 +463,6 @@ static const AVFilterPad avfilter_vf_deband_outputs[] = { · 1 unmodified line
464 .name = "default",463 .name = "default",
465 .type = AVMEDIA_TYPE_VIDEO,464 .type = AVMEDIA_TYPE_VIDEO,
466 },465 },
467 { NULL }
468};466};
469 467
470const AVFilter ff_vf_deband = {468const AVFilter ff_vf_deband = {
@@ -474,8 +472,8 @@ const AVFilter ff_vf_deband = { · 3 unmodified lines
474 .priv_class = &deband_class,472 .priv_class = &deband_class,
475 .uninit = uninit,473 .uninit = uninit,
476 .query_formats = query_formats,474 .query_formats = query_formats,
477 .inputs = avfilter_vf_deband_inputs,475 FILTER_INPUTS(avfilter_vf_deband_inputs),
478 .outputs = avfilter_vf_deband_outputs,476 FILTER_OUTPUTS(avfilter_vf_deband_outputs),
479 .flags = AVFILTER_FLAG_SUPPORT_TIMELINE_GENERIC | AVFILTER_FLAG_SLICE_THREADS,477 .flags = AVFILTER_FLAG_SUPPORT_TIMELINE_GENERIC | AVFILTER_FLAG_SLICE_THREADS,
480 .process_command = process_command,478 .process_command = process_command,
481};479};
libavfilter/vf_deblock.c+2−4
@@ -398,7 +398,6 @@ static const AVFilterPad inputs[] = { · 397 unmodified lines
398 .type = AVMEDIA_TYPE_VIDEO,398 .type = AVMEDIA_TYPE_VIDEO,
399 .filter_frame = filter_frame,399 .filter_frame = filter_frame,
400 },400 },
401 { NULL }
402};401};
403 402
404static const AVFilterPad outputs[] = {403static const AVFilterPad outputs[] = {
@@ -407,7 +406,6 @@ static const AVFilterPad outputs[] = { · 2 unmodified lines
407 .type = AVMEDIA_TYPE_VIDEO,406 .type = AVMEDIA_TYPE_VIDEO,
408 .config_props = config_output,407 .config_props = config_output,
409 },408 },
410 { NULL }
411};409};
412 410
413AVFILTER_DEFINE_CLASS(deblock);411AVFILTER_DEFINE_CLASS(deblock);
@@ -418,8 +416,8 @@ const AVFilter ff_vf_deblock = { · 4 unmodified lines
418 .priv_size = sizeof(DeblockContext),416 .priv_size = sizeof(DeblockContext),
419 .priv_class = &deblock_class,417 .priv_class = &deblock_class,
420 .query_formats = query_formats,418 .query_formats = query_formats,
421 .inputs = inputs,419 FILTER_INPUTS(inputs),
422 .outputs = outputs,420 FILTER_OUTPUTS(outputs),
423 .flags = AVFILTER_FLAG_SUPPORT_TIMELINE_GENERIC,421 .flags = AVFILTER_FLAG_SUPPORT_TIMELINE_GENERIC,
424 .process_command = process_command,422 .process_command = process_command,
425};423};
libavfilter/vf_decimate.c+1−2
@@ -428,7 +428,6 @@ static const AVFilterPad decimate_outputs[] = { · 427 unmodified lines
428 .type = AVMEDIA_TYPE_VIDEO,428 .type = AVMEDIA_TYPE_VIDEO,
429 .config_props = config_output,429 .config_props = config_output,
430 },430 },
431 { NULL }
432};431};
433 432
434const AVFilter ff_vf_decimate = {433const AVFilter ff_vf_decimate = {
@@ -439,7 +438,7 @@ const AVFilter ff_vf_decimate = { · 4 unmodified lines
439 .uninit = decimate_uninit,438 .uninit = decimate_uninit,
440 .priv_size = sizeof(DecimateContext),439 .priv_size = sizeof(DecimateContext),
441 .query_formats = query_formats,440 .query_formats = query_formats,
442 .outputs = decimate_outputs,441 FILTER_OUTPUTS(decimate_outputs),
443 .priv_class = &decimate_class,442 .priv_class = &decimate_class,
444 .flags = AVFILTER_FLAG_DYNAMIC_INPUTS,443 .flags = AVFILTER_FLAG_DYNAMIC_INPUTS,
445};444};
libavfilter/vf_dedot.c+2−4
@@ -384,7 +384,6 @@ static const AVFilterPad inputs[] = { · 383 unmodified lines
384 .name = "default",384 .name = "default",
385 .type = AVMEDIA_TYPE_VIDEO,385 .type = AVMEDIA_TYPE_VIDEO,
386 },386 },
387 { NULL }
388};387};
389 388
390static const AVFilterPad outputs[] = {389static const AVFilterPad outputs[] = {
@@ -393,7 +392,6 @@ static const AVFilterPad outputs[] = { · 2 unmodified lines
393 .type = AVMEDIA_TYPE_VIDEO,392 .type = AVMEDIA_TYPE_VIDEO,
394 .config_props = config_output,393 .config_props = config_output,
395 },394 },
396 { NULL }
397};395};
398 396
399AVFILTER_DEFINE_CLASS(dedot);397AVFILTER_DEFINE_CLASS(dedot);
@@ -406,7 +404,7 @@ const AVFilter ff_vf_dedot = { · 6 unmodified lines
406 .query_formats = query_formats,404 .query_formats = query_formats,
407 .activate = activate,405 .activate = activate,
408 .uninit = uninit,406 .uninit = uninit,
409 .inputs = inputs,407 FILTER_INPUTS(inputs),
410 .outputs = outputs,408 FILTER_OUTPUTS(outputs),
411 .flags = AVFILTER_FLAG_SUPPORT_TIMELINE_INTERNAL | AVFILTER_FLAG_SLICE_THREADS,409 .flags = AVFILTER_FLAG_SUPPORT_TIMELINE_INTERNAL | AVFILTER_FLAG_SLICE_THREADS,
412};410};
libavfilter/vf_deflicker.c+2−4
@@ -451,7 +451,6 @@ static const AVFilterPad inputs[] = { · 450 unmodified lines
451 .filter_frame = filter_frame,451 .filter_frame = filter_frame,
452 .config_props = config_input,452 .config_props = config_input,
453 },453 },
454 { NULL }
455};454};
456 455
457static const AVFilterPad outputs[] = {456static const AVFilterPad outputs[] = {
@@ -460,7 +459,6 @@ static const AVFilterPad outputs[] = { · 2 unmodified lines
460 .type = AVMEDIA_TYPE_VIDEO,459 .type = AVMEDIA_TYPE_VIDEO,
461 .request_frame = request_frame,460 .request_frame = request_frame,
462 },461 },
463 { NULL }
464};462};
465 463
466const AVFilter ff_vf_deflicker = {464const AVFilter ff_vf_deflicker = {
@@ -470,6 +468,6 @@ const AVFilter ff_vf_deflicker = { · 3 unmodified lines
470 .priv_class = &deflicker_class,468 .priv_class = &deflicker_class,
471 .uninit = uninit,469 .uninit = uninit,
472 .query_formats = query_formats,470 .query_formats = query_formats,
473 .inputs = inputs,471 FILTER_INPUTS(inputs),
474 .outputs = outputs,472 FILTER_OUTPUTS(outputs),
475};473};
libavfilter/vf_deinterlace_qsv.c+2−4
@@ -576,7 +576,6 @@ static const AVFilterPad qsvdeint_inputs[] = { · 575 unmodified lines
576 .type = AVMEDIA_TYPE_VIDEO,576 .type = AVMEDIA_TYPE_VIDEO,
577 .filter_frame = qsvdeint_filter_frame,577 .filter_frame = qsvdeint_filter_frame,
578 },578 },
579 { NULL }
580};579};
581 580
582static const AVFilterPad qsvdeint_outputs[] = {581static const AVFilterPad qsvdeint_outputs[] = {
@@ -586,7 +585,6 @@ static const AVFilterPad qsvdeint_outputs[] = { · 3 unmodified lines
586 .config_props = qsvdeint_config_props,585 .config_props = qsvdeint_config_props,
587 .request_frame = qsvdeint_request_frame,586 .request_frame = qsvdeint_request_frame,
588 },587 },
589 { NULL }
590};588};
591 589
592const AVFilter ff_vf_deinterlace_qsv = {590const AVFilter ff_vf_deinterlace_qsv = {
@@ -599,8 +597,8 @@ const AVFilter ff_vf_deinterlace_qsv = { · 6 unmodified lines
599 .priv_size = sizeof(QSVDeintContext),597 .priv_size = sizeof(QSVDeintContext),
600 .priv_class = &qsvdeint_class,598 .priv_class = &qsvdeint_class,
601 599
602 .inputs = qsvdeint_inputs,600 FILTER_INPUTS(qsvdeint_inputs),
603 .outputs = qsvdeint_outputs,601 FILTER_OUTPUTS(qsvdeint_outputs),
604 602
605 .flags_internal = FF_FILTER_FLAG_HWFRAME_AWARE,603 .flags_internal = FF_FILTER_FLAG_HWFRAME_AWARE,
606};604};
libavfilter/vf_deinterlace_vaapi.c+2−4
@@ -369,7 +369,6 @@ static const AVFilterPad deint_vaapi_inputs[] = { · 368 unmodified lines
369 .filter_frame = &deint_vaapi_filter_frame,369 .filter_frame = &deint_vaapi_filter_frame,
370 .config_props = &ff_vaapi_vpp_config_input,370 .config_props = &ff_vaapi_vpp_config_input,
371 },371 },
372 { NULL }
373};372};
374 373
375static const AVFilterPad deint_vaapi_outputs[] = {374static const AVFilterPad deint_vaapi_outputs[] = {
@@ -378,7 +377,6 @@ static const AVFilterPad deint_vaapi_outputs[] = { · 2 unmodified lines
378 .type = AVMEDIA_TYPE_VIDEO,377 .type = AVMEDIA_TYPE_VIDEO,
379 .config_props = &deint_vaapi_config_output,378 .config_props = &deint_vaapi_config_output,
380 },379 },
381 { NULL }
382};380};
383 381
384const AVFilter ff_vf_deinterlace_vaapi = {382const AVFilter ff_vf_deinterlace_vaapi = {
@@ -388,8 +386,8 @@ const AVFilter ff_vf_deinterlace_vaapi = { · 3 unmodified lines
388 .init = &deint_vaapi_init,386 .init = &deint_vaapi_init,
389 .uninit = &ff_vaapi_vpp_ctx_uninit,387 .uninit = &ff_vaapi_vpp_ctx_uninit,
390 .query_formats = &ff_vaapi_vpp_query_formats,388 .query_formats = &ff_vaapi_vpp_query_formats,
391 .inputs = deint_vaapi_inputs,389 FILTER_INPUTS(deint_vaapi_inputs),
392 .outputs = deint_vaapi_outputs,390 FILTER_OUTPUTS(deint_vaapi_outputs),
393 .priv_class = &deint_vaapi_class,391 .priv_class = &deint_vaapi_class,
394 .flags_internal = FF_FILTER_FLAG_HWFRAME_AWARE,392 .flags_internal = FF_FILTER_FLAG_HWFRAME_AWARE,
395};393};
libavfilter/vf_dejudder.c+2−4
@@ -163,7 +163,6 @@ static const AVFilterPad dejudder_inputs[] = { · 162 unmodified lines
163 .type = AVMEDIA_TYPE_VIDEO,163 .type = AVMEDIA_TYPE_VIDEO,
164 .filter_frame = filter_frame,164 .filter_frame = filter_frame,
165 },165 },
166 { NULL }
167};166};
168 167
169static const AVFilterPad dejudder_outputs[] = {168static const AVFilterPad dejudder_outputs[] = {
@@ -172,7 +171,6 @@ static const AVFilterPad dejudder_outputs[] = { · 2 unmodified lines
172 .type = AVMEDIA_TYPE_VIDEO,171 .type = AVMEDIA_TYPE_VIDEO,
173 .config_props = config_out_props,172 .config_props = config_out_props,
174 },173 },
175 { NULL }
176};174};
177 175
178const AVFilter ff_vf_dejudder = {176const AVFilter ff_vf_dejudder = {
@@ -180,8 +178,8 @@ const AVFilter ff_vf_dejudder = { · 1 unmodified line
180 .description = NULL_IF_CONFIG_SMALL("Remove judder produced by pullup."),178 .description = NULL_IF_CONFIG_SMALL("Remove judder produced by pullup."),
181 .priv_size = sizeof(DejudderContext),179 .priv_size = sizeof(DejudderContext),
182 .priv_class = &dejudder_class,180 .priv_class = &dejudder_class,
183 .inputs = dejudder_inputs,181 FILTER_INPUTS(dejudder_inputs),
184 .outputs = dejudder_outputs,182 FILTER_OUTPUTS(dejudder_outputs),
185 .init = dejudder_init,183 .init = dejudder_init,
186 .uninit = dejudder_uninit,184 .uninit = dejudder_uninit,
187};185};
libavfilter/vf_delogo.c+2−4
@@ -384,7 +384,6 @@ static const AVFilterPad avfilter_vf_delogo_inputs[] = { · 383 unmodified lines
384 .filter_frame = filter_frame,384 .filter_frame = filter_frame,
385 .config_props = config_input,385 .config_props = config_input,
386 },386 },
387 { NULL }
388};387};
389 388
390static const AVFilterPad avfilter_vf_delogo_outputs[] = {389static const AVFilterPad avfilter_vf_delogo_outputs[] = {
@@ -392,7 +391,6 @@ static const AVFilterPad avfilter_vf_delogo_outputs[] = { · 1 unmodified line
392 .name = "default",391 .name = "default",
393 .type = AVMEDIA_TYPE_VIDEO,392 .type = AVMEDIA_TYPE_VIDEO,
394 },393 },
395 { NULL }
396};394};
397 395
398const AVFilter ff_vf_delogo = {396const AVFilter ff_vf_delogo = {
@@ -403,7 +401,7 @@ const AVFilter ff_vf_delogo = { · 4 unmodified lines
403 .init = init,401 .init = init,
404 .uninit = uninit,402 .uninit = uninit,
405 .query_formats = query_formats,403 .query_formats = query_formats,
406 .inputs = avfilter_vf_delogo_inputs,404 FILTER_INPUTS(avfilter_vf_delogo_inputs),
407 .outputs = avfilter_vf_delogo_outputs,405 FILTER_OUTPUTS(avfilter_vf_delogo_outputs),
408 .flags = AVFILTER_FLAG_SUPPORT_TIMELINE_GENERIC,406 .flags = AVFILTER_FLAG_SUPPORT_TIMELINE_GENERIC,
409};407};
libavfilter/vf_derain.c+2−4
@@ -112,7 +112,6 @@ static const AVFilterPad derain_inputs[] = { · 111 unmodified lines
112 .type = AVMEDIA_TYPE_VIDEO,112 .type = AVMEDIA_TYPE_VIDEO,
113 .filter_frame = filter_frame,113 .filter_frame = filter_frame,
114 },114 },
115 { NULL }
116};115};
117 116
118static const AVFilterPad derain_outputs[] = {117static const AVFilterPad derain_outputs[] = {
@@ -120,7 +119,6 @@ static const AVFilterPad derain_outputs[] = { · 1 unmodified line
120 .name = "default",119 .name = "default",
121 .type = AVMEDIA_TYPE_VIDEO,120 .type = AVMEDIA_TYPE_VIDEO,
122 },121 },
123 { NULL }
124};122};
125 123
126const AVFilter ff_vf_derain = {124const AVFilter ff_vf_derain = {
@@ -130,8 +128,8 @@ const AVFilter ff_vf_derain = { · 3 unmodified lines
130 .init = init,128 .init = init,
131 .uninit = uninit,129 .uninit = uninit,
132 .query_formats = query_formats,130 .query_formats = query_formats,
133 .inputs = derain_inputs,131 FILTER_INPUTS(derain_inputs),
134 .outputs = derain_outputs,132 FILTER_OUTPUTS(derain_outputs),
135 .priv_class = &derain_class,133 .priv_class = &derain_class,
136 .flags = AVFILTER_FLAG_SUPPORT_TIMELINE_GENERIC,134 .flags = AVFILTER_FLAG_SUPPORT_TIMELINE_GENERIC,
137};135};
libavfilter/vf_deshake.c+2−4
@@ -537,7 +537,6 @@ static const AVFilterPad deshake_inputs[] = { · 536 unmodified lines
537 .filter_frame = filter_frame,537 .filter_frame = filter_frame,
538 .config_props = config_props,538 .config_props = config_props,
539 },539 },
540 { NULL }
541};540};
542 541
543static const AVFilterPad deshake_outputs[] = {542static const AVFilterPad deshake_outputs[] = {
@@ -545,7 +544,6 @@ static const AVFilterPad deshake_outputs[] = { · 1 unmodified line
545 .name = "default",544 .name = "default",
546 .type = AVMEDIA_TYPE_VIDEO,545 .type = AVMEDIA_TYPE_VIDEO,
547 },546 },
548 { NULL }
549};547};
550 548
551const AVFilter ff_vf_deshake = {549const AVFilter ff_vf_deshake = {
@@ -555,7 +553,7 @@ const AVFilter ff_vf_deshake = { · 3 unmodified lines
555 .init = init,553 .init = init,
556 .uninit = uninit,554 .uninit = uninit,
557 .query_formats = query_formats,555 .query_formats = query_formats,
558 .inputs = deshake_inputs,556 FILTER_INPUTS(deshake_inputs),
559 .outputs = deshake_outputs,557 FILTER_OUTPUTS(deshake_outputs),
560 .priv_class = &deshake_class,558 .priv_class = &deshake_class,
561};559};
libavfilter/vf_deshake_opencl.c+2−4
@@ -2141,7 +2141,6 @@ static const AVFilterPad deshake_opencl_inputs[] = { · 2140 unmodified lines
2141 .type = AVMEDIA_TYPE_VIDEO,2141 .type = AVMEDIA_TYPE_VIDEO,
2142 .config_props = &ff_opencl_filter_config_input,2142 .config_props = &ff_opencl_filter_config_input,
2143 },2143 },
2144 { NULL }
2145};2144};
2146 2145
2147static const AVFilterPad deshake_opencl_outputs[] = {2146static const AVFilterPad deshake_opencl_outputs[] = {
@@ -2150,7 +2149,6 @@ static const AVFilterPad deshake_opencl_outputs[] = { · 2 unmodified lines
2150 .type = AVMEDIA_TYPE_VIDEO,2149 .type = AVMEDIA_TYPE_VIDEO,
2151 .config_props = &ff_opencl_filter_config_output,2150 .config_props = &ff_opencl_filter_config_output,
2152 },2151 },
2153 { NULL }
2154};2152};
2155 2153
2156#define OFFSET(x) offsetof(DeshakeOpenCLContext, x)2154#define OFFSET(x) offsetof(DeshakeOpenCLContext, x)
@@ -2196,7 +2194,7 @@ const AVFilter ff_vf_deshake_opencl = { · 39 unmodified lines
2196 .uninit = &deshake_opencl_uninit,2194 .uninit = &deshake_opencl_uninit,
2197 .query_formats = &ff_opencl_filter_query_formats,2195 .query_formats = &ff_opencl_filter_query_formats,
2198 .activate = activate,2196 .activate = activate,
2199 .inputs = deshake_opencl_inputs,2197 FILTER_INPUTS(deshake_opencl_inputs),
2200 .outputs = deshake_opencl_outputs,2198 FILTER_OUTPUTS(deshake_opencl_outputs),
2201 .flags_internal = FF_FILTER_FLAG_HWFRAME_AWARE2199 .flags_internal = FF_FILTER_FLAG_HWFRAME_AWARE
2202};2200};
libavfilter/vf_despill.c+2−4
@@ -134,7 +134,6 @@ static const AVFilterPad despill_inputs[] = { · 133 unmodified lines
134 .flags = AVFILTERPAD_FLAG_NEEDS_WRITABLE,134 .flags = AVFILTERPAD_FLAG_NEEDS_WRITABLE,
135 .filter_frame = filter_frame,135 .filter_frame = filter_frame,
136 },136 },
137 { NULL }
138};137};
139 138
140static const AVFilterPad despill_outputs[] = {139static const AVFilterPad despill_outputs[] = {
@@ -143,7 +142,6 @@ static const AVFilterPad despill_outputs[] = { · 2 unmodified lines
143 .type = AVMEDIA_TYPE_VIDEO,142 .type = AVMEDIA_TYPE_VIDEO,
144 .config_props = config_output,143 .config_props = config_output,
145 },144 },
146 { NULL }
147};145};
148 146
149#define OFFSET(x) offsetof(DespillContext, x)147#define OFFSET(x) offsetof(DespillContext, x)
@@ -171,8 +169,8 @@ const AVFilter ff_vf_despill = { · 21 unmodified lines
171 .priv_size = sizeof(DespillContext),169 .priv_size = sizeof(DespillContext),
172 .priv_class = &despill_class,170 .priv_class = &despill_class,
173 .query_formats = query_formats,171 .query_formats = query_formats,
174 .inputs = despill_inputs,172 FILTER_INPUTS(despill_inputs),
175 .outputs = despill_outputs,173 FILTER_OUTPUTS(despill_outputs),
176 .process_command = ff_filter_process_command,174 .process_command = ff_filter_process_command,
177 .flags = AVFILTER_FLAG_SUPPORT_TIMELINE_GENERIC | AVFILTER_FLAG_SLICE_THREADS,175 .flags = AVFILTER_FLAG_SUPPORT_TIMELINE_GENERIC | AVFILTER_FLAG_SLICE_THREADS,
178};176};
libavfilter/vf_detelecine.c+2−4
@@ -360,7 +360,6 @@ static const AVFilterPad detelecine_inputs[] = { · 359 unmodified lines
360 .filter_frame = filter_frame,360 .filter_frame = filter_frame,
361 .config_props = config_input,361 .config_props = config_input,
362 },362 },
363 { NULL }
364};363};
365 364
366static const AVFilterPad detelecine_outputs[] = {365static const AVFilterPad detelecine_outputs[] = {
@@ -369,7 +368,6 @@ static const AVFilterPad detelecine_outputs[] = { · 2 unmodified lines
369 .type = AVMEDIA_TYPE_VIDEO,368 .type = AVMEDIA_TYPE_VIDEO,
370 .config_props = config_output,369 .config_props = config_output,
371 },370 },
372 { NULL }
373};371};
374 372
375const AVFilter ff_vf_detelecine = {373const AVFilter ff_vf_detelecine = {
@@ -380,6 +378,6 @@ const AVFilter ff_vf_detelecine = { · 4 unmodified lines
380 .init = init,378 .init = init,
381 .uninit = uninit,379 .uninit = uninit,
382 .query_formats = query_formats,380 .query_formats = query_formats,
383 .inputs = detelecine_inputs,381 FILTER_INPUTS(detelecine_inputs),
384 .outputs = detelecine_outputs,382 FILTER_OUTPUTS(detelecine_outputs),
385};383};
libavfilter/vf_displace.c+2−4
@@ -388,7 +388,6 @@ static const AVFilterPad displace_inputs[] = { · 387 unmodified lines
388 .name = "ymap",388 .name = "ymap",
389 .type = AVMEDIA_TYPE_VIDEO,389 .type = AVMEDIA_TYPE_VIDEO,
390 },390 },
391 { NULL }
392};391};
393 392
394static const AVFilterPad displace_outputs[] = {393static const AVFilterPad displace_outputs[] = {
@@ -397,7 +396,6 @@ static const AVFilterPad displace_outputs[] = { · 2 unmodified lines
397 .type = AVMEDIA_TYPE_VIDEO,396 .type = AVMEDIA_TYPE_VIDEO,
398 .config_props = config_output,397 .config_props = config_output,
399 },398 },
400 { NULL }
401};399};
402 400
403const AVFilter ff_vf_displace = {401const AVFilter ff_vf_displace = {
@@ -407,8 +405,8 @@ const AVFilter ff_vf_displace = { · 3 unmodified lines
407 .uninit = uninit,405 .uninit = uninit,
408 .query_formats = query_formats,406 .query_formats = query_formats,
409 .activate = activate,407 .activate = activate,
410 .inputs = displace_inputs,408 FILTER_INPUTS(displace_inputs),
411 .outputs = displace_outputs,409 FILTER_OUTPUTS(displace_outputs),
412 .priv_class = &displace_class,410 .priv_class = &displace_class,
413 .flags = AVFILTER_FLAG_SUPPORT_TIMELINE_INTERNAL,411 .flags = AVFILTER_FLAG_SUPPORT_TIMELINE_INTERNAL,
414};412};
libavfilter/vf_dnn_classify.c+2−4
@@ -308,7 +308,6 @@ static const AVFilterPad dnn_classify_inputs[] = { · 307 unmodified lines
308 .name = "default",308 .name = "default",
309 .type = AVMEDIA_TYPE_VIDEO,309 .type = AVMEDIA_TYPE_VIDEO,
310 },310 },
311 { NULL }
312};311};
313 312
314static const AVFilterPad dnn_classify_outputs[] = {313static const AVFilterPad dnn_classify_outputs[] = {
@@ -316,7 +315,6 @@ static const AVFilterPad dnn_classify_outputs[] = { · 1 unmodified line
316 .name = "default",315 .name = "default",
317 .type = AVMEDIA_TYPE_VIDEO,316 .type = AVMEDIA_TYPE_VIDEO,
318 },317 },
319 { NULL }
320};318};
321 319
322const AVFilter ff_vf_dnn_classify = {320const AVFilter ff_vf_dnn_classify = {
@@ -326,8 +324,8 @@ const AVFilter ff_vf_dnn_classify = { · 3 unmodified lines
326 .init = dnn_classify_init,324 .init = dnn_classify_init,
327 .uninit = dnn_classify_uninit,325 .uninit = dnn_classify_uninit,
328 .query_formats = dnn_classify_query_formats,326 .query_formats = dnn_classify_query_formats,
329 .inputs = dnn_classify_inputs,327 FILTER_INPUTS(dnn_classify_inputs),
330 .outputs = dnn_classify_outputs,328 FILTER_OUTPUTS(dnn_classify_outputs),
331 .priv_class = &dnn_classify_class,329 .priv_class = &dnn_classify_class,
332 .activate = dnn_classify_activate,330 .activate = dnn_classify_activate,
333};331};
libavfilter/vf_dnn_detect.c+2−4
@@ -518,7 +518,6 @@ static const AVFilterPad dnn_detect_inputs[] = { · 517 unmodified lines
518 .name = "default",518 .name = "default",
519 .type = AVMEDIA_TYPE_VIDEO,519 .type = AVMEDIA_TYPE_VIDEO,
520 },520 },
521 { NULL }
522};521};
523 522
524static const AVFilterPad dnn_detect_outputs[] = {523static const AVFilterPad dnn_detect_outputs[] = {
@@ -526,7 +525,6 @@ static const AVFilterPad dnn_detect_outputs[] = { · 1 unmodified line
526 .name = "default",525 .name = "default",
527 .type = AVMEDIA_TYPE_VIDEO,526 .type = AVMEDIA_TYPE_VIDEO,
528 },527 },
529 { NULL }
530};528};
531 529
532const AVFilter ff_vf_dnn_detect = {530const AVFilter ff_vf_dnn_detect = {
@@ -536,8 +534,8 @@ const AVFilter ff_vf_dnn_detect = { · 3 unmodified lines
536 .init = dnn_detect_init,534 .init = dnn_detect_init,
537 .uninit = dnn_detect_uninit,535 .uninit = dnn_detect_uninit,
538 .query_formats = dnn_detect_query_formats,536 .query_formats = dnn_detect_query_formats,
539 .inputs = dnn_detect_inputs,537 FILTER_INPUTS(dnn_detect_inputs),
540 .outputs = dnn_detect_outputs,538 FILTER_OUTPUTS(dnn_detect_outputs),
541 .priv_class = &dnn_detect_class,539 .priv_class = &dnn_detect_class,
542 .activate = dnn_detect_activate,540 .activate = dnn_detect_activate,
543};541};
libavfilter/vf_dnn_processing.c+2−4
@@ -434,7 +434,6 @@ static const AVFilterPad dnn_processing_inputs[] = { · 433 unmodified lines
434 .type = AVMEDIA_TYPE_VIDEO,434 .type = AVMEDIA_TYPE_VIDEO,
435 .config_props = config_input,435 .config_props = config_input,
436 },436 },
437 { NULL }
438};437};
439 438
440static const AVFilterPad dnn_processing_outputs[] = {439static const AVFilterPad dnn_processing_outputs[] = {
@@ -443,7 +442,6 @@ static const AVFilterPad dnn_processing_outputs[] = { · 2 unmodified lines
443 .type = AVMEDIA_TYPE_VIDEO,442 .type = AVMEDIA_TYPE_VIDEO,
444 .config_props = config_output,443 .config_props = config_output,
445 },444 },
446 { NULL }
447};445};
448 446
449const AVFilter ff_vf_dnn_processing = {447const AVFilter ff_vf_dnn_processing = {
@@ -453,8 +451,8 @@ const AVFilter ff_vf_dnn_processing = { · 3 unmodified lines
453 .init = init,451 .init = init,
454 .uninit = uninit,452 .uninit = uninit,
455 .query_formats = query_formats,453 .query_formats = query_formats,
456 .inputs = dnn_processing_inputs,454 FILTER_INPUTS(dnn_processing_inputs),
457 .outputs = dnn_processing_outputs,455 FILTER_OUTPUTS(dnn_processing_outputs),
458 .priv_class = &dnn_processing_class,456 .priv_class = &dnn_processing_class,
459 .activate = activate,457 .activate = activate,
460};458};
libavfilter/vf_drawbox.c+4−8
@@ -388,7 +388,6 @@ static const AVFilterPad drawbox_inputs[] = { · 387 unmodified lines
388 .config_props = config_input,388 .config_props = config_input,
389 .filter_frame = filter_frame,389 .filter_frame = filter_frame,
390 },390 },
391 { NULL }
392};391};
393 392
394static const AVFilterPad drawbox_outputs[] = {393static const AVFilterPad drawbox_outputs[] = {
@@ -396,7 +395,6 @@ static const AVFilterPad drawbox_outputs[] = { · 1 unmodified line
396 .name = "default",395 .name = "default",
397 .type = AVMEDIA_TYPE_VIDEO,396 .type = AVMEDIA_TYPE_VIDEO,
398 },397 },
399 { NULL }
400};398};
401 399
402const AVFilter ff_vf_drawbox = {400const AVFilter ff_vf_drawbox = {
@@ -406,8 +404,8 @@ const AVFilter ff_vf_drawbox = { · 3 unmodified lines
406 .priv_class = &drawbox_class,404 .priv_class = &drawbox_class,
407 .init = init,405 .init = init,
408 .query_formats = query_formats,406 .query_formats = query_formats,
409 .inputs = drawbox_inputs,407 FILTER_INPUTS(drawbox_inputs),
410 .outputs = drawbox_outputs,408 FILTER_OUTPUTS(drawbox_outputs),
411 .process_command = process_command,409 .process_command = process_command,
412 .flags = AVFILTER_FLAG_SUPPORT_TIMELINE_GENERIC,410 .flags = AVFILTER_FLAG_SUPPORT_TIMELINE_GENERIC,
413};411};
@@ -472,7 +470,6 @@ static const AVFilterPad drawgrid_inputs[] = { · 58 unmodified lines
472 .config_props = config_input,470 .config_props = config_input,
473 .filter_frame = drawgrid_filter_frame,471 .filter_frame = drawgrid_filter_frame,
474 },472 },
475 { NULL }
476};473};
477 474
478static const AVFilterPad drawgrid_outputs[] = {475static const AVFilterPad drawgrid_outputs[] = {
@@ -480,7 +477,6 @@ static const AVFilterPad drawgrid_outputs[] = { · 1 unmodified line
480 .name = "default",477 .name = "default",
481 .type = AVMEDIA_TYPE_VIDEO,478 .type = AVMEDIA_TYPE_VIDEO,
482 },479 },
483 { NULL }
484};480};
485 481
486const AVFilter ff_vf_drawgrid = {482const AVFilter ff_vf_drawgrid = {
@@ -490,8 +486,8 @@ const AVFilter ff_vf_drawgrid = { · 3 unmodified lines
490 .priv_class = &drawgrid_class,486 .priv_class = &drawgrid_class,
491 .init = init,487 .init = init,
492 .query_formats = query_formats,488 .query_formats = query_formats,
493 .inputs = drawgrid_inputs,489 FILTER_INPUTS(drawgrid_inputs),
494 .outputs = drawgrid_outputs,490 FILTER_OUTPUTS(drawgrid_outputs),
495 .flags = AVFILTER_FLAG_SUPPORT_TIMELINE_GENERIC,491 .flags = AVFILTER_FLAG_SUPPORT_TIMELINE_GENERIC,
496 .process_command = process_command,492 .process_command = process_command,
497};493};
libavfilter/vf_drawtext.c+2−4
@@ -1619,7 +1619,6 @@ static const AVFilterPad avfilter_vf_drawtext_inputs[] = { · 1618 unmodified lines
1619 .filter_frame = filter_frame,1619 .filter_frame = filter_frame,
1620 .config_props = config_input,1620 .config_props = config_input,
1621 },1621 },
1622 { NULL }
1623};1622};
1624 1623
1625static const AVFilterPad avfilter_vf_drawtext_outputs[] = {1624static const AVFilterPad avfilter_vf_drawtext_outputs[] = {
@@ -1627,7 +1626,6 @@ static const AVFilterPad avfilter_vf_drawtext_outputs[] = { · 1 unmodified line
1627 .name = "default",1626 .name = "default",
1628 .type = AVMEDIA_TYPE_VIDEO,1627 .type = AVMEDIA_TYPE_VIDEO,
1629 },1628 },
1630 { NULL }
1631};1629};
1632 1630
1633const AVFilter ff_vf_drawtext = {1631const AVFilter ff_vf_drawtext = {
@@ -1638,8 +1636,8 @@ const AVFilter ff_vf_drawtext = { · 4 unmodified lines
1638 .init = init,1636 .init = init,
1639 .uninit = uninit,1637 .uninit = uninit,
1640 .query_formats = query_formats,1638 .query_formats = query_formats,
1641 .inputs = avfilter_vf_drawtext_inputs,1639 FILTER_INPUTS(avfilter_vf_drawtext_inputs),
1642 .outputs = avfilter_vf_drawtext_outputs,1640 FILTER_OUTPUTS(avfilter_vf_drawtext_outputs),
1643 .process_command = command,1641 .process_command = command,
1644 .flags = AVFILTER_FLAG_SUPPORT_TIMELINE_GENERIC,1642 .flags = AVFILTER_FLAG_SUPPORT_TIMELINE_GENERIC,
1645};1643};
libavfilter/vf_edgedetect.c+2−4
@@ -416,7 +416,6 @@ static const AVFilterPad edgedetect_inputs[] = { · 415 unmodified lines
416 .config_props = config_props,416 .config_props = config_props,
417 .filter_frame = filter_frame,417 .filter_frame = filter_frame,
418 },418 },
419 { NULL }
420};419};
421 420
422static const AVFilterPad edgedetect_outputs[] = {421static const AVFilterPad edgedetect_outputs[] = {
@@ -424,7 +423,6 @@ static const AVFilterPad edgedetect_outputs[] = { · 1 unmodified line
424 .name = "default",423 .name = "default",
425 .type = AVMEDIA_TYPE_VIDEO,424 .type = AVMEDIA_TYPE_VIDEO,
426 },425 },
427 { NULL }
428};426};
429 427
430const AVFilter ff_vf_edgedetect = {428const AVFilter ff_vf_edgedetect = {
@@ -434,8 +432,8 @@ const AVFilter ff_vf_edgedetect = { · 3 unmodified lines
434 .init = init,432 .init = init,
435 .uninit = uninit,433 .uninit = uninit,
436 .query_formats = query_formats,434 .query_formats = query_formats,
437 .inputs = edgedetect_inputs,435 FILTER_INPUTS(edgedetect_inputs),
438 .outputs = edgedetect_outputs,436 FILTER_OUTPUTS(edgedetect_outputs),
439 .priv_class = &edgedetect_class,437 .priv_class = &edgedetect_class,
440 .flags = AVFILTER_FLAG_SUPPORT_TIMELINE_GENERIC,438 .flags = AVFILTER_FLAG_SUPPORT_TIMELINE_GENERIC,
441};439};
libavfilter/vf_elbg.c+2−4
@@ -239,7 +239,6 @@ static const AVFilterPad elbg_inputs[] = { · 238 unmodified lines
239 .config_props = config_input,239 .config_props = config_input,
240 .filter_frame = filter_frame,240 .filter_frame = filter_frame,
241 },241 },
242 { NULL }
243};242};
244 243
245static const AVFilterPad elbg_outputs[] = {244static const AVFilterPad elbg_outputs[] = {
@@ -247,7 +246,6 @@ static const AVFilterPad elbg_outputs[] = { · 1 unmodified line
247 .name = "default",246 .name = "default",
248 .type = AVMEDIA_TYPE_VIDEO,247 .type = AVMEDIA_TYPE_VIDEO,
249 },248 },
250 { NULL }
251};249};
252 250
253const AVFilter ff_vf_elbg = {251const AVFilter ff_vf_elbg = {
@@ -258,6 +256,6 @@ const AVFilter ff_vf_elbg = { · 4 unmodified lines
258 .query_formats = query_formats,256 .query_formats = query_formats,
259 .init = init,257 .init = init,
260 .uninit = uninit,258 .uninit = uninit,
261 .inputs = elbg_inputs,259 FILTER_INPUTS(elbg_inputs),
262 .outputs = elbg_outputs,260 FILTER_OUTPUTS(elbg_outputs),
263};261};
libavfilter/vf_entropy.c+2−4
@@ -179,7 +179,6 @@ static const AVFilterPad inputs[] = { · 178 unmodified lines
179 .filter_frame = filter_frame,179 .filter_frame = filter_frame,
180 .config_props = config_input,180 .config_props = config_input,
181 },181 },
182 { NULL }
183};182};
184 183
185static const AVFilterPad outputs[] = {184static const AVFilterPad outputs[] = {
@@ -187,7 +186,6 @@ static const AVFilterPad outputs[] = { · 1 unmodified line
187 .name = "default",186 .name = "default",
188 .type = AVMEDIA_TYPE_VIDEO,187 .type = AVMEDIA_TYPE_VIDEO,
189 },188 },
190 { NULL }
191};189};
192 190
193const AVFilter ff_vf_entropy = {191const AVFilter ff_vf_entropy = {
@@ -196,8 +194,8 @@ const AVFilter ff_vf_entropy = { · 2 unmodified lines
196 .priv_size = sizeof(EntropyContext),194 .priv_size = sizeof(EntropyContext),
197 .uninit = uninit,195 .uninit = uninit,
198 .query_formats = query_formats,196 .query_formats = query_formats,
199 .inputs = inputs,197 FILTER_INPUTS(inputs),
200 .outputs = outputs,198 FILTER_OUTPUTS(outputs),
201 .priv_class = &entropy_class,199 .priv_class = &entropy_class,
202 .flags = AVFILTER_FLAG_SUPPORT_TIMELINE_GENERIC,200 .flags = AVFILTER_FLAG_SUPPORT_TIMELINE_GENERIC,
203};201};
libavfilter/vf_epx.c+2−4
@@ -260,7 +260,6 @@ static const AVFilterPad inputs[] = { · 259 unmodified lines
260 .type = AVMEDIA_TYPE_VIDEO,260 .type = AVMEDIA_TYPE_VIDEO,
261 .filter_frame = filter_frame,261 .filter_frame = filter_frame,
262 },262 },
263 { NULL }
264};263};
265 264
266static const AVFilterPad outputs[] = {265static const AVFilterPad outputs[] = {
@@ -269,14 +268,13 @@ static const AVFilterPad outputs[] = { · 2 unmodified lines
269 .type = AVMEDIA_TYPE_VIDEO,268 .type = AVMEDIA_TYPE_VIDEO,
270 .config_props = config_output,269 .config_props = config_output,
271 },270 },
272 { NULL }
273};271};
274 272
275const AVFilter ff_vf_epx = {273const AVFilter ff_vf_epx = {
276 .name = "epx",274 .name = "epx",
277 .description = NULL_IF_CONFIG_SMALL("Scale the input using EPX algorithm."),275 .description = NULL_IF_CONFIG_SMALL("Scale the input using EPX algorithm."),
278 .inputs = inputs,276 FILTER_INPUTS(inputs),
279 .outputs = outputs,277 FILTER_OUTPUTS(outputs),
280 .query_formats = query_formats,278 .query_formats = query_formats,
281 .priv_size = sizeof(EPXContext),279 .priv_size = sizeof(EPXContext),
282 .priv_class = &epx_class,280 .priv_class = &epx_class,
libavfilter/vf_eq.c+2−4
@@ -335,7 +335,6 @@ static const AVFilterPad eq_inputs[] = { · 334 unmodified lines
335 .filter_frame = filter_frame,335 .filter_frame = filter_frame,
336 .config_props = config_props,336 .config_props = config_props,
337 },337 },
338 { NULL }
339};338};
340 339
341static const AVFilterPad eq_outputs[] = {340static const AVFilterPad eq_outputs[] = {
@@ -343,7 +342,6 @@ static const AVFilterPad eq_outputs[] = { · 1 unmodified line
343 .name = "default",342 .name = "default",
344 .type = AVMEDIA_TYPE_VIDEO,343 .type = AVMEDIA_TYPE_VIDEO,
345 },344 },
346 { NULL }
347};345};
348 346
349#define OFFSET(x) offsetof(EQContext, x)347#define OFFSET(x) offsetof(EQContext, x)
@@ -379,8 +377,8 @@ const AVFilter ff_vf_eq = { · 29 unmodified lines
379 .description = NULL_IF_CONFIG_SMALL("Adjust brightness, contrast, gamma, and saturation."),377 .description = NULL_IF_CONFIG_SMALL("Adjust brightness, contrast, gamma, and saturation."),
380 .priv_size = sizeof(EQContext),378 .priv_size = sizeof(EQContext),
381 .priv_class = &eq_class,379 .priv_class = &eq_class,
382 .inputs = eq_inputs,380 FILTER_INPUTS(eq_inputs),
383 .outputs = eq_outputs,381 FILTER_OUTPUTS(eq_outputs),
384 .process_command = process_command,382 .process_command = process_command,
385 .query_formats = query_formats,383 .query_formats = query_formats,
386 .init = initialize,384 .init = initialize,
libavfilter/vf_estdif.c+2−4
@@ -559,7 +559,6 @@ static const AVFilterPad estdif_inputs[] = { · 558 unmodified lines
559 .filter_frame = filter_frame,559 .filter_frame = filter_frame,
560 .config_props = config_input,560 .config_props = config_input,
561 },561 },
562 { NULL }
563};562};
564 563
565static const AVFilterPad estdif_outputs[] = {564static const AVFilterPad estdif_outputs[] = {
@@ -569,7 +568,6 @@ static const AVFilterPad estdif_outputs[] = { · 3 unmodified lines
569 .config_props = config_output,568 .config_props = config_output,
570 .request_frame = request_frame,569 .request_frame = request_frame,
571 },570 },
572 { NULL }
573};571};
574 572
575const AVFilter ff_vf_estdif = {573const AVFilter ff_vf_estdif = {
@@ -579,8 +577,8 @@ const AVFilter ff_vf_estdif = { · 3 unmodified lines
579 .priv_class = &estdif_class,577 .priv_class = &estdif_class,
580 .uninit = uninit,578 .uninit = uninit,
581 .query_formats = query_formats,579 .query_formats = query_formats,
582 .inputs = estdif_inputs,580 FILTER_INPUTS(estdif_inputs),
583 .outputs = estdif_outputs,581 FILTER_OUTPUTS(estdif_outputs),
584 .flags = AVFILTER_FLAG_SUPPORT_TIMELINE_INTERNAL | AVFILTER_FLAG_SLICE_THREADS,582 .flags = AVFILTER_FLAG_SUPPORT_TIMELINE_INTERNAL | AVFILTER_FLAG_SLICE_THREADS,
585 .process_command = ff_filter_process_command,583 .process_command = ff_filter_process_command,
586};584};
libavfilter/vf_exposure.c+2−4
@@ -103,7 +103,6 @@ static const AVFilterPad exposure_inputs[] = { · 102 unmodified lines
103 .filter_frame = filter_frame,103 .filter_frame = filter_frame,
104 .config_props = config_input,104 .config_props = config_input,
105 },105 },
106 { NULL }
107};106};
108 107
109static const AVFilterPad exposure_outputs[] = {108static const AVFilterPad exposure_outputs[] = {
@@ -111,7 +110,6 @@ static const AVFilterPad exposure_outputs[] = { · 1 unmodified line
111 .name = "default",110 .name = "default",
112 .type = AVMEDIA_TYPE_VIDEO,111 .type = AVMEDIA_TYPE_VIDEO,
113 },112 },
114 { NULL }
115};113};
116 114
117#define OFFSET(x) offsetof(ExposureContext, x)115#define OFFSET(x) offsetof(ExposureContext, x)
@@ -131,8 +129,8 @@ const AVFilter ff_vf_exposure = { · 13 unmodified lines
131 .priv_size = sizeof(ExposureContext),129 .priv_size = sizeof(ExposureContext),
132 .priv_class = &exposure_class,130 .priv_class = &exposure_class,
133 .query_formats = query_formats,131 .query_formats = query_formats,
134 .inputs = exposure_inputs,132 FILTER_INPUTS(exposure_inputs),
135 .outputs = exposure_outputs,133 FILTER_OUTPUTS(exposure_outputs),
136 .flags = AVFILTER_FLAG_SUPPORT_TIMELINE_GENERIC | AVFILTER_FLAG_SLICE_THREADS,134 .flags = AVFILTER_FLAG_SUPPORT_TIMELINE_GENERIC | AVFILTER_FLAG_SLICE_THREADS,
137 .process_command = ff_filter_process_command,135 .process_command = ff_filter_process_command,
138};136};
libavfilter/vf_extractplanes.c+2−3
@@ -376,7 +376,6 @@ static const AVFilterPad extractplanes_inputs[] = { · 375 unmodified lines
376 .filter_frame = filter_frame,376 .filter_frame = filter_frame,
377 .config_props = config_input,377 .config_props = config_input,
378 },378 },
379 { NULL }
380};379};
381 380
382const AVFilter ff_vf_extractplanes = {381const AVFilter ff_vf_extractplanes = {
@@ -387,7 +386,7 @@ const AVFilter ff_vf_extractplanes = { · 4 unmodified lines
387 .init = init,386 .init = init,
388 .uninit = uninit,387 .uninit = uninit,
389 .query_formats = query_formats,388 .query_formats = query_formats,
390 .inputs = extractplanes_inputs,389 FILTER_INPUTS(extractplanes_inputs),
391 .outputs = NULL,390 .outputs = NULL,
392 .flags = AVFILTER_FLAG_DYNAMIC_OUTPUTS,391 .flags = AVFILTER_FLAG_DYNAMIC_OUTPUTS,
393};392};
@@ -411,7 +410,7 @@ const AVFilter ff_vf_alphaextract = { · 17 unmodified lines
411 .init = init_alphaextract,410 .init = init_alphaextract,
412 .uninit = uninit,411 .uninit = uninit,
413 .query_formats = query_formats,412 .query_formats = query_formats,
414 .inputs = extractplanes_inputs,413 FILTER_INPUTS(extractplanes_inputs),
415 .outputs = NULL,414 .outputs = NULL,
416 .flags = AVFILTER_FLAG_DYNAMIC_OUTPUTS,415 .flags = AVFILTER_FLAG_DYNAMIC_OUTPUTS,
417};416};
libavfilter/vf_fade.c+2−4
@@ -555,7 +555,6 @@ static const AVFilterPad avfilter_vf_fade_inputs[] = { · 554 unmodified lines
555 .config_props = config_input,555 .config_props = config_input,
556 .filter_frame = filter_frame,556 .filter_frame = filter_frame,
557 },557 },
558 { NULL }
559};558};
560 559
561static const AVFilterPad avfilter_vf_fade_outputs[] = {560static const AVFilterPad avfilter_vf_fade_outputs[] = {
@@ -563,7 +562,6 @@ static const AVFilterPad avfilter_vf_fade_outputs[] = { · 1 unmodified line
563 .name = "default",562 .name = "default",
564 .type = AVMEDIA_TYPE_VIDEO,563 .type = AVMEDIA_TYPE_VIDEO,
565 },564 },
566 { NULL }
567};565};
568 566
569const AVFilter ff_vf_fade = {567const AVFilter ff_vf_fade = {
@@ -573,8 +571,8 @@ const AVFilter ff_vf_fade = { · 3 unmodified lines
573 .priv_size = sizeof(FadeContext),571 .priv_size = sizeof(FadeContext),
574 .priv_class = &fade_class,572 .priv_class = &fade_class,
575 .query_formats = query_formats,573 .query_formats = query_formats,
576 .inputs = avfilter_vf_fade_inputs,574 FILTER_INPUTS(avfilter_vf_fade_inputs),
577 .outputs = avfilter_vf_fade_outputs,575 FILTER_OUTPUTS(avfilter_vf_fade_outputs),
578 .flags = AVFILTER_FLAG_SLICE_THREADS |576 .flags = AVFILTER_FLAG_SLICE_THREADS |
579 AVFILTER_FLAG_SUPPORT_TIMELINE_GENERIC,577 AVFILTER_FLAG_SUPPORT_TIMELINE_GENERIC,
580};578};
libavfilter/vf_fftdnoiz.c+2−4
@@ -669,7 +669,6 @@ static const AVFilterPad fftdnoiz_inputs[] = { · 668 unmodified lines
669 .filter_frame = filter_frame,669 .filter_frame = filter_frame,
670 .config_props = config_input,670 .config_props = config_input,
671 },671 },
672 { NULL }
673};672};
674 673
675static const AVFilterPad fftdnoiz_outputs[] = {674static const AVFilterPad fftdnoiz_outputs[] = {
@@ -678,7 +677,6 @@ static const AVFilterPad fftdnoiz_outputs[] = { · 2 unmodified lines
678 .type = AVMEDIA_TYPE_VIDEO,677 .type = AVMEDIA_TYPE_VIDEO,
679 .request_frame = request_frame,678 .request_frame = request_frame,
680 },679 },
681 { NULL }
682};680};
683 681
684const AVFilter ff_vf_fftdnoiz = {682const AVFilter ff_vf_fftdnoiz = {
@@ -688,8 +686,8 @@ const AVFilter ff_vf_fftdnoiz = { · 3 unmodified lines
688 .init = init,686 .init = init,
689 .uninit = uninit,687 .uninit = uninit,
690 .query_formats = query_formats,688 .query_formats = query_formats,
691 .inputs = fftdnoiz_inputs,689 FILTER_INPUTS(fftdnoiz_inputs),
692 .outputs = fftdnoiz_outputs,690 FILTER_OUTPUTS(fftdnoiz_outputs),
693 .priv_class = &fftdnoiz_class,691 .priv_class = &fftdnoiz_class,
694 .flags = AVFILTER_FLAG_SUPPORT_TIMELINE_INTERNAL,692 .flags = AVFILTER_FLAG_SUPPORT_TIMELINE_INTERNAL,
695};693};
libavfilter/vf_fftfilt.c+2−4
@@ -414,7 +414,6 @@ static const AVFilterPad fftfilt_inputs[] = { · 413 unmodified lines
414 .config_props = config_props,414 .config_props = config_props,
415 .filter_frame = filter_frame,415 .filter_frame = filter_frame,
416 },416 },
417 { NULL }
418};417};
419 418
420static const AVFilterPad fftfilt_outputs[] = {419static const AVFilterPad fftfilt_outputs[] = {
@@ -422,7 +421,6 @@ static const AVFilterPad fftfilt_outputs[] = { · 1 unmodified line
422 .name = "default",421 .name = "default",
423 .type = AVMEDIA_TYPE_VIDEO,422 .type = AVMEDIA_TYPE_VIDEO,
424 },423 },
425 { NULL }
426};424};
427 425
428const AVFilter ff_vf_fftfilt = {426const AVFilter ff_vf_fftfilt = {
@@ -430,8 +428,8 @@ const AVFilter ff_vf_fftfilt = { · 1 unmodified line
430 .description = NULL_IF_CONFIG_SMALL("Apply arbitrary expressions to pixels in frequency domain."),428 .description = NULL_IF_CONFIG_SMALL("Apply arbitrary expressions to pixels in frequency domain."),
431 .priv_size = sizeof(FFTFILTContext),429 .priv_size = sizeof(FFTFILTContext),
432 .priv_class = &fftfilt_class,430 .priv_class = &fftfilt_class,
433 .inputs = fftfilt_inputs,431 FILTER_INPUTS(fftfilt_inputs),
434 .outputs = fftfilt_outputs,432 FILTER_OUTPUTS(fftfilt_outputs),
435 .query_formats = query_formats,433 .query_formats = query_formats,
436 .init = initialize,434 .init = initialize,
437 .uninit = uninit,435 .uninit = uninit,
libavfilter/vf_field.c+2−4
@@ -89,7 +89,6 @@ static const AVFilterPad field_inputs[] = { · 88 unmodified lines
89 .type = AVMEDIA_TYPE_VIDEO,89 .type = AVMEDIA_TYPE_VIDEO,
90 .filter_frame = filter_frame,90 .filter_frame = filter_frame,
91 },91 },
92 { NULL }
93};92};
94 93
95static const AVFilterPad field_outputs[] = {94static const AVFilterPad field_outputs[] = {
@@ -98,14 +97,13 @@ static const AVFilterPad field_outputs[] = { · 2 unmodified lines
98 .type = AVMEDIA_TYPE_VIDEO,97 .type = AVMEDIA_TYPE_VIDEO,
99 .config_props = config_props_output,98 .config_props = config_props_output,
100 },99 },
101 { NULL }
102};100};
103 101
104const AVFilter ff_vf_field = {102const AVFilter ff_vf_field = {
105 .name = "field",103 .name = "field",
106 .description = NULL_IF_CONFIG_SMALL("Extract a field from the input video."),104 .description = NULL_IF_CONFIG_SMALL("Extract a field from the input video."),
107 .priv_size = sizeof(FieldContext),105 .priv_size = sizeof(FieldContext),
108 .inputs = field_inputs,106 FILTER_INPUTS(field_inputs),
109 .outputs = field_outputs,107 FILTER_OUTPUTS(field_outputs),
110 .priv_class = &field_class,108 .priv_class = &field_class,
111};109};
libavfilter/vf_fieldhint.c+2−4
@@ -284,7 +284,6 @@ static const AVFilterPad inputs[] = { · 283 unmodified lines
284 .config_props = config_input,284 .config_props = config_input,
285 .filter_frame = filter_frame,285 .filter_frame = filter_frame,
286 },286 },
287 { NULL }
288};287};
289 288
290static const AVFilterPad outputs[] = {289static const AVFilterPad outputs[] = {
@@ -293,7 +292,6 @@ static const AVFilterPad outputs[] = { · 2 unmodified lines
293 .type = AVMEDIA_TYPE_VIDEO,292 .type = AVMEDIA_TYPE_VIDEO,
294 .request_frame = request_frame,293 .request_frame = request_frame,
295 },294 },
296 { NULL }
297};295};
298 296
299const AVFilter ff_vf_fieldhint = {297const AVFilter ff_vf_fieldhint = {
@@ -304,6 +302,6 @@ const AVFilter ff_vf_fieldhint = { · 4 unmodified lines
304 .init = init,302 .init = init,
305 .uninit = uninit,303 .uninit = uninit,
306 .query_formats = query_formats,304 .query_formats = query_formats,
307 .inputs = inputs,305 FILTER_INPUTS(inputs),
308 .outputs = outputs,306 FILTER_OUTPUTS(outputs),
309};307};
libavfilter/vf_fieldmatch.c+1−2
@@ -1037,7 +1037,6 @@ static const AVFilterPad fieldmatch_outputs[] = { · 1036 unmodified lines
1037 .type = AVMEDIA_TYPE_VIDEO,1037 .type = AVMEDIA_TYPE_VIDEO,
1038 .config_props = config_output,1038 .config_props = config_output,
1039 },1039 },
1040 { NULL }
1041};1040};
1042 1041
1043const AVFilter ff_vf_fieldmatch = {1042const AVFilter ff_vf_fieldmatch = {
@@ -1049,7 +1048,7 @@ const AVFilter ff_vf_fieldmatch = { · 5 unmodified lines
1049 .activate = activate,1048 .activate = activate,
1050 .uninit = fieldmatch_uninit,1049 .uninit = fieldmatch_uninit,
1051 .inputs = NULL,1050 .inputs = NULL,
1052 .outputs = fieldmatch_outputs,1051 FILTER_OUTPUTS(fieldmatch_outputs),
1053 .priv_class = &fieldmatch_class,1052 .priv_class = &fieldmatch_class,
1054 .flags = AVFILTER_FLAG_DYNAMIC_INPUTS,1053 .flags = AVFILTER_FLAG_DYNAMIC_INPUTS,
1055};1054};
libavfilter/vf_fieldorder.c+2−4
@@ -171,7 +171,6 @@ static const AVFilterPad avfilter_vf_fieldorder_inputs[] = { · 170 unmodified lines
171 .config_props = config_input,171 .config_props = config_input,
172 .filter_frame = filter_frame,172 .filter_frame = filter_frame,
173 },173 },
174 { NULL }
175};174};
176 175
177static const AVFilterPad avfilter_vf_fieldorder_outputs[] = {176static const AVFilterPad avfilter_vf_fieldorder_outputs[] = {
@@ -179,7 +178,6 @@ static const AVFilterPad avfilter_vf_fieldorder_outputs[] = { · 1 unmodified line
179 .name = "default",178 .name = "default",
180 .type = AVMEDIA_TYPE_VIDEO,179 .type = AVMEDIA_TYPE_VIDEO,
181 },180 },
182 { NULL }
183};181};
184 182
185const AVFilter ff_vf_fieldorder = {183const AVFilter ff_vf_fieldorder = {
@@ -188,7 +186,7 @@ const AVFilter ff_vf_fieldorder = { · 2 unmodified lines
188 .priv_size = sizeof(FieldOrderContext),186 .priv_size = sizeof(FieldOrderContext),
189 .priv_class = &fieldorder_class,187 .priv_class = &fieldorder_class,
190 .query_formats = query_formats,188 .query_formats = query_formats,
191 .inputs = avfilter_vf_fieldorder_inputs,189 FILTER_INPUTS(avfilter_vf_fieldorder_inputs),
192 .outputs = avfilter_vf_fieldorder_outputs,190 FILTER_OUTPUTS(avfilter_vf_fieldorder_outputs),
193 .flags = AVFILTER_FLAG_SUPPORT_TIMELINE_GENERIC,191 .flags = AVFILTER_FLAG_SUPPORT_TIMELINE_GENERIC,
194};192};
libavfilter/vf_fillborders.c+2−4
@@ -709,7 +709,6 @@ static const AVFilterPad fillborders_inputs[] = { · 708 unmodified lines
709 .config_props = config_input,709 .config_props = config_input,
710 .filter_frame = filter_frame,710 .filter_frame = filter_frame,
711 },711 },
712 { NULL }
713};712};
714 713
715static const AVFilterPad fillborders_outputs[] = {714static const AVFilterPad fillborders_outputs[] = {
@@ -717,7 +716,6 @@ static const AVFilterPad fillborders_outputs[] = { · 1 unmodified line
717 .name = "default",716 .name = "default",
718 .type = AVMEDIA_TYPE_VIDEO,717 .type = AVMEDIA_TYPE_VIDEO,
719 },718 },
720 { NULL }
721};719};
722 720
723const AVFilter ff_vf_fillborders = {721const AVFilter ff_vf_fillborders = {
@@ -726,8 +724,8 @@ const AVFilter ff_vf_fillborders = { · 2 unmodified lines
726 .priv_size = sizeof(FillBordersContext),724 .priv_size = sizeof(FillBordersContext),
727 .priv_class = &fillborders_class,725 .priv_class = &fillborders_class,
728 .query_formats = query_formats,726 .query_formats = query_formats,
729 .inputs = fillborders_inputs,727 FILTER_INPUTS(fillborders_inputs),
730 .outputs = fillborders_outputs,728 FILTER_OUTPUTS(fillborders_outputs),
731 .flags = AVFILTER_FLAG_SUPPORT_TIMELINE_GENERIC,729 .flags = AVFILTER_FLAG_SUPPORT_TIMELINE_GENERIC,
732 .process_command = process_command,730 .process_command = process_command,
733};731};
libavfilter/vf_find_rect.c+2−4
@@ -290,7 +290,6 @@ static const AVFilterPad foc_inputs[] = { · 289 unmodified lines
290 .config_props = config_input,290 .config_props = config_input,
291 .filter_frame = filter_frame,291 .filter_frame = filter_frame,
292 },292 },
293 { NULL }
294};293};
295 294
296static const AVFilterPad foc_outputs[] = {295static const AVFilterPad foc_outputs[] = {
@@ -298,7 +297,6 @@ static const AVFilterPad foc_outputs[] = { · 1 unmodified line
298 .name = "default",297 .name = "default",
299 .type = AVMEDIA_TYPE_VIDEO,298 .type = AVMEDIA_TYPE_VIDEO,
300 },299 },
301 { NULL }
302};300};
303 301
304const AVFilter ff_vf_find_rect = {302const AVFilter ff_vf_find_rect = {
@@ -308,7 +306,7 @@ const AVFilter ff_vf_find_rect = { · 3 unmodified lines
308 .init = init,306 .init = init,
309 .uninit = uninit,307 .uninit = uninit,
310 .query_formats = query_formats,308 .query_formats = query_formats,
311 .inputs = foc_inputs,309 FILTER_INPUTS(foc_inputs),
312 .outputs = foc_outputs,310 FILTER_OUTPUTS(foc_outputs),
313 .priv_class = &find_rect_class,311 .priv_class = &find_rect_class,
314};312};
libavfilter/vf_floodfill.c+2−4
@@ -385,7 +385,6 @@ static const AVFilterPad floodfill_inputs[] = { · 384 unmodified lines
385 .filter_frame = filter_frame,385 .filter_frame = filter_frame,
386 .config_props = config_input,386 .config_props = config_input,
387 },387 },
388 { NULL }
389};388};
390 389
391static const AVFilterPad floodfill_outputs[] = {390static const AVFilterPad floodfill_outputs[] = {
@@ -393,7 +392,6 @@ static const AVFilterPad floodfill_outputs[] = { · 1 unmodified line
393 .name = "default",392 .name = "default",
394 .type = AVMEDIA_TYPE_VIDEO,393 .type = AVMEDIA_TYPE_VIDEO,
395 },394 },
396 { NULL }
397};395};
398 396
399#define OFFSET(x) offsetof(FloodfillContext, x)397#define OFFSET(x) offsetof(FloodfillContext, x)
@@ -422,7 +420,7 @@ const AVFilter ff_vf_floodfill = { · 22 unmodified lines
422 .priv_class = &floodfill_class,420 .priv_class = &floodfill_class,
423 .query_formats = query_formats,421 .query_formats = query_formats,
424 .uninit = uninit,422 .uninit = uninit,
425 .inputs = floodfill_inputs,423 FILTER_INPUTS(floodfill_inputs),
426 .outputs = floodfill_outputs,424 FILTER_OUTPUTS(floodfill_outputs),
427 .flags = AVFILTER_FLAG_SUPPORT_TIMELINE_GENERIC,425 .flags = AVFILTER_FLAG_SUPPORT_TIMELINE_GENERIC,
428};426};
libavfilter/vf_format.c+4−8
@@ -151,7 +151,6 @@ static const AVFilterPad avfilter_vf_format_inputs[] = { · 150 unmodified lines
151 .type = AVMEDIA_TYPE_VIDEO,151 .type = AVMEDIA_TYPE_VIDEO,
152 .get_buffer.video = ff_null_get_video_buffer,152 .get_buffer.video = ff_null_get_video_buffer,
153 },153 },
154 { NULL }
155};154};
156 155
157static const AVFilterPad avfilter_vf_format_outputs[] = {156static const AVFilterPad avfilter_vf_format_outputs[] = {
@@ -159,7 +158,6 @@ static const AVFilterPad avfilter_vf_format_outputs[] = { · 1 unmodified line
159 .name = "default",158 .name = "default",
160 .type = AVMEDIA_TYPE_VIDEO159 .type = AVMEDIA_TYPE_VIDEO
161 },160 },
162 { NULL }
163};161};
164 162
165const AVFilter ff_vf_format = {163const AVFilter ff_vf_format = {
@@ -174,8 +172,8 @@ const AVFilter ff_vf_format = { · 8 unmodified lines
174 .priv_size = sizeof(FormatContext),172 .priv_size = sizeof(FormatContext),
175 .priv_class = &format_class,173 .priv_class = &format_class,
176 174
177 .inputs = avfilter_vf_format_inputs,175 FILTER_INPUTS(avfilter_vf_format_inputs),
178 .outputs = avfilter_vf_format_outputs,176 FILTER_OUTPUTS(avfilter_vf_format_outputs),
179};177};
180#endif /* CONFIG_FORMAT_FILTER */178#endif /* CONFIG_FORMAT_FILTER */
181 179
@@ -190,7 +188,6 @@ static const AVFilterPad avfilter_vf_noformat_inputs[] = { · 8 unmodified lines
190 .type = AVMEDIA_TYPE_VIDEO,188 .type = AVMEDIA_TYPE_VIDEO,
191 .get_buffer.video = ff_null_get_video_buffer,189 .get_buffer.video = ff_null_get_video_buffer,
192 },190 },
193 { NULL }
194};191};
195 192
196static const AVFilterPad avfilter_vf_noformat_outputs[] = {193static const AVFilterPad avfilter_vf_noformat_outputs[] = {
@@ -198,7 +195,6 @@ static const AVFilterPad avfilter_vf_noformat_outputs[] = { · 1 unmodified line
198 .name = "default",195 .name = "default",
199 .type = AVMEDIA_TYPE_VIDEO196 .type = AVMEDIA_TYPE_VIDEO
200 },197 },
201 { NULL }
202};198};
203 199
204const AVFilter ff_vf_noformat = {200const AVFilter ff_vf_noformat = {
@@ -213,7 +209,7 @@ const AVFilter ff_vf_noformat = { · 8 unmodified lines
213 .priv_size = sizeof(FormatContext),209 .priv_size = sizeof(FormatContext),
214 .priv_class = &noformat_class,210 .priv_class = &noformat_class,
215 211
216 .inputs = avfilter_vf_noformat_inputs,212 FILTER_INPUTS(avfilter_vf_noformat_inputs),
217 .outputs = avfilter_vf_noformat_outputs,213 FILTER_OUTPUTS(avfilter_vf_noformat_outputs),
218};214};
219#endif /* CONFIG_NOFORMAT_FILTER */215#endif /* CONFIG_NOFORMAT_FILTER */
libavfilter/vf_fps.c+2−4
@@ -370,7 +370,6 @@ static const AVFilterPad avfilter_vf_fps_inputs[] = { · 369 unmodified lines
370 .name = "default",370 .name = "default",
371 .type = AVMEDIA_TYPE_VIDEO,371 .type = AVMEDIA_TYPE_VIDEO,
372 },372 },
373 { NULL }
374};373};
375 374
376static const AVFilterPad avfilter_vf_fps_outputs[] = {375static const AVFilterPad avfilter_vf_fps_outputs[] = {
@@ -379,7 +378,6 @@ static const AVFilterPad avfilter_vf_fps_outputs[] = { · 2 unmodified lines
379 .type = AVMEDIA_TYPE_VIDEO,378 .type = AVMEDIA_TYPE_VIDEO,
380 .config_props = config_props,379 .config_props = config_props,
381 },380 },
382 { NULL }
383};381};
384 382
385const AVFilter ff_vf_fps = {383const AVFilter ff_vf_fps = {
@@ -390,6 +388,6 @@ const AVFilter ff_vf_fps = { · 4 unmodified lines
390 .priv_size = sizeof(FPSContext),388 .priv_size = sizeof(FPSContext),
391 .priv_class = &fps_class,389 .priv_class = &fps_class,
392 .activate = activate,390 .activate = activate,
393 .inputs = avfilter_vf_fps_inputs,391 FILTER_INPUTS(avfilter_vf_fps_inputs),
394 .outputs = avfilter_vf_fps_outputs,392 FILTER_OUTPUTS(avfilter_vf_fps_outputs),
395};393};
libavfilter/vf_framepack.c+2−4
@@ -454,7 +454,6 @@ static const AVFilterPad framepack_inputs[] = { · 453 unmodified lines
454 .name = "right",454 .name = "right",
455 .type = AVMEDIA_TYPE_VIDEO,455 .type = AVMEDIA_TYPE_VIDEO,
456 },456 },
457 { NULL }
458};457};
459 458
460static const AVFilterPad framepack_outputs[] = {459static const AVFilterPad framepack_outputs[] = {
@@ -463,7 +462,6 @@ static const AVFilterPad framepack_outputs[] = { · 2 unmodified lines
463 .type = AVMEDIA_TYPE_VIDEO,462 .type = AVMEDIA_TYPE_VIDEO,
464 .config_props = config_output,463 .config_props = config_output,
465 },464 },
466 { NULL }
467};465};
468 466
469const AVFilter ff_vf_framepack = {467const AVFilter ff_vf_framepack = {
@@ -472,8 +470,8 @@ const AVFilter ff_vf_framepack = { · 2 unmodified lines
472 .priv_size = sizeof(FramepackContext),470 .priv_size = sizeof(FramepackContext),
473 .priv_class = &framepack_class,471 .priv_class = &framepack_class,
474 .query_formats = query_formats,472 .query_formats = query_formats,
475 .inputs = framepack_inputs,473 FILTER_INPUTS(framepack_inputs),
476 .outputs = framepack_outputs,474 FILTER_OUTPUTS(framepack_outputs),
477 .activate = activate,475 .activate = activate,
478 .uninit = framepack_uninit,476 .uninit = framepack_uninit,
479};477};
libavfilter/vf_framerate.c+2−4
@@ -427,7 +427,6 @@ static const AVFilterPad framerate_inputs[] = { · 426 unmodified lines
427 .type = AVMEDIA_TYPE_VIDEO,427 .type = AVMEDIA_TYPE_VIDEO,
428 .config_props = config_input,428 .config_props = config_input,
429 },429 },
430 { NULL }
431};430};
432 431
433static const AVFilterPad framerate_outputs[] = {432static const AVFilterPad framerate_outputs[] = {
@@ -436,7 +435,6 @@ static const AVFilterPad framerate_outputs[] = { · 2 unmodified lines
436 .type = AVMEDIA_TYPE_VIDEO,435 .type = AVMEDIA_TYPE_VIDEO,
437 .config_props = config_output,436 .config_props = config_output,
438 },437 },
439 { NULL }
440};438};
441 439
442const AVFilter ff_vf_framerate = {440const AVFilter ff_vf_framerate = {
@@ -447,8 +445,8 @@ const AVFilter ff_vf_framerate = { · 4 unmodified lines
447 .init = init,445 .init = init,
448 .uninit = uninit,446 .uninit = uninit,
449 .query_formats = query_formats,447 .query_formats = query_formats,
450 .inputs = framerate_inputs,448 FILTER_INPUTS(framerate_inputs),
451 .outputs = framerate_outputs,449 FILTER_OUTPUTS(framerate_outputs),
452 .flags = AVFILTER_FLAG_SLICE_THREADS,450 .flags = AVFILTER_FLAG_SLICE_THREADS,
453 .activate = activate,451 .activate = activate,
454};452};
libavfilter/vf_framestep.c+2−4
@@ -77,7 +77,6 @@ static const AVFilterPad framestep_inputs[] = { · 76 unmodified lines
77 .type = AVMEDIA_TYPE_VIDEO,77 .type = AVMEDIA_TYPE_VIDEO,
78 .filter_frame = filter_frame,78 .filter_frame = filter_frame,
79 },79 },
80 { NULL }
81};80};
82 81
83static const AVFilterPad framestep_outputs[] = {82static const AVFilterPad framestep_outputs[] = {
@@ -86,7 +85,6 @@ static const AVFilterPad framestep_outputs[] = { · 2 unmodified lines
86 .type = AVMEDIA_TYPE_VIDEO,85 .type = AVMEDIA_TYPE_VIDEO,
87 .config_props = config_output_props,86 .config_props = config_output_props,
88 },87 },
89 { NULL }
90};88};
91 89
92const AVFilter ff_vf_framestep = {90const AVFilter ff_vf_framestep = {
@@ -94,7 +92,7 @@ const AVFilter ff_vf_framestep = { · 1 unmodified line
94 .description = NULL_IF_CONFIG_SMALL("Select one frame every N frames."),92 .description = NULL_IF_CONFIG_SMALL("Select one frame every N frames."),
95 .priv_size = sizeof(FrameStepContext),93 .priv_size = sizeof(FrameStepContext),
96 .priv_class = &framestep_class,94 .priv_class = &framestep_class,
97 .inputs = framestep_inputs,95 FILTER_INPUTS(framestep_inputs),
98 .outputs = framestep_outputs,96 FILTER_OUTPUTS(framestep_outputs),
99 .flags = AVFILTER_FLAG_SUPPORT_TIMELINE_GENERIC,97 .flags = AVFILTER_FLAG_SUPPORT_TIMELINE_GENERIC,
100};98};
libavfilter/vf_freezedetect.c+2−4
@@ -207,7 +207,6 @@ static const AVFilterPad freezedetect_inputs[] = { · 206 unmodified lines
207 .type = AVMEDIA_TYPE_VIDEO,207 .type = AVMEDIA_TYPE_VIDEO,
208 .config_props = config_input,208 .config_props = config_input,
209 },209 },
210 { NULL }
211};210};
212 211
213static const AVFilterPad freezedetect_outputs[] = {212static const AVFilterPad freezedetect_outputs[] = {
@@ -215,7 +214,6 @@ static const AVFilterPad freezedetect_outputs[] = { · 1 unmodified line
215 .name = "default",214 .name = "default",
216 .type = AVMEDIA_TYPE_VIDEO,215 .type = AVMEDIA_TYPE_VIDEO,
217 },216 },
218 { NULL }
219};217};
220 218
221const AVFilter ff_vf_freezedetect = {219const AVFilter ff_vf_freezedetect = {
@@ -225,7 +223,7 @@ const AVFilter ff_vf_freezedetect = { · 3 unmodified lines
225 .priv_class = &freezedetect_class,223 .priv_class = &freezedetect_class,
226 .uninit = uninit,224 .uninit = uninit,
227 .query_formats = query_formats,225 .query_formats = query_formats,
228 .inputs = freezedetect_inputs,226 FILTER_INPUTS(freezedetect_inputs),
229 .outputs = freezedetect_outputs,227 FILTER_OUTPUTS(freezedetect_outputs),
230 .activate = activate,228 .activate = activate,
231};229};
libavfilter/vf_freezeframes.c+2−4
@@ -142,7 +142,6 @@ static const AVFilterPad freezeframes_inputs[] = { · 141 unmodified lines
142 .name = "replace",142 .name = "replace",
143 .type = AVMEDIA_TYPE_VIDEO,143 .type = AVMEDIA_TYPE_VIDEO,
144 },144 },
145 { NULL },
146};145};
147 146
148static const AVFilterPad freezeframes_outputs[] = {147static const AVFilterPad freezeframes_outputs[] = {
@@ -151,7 +150,6 @@ static const AVFilterPad freezeframes_outputs[] = { · 2 unmodified lines
151 .type = AVMEDIA_TYPE_VIDEO,150 .type = AVMEDIA_TYPE_VIDEO,
152 .config_props = config_output,151 .config_props = config_output,
153 },152 },
154 { NULL },
155};153};
156 154
157const AVFilter ff_vf_freezeframes = {155const AVFilter ff_vf_freezeframes = {
@@ -159,8 +157,8 @@ const AVFilter ff_vf_freezeframes = { · 1 unmodified line
159 .description = NULL_IF_CONFIG_SMALL("Freeze video frames."),157 .description = NULL_IF_CONFIG_SMALL("Freeze video frames."),
160 .priv_size = sizeof(FreezeFramesContext),158 .priv_size = sizeof(FreezeFramesContext),
161 .priv_class = &freezeframes_class,159 .priv_class = &freezeframes_class,
162 .inputs = freezeframes_inputs,160 FILTER_INPUTS(freezeframes_inputs),
163 .outputs = freezeframes_outputs,161 FILTER_OUTPUTS(freezeframes_outputs),
164 .activate = activate,162 .activate = activate,
165 .uninit = uninit,163 .uninit = uninit,
166};164};
libavfilter/vf_frei0r.c+3−6
@@ -402,7 +402,6 @@ static const AVFilterPad avfilter_vf_frei0r_inputs[] = { · 401 unmodified lines
402 .config_props = config_input_props,402 .config_props = config_input_props,
403 .filter_frame = filter_frame,403 .filter_frame = filter_frame,
404 },404 },
405 { NULL }
406};405};
407 406
408static const AVFilterPad avfilter_vf_frei0r_outputs[] = {407static const AVFilterPad avfilter_vf_frei0r_outputs[] = {
@@ -410,7 +409,6 @@ static const AVFilterPad avfilter_vf_frei0r_outputs[] = { · 1 unmodified line
410 .name = "default",409 .name = "default",
411 .type = AVMEDIA_TYPE_VIDEO,410 .type = AVMEDIA_TYPE_VIDEO,
412 },411 },
413 { NULL }
414};412};
415 413
416const AVFilter ff_vf_frei0r = {414const AVFilter ff_vf_frei0r = {
@@ -421,8 +419,8 @@ const AVFilter ff_vf_frei0r = { · 4 unmodified lines
421 .uninit = uninit,419 .uninit = uninit,
422 .priv_size = sizeof(Frei0rContext),420 .priv_size = sizeof(Frei0rContext),
423 .priv_class = &frei0r_class,421 .priv_class = &frei0r_class,
424 .inputs = avfilter_vf_frei0r_inputs,422 FILTER_INPUTS(avfilter_vf_frei0r_inputs),
425 .outputs = avfilter_vf_frei0r_outputs,423 FILTER_OUTPUTS(avfilter_vf_frei0r_outputs),
426 .process_command = process_command,424 .process_command = process_command,
427 .flags = AVFILTER_FLAG_SUPPORT_TIMELINE_GENERIC,425 .flags = AVFILTER_FLAG_SUPPORT_TIMELINE_GENERIC,
428};426};
@@ -498,7 +496,6 @@ static const AVFilterPad avfilter_vsrc_frei0r_src_outputs[] = { · 69 unmodified lines
498 .request_frame = source_request_frame,496 .request_frame = source_request_frame,
499 .config_props = source_config_props497 .config_props = source_config_props
500 },498 },
501 { NULL }
502};499};
503 500
504const AVFilter ff_vsrc_frei0r_src = {501const AVFilter ff_vsrc_frei0r_src = {
@@ -510,5 +507,5 @@ const AVFilter ff_vsrc_frei0r_src = { · 5 unmodified lines
510 .uninit = uninit,507 .uninit = uninit,
511 .query_formats = query_formats,508 .query_formats = query_formats,
512 .inputs = NULL,509 .inputs = NULL,
513 .outputs = avfilter_vsrc_frei0r_src_outputs,510 FILTER_OUTPUTS(avfilter_vsrc_frei0r_src_outputs),
514};511};
libavfilter/vf_fspp.c+2−4
@@ -653,7 +653,6 @@ static const AVFilterPad fspp_inputs[] = { · 652 unmodified lines
653 .config_props = config_input,653 .config_props = config_input,
654 .filter_frame = filter_frame,654 .filter_frame = filter_frame,
655 },655 },
656 { NULL }
657};656};
658 657
659static const AVFilterPad fspp_outputs[] = {658static const AVFilterPad fspp_outputs[] = {
@@ -661,7 +660,6 @@ static const AVFilterPad fspp_outputs[] = { · 1 unmodified line
661 .name = "default",660 .name = "default",
662 .type = AVMEDIA_TYPE_VIDEO,661 .type = AVMEDIA_TYPE_VIDEO,
663 },662 },
664 { NULL }
665};663};
666 664
667const AVFilter ff_vf_fspp = {665const AVFilter ff_vf_fspp = {
@@ -670,8 +668,8 @@ const AVFilter ff_vf_fspp = { · 2 unmodified lines
670 .priv_size = sizeof(FSPPContext),668 .priv_size = sizeof(FSPPContext),
671 .uninit = uninit,669 .uninit = uninit,
672 .query_formats = query_formats,670 .query_formats = query_formats,
673 .inputs = fspp_inputs,671 FILTER_INPUTS(fspp_inputs),
674 .outputs = fspp_outputs,672 FILTER_OUTPUTS(fspp_outputs),
675 .priv_class = &fspp_class,673 .priv_class = &fspp_class,
676 .flags = AVFILTER_FLAG_SUPPORT_TIMELINE_INTERNAL,674 .flags = AVFILTER_FLAG_SUPPORT_TIMELINE_INTERNAL,
677};675};
libavfilter/vf_gblur.c+2−4
@@ -385,7 +385,6 @@ static const AVFilterPad gblur_inputs[] = { · 384 unmodified lines
385 .config_props = config_input,385 .config_props = config_input,
386 .filter_frame = filter_frame,386 .filter_frame = filter_frame,
387 },387 },
388 { NULL }
389};388};
390 389
391static const AVFilterPad gblur_outputs[] = {390static const AVFilterPad gblur_outputs[] = {
@@ -393,7 +392,6 @@ static const AVFilterPad gblur_outputs[] = { · 1 unmodified line
393 .name = "default",392 .name = "default",
394 .type = AVMEDIA_TYPE_VIDEO,393 .type = AVMEDIA_TYPE_VIDEO,
395 },394 },
396 { NULL }
397};395};
398 396
399const AVFilter ff_vf_gblur = {397const AVFilter ff_vf_gblur = {
@@ -403,8 +401,8 @@ const AVFilter ff_vf_gblur = { · 3 unmodified lines
403 .priv_class = &gblur_class,401 .priv_class = &gblur_class,
404 .uninit = uninit,402 .uninit = uninit,
405 .query_formats = query_formats,403 .query_formats = query_formats,
406 .inputs = gblur_inputs,404 FILTER_INPUTS(gblur_inputs),
407 .outputs = gblur_outputs,405 FILTER_OUTPUTS(gblur_outputs),
408 .flags = AVFILTER_FLAG_SUPPORT_TIMELINE_GENERIC | AVFILTER_FLAG_SLICE_THREADS,406 .flags = AVFILTER_FLAG_SUPPORT_TIMELINE_GENERIC | AVFILTER_FLAG_SLICE_THREADS,
409 .process_command = ff_filter_process_command,407 .process_command = ff_filter_process_command,
410};408};
libavfilter/vf_geq.c+2−4
@@ -476,7 +476,6 @@ static const AVFilterPad geq_inputs[] = { · 475 unmodified lines
476 .config_props = geq_config_props,476 .config_props = geq_config_props,
477 .filter_frame = geq_filter_frame,477 .filter_frame = geq_filter_frame,
478 },478 },
479 { NULL }
480};479};
481 480
482static const AVFilterPad geq_outputs[] = {481static const AVFilterPad geq_outputs[] = {
@@ -484,7 +483,6 @@ static const AVFilterPad geq_outputs[] = { · 1 unmodified line
484 .name = "default",483 .name = "default",
485 .type = AVMEDIA_TYPE_VIDEO,484 .type = AVMEDIA_TYPE_VIDEO,
486 },485 },
487 { NULL }
488};486};
489 487
490const AVFilter ff_vf_geq = {488const AVFilter ff_vf_geq = {
@@ -494,8 +492,8 @@ const AVFilter ff_vf_geq = { · 3 unmodified lines
494 .init = geq_init,492 .init = geq_init,
495 .uninit = geq_uninit,493 .uninit = geq_uninit,
496 .query_formats = geq_query_formats,494 .query_formats = geq_query_formats,
497 .inputs = geq_inputs,495 FILTER_INPUTS(geq_inputs),
498 .outputs = geq_outputs,496 FILTER_OUTPUTS(geq_outputs),
499 .priv_class = &geq_class,497 .priv_class = &geq_class,
500 .flags = AVFILTER_FLAG_SUPPORT_TIMELINE_GENERIC | AVFILTER_FLAG_SLICE_THREADS,498 .flags = AVFILTER_FLAG_SUPPORT_TIMELINE_GENERIC | AVFILTER_FLAG_SLICE_THREADS,
501};499};
libavfilter/vf_gradfun.c+2−4
@@ -237,7 +237,6 @@ static const AVFilterPad avfilter_vf_gradfun_inputs[] = { · 236 unmodified lines
237 .config_props = config_input,237 .config_props = config_input,
238 .filter_frame = filter_frame,238 .filter_frame = filter_frame,
239 },239 },
240 { NULL }
241};240};
242 241
243static const AVFilterPad avfilter_vf_gradfun_outputs[] = {242static const AVFilterPad avfilter_vf_gradfun_outputs[] = {
@@ -245,7 +244,6 @@ static const AVFilterPad avfilter_vf_gradfun_outputs[] = { · 1 unmodified line
245 .name = "default",244 .name = "default",
246 .type = AVMEDIA_TYPE_VIDEO,245 .type = AVMEDIA_TYPE_VIDEO,
247 },246 },
248 { NULL }
249};247};
250 248
251const AVFilter ff_vf_gradfun = {249const AVFilter ff_vf_gradfun = {
@@ -256,7 +254,7 @@ const AVFilter ff_vf_gradfun = { · 4 unmodified lines
256 .init = init,254 .init = init,
257 .uninit = uninit,255 .uninit = uninit,
258 .query_formats = query_formats,256 .query_formats = query_formats,
259 .inputs = avfilter_vf_gradfun_inputs,257 FILTER_INPUTS(avfilter_vf_gradfun_inputs),
260 .outputs = avfilter_vf_gradfun_outputs,258 FILTER_OUTPUTS(avfilter_vf_gradfun_outputs),
261 .flags = AVFILTER_FLAG_SUPPORT_TIMELINE_GENERIC,259 .flags = AVFILTER_FLAG_SUPPORT_TIMELINE_GENERIC,
262};260};
libavfilter/vf_guided.c+1−2
@@ -486,7 +486,6 @@ static const AVFilterPad guided_outputs[] = { · 485 unmodified lines
486 .type = AVMEDIA_TYPE_VIDEO,486 .type = AVMEDIA_TYPE_VIDEO,
487 .config_props = config_output,487 .config_props = config_output,
488 },488 },
489 { NULL }
490};489};
491 490
492const AVFilter ff_vf_guided = {491const AVFilter ff_vf_guided = {
@@ -499,7 +498,7 @@ const AVFilter ff_vf_guided = { · 6 unmodified lines
499 .priv_class = &guided_class,498 .priv_class = &guided_class,
500 .activate = activate,499 .activate = activate,
501 .inputs = NULL,500 .inputs = NULL,
502 .outputs = guided_outputs,501 FILTER_OUTPUTS(guided_outputs),
503 .flags = AVFILTER_FLAG_DYNAMIC_INPUTS | AVFILTER_FLAG_SLICE_THREADS |502 .flags = AVFILTER_FLAG_DYNAMIC_INPUTS | AVFILTER_FLAG_SLICE_THREADS |
504 AVFILTER_FLAG_SUPPORT_TIMELINE_GENERIC,503 AVFILTER_FLAG_SUPPORT_TIMELINE_GENERIC,
505 .process_command = process_command,504 .process_command = process_command,
libavfilter/vf_hflip.c+2−4
@@ -235,7 +235,6 @@ static const AVFilterPad avfilter_vf_hflip_inputs[] = { · 234 unmodified lines
235 .filter_frame = filter_frame,235 .filter_frame = filter_frame,
236 .config_props = config_props,236 .config_props = config_props,
237 },237 },
238 { NULL }
239};238};
240 239
241static const AVFilterPad avfilter_vf_hflip_outputs[] = {240static const AVFilterPad avfilter_vf_hflip_outputs[] = {
@@ -243,7 +242,6 @@ static const AVFilterPad avfilter_vf_hflip_outputs[] = { · 1 unmodified line
243 .name = "default",242 .name = "default",
244 .type = AVMEDIA_TYPE_VIDEO,243 .type = AVMEDIA_TYPE_VIDEO,
245 },244 },
246 { NULL }
247};245};
248 246
249const AVFilter ff_vf_hflip = {247const AVFilter ff_vf_hflip = {
@@ -252,7 +250,7 @@ const AVFilter ff_vf_hflip = { · 2 unmodified lines
252 .priv_size = sizeof(FlipContext),250 .priv_size = sizeof(FlipContext),
253 .priv_class = &hflip_class,251 .priv_class = &hflip_class,
254 .query_formats = query_formats,252 .query_formats = query_formats,
255 .inputs = avfilter_vf_hflip_inputs,253 FILTER_INPUTS(avfilter_vf_hflip_inputs),
256 .outputs = avfilter_vf_hflip_outputs,254 FILTER_OUTPUTS(avfilter_vf_hflip_outputs),
257 .flags = AVFILTER_FLAG_SLICE_THREADS | AVFILTER_FLAG_SUPPORT_TIMELINE_GENERIC,255 .flags = AVFILTER_FLAG_SLICE_THREADS | AVFILTER_FLAG_SUPPORT_TIMELINE_GENERIC,
258};256};
libavfilter/vf_histeq.c+2−4
@@ -256,7 +256,6 @@ static const AVFilterPad histeq_inputs[] = { · 255 unmodified lines
256 .config_props = config_input,256 .config_props = config_input,
257 .filter_frame = filter_frame,257 .filter_frame = filter_frame,
258 },258 },
259 { NULL }
260};259};
261 260
262static const AVFilterPad histeq_outputs[] = {261static const AVFilterPad histeq_outputs[] = {
@@ -264,7 +263,6 @@ static const AVFilterPad histeq_outputs[] = { · 1 unmodified line
264 .name = "default",263 .name = "default",
265 .type = AVMEDIA_TYPE_VIDEO,264 .type = AVMEDIA_TYPE_VIDEO,
266 },265 },
267 { NULL }
268};266};
269 267
270const AVFilter ff_vf_histeq = {268const AVFilter ff_vf_histeq = {
@@ -273,8 +271,8 @@ const AVFilter ff_vf_histeq = { · 2 unmodified lines
273 .priv_size = sizeof(HisteqContext),271 .priv_size = sizeof(HisteqContext),
274 .init = init,272 .init = init,
275 .query_formats = query_formats,273 .query_formats = query_formats,
276 .inputs = histeq_inputs,274 FILTER_INPUTS(histeq_inputs),
277 .outputs = histeq_outputs,275 FILTER_OUTPUTS(histeq_outputs),
278 .priv_class = &histeq_class,276 .priv_class = &histeq_class,
279 .flags = AVFILTER_FLAG_SUPPORT_TIMELINE_GENERIC,277 .flags = AVFILTER_FLAG_SUPPORT_TIMELINE_GENERIC,
280};278};
libavfilter/vf_histogram.c+4−6
@@ -488,7 +488,6 @@ static const AVFilterPad inputs[] = { · 487 unmodified lines
488 .filter_frame = filter_frame,488 .filter_frame = filter_frame,
489 .config_props = config_input,489 .config_props = config_input,
490 },490 },
491 { NULL }
492};491};
493 492
494static const AVFilterPad outputs[] = {493static const AVFilterPad outputs[] = {
@@ -497,7 +496,6 @@ static const AVFilterPad outputs[] = { · 2 unmodified lines
497 .type = AVMEDIA_TYPE_VIDEO,496 .type = AVMEDIA_TYPE_VIDEO,
498 .config_props = config_output,497 .config_props = config_output,
499 },498 },
500 { NULL }
501};499};
502 500
503#if CONFIG_HISTOGRAM_FILTER501#if CONFIG_HISTOGRAM_FILTER
@@ -507,8 +505,8 @@ const AVFilter ff_vf_histogram = { · 3 unmodified lines
507 .description = NULL_IF_CONFIG_SMALL("Compute and draw a histogram."),505 .description = NULL_IF_CONFIG_SMALL("Compute and draw a histogram."),
508 .priv_size = sizeof(HistogramContext),506 .priv_size = sizeof(HistogramContext),
509 .query_formats = query_formats,507 .query_formats = query_formats,
510 .inputs = inputs,508 FILTER_INPUTS(inputs),
511 .outputs = outputs,509 FILTER_OUTPUTS(outputs),
512 .priv_class = &histogram_class,510 .priv_class = &histogram_class,
513};511};
514 512
@@ -549,8 +547,8 @@ const AVFilter ff_vf_thistogram = { · 34 unmodified lines
549 .description = NULL_IF_CONFIG_SMALL("Compute and draw a temporal histogram."),547 .description = NULL_IF_CONFIG_SMALL("Compute and draw a temporal histogram."),
550 .priv_size = sizeof(HistogramContext),548 .priv_size = sizeof(HistogramContext),
551 .query_formats = query_formats,549 .query_formats = query_formats,
552 .inputs = inputs,550 FILTER_INPUTS(inputs),
553 .outputs = outputs,551 FILTER_OUTPUTS(outputs),
554 .uninit = uninit,552 .uninit = uninit,
555 .priv_class = &thistogram_class,553 .priv_class = &thistogram_class,
556};554};
libavfilter/vf_hqdn3d.c+2−4
@@ -383,7 +383,6 @@ static const AVFilterPad avfilter_vf_hqdn3d_inputs[] = { · 382 unmodified lines
383 .config_props = config_input,383 .config_props = config_input,
384 .filter_frame = filter_frame,384 .filter_frame = filter_frame,
385 },385 },
386 { NULL }
387};386};
388 387
389 388
@@ -392,7 +391,6 @@ static const AVFilterPad avfilter_vf_hqdn3d_outputs[] = { · 2 unmodified lines
392 .name = "default",391 .name = "default",
393 .type = AVMEDIA_TYPE_VIDEO392 .type = AVMEDIA_TYPE_VIDEO
394 },393 },
395 { NULL }
396};394};
397 395
398const AVFilter ff_vf_hqdn3d = {396const AVFilter ff_vf_hqdn3d = {
@@ -403,8 +401,8 @@ const AVFilter ff_vf_hqdn3d = { · 4 unmodified lines
403 .init = init,401 .init = init,
404 .uninit = uninit,402 .uninit = uninit,
405 .query_formats = query_formats,403 .query_formats = query_formats,
406 .inputs = avfilter_vf_hqdn3d_inputs,404 FILTER_INPUTS(avfilter_vf_hqdn3d_inputs),
407 .outputs = avfilter_vf_hqdn3d_outputs,405 FILTER_OUTPUTS(avfilter_vf_hqdn3d_outputs),
408 .flags = AVFILTER_FLAG_SUPPORT_TIMELINE_INTERNAL | AVFILTER_FLAG_SLICE_THREADS,406 .flags = AVFILTER_FLAG_SUPPORT_TIMELINE_INTERNAL | AVFILTER_FLAG_SLICE_THREADS,
409 .process_command = process_command,407 .process_command = process_command,
410};408};
libavfilter/vf_hqx.c+2−4
@@ -539,7 +539,6 @@ static const AVFilterPad hqx_inputs[] = { · 538 unmodified lines
539 .type = AVMEDIA_TYPE_VIDEO,539 .type = AVMEDIA_TYPE_VIDEO,
540 .filter_frame = filter_frame,540 .filter_frame = filter_frame,
541 },541 },
542 { NULL }
543};542};
544 543
545static const AVFilterPad hqx_outputs[] = {544static const AVFilterPad hqx_outputs[] = {
@@ -548,7 +547,6 @@ static const AVFilterPad hqx_outputs[] = { · 2 unmodified lines
548 .type = AVMEDIA_TYPE_VIDEO,547 .type = AVMEDIA_TYPE_VIDEO,
549 .config_props = config_output,548 .config_props = config_output,
550 },549 },
551 { NULL }
552};550};
553 551
554const AVFilter ff_vf_hqx = {552const AVFilter ff_vf_hqx = {
@@ -557,8 +555,8 @@ const AVFilter ff_vf_hqx = { · 2 unmodified lines
557 .priv_size = sizeof(HQXContext),555 .priv_size = sizeof(HQXContext),
558 .init = init,556 .init = init,
559 .query_formats = query_formats,557 .query_formats = query_formats,
560 .inputs = hqx_inputs,558 FILTER_INPUTS(hqx_inputs),
561 .outputs = hqx_outputs,559 FILTER_OUTPUTS(hqx_outputs),
562 .priv_class = &hqx_class,560 .priv_class = &hqx_class,
563 .flags = AVFILTER_FLAG_SLICE_THREADS,561 .flags = AVFILTER_FLAG_SLICE_THREADS,
564};562};
libavfilter/vf_hue.c+2−4
@@ -502,7 +502,6 @@ static const AVFilterPad hue_inputs[] = { · 501 unmodified lines
502 .filter_frame = filter_frame,502 .filter_frame = filter_frame,
503 .config_props = config_props,503 .config_props = config_props,
504 },504 },
505 { NULL }
506};505};
507 506
508static const AVFilterPad hue_outputs[] = {507static const AVFilterPad hue_outputs[] = {
@@ -510,7 +509,6 @@ static const AVFilterPad hue_outputs[] = { · 1 unmodified line
510 .name = "default",509 .name = "default",
511 .type = AVMEDIA_TYPE_VIDEO,510 .type = AVMEDIA_TYPE_VIDEO,
512 },511 },
513 { NULL }
514};512};
515 513
516const AVFilter ff_vf_hue = {514const AVFilter ff_vf_hue = {
@@ -521,8 +519,8 @@ const AVFilter ff_vf_hue = { · 4 unmodified lines
521 .uninit = uninit,519 .uninit = uninit,
522 .query_formats = query_formats,520 .query_formats = query_formats,
523 .process_command = process_command,521 .process_command = process_command,
524 .inputs = hue_inputs,522 FILTER_INPUTS(hue_inputs),
525 .outputs = hue_outputs,523 FILTER_OUTPUTS(hue_outputs),
526 .priv_class = &hue_class,524 .priv_class = &hue_class,
527 .flags = AVFILTER_FLAG_SUPPORT_TIMELINE_GENERIC,525 .flags = AVFILTER_FLAG_SUPPORT_TIMELINE_GENERIC,
528};526};
libavfilter/vf_hwdownload.c+2−4
@@ -180,7 +180,6 @@ static const AVFilterPad hwdownload_inputs[] = { · 179 unmodified lines
180 .config_props = hwdownload_config_input,180 .config_props = hwdownload_config_input,
181 .filter_frame = hwdownload_filter_frame,181 .filter_frame = hwdownload_filter_frame,
182 },182 },
183 { NULL }
184};183};
185 184
186static const AVFilterPad hwdownload_outputs[] = {185static const AVFilterPad hwdownload_outputs[] = {
@@ -189,7 +188,6 @@ static const AVFilterPad hwdownload_outputs[] = { · 2 unmodified lines
189 .type = AVMEDIA_TYPE_VIDEO,188 .type = AVMEDIA_TYPE_VIDEO,
190 .config_props = hwdownload_config_output,189 .config_props = hwdownload_config_output,
191 },190 },
192 { NULL }
193};191};
194 192
195const AVFilter ff_vf_hwdownload = {193const AVFilter ff_vf_hwdownload = {
@@ -199,7 +197,7 @@ const AVFilter ff_vf_hwdownload = { · 3 unmodified lines
199 .query_formats = hwdownload_query_formats,197 .query_formats = hwdownload_query_formats,
200 .priv_size = sizeof(HWDownloadContext),198 .priv_size = sizeof(HWDownloadContext),
201 .priv_class = &hwdownload_class,199 .priv_class = &hwdownload_class,
202 .inputs = hwdownload_inputs,200 FILTER_INPUTS(hwdownload_inputs),
203 .outputs = hwdownload_outputs,201 FILTER_OUTPUTS(hwdownload_outputs),
204 .flags_internal = FF_FILTER_FLAG_HWFRAME_AWARE,202 .flags_internal = FF_FILTER_FLAG_HWFRAME_AWARE,
205};203};
libavfilter/vf_hwmap.c+2−4
@@ -407,7 +407,6 @@ static const AVFilterPad hwmap_inputs[] = { · 406 unmodified lines
407 .get_buffer.video = hwmap_get_buffer,407 .get_buffer.video = hwmap_get_buffer,
408 .filter_frame = hwmap_filter_frame,408 .filter_frame = hwmap_filter_frame,
409 },409 },
410 { NULL }
411};410};
412 411
413static const AVFilterPad hwmap_outputs[] = {412static const AVFilterPad hwmap_outputs[] = {
@@ -416,7 +415,6 @@ static const AVFilterPad hwmap_outputs[] = { · 2 unmodified lines
416 .type = AVMEDIA_TYPE_VIDEO,415 .type = AVMEDIA_TYPE_VIDEO,
417 .config_props = hwmap_config_output,416 .config_props = hwmap_config_output,
418 },417 },
419 { NULL }
420};418};
421 419
422const AVFilter ff_vf_hwmap = {420const AVFilter ff_vf_hwmap = {
@@ -426,7 +424,7 @@ const AVFilter ff_vf_hwmap = { · 3 unmodified lines
426 .priv_size = sizeof(HWMapContext),424 .priv_size = sizeof(HWMapContext),
427 .priv_class = &hwmap_class,425 .priv_class = &hwmap_class,
428 .query_formats = hwmap_query_formats,426 .query_formats = hwmap_query_formats,
429 .inputs = hwmap_inputs,427 FILTER_INPUTS(hwmap_inputs),
430 .outputs = hwmap_outputs,428 FILTER_OUTPUTS(hwmap_outputs),
431 .flags_internal = FF_FILTER_FLAG_HWFRAME_AWARE,429 .flags_internal = FF_FILTER_FLAG_HWFRAME_AWARE,
432};430};
libavfilter/vf_hwupload.c+2−4
@@ -238,7 +238,6 @@ static const AVFilterPad hwupload_inputs[] = { · 237 unmodified lines
238 .type = AVMEDIA_TYPE_VIDEO,238 .type = AVMEDIA_TYPE_VIDEO,
239 .filter_frame = hwupload_filter_frame,239 .filter_frame = hwupload_filter_frame,
240 },240 },
241 { NULL }
242};241};
243 242
244static const AVFilterPad hwupload_outputs[] = {243static const AVFilterPad hwupload_outputs[] = {
@@ -247,7 +246,6 @@ static const AVFilterPad hwupload_outputs[] = { · 2 unmodified lines
247 .type = AVMEDIA_TYPE_VIDEO,246 .type = AVMEDIA_TYPE_VIDEO,
248 .config_props = hwupload_config_output,247 .config_props = hwupload_config_output,
249 },248 },
250 { NULL }
251};249};
252 250
253const AVFilter ff_vf_hwupload = {251const AVFilter ff_vf_hwupload = {
@@ -257,7 +255,7 @@ const AVFilter ff_vf_hwupload = { · 3 unmodified lines
257 .query_formats = hwupload_query_formats,255 .query_formats = hwupload_query_formats,
258 .priv_size = sizeof(HWUploadContext),256 .priv_size = sizeof(HWUploadContext),
259 .priv_class = &hwupload_class,257 .priv_class = &hwupload_class,
260 .inputs = hwupload_inputs,258 FILTER_INPUTS(hwupload_inputs),
261 .outputs = hwupload_outputs,259 FILTER_OUTPUTS(hwupload_outputs),
262 .flags_internal = FF_FILTER_FLAG_HWFRAME_AWARE,260 .flags_internal = FF_FILTER_FLAG_HWFRAME_AWARE,
263};261};
libavfilter/vf_hwupload_cuda.c+2−4
@@ -171,7 +171,6 @@ static const AVFilterPad cudaupload_inputs[] = { · 170 unmodified lines
171 .type = AVMEDIA_TYPE_VIDEO,171 .type = AVMEDIA_TYPE_VIDEO,
172 .filter_frame = cudaupload_filter_frame,172 .filter_frame = cudaupload_filter_frame,
173 },173 },
174 { NULL }
175};174};
176 175
177static const AVFilterPad cudaupload_outputs[] = {176static const AVFilterPad cudaupload_outputs[] = {
@@ -180,7 +179,6 @@ static const AVFilterPad cudaupload_outputs[] = { · 2 unmodified lines
180 .type = AVMEDIA_TYPE_VIDEO,179 .type = AVMEDIA_TYPE_VIDEO,
181 .config_props = cudaupload_config_output,180 .config_props = cudaupload_config_output,
182 },181 },
183 { NULL }
184};182};
185 183
186const AVFilter ff_vf_hwupload_cuda = {184const AVFilter ff_vf_hwupload_cuda = {
@@ -195,8 +193,8 @@ const AVFilter ff_vf_hwupload_cuda = { · 8 unmodified lines
195 .priv_size = sizeof(CudaUploadContext),193 .priv_size = sizeof(CudaUploadContext),
196 .priv_class = &cudaupload_class,194 .priv_class = &cudaupload_class,
197 195
198 .inputs = cudaupload_inputs,196 FILTER_INPUTS(cudaupload_inputs),
199 .outputs = cudaupload_outputs,197 FILTER_OUTPUTS(cudaupload_outputs),
200 198
201 .flags_internal = FF_FILTER_FLAG_HWFRAME_AWARE,199 .flags_internal = FF_FILTER_FLAG_HWFRAME_AWARE,
202};200};
libavfilter/vf_hysteresis.c+2−4
@@ -362,7 +362,6 @@ static const AVFilterPad hysteresis_inputs[] = { · 361 unmodified lines
362 .name = "alt",362 .name = "alt",
363 .type = AVMEDIA_TYPE_VIDEO,363 .type = AVMEDIA_TYPE_VIDEO,
364 },364 },
365 { NULL }
366};365};
367 366
368static const AVFilterPad hysteresis_outputs[] = {367static const AVFilterPad hysteresis_outputs[] = {
@@ -371,7 +370,6 @@ static const AVFilterPad hysteresis_outputs[] = { · 2 unmodified lines
371 .type = AVMEDIA_TYPE_VIDEO,370 .type = AVMEDIA_TYPE_VIDEO,
372 .config_props = config_output,371 .config_props = config_output,
373 },372 },
374 { NULL }
375};373};
376 374
377const AVFilter ff_vf_hysteresis = {375const AVFilter ff_vf_hysteresis = {
@@ -382,8 +380,8 @@ const AVFilter ff_vf_hysteresis = { · 4 unmodified lines
382 .uninit = uninit,380 .uninit = uninit,
383 .query_formats = query_formats,381 .query_formats = query_formats,
384 .activate = activate,382 .activate = activate,
385 .inputs = hysteresis_inputs,383 FILTER_INPUTS(hysteresis_inputs),
386 .outputs = hysteresis_outputs,384 FILTER_OUTPUTS(hysteresis_outputs),
387 .priv_class = &hysteresis_class,385 .priv_class = &hysteresis_class,
388 .flags = AVFILTER_FLAG_SUPPORT_TIMELINE_INTERNAL,386 .flags = AVFILTER_FLAG_SUPPORT_TIMELINE_INTERNAL,
389};387};
libavfilter/vf_identity.c+4−6
@@ -390,7 +390,6 @@ static const AVFilterPad identity_inputs[] = { · 389 unmodified lines
390 .type = AVMEDIA_TYPE_VIDEO,390 .type = AVMEDIA_TYPE_VIDEO,
391 .config_props = config_input_ref,391 .config_props = config_input_ref,
392 },392 },
393 { NULL }
394};393};
395 394
396static const AVFilterPad identity_outputs[] = {395static const AVFilterPad identity_outputs[] = {
@@ -399,7 +398,6 @@ static const AVFilterPad identity_outputs[] = { · 2 unmodified lines
399 .type = AVMEDIA_TYPE_VIDEO,398 .type = AVMEDIA_TYPE_VIDEO,
400 .config_props = config_output,399 .config_props = config_output,
401 },400 },
402 { NULL }
403};401};
404 402
405static const AVOption options[] = {403static const AVOption options[] = {
@@ -421,8 +419,8 @@ const AVFilter ff_vf_identity = { · 15 unmodified lines
421 .activate = activate,419 .activate = activate,
422 .priv_size = sizeof(IdentityContext),420 .priv_size = sizeof(IdentityContext),
423 .priv_class = &identity_class,421 .priv_class = &identity_class,
424 .inputs = identity_inputs,422 FILTER_INPUTS(identity_inputs),
425 .outputs = identity_outputs,423 FILTER_OUTPUTS(identity_outputs),
426 .flags = AVFILTER_FLAG_SUPPORT_TIMELINE_INTERNAL | AVFILTER_FLAG_SLICE_THREADS,424 .flags = AVFILTER_FLAG_SUPPORT_TIMELINE_INTERNAL | AVFILTER_FLAG_SLICE_THREADS,
427};425};
428 426
@@ -443,8 +441,8 @@ const AVFilter ff_vf_msad = { · 14 unmodified lines
443 .activate = activate,441 .activate = activate,
444 .priv_size = sizeof(IdentityContext),442 .priv_size = sizeof(IdentityContext),
445 .priv_class = &msad_class,443 .priv_class = &msad_class,
446 .inputs = identity_inputs,444 FILTER_INPUTS(identity_inputs),
447 .outputs = identity_outputs,445 FILTER_OUTPUTS(identity_outputs),
448 .flags = AVFILTER_FLAG_SUPPORT_TIMELINE_INTERNAL | AVFILTER_FLAG_SLICE_THREADS,446 .flags = AVFILTER_FLAG_SUPPORT_TIMELINE_INTERNAL | AVFILTER_FLAG_SLICE_THREADS,
449};447};
450 448
libavfilter/vf_idet.c+2−4
@@ -425,7 +425,6 @@ static const AVFilterPad idet_inputs[] = { · 424 unmodified lines
425 .type = AVMEDIA_TYPE_VIDEO,425 .type = AVMEDIA_TYPE_VIDEO,
426 .filter_frame = filter_frame,426 .filter_frame = filter_frame,
427 },427 },
428 { NULL }
429};428};
430 429
431static const AVFilterPad idet_outputs[] = {430static const AVFilterPad idet_outputs[] = {
@@ -434,7 +433,6 @@ static const AVFilterPad idet_outputs[] = { · 2 unmodified lines
434 .type = AVMEDIA_TYPE_VIDEO,433 .type = AVMEDIA_TYPE_VIDEO,
435 .request_frame = request_frame434 .request_frame = request_frame
436 },435 },
437 { NULL }
438};436};
439 437
440const AVFilter ff_vf_idet = {438const AVFilter ff_vf_idet = {
@@ -444,7 +442,7 @@ const AVFilter ff_vf_idet = { · 3 unmodified lines
444 .init = init,442 .init = init,
445 .uninit = uninit,443 .uninit = uninit,
446 .query_formats = query_formats,444 .query_formats = query_formats,
447 .inputs = idet_inputs,445 FILTER_INPUTS(idet_inputs),
448 .outputs = idet_outputs,446 FILTER_OUTPUTS(idet_outputs),
449 .priv_class = &idet_class,447 .priv_class = &idet_class,
450};448};
libavfilter/vf_il.c+2−4
@@ -187,7 +187,6 @@ static const AVFilterPad inputs[] = { · 186 unmodified lines
187 .filter_frame = filter_frame,187 .filter_frame = filter_frame,
188 .config_props = config_input,188 .config_props = config_input,
189 },189 },
190 { NULL }
191};190};
192 191
193static const AVFilterPad outputs[] = {192static const AVFilterPad outputs[] = {
@@ -195,7 +194,6 @@ static const AVFilterPad outputs[] = { · 1 unmodified line
195 .name = "default",194 .name = "default",
196 .type = AVMEDIA_TYPE_VIDEO,195 .type = AVMEDIA_TYPE_VIDEO,
197 },196 },
198 { NULL }
199};197};
200 198
201const AVFilter ff_vf_il = {199const AVFilter ff_vf_il = {
@@ -203,8 +201,8 @@ const AVFilter ff_vf_il = { · 1 unmodified line
203 .description = NULL_IF_CONFIG_SMALL("Deinterleave or interleave fields."),201 .description = NULL_IF_CONFIG_SMALL("Deinterleave or interleave fields."),
204 .priv_size = sizeof(IlContext),202 .priv_size = sizeof(IlContext),
205 .query_formats = query_formats,203 .query_formats = query_formats,
206 .inputs = inputs,204 FILTER_INPUTS(inputs),
207 .outputs = outputs,205 FILTER_OUTPUTS(outputs),
208 .priv_class = &il_class,206 .priv_class = &il_class,
209 .flags = AVFILTER_FLAG_SUPPORT_TIMELINE_GENERIC,207 .flags = AVFILTER_FLAG_SUPPORT_TIMELINE_GENERIC,
210 .process_command = ff_filter_process_command,208 .process_command = ff_filter_process_command,
libavfilter/vf_kerndeint.c+2−4
@@ -292,7 +292,6 @@ static const AVFilterPad kerndeint_inputs[] = { · 291 unmodified lines
292 .filter_frame = filter_frame,292 .filter_frame = filter_frame,
293 .config_props = config_props,293 .config_props = config_props,
294 },294 },
295 { NULL }
296};295};
297 296
298static const AVFilterPad kerndeint_outputs[] = {297static const AVFilterPad kerndeint_outputs[] = {
@@ -300,7 +299,6 @@ static const AVFilterPad kerndeint_outputs[] = { · 1 unmodified line
300 .name = "default",299 .name = "default",
301 .type = AVMEDIA_TYPE_VIDEO,300 .type = AVMEDIA_TYPE_VIDEO,
302 },301 },
303 { NULL }
304};302};
305 303
306 304
@@ -311,6 +309,6 @@ const AVFilter ff_vf_kerndeint = { · 4 unmodified lines
311 .priv_class = &kerndeint_class,309 .priv_class = &kerndeint_class,
312 .uninit = uninit,310 .uninit = uninit,
313 .query_formats = query_formats,311 .query_formats = query_formats,
314 .inputs = kerndeint_inputs,312 FILTER_INPUTS(kerndeint_inputs),
315 .outputs = kerndeint_outputs,313 FILTER_OUTPUTS(kerndeint_outputs),
316};314};
libavfilter/vf_lagfun.c+2−4
@@ -203,7 +203,6 @@ static const AVFilterPad inputs[] = { · 202 unmodified lines
203 .type = AVMEDIA_TYPE_VIDEO,203 .type = AVMEDIA_TYPE_VIDEO,
204 .filter_frame = filter_frame,204 .filter_frame = filter_frame,
205 },205 },
206 { NULL }
207};206};
208 207
209static const AVFilterPad outputs[] = {208static const AVFilterPad outputs[] = {
@@ -212,7 +211,6 @@ static const AVFilterPad outputs[] = { · 2 unmodified lines
212 .type = AVMEDIA_TYPE_VIDEO,211 .type = AVMEDIA_TYPE_VIDEO,
213 .config_props = config_output,212 .config_props = config_output,
214 },213 },
215 { NULL }
216};214};
217 215
218AVFILTER_DEFINE_CLASS(lagfun);216AVFILTER_DEFINE_CLASS(lagfun);
@@ -224,8 +222,8 @@ const AVFilter ff_vf_lagfun = { · 5 unmodified lines
224 .priv_class = &lagfun_class,222 .priv_class = &lagfun_class,
225 .query_formats = query_formats,223 .query_formats = query_formats,
226 .uninit = uninit,224 .uninit = uninit,
227 .outputs = outputs,225 FILTER_OUTPUTS(outputs),
228 .inputs = inputs,226 FILTER_INPUTS(inputs),
229 .flags = AVFILTER_FLAG_SLICE_THREADS | AVFILTER_FLAG_SUPPORT_TIMELINE_INTERNAL,227 .flags = AVFILTER_FLAG_SLICE_THREADS | AVFILTER_FLAG_SUPPORT_TIMELINE_INTERNAL,
230 .process_command = ff_filter_process_command,228 .process_command = ff_filter_process_command,
231};229};
libavfilter/vf_lenscorrection.c+2−4
@@ -343,7 +343,6 @@ static const AVFilterPad lenscorrection_inputs[] = { · 342 unmodified lines
343 .type = AVMEDIA_TYPE_VIDEO,343 .type = AVMEDIA_TYPE_VIDEO,
344 .filter_frame = filter_frame,344 .filter_frame = filter_frame,
345 },345 },
346 { NULL }
347};346};
348 347
349static const AVFilterPad lenscorrection_outputs[] = {348static const AVFilterPad lenscorrection_outputs[] = {
@@ -352,7 +351,6 @@ static const AVFilterPad lenscorrection_outputs[] = { · 2 unmodified lines
352 .type = AVMEDIA_TYPE_VIDEO,351 .type = AVMEDIA_TYPE_VIDEO,
353 .config_props = config_output,352 .config_props = config_output,
354 },353 },
355 { NULL }
356};354};
357 355
358const AVFilter ff_vf_lenscorrection = {356const AVFilter ff_vf_lenscorrection = {
@@ -360,8 +358,8 @@ const AVFilter ff_vf_lenscorrection = { · 1 unmodified line
360 .description = NULL_IF_CONFIG_SMALL("Rectify the image by correcting for lens distortion."),358 .description = NULL_IF_CONFIG_SMALL("Rectify the image by correcting for lens distortion."),
361 .priv_size = sizeof(LenscorrectionCtx),359 .priv_size = sizeof(LenscorrectionCtx),
362 .query_formats = query_formats,360 .query_formats = query_formats,
363 .inputs = lenscorrection_inputs,361 FILTER_INPUTS(lenscorrection_inputs),
364 .outputs = lenscorrection_outputs,362 FILTER_OUTPUTS(lenscorrection_outputs),
365 .priv_class = &lenscorrection_class,363 .priv_class = &lenscorrection_class,
366 .uninit = uninit,364 .uninit = uninit,
367 .flags = AVFILTER_FLAG_SUPPORT_TIMELINE_GENERIC | AVFILTER_FLAG_SLICE_THREADS,365 .flags = AVFILTER_FLAG_SUPPORT_TIMELINE_GENERIC | AVFILTER_FLAG_SLICE_THREADS,
libavfilter/vf_lensfun.c+2−4
@@ -519,7 +519,6 @@ static const AVFilterPad lensfun_inputs[] = { · 518 unmodified lines
519 .config_props = config_props,519 .config_props = config_props,
520 .filter_frame = filter_frame,520 .filter_frame = filter_frame,
521 },521 },
522 { NULL }
523};522};
524 523
525static const AVFilterPad lensfun_outputs[] = {524static const AVFilterPad lensfun_outputs[] = {
@@ -527,7 +526,6 @@ static const AVFilterPad lensfun_outputs[] = { · 1 unmodified line
527 .name = "default",526 .name = "default",
528 .type = AVMEDIA_TYPE_VIDEO,527 .type = AVMEDIA_TYPE_VIDEO,
529 },528 },
530 { NULL }
531};529};
532 530
533const AVFilter ff_vf_lensfun = {531const AVFilter ff_vf_lensfun = {
@@ -537,8 +535,8 @@ const AVFilter ff_vf_lensfun = { · 3 unmodified lines
537 .init = init,535 .init = init,
538 .uninit = uninit,536 .uninit = uninit,
539 .query_formats = query_formats,537 .query_formats = query_formats,
540 .inputs = lensfun_inputs,538 FILTER_INPUTS(lensfun_inputs),
541 .outputs = lensfun_outputs,539 FILTER_OUTPUTS(lensfun_outputs),
542 .priv_class = &lensfun_class,540 .priv_class = &lensfun_class,
543 .flags = AVFILTER_FLAG_SUPPORT_TIMELINE_GENERIC | AVFILTER_FLAG_SLICE_THREADS,541 .flags = AVFILTER_FLAG_SUPPORT_TIMELINE_GENERIC | AVFILTER_FLAG_SLICE_THREADS,
544};542};
libavfilter/vf_libopencv.c+2−4
@@ -413,7 +413,6 @@ static const AVFilterPad avfilter_vf_ocv_inputs[] = { · 412 unmodified lines
413 .type = AVMEDIA_TYPE_VIDEO,413 .type = AVMEDIA_TYPE_VIDEO,
414 .filter_frame = filter_frame,414 .filter_frame = filter_frame,
415 },415 },
416 { NULL }
417};416};
418 417
419static const AVFilterPad avfilter_vf_ocv_outputs[] = {418static const AVFilterPad avfilter_vf_ocv_outputs[] = {
@@ -421,7 +420,6 @@ static const AVFilterPad avfilter_vf_ocv_outputs[] = { · 1 unmodified line
421 .name = "default",420 .name = "default",
422 .type = AVMEDIA_TYPE_VIDEO,421 .type = AVMEDIA_TYPE_VIDEO,
423 },422 },
424 { NULL }
425};423};
426 424
427const AVFilter ff_vf_ocv = {425const AVFilter ff_vf_ocv = {
@@ -432,6 +430,6 @@ const AVFilter ff_vf_ocv = { · 4 unmodified lines
432 .query_formats = query_formats,430 .query_formats = query_formats,
433 .init = init,431 .init = init,
434 .uninit = uninit,432 .uninit = uninit,
435 .inputs = avfilter_vf_ocv_inputs,433 FILTER_INPUTS(avfilter_vf_ocv_inputs),
436 .outputs = avfilter_vf_ocv_outputs,434 FILTER_OUTPUTS(avfilter_vf_ocv_outputs),
437};435};
libavfilter/vf_libvmaf.c+2−4
@@ -350,7 +350,6 @@ static const AVFilterPad libvmaf_inputs[] = { · 349 unmodified lines
350 .type = AVMEDIA_TYPE_VIDEO,350 .type = AVMEDIA_TYPE_VIDEO,
351 .config_props = config_input_ref,351 .config_props = config_input_ref,
352 },352 },
353 { NULL }
354};353};
355 354
356static const AVFilterPad libvmaf_outputs[] = {355static const AVFilterPad libvmaf_outputs[] = {
@@ -359,7 +358,6 @@ static const AVFilterPad libvmaf_outputs[] = { · 2 unmodified lines
359 .type = AVMEDIA_TYPE_VIDEO,358 .type = AVMEDIA_TYPE_VIDEO,
360 .config_props = config_output,359 .config_props = config_output,
361 },360 },
362 { NULL }
363};361};
364 362
365const AVFilter ff_vf_libvmaf = {363const AVFilter ff_vf_libvmaf = {
@@ -372,6 +370,6 @@ const AVFilter ff_vf_libvmaf = { · 6 unmodified lines
372 .activate = activate,370 .activate = activate,
373 .priv_size = sizeof(LIBVMAFContext),371 .priv_size = sizeof(LIBVMAFContext),
374 .priv_class = &libvmaf_class,372 .priv_class = &libvmaf_class,
375 .inputs = libvmaf_inputs,373 FILTER_INPUTS(libvmaf_inputs),
376 .outputs = libvmaf_outputs,374 FILTER_OUTPUTS(libvmaf_outputs),
377};375};
libavfilter/vf_limiter.c+2−4
@@ -246,7 +246,6 @@ static const AVFilterPad inputs[] = { · 245 unmodified lines
246 .filter_frame = filter_frame,246 .filter_frame = filter_frame,
247 .config_props = config_input,247 .config_props = config_input,
248 },248 },
249 { NULL }
250};249};
251 250
252static const AVFilterPad outputs[] = {251static const AVFilterPad outputs[] = {
@@ -254,7 +253,6 @@ static const AVFilterPad outputs[] = { · 1 unmodified line
254 .name = "default",253 .name = "default",
255 .type = AVMEDIA_TYPE_VIDEO,254 .type = AVMEDIA_TYPE_VIDEO,
256 },255 },
257 { NULL }
258};256};
259 257
260const AVFilter ff_vf_limiter = {258const AVFilter ff_vf_limiter = {
@@ -264,8 +262,8 @@ const AVFilter ff_vf_limiter = { · 3 unmodified lines
264 .priv_class = &limiter_class,262 .priv_class = &limiter_class,
265 .init = init,263 .init = init,
266 .query_formats = query_formats,264 .query_formats = query_formats,
267 .inputs = inputs,265 FILTER_INPUTS(inputs),
268 .outputs = outputs,266 FILTER_OUTPUTS(outputs),
269 .flags = AVFILTER_FLAG_SUPPORT_TIMELINE_GENERIC | AVFILTER_FLAG_SLICE_THREADS,267 .flags = AVFILTER_FLAG_SUPPORT_TIMELINE_GENERIC | AVFILTER_FLAG_SLICE_THREADS,
270 .process_command = process_command,268 .process_command = process_command,
271};269};
libavfilter/vf_lumakey.c+2−4
@@ -176,7 +176,6 @@ static const AVFilterPad lumakey_inputs[] = { · 175 unmodified lines
176 .filter_frame = filter_frame,176 .filter_frame = filter_frame,
177 .config_props = config_input,177 .config_props = config_input,
178 },178 },
179 { NULL }
180};179};
181 180
182static const AVFilterPad lumakey_outputs[] = {181static const AVFilterPad lumakey_outputs[] = {
@@ -184,7 +183,6 @@ static const AVFilterPad lumakey_outputs[] = { · 1 unmodified line
184 .name = "default",183 .name = "default",
185 .type = AVMEDIA_TYPE_VIDEO,184 .type = AVMEDIA_TYPE_VIDEO,
186 },185 },
187 { NULL }
188};186};
189 187
190#define OFFSET(x) offsetof(LumakeyContext, x)188#define OFFSET(x) offsetof(LumakeyContext, x)
@@ -205,8 +203,8 @@ const AVFilter ff_vf_lumakey = { · 14 unmodified lines
205 .priv_size = sizeof(LumakeyContext),203 .priv_size = sizeof(LumakeyContext),
206 .priv_class = &lumakey_class,204 .priv_class = &lumakey_class,
207 .query_formats = query_formats,205 .query_formats = query_formats,
208 .inputs = lumakey_inputs,206 FILTER_INPUTS(lumakey_inputs),
209 .outputs = lumakey_outputs,207 FILTER_OUTPUTS(lumakey_outputs),
210 .flags = AVFILTER_FLAG_SUPPORT_TIMELINE_GENERIC | AVFILTER_FLAG_SLICE_THREADS,208 .flags = AVFILTER_FLAG_SUPPORT_TIMELINE_GENERIC | AVFILTER_FLAG_SLICE_THREADS,
211 .process_command = process_command,209 .process_command = process_command,
212};210};
libavfilter/vf_lut.c+2−4
@@ -580,13 +580,11 @@ static const AVFilterPad inputs[] = { · 579 unmodified lines
580 .filter_frame = filter_frame,580 .filter_frame = filter_frame,
581 .config_props = config_props,581 .config_props = config_props,
582 },582 },
583 { NULL }
584};583};
585static const AVFilterPad outputs[] = {584static const AVFilterPad outputs[] = {
586 { .name = "default",585 { .name = "default",
587 .type = AVMEDIA_TYPE_VIDEO,586 .type = AVMEDIA_TYPE_VIDEO,
588 },587 },
589 { NULL }
590};588};
591 589
592#define DEFINE_LUT_FILTER(name_, description_) \590#define DEFINE_LUT_FILTER(name_, description_) \
@@ -598,8 +596,8 @@ static const AVFilterPad outputs[] = { · 5 unmodified lines
598 .init = name_##_init, \596 .init = name_##_init, \
599 .uninit = uninit, \597 .uninit = uninit, \
600 .query_formats = query_formats, \598 .query_formats = query_formats, \
601 .inputs = inputs, \599 FILTER_INPUTS(inputs), \
602 .outputs = outputs, \600 FILTER_OUTPUTS(outputs), \
603 .flags = AVFILTER_FLAG_SUPPORT_TIMELINE_GENERIC | \601 .flags = AVFILTER_FLAG_SUPPORT_TIMELINE_GENERIC | \
604 AVFILTER_FLAG_SLICE_THREADS, \602 AVFILTER_FLAG_SLICE_THREADS, \
605 .process_command = process_command, \603 .process_command = process_command, \
libavfilter/vf_lut2.c+4−8
@@ -534,7 +534,6 @@ static const AVFilterPad inputs[] = { · 533 unmodified lines
534 .type = AVMEDIA_TYPE_VIDEO,534 .type = AVMEDIA_TYPE_VIDEO,
535 .config_props = config_inputy,535 .config_props = config_inputy,
536 },536 },
537 { NULL }
538};537};
539 538
540static const AVFilterPad outputs[] = {539static const AVFilterPad outputs[] = {
@@ -543,7 +542,6 @@ static const AVFilterPad outputs[] = { · 2 unmodified lines
543 .type = AVMEDIA_TYPE_VIDEO,542 .type = AVMEDIA_TYPE_VIDEO,
544 .config_props = lut2_config_output,543 .config_props = lut2_config_output,
545 },544 },
546 { NULL }
547};545};
548 546
549static int process_command(AVFilterContext *ctx, const char *cmd, const char *args,547static int process_command(AVFilterContext *ctx, const char *cmd, const char *args,
@@ -570,8 +568,8 @@ const AVFilter ff_vf_lut2 = { · 20 unmodified lines
570 .uninit = uninit,568 .uninit = uninit,
571 .query_formats = query_formats,569 .query_formats = query_formats,
572 .activate = activate,570 .activate = activate,
573 .inputs = inputs,571 FILTER_INPUTS(inputs),
574 .outputs = outputs,572 FILTER_OUTPUTS(outputs),
575 .flags = AVFILTER_FLAG_SUPPORT_TIMELINE_INTERNAL |573 .flags = AVFILTER_FLAG_SUPPORT_TIMELINE_INTERNAL |
576 AVFILTER_FLAG_SLICE_THREADS,574 AVFILTER_FLAG_SLICE_THREADS,
577 .process_command = process_command,575 .process_command = process_command,
@@ -642,7 +640,6 @@ static const AVFilterPad tlut2_inputs[] = { · 64 unmodified lines
642 .filter_frame = tlut2_filter_frame,640 .filter_frame = tlut2_filter_frame,
643 .config_props = config_inputx,641 .config_props = config_inputx,
644 },642 },
645 { NULL }
646};643};
647 644
648static const AVFilterPad tlut2_outputs[] = {645static const AVFilterPad tlut2_outputs[] = {
@@ -651,7 +648,6 @@ static const AVFilterPad tlut2_outputs[] = { · 2 unmodified lines
651 .type = AVMEDIA_TYPE_VIDEO,648 .type = AVMEDIA_TYPE_VIDEO,
652 .config_props = config_output,649 .config_props = config_output,
653 },650 },
654 { NULL }
655};651};
656 652
657const AVFilter ff_vf_tlut2 = {653const AVFilter ff_vf_tlut2 = {
@@ -662,8 +658,8 @@ const AVFilter ff_vf_tlut2 = { · 4 unmodified lines
662 .query_formats = query_formats,658 .query_formats = query_formats,
663 .init = init,659 .init = init,
664 .uninit = uninit,660 .uninit = uninit,
665 .inputs = tlut2_inputs,661 FILTER_INPUTS(tlut2_inputs),
666 .outputs = tlut2_outputs,662 FILTER_OUTPUTS(tlut2_outputs),
667 .flags = AVFILTER_FLAG_SUPPORT_TIMELINE_INTERNAL |663 .flags = AVFILTER_FLAG_SUPPORT_TIMELINE_INTERNAL |
668 AVFILTER_FLAG_SLICE_THREADS,664 AVFILTER_FLAG_SLICE_THREADS,
669 .process_command = process_command,665 .process_command = process_command,
libavfilter/vf_lut3d.c+6−12
@@ -1340,7 +1340,6 @@ static const AVFilterPad lut3d_inputs[] = { · 1339 unmodified lines
1340 .filter_frame = filter_frame,1340 .filter_frame = filter_frame,
1341 .config_props = config_input,1341 .config_props = config_input,
1342 },1342 },
1343 { NULL }
1344};1343};
1345 1344
1346static const AVFilterPad lut3d_outputs[] = {1345static const AVFilterPad lut3d_outputs[] = {
@@ -1348,7 +1347,6 @@ static const AVFilterPad lut3d_outputs[] = { · 1 unmodified line
1348 .name = "default",1347 .name = "default",
1349 .type = AVMEDIA_TYPE_VIDEO,1348 .type = AVMEDIA_TYPE_VIDEO,
1350 },1349 },
1351 { NULL }
1352};1350};
1353 1351
1354const AVFilter ff_vf_lut3d = {1352const AVFilter ff_vf_lut3d = {
@@ -1358,8 +1356,8 @@ const AVFilter ff_vf_lut3d = { · 3 unmodified lines
1358 .init = lut3d_init,1356 .init = lut3d_init,
1359 .uninit = lut3d_uninit,1357 .uninit = lut3d_uninit,
1360 .query_formats = query_formats,1358 .query_formats = query_formats,
1361 .inputs = lut3d_inputs,1359 FILTER_INPUTS(lut3d_inputs),
1362 .outputs = lut3d_outputs,1360 FILTER_OUTPUTS(lut3d_outputs),
1363 .priv_class = &lut3d_class,1361 .priv_class = &lut3d_class,
1364 .flags = AVFILTER_FLAG_SUPPORT_TIMELINE_GENERIC | AVFILTER_FLAG_SLICE_THREADS,1362 .flags = AVFILTER_FLAG_SUPPORT_TIMELINE_GENERIC | AVFILTER_FLAG_SLICE_THREADS,
1365 .process_command = process_command,1363 .process_command = process_command,
@@ -1606,7 +1604,6 @@ static const AVFilterPad haldclut_inputs[] = { · 240 unmodified lines
1606 .type = AVMEDIA_TYPE_VIDEO,1604 .type = AVMEDIA_TYPE_VIDEO,
1607 .config_props = config_clut,1605 .config_props = config_clut,
1608 },1606 },
1609 { NULL }
1610};1607};
1611 1608
1612static const AVFilterPad haldclut_outputs[] = {1609static const AVFilterPad haldclut_outputs[] = {
@@ -1615,7 +1612,6 @@ static const AVFilterPad haldclut_outputs[] = { · 2 unmodified lines
1615 .type = AVMEDIA_TYPE_VIDEO,1612 .type = AVMEDIA_TYPE_VIDEO,
1616 .config_props = config_output,1613 .config_props = config_output,
1617 },1614 },
1618 { NULL }
1619};1615};
1620 1616
1621const AVFilter ff_vf_haldclut = {1617const AVFilter ff_vf_haldclut = {
@@ -1627,8 +1623,8 @@ const AVFilter ff_vf_haldclut = { · 5 unmodified lines
1627 .uninit = haldclut_uninit,1623 .uninit = haldclut_uninit,
1628 .query_formats = query_formats,1624 .query_formats = query_formats,
1629 .activate = activate,1625 .activate = activate,
1630 .inputs = haldclut_inputs,1626 FILTER_INPUTS(haldclut_inputs),
1631 .outputs = haldclut_outputs,1627 FILTER_OUTPUTS(haldclut_outputs),
1632 .priv_class = &haldclut_class,1628 .priv_class = &haldclut_class,
1633 .flags = AVFILTER_FLAG_SUPPORT_TIMELINE_INTERNAL | AVFILTER_FLAG_SLICE_THREADS,1629 .flags = AVFILTER_FLAG_SUPPORT_TIMELINE_INTERNAL | AVFILTER_FLAG_SLICE_THREADS,
1634 .process_command = process_command,1630 .process_command = process_command,
@@ -2273,7 +2269,6 @@ static const AVFilterPad lut1d_inputs[] = { · 638 unmodified lines
2273 .filter_frame = filter_frame_1d,2269 .filter_frame = filter_frame_1d,
2274 .config_props = config_input_1d,2270 .config_props = config_input_1d,
2275 },2271 },
2276 { NULL }
2277};2272};
2278 2273
2279static const AVFilterPad lut1d_outputs[] = {2274static const AVFilterPad lut1d_outputs[] = {
@@ -2281,7 +2276,6 @@ static const AVFilterPad lut1d_outputs[] = { · 1 unmodified line
2281 .name = "default",2276 .name = "default",
2282 .type = AVMEDIA_TYPE_VIDEO,2277 .type = AVMEDIA_TYPE_VIDEO,
2283 },2278 },
2284 { NULL }
2285};2279};
2286 2280
2287const AVFilter ff_vf_lut1d = {2281const AVFilter ff_vf_lut1d = {
@@ -2290,8 +2284,8 @@ const AVFilter ff_vf_lut1d = { · 2 unmodified lines
2290 .priv_size = sizeof(LUT1DContext),2284 .priv_size = sizeof(LUT1DContext),
2291 .init = lut1d_init,2285 .init = lut1d_init,
2292 .query_formats = query_formats,2286 .query_formats = query_formats,
2293 .inputs = lut1d_inputs,2287 FILTER_INPUTS(lut1d_inputs),
2294 .outputs = lut1d_outputs,2288 FILTER_OUTPUTS(lut1d_outputs),
2295 .priv_class = &lut1d_class,2289 .priv_class = &lut1d_class,
2296 .flags = AVFILTER_FLAG_SUPPORT_TIMELINE_GENERIC | AVFILTER_FLAG_SLICE_THREADS,2290 .flags = AVFILTER_FLAG_SUPPORT_TIMELINE_GENERIC | AVFILTER_FLAG_SLICE_THREADS,
2297 .process_command = lut1d_process_command,2291 .process_command = lut1d_process_command,
libavfilter/vf_maskedclamp.c+2−4
@@ -304,7 +304,6 @@ static const AVFilterPad maskedclamp_inputs[] = { · 303 unmodified lines
304 .name = "bright",304 .name = "bright",
305 .type = AVMEDIA_TYPE_VIDEO,305 .type = AVMEDIA_TYPE_VIDEO,
306 },306 },
307 { NULL }
308};307};
309 308
310static const AVFilterPad maskedclamp_outputs[] = {309static const AVFilterPad maskedclamp_outputs[] = {
@@ -313,7 +312,6 @@ static const AVFilterPad maskedclamp_outputs[] = { · 2 unmodified lines
313 .type = AVMEDIA_TYPE_VIDEO,312 .type = AVMEDIA_TYPE_VIDEO,
314 .config_props = config_output,313 .config_props = config_output,
315 },314 },
316 { NULL }
317};315};
318 316
319const AVFilter ff_vf_maskedclamp = {317const AVFilter ff_vf_maskedclamp = {
@@ -323,8 +321,8 @@ const AVFilter ff_vf_maskedclamp = { · 3 unmodified lines
323 .uninit = uninit,321 .uninit = uninit,
324 .activate = activate,322 .activate = activate,
325 .query_formats = query_formats,323 .query_formats = query_formats,
326 .inputs = maskedclamp_inputs,324 FILTER_INPUTS(maskedclamp_inputs),
327 .outputs = maskedclamp_outputs,325 FILTER_OUTPUTS(maskedclamp_outputs),
328 .priv_class = &maskedclamp_class,326 .priv_class = &maskedclamp_class,
329 .flags = AVFILTER_FLAG_SUPPORT_TIMELINE_INTERNAL | AVFILTER_FLAG_SLICE_THREADS,327 .flags = AVFILTER_FLAG_SUPPORT_TIMELINE_INTERNAL | AVFILTER_FLAG_SLICE_THREADS,
330 .process_command = ff_filter_process_command,328 .process_command = ff_filter_process_command,
libavfilter/vf_maskedmerge.c+2−4
@@ -305,7 +305,6 @@ static const AVFilterPad maskedmerge_inputs[] = { · 304 unmodified lines
305 .name = "mask",305 .name = "mask",
306 .type = AVMEDIA_TYPE_VIDEO,306 .type = AVMEDIA_TYPE_VIDEO,
307 },307 },
308 { NULL }
309};308};
310 309
311static const AVFilterPad maskedmerge_outputs[] = {310static const AVFilterPad maskedmerge_outputs[] = {
@@ -314,7 +313,6 @@ static const AVFilterPad maskedmerge_outputs[] = { · 2 unmodified lines
314 .type = AVMEDIA_TYPE_VIDEO,313 .type = AVMEDIA_TYPE_VIDEO,
315 .config_props = config_output,314 .config_props = config_output,
316 },315 },
317 { NULL }
318};316};
319 317
320const AVFilter ff_vf_maskedmerge = {318const AVFilter ff_vf_maskedmerge = {
@@ -324,8 +322,8 @@ const AVFilter ff_vf_maskedmerge = { · 3 unmodified lines
324 .uninit = uninit,322 .uninit = uninit,
325 .query_formats = query_formats,323 .query_formats = query_formats,
326 .activate = activate,324 .activate = activate,
327 .inputs = maskedmerge_inputs,325 FILTER_INPUTS(maskedmerge_inputs),
328 .outputs = maskedmerge_outputs,326 FILTER_OUTPUTS(maskedmerge_outputs),
329 .priv_class = &maskedmerge_class,327 .priv_class = &maskedmerge_class,
330 .flags = AVFILTER_FLAG_SUPPORT_TIMELINE_INTERNAL | AVFILTER_FLAG_SLICE_THREADS,328 .flags = AVFILTER_FLAG_SUPPORT_TIMELINE_INTERNAL | AVFILTER_FLAG_SLICE_THREADS,
331 .process_command = ff_filter_process_command,329 .process_command = ff_filter_process_command,
libavfilter/vf_maskedminmax.c+4−6
@@ -313,7 +313,6 @@ static const AVFilterPad maskedminmax_inputs[] = { · 312 unmodified lines
313 .name = "filter2",313 .name = "filter2",
314 .type = AVMEDIA_TYPE_VIDEO,314 .type = AVMEDIA_TYPE_VIDEO,
315 },315 },
316 { NULL }
317};316};
318 317
319static const AVFilterPad maskedminmax_outputs[] = {318static const AVFilterPad maskedminmax_outputs[] = {
@@ -322,7 +321,6 @@ static const AVFilterPad maskedminmax_outputs[] = { · 2 unmodified lines
322 .type = AVMEDIA_TYPE_VIDEO,321 .type = AVMEDIA_TYPE_VIDEO,
323 .config_props = config_output,322 .config_props = config_output,
324 },323 },
325 { NULL }
326};324};
327 325
328#define maskedmin_options maskedminmax_options326#define maskedmin_options maskedminmax_options
@@ -337,8 +335,8 @@ const AVFilter ff_vf_maskedmin = { · 8 unmodified lines
337 .uninit = uninit,335 .uninit = uninit,
338 .activate = activate,336 .activate = activate,
339 .query_formats = query_formats,337 .query_formats = query_formats,
340 .inputs = maskedminmax_inputs,338 FILTER_INPUTS(maskedminmax_inputs),
341 .outputs = maskedminmax_outputs,339 FILTER_OUTPUTS(maskedminmax_outputs),
342 .flags = AVFILTER_FLAG_SUPPORT_TIMELINE_INTERNAL | AVFILTER_FLAG_SLICE_THREADS,340 .flags = AVFILTER_FLAG_SUPPORT_TIMELINE_INTERNAL | AVFILTER_FLAG_SLICE_THREADS,
343 .process_command = ff_filter_process_command,341 .process_command = ff_filter_process_command,
344};342};
@@ -355,8 +353,8 @@ const AVFilter ff_vf_maskedmax = { · 10 unmodified lines
355 .uninit = uninit,353 .uninit = uninit,
356 .activate = activate,354 .activate = activate,
357 .query_formats = query_formats,355 .query_formats = query_formats,
358 .inputs = maskedminmax_inputs,356 FILTER_INPUTS(maskedminmax_inputs),
359 .outputs = maskedminmax_outputs,357 FILTER_OUTPUTS(maskedminmax_outputs),
360 .flags = AVFILTER_FLAG_SUPPORT_TIMELINE_INTERNAL | AVFILTER_FLAG_SLICE_THREADS,358 .flags = AVFILTER_FLAG_SUPPORT_TIMELINE_INTERNAL | AVFILTER_FLAG_SLICE_THREADS,
361 .process_command = ff_filter_process_command,359 .process_command = ff_filter_process_command,
362};360};
libavfilter/vf_maskedthreshold.c+2−4
@@ -270,7 +270,6 @@ static const AVFilterPad maskedthreshold_inputs[] = { · 269 unmodified lines
270 .name = "reference",270 .name = "reference",
271 .type = AVMEDIA_TYPE_VIDEO,271 .type = AVMEDIA_TYPE_VIDEO,
272 },272 },
273 { NULL }
274};273};
275 274
276static const AVFilterPad maskedthreshold_outputs[] = {275static const AVFilterPad maskedthreshold_outputs[] = {
@@ -279,7 +278,6 @@ static const AVFilterPad maskedthreshold_outputs[] = { · 2 unmodified lines
279 .type = AVMEDIA_TYPE_VIDEO,278 .type = AVMEDIA_TYPE_VIDEO,
280 .config_props = config_output,279 .config_props = config_output,
281 },280 },
282 { NULL }
283};281};
284 282
285AVFILTER_DEFINE_CLASS(maskedthreshold);283AVFILTER_DEFINE_CLASS(maskedthreshold);
@@ -292,8 +290,8 @@ const AVFilter ff_vf_maskedthreshold = { · 6 unmodified lines
292 .uninit = uninit,290 .uninit = uninit,
293 .activate = activate,291 .activate = activate,
294 .query_formats = query_formats,292 .query_formats = query_formats,
295 .inputs = maskedthreshold_inputs,293 FILTER_INPUTS(maskedthreshold_inputs),
296 .outputs = maskedthreshold_outputs,294 FILTER_OUTPUTS(maskedthreshold_outputs),
297 .flags = AVFILTER_FLAG_SUPPORT_TIMELINE_INTERNAL | AVFILTER_FLAG_SLICE_THREADS,295 .flags = AVFILTER_FLAG_SUPPORT_TIMELINE_INTERNAL | AVFILTER_FLAG_SLICE_THREADS,
298 .process_command = ff_filter_process_command,296 .process_command = ff_filter_process_command,
299};297};
libavfilter/vf_maskfun.c+2−4
@@ -298,7 +298,6 @@ static const AVFilterPad maskfun_inputs[] = { · 297 unmodified lines
298 .filter_frame = filter_frame,298 .filter_frame = filter_frame,
299 .config_props = config_input,299 .config_props = config_input,
300 },300 },
301 { NULL }
302};301};
303 302
304static const AVFilterPad maskfun_outputs[] = {303static const AVFilterPad maskfun_outputs[] = {
@@ -306,7 +305,6 @@ static const AVFilterPad maskfun_outputs[] = { · 1 unmodified line
306 .name = "default",305 .name = "default",
307 .type = AVMEDIA_TYPE_VIDEO,306 .type = AVMEDIA_TYPE_VIDEO,
308 },307 },
309 { NULL }
310};308};
311 309
312const AVFilter ff_vf_maskfun = {310const AVFilter ff_vf_maskfun = {
@@ -315,8 +313,8 @@ const AVFilter ff_vf_maskfun = { · 2 unmodified lines
315 .priv_size = sizeof(MaskFunContext),313 .priv_size = sizeof(MaskFunContext),
316 .query_formats = query_formats,314 .query_formats = query_formats,
317 .uninit = uninit,315 .uninit = uninit,
318 .inputs = maskfun_inputs,316 FILTER_INPUTS(maskfun_inputs),
319 .outputs = maskfun_outputs,317 FILTER_OUTPUTS(maskfun_outputs),
320 .priv_class = &maskfun_class,318 .priv_class = &maskfun_class,
321 .flags = AVFILTER_FLAG_SUPPORT_TIMELINE_GENERIC | AVFILTER_FLAG_SLICE_THREADS,319 .flags = AVFILTER_FLAG_SUPPORT_TIMELINE_GENERIC | AVFILTER_FLAG_SLICE_THREADS,
322 .process_command = process_command,320 .process_command = process_command,
libavfilter/vf_mcdeint.c+2−4
@@ -290,7 +290,6 @@ static const AVFilterPad mcdeint_inputs[] = { · 289 unmodified lines
290 .filter_frame = filter_frame,290 .filter_frame = filter_frame,
291 .config_props = config_props,291 .config_props = config_props,
292 },292 },
293 { NULL }
294};293};
295 294
296static const AVFilterPad mcdeint_outputs[] = {295static const AVFilterPad mcdeint_outputs[] = {
@@ -298,7 +297,6 @@ static const AVFilterPad mcdeint_outputs[] = { · 1 unmodified line
298 .name = "default",297 .name = "default",
299 .type = AVMEDIA_TYPE_VIDEO,298 .type = AVMEDIA_TYPE_VIDEO,
300 },299 },
301 { NULL }
302};300};
303 301
304const AVFilter ff_vf_mcdeint = {302const AVFilter ff_vf_mcdeint = {
@@ -307,7 +305,7 @@ const AVFilter ff_vf_mcdeint = { · 2 unmodified lines
307 .priv_size = sizeof(MCDeintContext),305 .priv_size = sizeof(MCDeintContext),
308 .uninit = uninit,306 .uninit = uninit,
309 .query_formats = query_formats,307 .query_formats = query_formats,
310 .inputs = mcdeint_inputs,308 FILTER_INPUTS(mcdeint_inputs),
311 .outputs = mcdeint_outputs,309 FILTER_OUTPUTS(mcdeint_outputs),
312 .priv_class = &mcdeint_class,310 .priv_class = &mcdeint_class,
313};311};
libavfilter/vf_median.c+2−4
@@ -273,7 +273,6 @@ static const AVFilterPad median_inputs[] = { · 272 unmodified lines
273 .config_props = config_input,273 .config_props = config_input,
274 .filter_frame = filter_frame,274 .filter_frame = filter_frame,
275 },275 },
276 { NULL }
277};276};
278 277
279static const AVFilterPad median_outputs[] = {278static const AVFilterPad median_outputs[] = {
@@ -281,7 +280,6 @@ static const AVFilterPad median_outputs[] = { · 1 unmodified line
281 .name = "default",280 .name = "default",
282 .type = AVMEDIA_TYPE_VIDEO,281 .type = AVMEDIA_TYPE_VIDEO,
283 },282 },
284 { NULL }
285};283};
286 284
287const AVFilter ff_vf_median = {285const AVFilter ff_vf_median = {
@@ -291,8 +289,8 @@ const AVFilter ff_vf_median = { · 3 unmodified lines
291 .priv_class = &median_class,289 .priv_class = &median_class,
292 .uninit = uninit,290 .uninit = uninit,
293 .query_formats = query_formats,291 .query_formats = query_formats,
294 .inputs = median_inputs,292 FILTER_INPUTS(median_inputs),
295 .outputs = median_outputs,293 FILTER_OUTPUTS(median_outputs),
296 .flags = AVFILTER_FLAG_SUPPORT_TIMELINE_GENERIC | AVFILTER_FLAG_SLICE_THREADS,294 .flags = AVFILTER_FLAG_SUPPORT_TIMELINE_GENERIC | AVFILTER_FLAG_SLICE_THREADS,
297 .process_command = process_command,295 .process_command = process_command,
298};296};
libavfilter/vf_mergeplanes.c+1−2
@@ -293,7 +293,6 @@ static const AVFilterPad mergeplanes_outputs[] = { · 292 unmodified lines
293 .type = AVMEDIA_TYPE_VIDEO,293 .type = AVMEDIA_TYPE_VIDEO,
294 .config_props = config_output,294 .config_props = config_output,
295 },295 },
296 { NULL }
297};296};
298 297
299const AVFilter ff_vf_mergeplanes = {298const AVFilter ff_vf_mergeplanes = {
@@ -306,6 +305,6 @@ const AVFilter ff_vf_mergeplanes = { · 6 unmodified lines
306 .query_formats = query_formats,305 .query_formats = query_formats,
307 .activate = activate,306 .activate = activate,
308 .inputs = NULL,307 .inputs = NULL,
309 .outputs = mergeplanes_outputs,308 FILTER_OUTPUTS(mergeplanes_outputs),
310 .flags = AVFILTER_FLAG_DYNAMIC_INPUTS,309 .flags = AVFILTER_FLAG_DYNAMIC_INPUTS,
311};310};
libavfilter/vf_mestimate.c+2−4
@@ -353,7 +353,6 @@ static const AVFilterPad mestimate_inputs[] = { · 352 unmodified lines
353 .filter_frame = filter_frame,353 .filter_frame = filter_frame,
354 .config_props = config_input,354 .config_props = config_input,
355 },355 },
356 { NULL }
357};356};
358 357
359static const AVFilterPad mestimate_outputs[] = {358static const AVFilterPad mestimate_outputs[] = {
@@ -361,7 +360,6 @@ static const AVFilterPad mestimate_outputs[] = { · 1 unmodified line
361 .name = "default",360 .name = "default",
362 .type = AVMEDIA_TYPE_VIDEO,361 .type = AVMEDIA_TYPE_VIDEO,
363 },362 },
364 { NULL }
365};363};
366 364
367const AVFilter ff_vf_mestimate = {365const AVFilter ff_vf_mestimate = {
@@ -371,6 +369,6 @@ const AVFilter ff_vf_mestimate = { · 3 unmodified lines
371 .priv_class = &mestimate_class,369 .priv_class = &mestimate_class,
372 .uninit = uninit,370 .uninit = uninit,
373 .query_formats = query_formats,371 .query_formats = query_formats,
374 .inputs = mestimate_inputs,372 FILTER_INPUTS(mestimate_inputs),
375 .outputs = mestimate_outputs,373 FILTER_OUTPUTS(mestimate_outputs),
376};374};
libavfilter/vf_midequalizer.c+2−4
@@ -363,7 +363,6 @@ static const AVFilterPad midequalizer_inputs[] = { · 362 unmodified lines
363 .type = AVMEDIA_TYPE_VIDEO,363 .type = AVMEDIA_TYPE_VIDEO,
364 .config_props = config_input1,364 .config_props = config_input1,
365 },365 },
366 { NULL }
367};366};
368 367
369static const AVFilterPad midequalizer_outputs[] = {368static const AVFilterPad midequalizer_outputs[] = {
@@ -372,7 +371,6 @@ static const AVFilterPad midequalizer_outputs[] = { · 2 unmodified lines
372 .type = AVMEDIA_TYPE_VIDEO,371 .type = AVMEDIA_TYPE_VIDEO,
373 .config_props = config_output,372 .config_props = config_output,
374 },373 },
375 { NULL }
376};374};
377 375
378const AVFilter ff_vf_midequalizer = {376const AVFilter ff_vf_midequalizer = {
@@ -382,8 +380,8 @@ const AVFilter ff_vf_midequalizer = { · 3 unmodified lines
382 .uninit = uninit,380 .uninit = uninit,
383 .query_formats = query_formats,381 .query_formats = query_formats,
384 .activate = activate,382 .activate = activate,
385 .inputs = midequalizer_inputs,383 FILTER_INPUTS(midequalizer_inputs),
386 .outputs = midequalizer_outputs,384 FILTER_OUTPUTS(midequalizer_outputs),
387 .priv_class = &midequalizer_class,385 .priv_class = &midequalizer_class,
388 .flags = AVFILTER_FLAG_SUPPORT_TIMELINE_INTERNAL,386 .flags = AVFILTER_FLAG_SUPPORT_TIMELINE_INTERNAL,
389};387};
libavfilter/vf_minterpolate.c+2−4
@@ -1242,7 +1242,6 @@ static const AVFilterPad minterpolate_inputs[] = { · 1241 unmodified lines
1242 .filter_frame = filter_frame,1242 .filter_frame = filter_frame,
1243 .config_props = config_input,1243 .config_props = config_input,
1244 },1244 },
1245 { NULL }
1246};1245};
1247 1246
1248static const AVFilterPad minterpolate_outputs[] = {1247static const AVFilterPad minterpolate_outputs[] = {
@@ -1251,7 +1250,6 @@ static const AVFilterPad minterpolate_outputs[] = { · 2 unmodified lines
1251 .type = AVMEDIA_TYPE_VIDEO,1250 .type = AVMEDIA_TYPE_VIDEO,
1252 .config_props = config_output,1251 .config_props = config_output,
1253 },1252 },
1254 { NULL }
1255};1253};
1256 1254
1257const AVFilter ff_vf_minterpolate = {1255const AVFilter ff_vf_minterpolate = {
@@ -1261,6 +1259,6 @@ const AVFilter ff_vf_minterpolate = { · 3 unmodified lines
1261 .priv_class = &minterpolate_class,1259 .priv_class = &minterpolate_class,
1262 .uninit = uninit,1260 .uninit = uninit,
1263 .query_formats = query_formats,1261 .query_formats = query_formats,
1264 .inputs = minterpolate_inputs,1262 FILTER_INPUTS(minterpolate_inputs),
1265 .outputs = minterpolate_outputs,1263 FILTER_OUTPUTS(minterpolate_outputs),
1266};1264};
libavfilter/vf_misc_vaapi.c+4−6
@@ -222,7 +222,6 @@ static const AVFilterPad misc_vaapi_inputs[] = { · 221 unmodified lines
222 .filter_frame = &misc_vaapi_filter_frame,222 .filter_frame = &misc_vaapi_filter_frame,
223 .config_props = &ff_vaapi_vpp_config_input,223 .config_props = &ff_vaapi_vpp_config_input,
224 },224 },
225 { NULL }
226};225};
227 226
228static const AVFilterPad misc_vaapi_outputs[] = {227static const AVFilterPad misc_vaapi_outputs[] = {
@@ -231,7 +230,6 @@ static const AVFilterPad misc_vaapi_outputs[] = { · 2 unmodified lines
231 .type = AVMEDIA_TYPE_VIDEO,230 .type = AVMEDIA_TYPE_VIDEO,
232 .config_props = &ff_vaapi_vpp_config_output,231 .config_props = &ff_vaapi_vpp_config_output,
233 },232 },
234 { NULL }
235};233};
236 234
237const AVFilter ff_vf_denoise_vaapi = {235const AVFilter ff_vf_denoise_vaapi = {
@@ -241,8 +239,8 @@ const AVFilter ff_vf_denoise_vaapi = { · 3 unmodified lines
241 .init = &denoise_vaapi_init,239 .init = &denoise_vaapi_init,
242 .uninit = &ff_vaapi_vpp_ctx_uninit,240 .uninit = &ff_vaapi_vpp_ctx_uninit,
243 .query_formats = &ff_vaapi_vpp_query_formats,241 .query_formats = &ff_vaapi_vpp_query_formats,
244 .inputs = misc_vaapi_inputs,242 FILTER_INPUTS(misc_vaapi_inputs),
245 .outputs = misc_vaapi_outputs,243 FILTER_OUTPUTS(misc_vaapi_outputs),
246 .priv_class = &denoise_vaapi_class,244 .priv_class = &denoise_vaapi_class,
247 .flags_internal = FF_FILTER_FLAG_HWFRAME_AWARE,245 .flags_internal = FF_FILTER_FLAG_HWFRAME_AWARE,
248};246};
@@ -254,8 +252,8 @@ const AVFilter ff_vf_sharpness_vaapi = { · 5 unmodified lines
254 .init = &sharpness_vaapi_init,252 .init = &sharpness_vaapi_init,
255 .uninit = &ff_vaapi_vpp_ctx_uninit,253 .uninit = &ff_vaapi_vpp_ctx_uninit,
256 .query_formats = &ff_vaapi_vpp_query_formats,254 .query_formats = &ff_vaapi_vpp_query_formats,
257 .inputs = misc_vaapi_inputs,255 FILTER_INPUTS(misc_vaapi_inputs),
258 .outputs = misc_vaapi_outputs,256 FILTER_OUTPUTS(misc_vaapi_outputs),
259 .priv_class = &sharpness_vaapi_class,257 .priv_class = &sharpness_vaapi_class,
260 .flags_internal = FF_FILTER_FLAG_HWFRAME_AWARE,258 .flags_internal = FF_FILTER_FLAG_HWFRAME_AWARE,
261};259};
libavfilter/vf_mix.c+3−5
@@ -353,7 +353,6 @@ static const AVFilterPad outputs[] = { · 352 unmodified lines
353 .type = AVMEDIA_TYPE_VIDEO,353 .type = AVMEDIA_TYPE_VIDEO,
354 .config_props = config_output,354 .config_props = config_output,
355 },355 },
356 { NULL }
357};356};
358 357
359#if CONFIG_MIX_FILTER358#if CONFIG_MIX_FILTER
@@ -365,7 +364,7 @@ const AVFilter ff_vf_mix = { · 5 unmodified lines
365 .priv_size = sizeof(MixContext),364 .priv_size = sizeof(MixContext),
366 .priv_class = &mix_class,365 .priv_class = &mix_class,
367 .query_formats = query_formats,366 .query_formats = query_formats,
368 .outputs = outputs,367 FILTER_OUTPUTS(outputs),
369 .init = init,368 .init = init,
370 .uninit = uninit,369 .uninit = uninit,
371 .activate = activate,370 .activate = activate,
@@ -432,7 +431,6 @@ static const AVFilterPad inputs[] = { · 60 unmodified lines
432 .type = AVMEDIA_TYPE_VIDEO,431 .type = AVMEDIA_TYPE_VIDEO,
433 .filter_frame = tmix_filter_frame,432 .filter_frame = tmix_filter_frame,
434 },433 },
435 { NULL }
436};434};
437 435
438AVFILTER_DEFINE_CLASS(tmix);436AVFILTER_DEFINE_CLASS(tmix);
@@ -443,8 +441,8 @@ const AVFilter ff_vf_tmix = { · 4 unmodified lines
443 .priv_size = sizeof(MixContext),441 .priv_size = sizeof(MixContext),
444 .priv_class = &tmix_class,442 .priv_class = &tmix_class,
445 .query_formats = query_formats,443 .query_formats = query_formats,
446 .outputs = outputs,444 FILTER_OUTPUTS(outputs),
447 .inputs = inputs,445 FILTER_INPUTS(inputs),
448 .init = init,446 .init = init,
449 .uninit = uninit,447 .uninit = uninit,
450 .flags = AVFILTER_FLAG_SUPPORT_TIMELINE_INTERNAL | AVFILTER_FLAG_SLICE_THREADS,448 .flags = AVFILTER_FLAG_SUPPORT_TIMELINE_INTERNAL | AVFILTER_FLAG_SLICE_THREADS,
libavfilter/vf_monochrome.c+2−4
@@ -271,7 +271,6 @@ static const AVFilterPad monochrome_inputs[] = { · 270 unmodified lines
271 .filter_frame = filter_frame,271 .filter_frame = filter_frame,
272 .config_props = config_input,272 .config_props = config_input,
273 },273 },
274 { NULL }
275};274};
276 275
277static const AVFilterPad monochrome_outputs[] = {276static const AVFilterPad monochrome_outputs[] = {
@@ -279,7 +278,6 @@ static const AVFilterPad monochrome_outputs[] = { · 1 unmodified line
279 .name = "default",278 .name = "default",
280 .type = AVMEDIA_TYPE_VIDEO,279 .type = AVMEDIA_TYPE_VIDEO,
281 },280 },
282 { NULL }
283};281};
284 282
285#define OFFSET(x) offsetof(MonochromeContext, x)283#define OFFSET(x) offsetof(MonochromeContext, x)
@@ -301,8 +299,8 @@ const AVFilter ff_vf_monochrome = { · 15 unmodified lines
301 .priv_size = sizeof(MonochromeContext),299 .priv_size = sizeof(MonochromeContext),
302 .priv_class = &monochrome_class,300 .priv_class = &monochrome_class,
303 .query_formats = query_formats,301 .query_formats = query_formats,
304 .inputs = monochrome_inputs,302 FILTER_INPUTS(monochrome_inputs),
305 .outputs = monochrome_outputs,303 FILTER_OUTPUTS(monochrome_outputs),
306 .flags = AVFILTER_FLAG_SUPPORT_TIMELINE_GENERIC | AVFILTER_FLAG_SLICE_THREADS,304 .flags = AVFILTER_FLAG_SUPPORT_TIMELINE_GENERIC | AVFILTER_FLAG_SLICE_THREADS,
307 .process_command = ff_filter_process_command,305 .process_command = ff_filter_process_command,
308};306};
libavfilter/vf_mpdecimate.c+2−4
@@ -228,7 +228,6 @@ static const AVFilterPad mpdecimate_inputs[] = { · 227 unmodified lines
228 .config_props = config_input,228 .config_props = config_input,
229 .filter_frame = filter_frame,229 .filter_frame = filter_frame,
230 },230 },
231 { NULL }
232};231};
233 232
234static const AVFilterPad mpdecimate_outputs[] = {233static const AVFilterPad mpdecimate_outputs[] = {
@@ -236,7 +235,6 @@ static const AVFilterPad mpdecimate_outputs[] = { · 1 unmodified line
236 .name = "default",235 .name = "default",
237 .type = AVMEDIA_TYPE_VIDEO,236 .type = AVMEDIA_TYPE_VIDEO,
238 },237 },
239 { NULL }
240};238};
241 239
242const AVFilter ff_vf_mpdecimate = {240const AVFilter ff_vf_mpdecimate = {
@@ -247,6 +245,6 @@ const AVFilter ff_vf_mpdecimate = { · 4 unmodified lines
247 .priv_size = sizeof(DecimateContext),245 .priv_size = sizeof(DecimateContext),
248 .priv_class = &mpdecimate_class,246 .priv_class = &mpdecimate_class,
249 .query_formats = query_formats,247 .query_formats = query_formats,
250 .inputs = mpdecimate_inputs,248 FILTER_INPUTS(mpdecimate_inputs),
251 .outputs = mpdecimate_outputs,249 FILTER_OUTPUTS(mpdecimate_outputs),
252};250};
libavfilter/vf_neighbor.c+2−4
@@ -342,7 +342,6 @@ static const AVFilterPad neighbor_inputs[] = { · 341 unmodified lines
342 .filter_frame = filter_frame,342 .filter_frame = filter_frame,
343 .config_props = config_input,343 .config_props = config_input,
344 },344 },
345 { NULL }
346};345};
347 346
348static const AVFilterPad neighbor_outputs[] = {347static const AVFilterPad neighbor_outputs[] = {
@@ -350,7 +349,6 @@ static const AVFilterPad neighbor_outputs[] = { · 1 unmodified line
350 .name = "default",349 .name = "default",
351 .type = AVMEDIA_TYPE_VIDEO,350 .type = AVMEDIA_TYPE_VIDEO,
352 },351 },
353 { NULL }
354};352};
355 353
356#define OFFSET(x) offsetof(NContext, x)354#define OFFSET(x) offsetof(NContext, x)
@@ -365,8 +363,8 @@ const AVFilter ff_vf_##name_ = { \ · 8 unmodified lines
365 .priv_size = sizeof(NContext), \363 .priv_size = sizeof(NContext), \
366 .priv_class = &name_##_class, \364 .priv_class = &name_##_class, \
367 .query_formats = query_formats, \365 .query_formats = query_formats, \
368 .inputs = neighbor_inputs, \366 FILTER_INPUTS(neighbor_inputs), \
369 .outputs = neighbor_outputs, \367 FILTER_OUTPUTS(neighbor_outputs), \
370 .flags = AVFILTER_FLAG_SUPPORT_TIMELINE_GENERIC| \368 .flags = AVFILTER_FLAG_SUPPORT_TIMELINE_GENERIC| \
371 AVFILTER_FLAG_SLICE_THREADS, \369 AVFILTER_FLAG_SLICE_THREADS, \
372 .process_command = ff_filter_process_command, \370 .process_command = ff_filter_process_command, \
libavfilter/vf_neighbor_opencl.c+4−6
@@ -245,7 +245,6 @@ static const AVFilterPad neighbor_opencl_inputs[] = { · 244 unmodified lines
245 .filter_frame = &neighbor_opencl_filter_frame,245 .filter_frame = &neighbor_opencl_filter_frame,
246 .config_props = &ff_opencl_filter_config_input,246 .config_props = &ff_opencl_filter_config_input,
247 },247 },
248 { NULL }
249};248};
250 249
251static const AVFilterPad neighbor_opencl_outputs[] = {250static const AVFilterPad neighbor_opencl_outputs[] = {
@@ -254,7 +253,6 @@ static const AVFilterPad neighbor_opencl_outputs[] = { · 2 unmodified lines
254 .type = AVMEDIA_TYPE_VIDEO,253 .type = AVMEDIA_TYPE_VIDEO,
255 .config_props = &ff_opencl_filter_config_output,254 .config_props = &ff_opencl_filter_config_output,
256 },255 },
257 { NULL }
258};256};
259 257
260#define OFFSET(x) offsetof(NeighborOpenCLContext, x)258#define OFFSET(x) offsetof(NeighborOpenCLContext, x)
@@ -281,8 +279,8 @@ const AVFilter ff_vf_erosion_opencl = { · 20 unmodified lines
281 .init = &ff_opencl_filter_init,279 .init = &ff_opencl_filter_init,
282 .uninit = &neighbor_opencl_uninit,280 .uninit = &neighbor_opencl_uninit,
283 .query_formats = &ff_opencl_filter_query_formats,281 .query_formats = &ff_opencl_filter_query_formats,
284 .inputs = neighbor_opencl_inputs,282 FILTER_INPUTS(neighbor_opencl_inputs),
285 .outputs = neighbor_opencl_outputs,283 FILTER_OUTPUTS(neighbor_opencl_outputs),
286 .flags_internal = FF_FILTER_FLAG_HWFRAME_AWARE,284 .flags_internal = FF_FILTER_FLAG_HWFRAME_AWARE,
287};285};
288 286
@@ -309,8 +307,8 @@ const AVFilter ff_vf_dilation_opencl = { · 20 unmodified lines
309 .init = &ff_opencl_filter_init,307 .init = &ff_opencl_filter_init,
310 .uninit = &neighbor_opencl_uninit,308 .uninit = &neighbor_opencl_uninit,
311 .query_formats = &ff_opencl_filter_query_formats,309 .query_formats = &ff_opencl_filter_query_formats,
312 .inputs = neighbor_opencl_inputs,310 FILTER_INPUTS(neighbor_opencl_inputs),
313 .outputs = neighbor_opencl_outputs,311 FILTER_OUTPUTS(neighbor_opencl_outputs),
314 .flags_internal = FF_FILTER_FLAG_HWFRAME_AWARE,312 .flags_internal = FF_FILTER_FLAG_HWFRAME_AWARE,
315};313};
316 314
libavfilter/vf_nlmeans.c+2−4
@@ -563,7 +563,6 @@ static const AVFilterPad nlmeans_inputs[] = { · 562 unmodified lines
563 .config_props = config_input,563 .config_props = config_input,
564 .filter_frame = filter_frame,564 .filter_frame = filter_frame,
565 },565 },
566 { NULL }
567};566};
568 567
569static const AVFilterPad nlmeans_outputs[] = {568static const AVFilterPad nlmeans_outputs[] = {
@@ -571,7 +570,6 @@ static const AVFilterPad nlmeans_outputs[] = { · 1 unmodified line
571 .name = "default",570 .name = "default",
572 .type = AVMEDIA_TYPE_VIDEO,571 .type = AVMEDIA_TYPE_VIDEO,
573 },572 },
574 { NULL }
575};573};
576 574
577const AVFilter ff_vf_nlmeans = {575const AVFilter ff_vf_nlmeans = {
@@ -581,8 +579,8 @@ const AVFilter ff_vf_nlmeans = { · 3 unmodified lines
581 .init = init,579 .init = init,
582 .uninit = uninit,580 .uninit = uninit,
583 .query_formats = query_formats,581 .query_formats = query_formats,
584 .inputs = nlmeans_inputs,582 FILTER_INPUTS(nlmeans_inputs),
585 .outputs = nlmeans_outputs,583 FILTER_OUTPUTS(nlmeans_outputs),
586 .priv_class = &nlmeans_class,584 .priv_class = &nlmeans_class,
587 .flags = AVFILTER_FLAG_SUPPORT_TIMELINE_GENERIC | AVFILTER_FLAG_SLICE_THREADS,585 .flags = AVFILTER_FLAG_SUPPORT_TIMELINE_GENERIC | AVFILTER_FLAG_SLICE_THREADS,
588};586};
libavfilter/vf_nlmeans_opencl.c+2−4
@@ -417,7 +417,6 @@ static const AVFilterPad nlmeans_opencl_inputs[] = { · 416 unmodified lines
417 .filter_frame = &nlmeans_opencl_filter_frame,417 .filter_frame = &nlmeans_opencl_filter_frame,
418 .config_props = &ff_opencl_filter_config_input,418 .config_props = &ff_opencl_filter_config_input,
419 },419 },
420 { NULL }
421};420};
422 421
423static const AVFilterPad nlmeans_opencl_outputs[] = {422static const AVFilterPad nlmeans_opencl_outputs[] = {
@@ -426,7 +425,6 @@ static const AVFilterPad nlmeans_opencl_outputs[] = { · 2 unmodified lines
426 .type = AVMEDIA_TYPE_VIDEO,425 .type = AVMEDIA_TYPE_VIDEO,
427 .config_props = &ff_opencl_filter_config_output,426 .config_props = &ff_opencl_filter_config_output,
428 },427 },
429 { NULL }
430};428};
431 429
432const AVFilter ff_vf_nlmeans_opencl = {430const AVFilter ff_vf_nlmeans_opencl = {
@@ -437,7 +435,7 @@ const AVFilter ff_vf_nlmeans_opencl = { · 4 unmodified lines
437 .init = &ff_opencl_filter_init,435 .init = &ff_opencl_filter_init,
438 .uninit = &nlmeans_opencl_uninit,436 .uninit = &nlmeans_opencl_uninit,
439 .query_formats = &ff_opencl_filter_query_formats,437 .query_formats = &ff_opencl_filter_query_formats,
440 .inputs = nlmeans_opencl_inputs,438 FILTER_INPUTS(nlmeans_opencl_inputs),
441 .outputs = nlmeans_opencl_outputs,439 FILTER_OUTPUTS(nlmeans_opencl_outputs),
442 .flags_internal = FF_FILTER_FLAG_HWFRAME_AWARE,440 .flags_internal = FF_FILTER_FLAG_HWFRAME_AWARE,
443};441};
libavfilter/vf_nnedi.c+2−4
@@ -1141,7 +1141,6 @@ static const AVFilterPad inputs[] = { · 1140 unmodified lines
1141 .filter_frame = filter_frame,1141 .filter_frame = filter_frame,
1142 .config_props = config_input,1142 .config_props = config_input,
1143 },1143 },
1144 { NULL }
1145};1144};
1146 1145
1147static const AVFilterPad outputs[] = {1146static const AVFilterPad outputs[] = {
@@ -1151,7 +1150,6 @@ static const AVFilterPad outputs[] = { · 3 unmodified lines
1151 .config_props = config_output,1150 .config_props = config_output,
1152 .request_frame = request_frame,1151 .request_frame = request_frame,
1153 },1152 },
1154 { NULL }
1155};1153};
1156 1154
1157const AVFilter ff_vf_nnedi = {1155const AVFilter ff_vf_nnedi = {
@@ -1162,8 +1160,8 @@ const AVFilter ff_vf_nnedi = { · 4 unmodified lines
1162 .init = init,1160 .init = init,
1163 .uninit = uninit,1161 .uninit = uninit,
1164 .query_formats = query_formats,1162 .query_formats = query_formats,
1165 .inputs = inputs,1163 FILTER_INPUTS(inputs),
1166 .outputs = outputs,1164 FILTER_OUTPUTS(outputs),
1167 .flags = AVFILTER_FLAG_SUPPORT_TIMELINE_INTERNAL | AVFILTER_FLAG_SLICE_THREADS,1165 .flags = AVFILTER_FLAG_SUPPORT_TIMELINE_INTERNAL | AVFILTER_FLAG_SLICE_THREADS,
1168 .process_command = ff_filter_process_command,1166 .process_command = ff_filter_process_command,
1169};1167};
libavfilter/vf_noise.c+2−4
@@ -327,7 +327,6 @@ static const AVFilterPad noise_inputs[] = { · 326 unmodified lines
327 .filter_frame = filter_frame,327 .filter_frame = filter_frame,
328 .config_props = config_input,328 .config_props = config_input,
329 },329 },
330 { NULL }
331};330};
332 331
333static const AVFilterPad noise_outputs[] = {332static const AVFilterPad noise_outputs[] = {
@@ -335,7 +334,6 @@ static const AVFilterPad noise_outputs[] = { · 1 unmodified line
335 .name = "default",334 .name = "default",
336 .type = AVMEDIA_TYPE_VIDEO,335 .type = AVMEDIA_TYPE_VIDEO,
337 },336 },
338 { NULL }
339};337};
340 338
341const AVFilter ff_vf_noise = {339const AVFilter ff_vf_noise = {
@@ -345,8 +343,8 @@ const AVFilter ff_vf_noise = { · 3 unmodified lines
345 .init = init,343 .init = init,
346 .uninit = uninit,344 .uninit = uninit,
347 .query_formats = query_formats,345 .query_formats = query_formats,
348 .inputs = noise_inputs,346 FILTER_INPUTS(noise_inputs),
349 .outputs = noise_outputs,347 FILTER_OUTPUTS(noise_outputs),
350 .priv_class = &noise_class,348 .priv_class = &noise_class,
351 .flags = AVFILTER_FLAG_SUPPORT_TIMELINE_GENERIC | AVFILTER_FLAG_SLICE_THREADS,349 .flags = AVFILTER_FLAG_SUPPORT_TIMELINE_GENERIC | AVFILTER_FLAG_SLICE_THREADS,
352};350};
libavfilter/vf_normalize.c+2−4
@@ -516,7 +516,6 @@ static const AVFilterPad inputs[] = { · 515 unmodified lines
516 .filter_frame = filter_frame,516 .filter_frame = filter_frame,
517 .config_props = config_input,517 .config_props = config_input,
518 },518 },
519 { NULL }
520};519};
521 520
522static const AVFilterPad outputs[] = {521static const AVFilterPad outputs[] = {
@@ -524,7 +523,6 @@ static const AVFilterPad outputs[] = { · 1 unmodified line
524 .name = "default",523 .name = "default",
525 .type = AVMEDIA_TYPE_VIDEO,524 .type = AVMEDIA_TYPE_VIDEO,
526 },525 },
527 { NULL }
528};526};
529 527
530const AVFilter ff_vf_normalize = {528const AVFilter ff_vf_normalize = {
@@ -534,8 +532,8 @@ const AVFilter ff_vf_normalize = { · 3 unmodified lines
534 .priv_class = &normalize_class,532 .priv_class = &normalize_class,
535 .uninit = uninit,533 .uninit = uninit,
536 .query_formats = query_formats,534 .query_formats = query_formats,
537 .inputs = inputs,535 FILTER_INPUTS(inputs),
538 .outputs = outputs,536 FILTER_OUTPUTS(outputs),
539 .flags = AVFILTER_FLAG_SUPPORT_TIMELINE_INTERNAL,537 .flags = AVFILTER_FLAG_SUPPORT_TIMELINE_INTERNAL,
540 .process_command = ff_filter_process_command,538 .process_command = ff_filter_process_command,
541};539};
libavfilter/vf_null.c+2−4
@@ -31,7 +31,6 @@ static const AVFilterPad avfilter_vf_null_inputs[] = { · 30 unmodified lines
31 .name = "default",31 .name = "default",
32 .type = AVMEDIA_TYPE_VIDEO,32 .type = AVMEDIA_TYPE_VIDEO,
33 },33 },
34 { NULL }
35};34};
36 35
37static const AVFilterPad avfilter_vf_null_outputs[] = {36static const AVFilterPad avfilter_vf_null_outputs[] = {
@@ -39,12 +38,11 @@ static const AVFilterPad avfilter_vf_null_outputs[] = { · 1 unmodified line
39 .name = "default",38 .name = "default",
40 .type = AVMEDIA_TYPE_VIDEO,39 .type = AVMEDIA_TYPE_VIDEO,
41 },40 },
42 { NULL }
43};41};
44 42
45const AVFilter ff_vf_null = {43const AVFilter ff_vf_null = {
46 .name = "null",44 .name = "null",
47 .description = NULL_IF_CONFIG_SMALL("Pass the source unchanged to the output."),45 .description = NULL_IF_CONFIG_SMALL("Pass the source unchanged to the output."),
48 .inputs = avfilter_vf_null_inputs,46 FILTER_INPUTS(avfilter_vf_null_inputs),
49 .outputs = avfilter_vf_null_outputs,47 FILTER_OUTPUTS(avfilter_vf_null_outputs),
50};48};
libavfilter/vf_ocr.c+2−4
@@ -132,7 +132,6 @@ static const AVFilterPad ocr_inputs[] = { · 131 unmodified lines
132 .type = AVMEDIA_TYPE_VIDEO,132 .type = AVMEDIA_TYPE_VIDEO,
133 .filter_frame = filter_frame,133 .filter_frame = filter_frame,
134 },134 },
135 { NULL }
136};135};
137 136
138static const AVFilterPad ocr_outputs[] = {137static const AVFilterPad ocr_outputs[] = {
@@ -140,7 +139,6 @@ static const AVFilterPad ocr_outputs[] = { · 1 unmodified line
140 .name = "default",139 .name = "default",
141 .type = AVMEDIA_TYPE_VIDEO,140 .type = AVMEDIA_TYPE_VIDEO,
142 },141 },
143 { NULL }
144};142};
145 143
146const AVFilter ff_vf_ocr = {144const AVFilter ff_vf_ocr = {
@@ -151,6 +149,6 @@ const AVFilter ff_vf_ocr = { · 4 unmodified lines
151 .query_formats = query_formats,149 .query_formats = query_formats,
152 .init = init,150 .init = init,
153 .uninit = uninit,151 .uninit = uninit,
154 .inputs = ocr_inputs,152 FILTER_INPUTS(ocr_inputs),
155 .outputs = ocr_outputs,153 FILTER_OUTPUTS(ocr_outputs),
156};154};
libavfilter/vf_overlay.c+2−4
@@ -1094,7 +1094,6 @@ static const AVFilterPad avfilter_vf_overlay_inputs[] = { · 1093 unmodified lines
1094 .type = AVMEDIA_TYPE_VIDEO,1094 .type = AVMEDIA_TYPE_VIDEO,
1095 .config_props = config_input_overlay,1095 .config_props = config_input_overlay,
1096 },1096 },
1097 { NULL }
1098};1097};
1099 1098
1100static const AVFilterPad avfilter_vf_overlay_outputs[] = {1099static const AVFilterPad avfilter_vf_overlay_outputs[] = {
@@ -1103,7 +1102,6 @@ static const AVFilterPad avfilter_vf_overlay_outputs[] = { · 2 unmodified lines
1103 .type = AVMEDIA_TYPE_VIDEO,1102 .type = AVMEDIA_TYPE_VIDEO,
1104 .config_props = config_output,1103 .config_props = config_output,
1105 },1104 },
1106 { NULL }
1107};1105};
1108 1106
1109const AVFilter ff_vf_overlay = {1107const AVFilter ff_vf_overlay = {
@@ -1117,8 +1115,8 @@ const AVFilter ff_vf_overlay = { · 7 unmodified lines
1117 .query_formats = query_formats,1115 .query_formats = query_formats,
1118 .activate = activate,1116 .activate = activate,
1119 .process_command = process_command,1117 .process_command = process_command,
1120 .inputs = avfilter_vf_overlay_inputs,1118 FILTER_INPUTS(avfilter_vf_overlay_inputs),
1121 .outputs = avfilter_vf_overlay_outputs,1119 FILTER_OUTPUTS(avfilter_vf_overlay_outputs),
1122 .flags = AVFILTER_FLAG_SUPPORT_TIMELINE_INTERNAL |1120 .flags = AVFILTER_FLAG_SUPPORT_TIMELINE_INTERNAL |
1123 AVFILTER_FLAG_SLICE_THREADS,1121 AVFILTER_FLAG_SLICE_THREADS,
1124};1122};
libavfilter/vf_overlay_cuda.c+2−4
@@ -565,7 +565,6 @@ static const AVFilterPad overlay_cuda_inputs[] = { · 564 unmodified lines
565 .type = AVMEDIA_TYPE_VIDEO,565 .type = AVMEDIA_TYPE_VIDEO,
566 .config_props = config_input_overlay,566 .config_props = config_input_overlay,
567 },567 },
568 { NULL }
569};568};
570 569
571static const AVFilterPad overlay_cuda_outputs[] = {570static const AVFilterPad overlay_cuda_outputs[] = {
@@ -574,7 +573,6 @@ static const AVFilterPad overlay_cuda_outputs[] = { · 2 unmodified lines
574 .type = AVMEDIA_TYPE_VIDEO,573 .type = AVMEDIA_TYPE_VIDEO,
575 .config_props = &overlay_cuda_config_output,574 .config_props = &overlay_cuda_config_output,
576 },575 },
577 { NULL }
578};576};
579 577
580const AVFilter ff_vf_overlay_cuda = {578const AVFilter ff_vf_overlay_cuda = {
@@ -586,8 +584,8 @@ const AVFilter ff_vf_overlay_cuda = { · 5 unmodified lines
586 .uninit = &overlay_cuda_uninit,584 .uninit = &overlay_cuda_uninit,
587 .activate = &overlay_cuda_activate,585 .activate = &overlay_cuda_activate,
588 .query_formats = &overlay_cuda_query_formats,586 .query_formats = &overlay_cuda_query_formats,
589 .inputs = overlay_cuda_inputs,587 FILTER_INPUTS(overlay_cuda_inputs),
590 .outputs = overlay_cuda_outputs,588 FILTER_OUTPUTS(overlay_cuda_outputs),
591 .preinit = overlay_cuda_framesync_preinit,589 .preinit = overlay_cuda_framesync_preinit,
592 .flags_internal = FF_FILTER_FLAG_HWFRAME_AWARE,590 .flags_internal = FF_FILTER_FLAG_HWFRAME_AWARE,
593};591};
libavfilter/vf_overlay_opencl.c+2−4
@@ -300,7 +300,6 @@ static const AVFilterPad overlay_opencl_inputs[] = { · 299 unmodified lines
300 .type = AVMEDIA_TYPE_VIDEO,300 .type = AVMEDIA_TYPE_VIDEO,
301 .config_props = &ff_opencl_filter_config_input,301 .config_props = &ff_opencl_filter_config_input,
302 },302 },
303 { NULL }
304};303};
305 304
306static const AVFilterPad overlay_opencl_outputs[] = {305static const AVFilterPad overlay_opencl_outputs[] = {
@@ -309,7 +308,6 @@ static const AVFilterPad overlay_opencl_outputs[] = { · 2 unmodified lines
309 .type = AVMEDIA_TYPE_VIDEO,308 .type = AVMEDIA_TYPE_VIDEO,
310 .config_props = &overlay_opencl_config_output,309 .config_props = &overlay_opencl_config_output,
311 },310 },
312 { NULL }
313};311};
314 312
315const AVFilter ff_vf_overlay_opencl = {313const AVFilter ff_vf_overlay_opencl = {
@@ -321,7 +319,7 @@ const AVFilter ff_vf_overlay_opencl = { · 5 unmodified lines
321 .uninit = &overlay_opencl_uninit,319 .uninit = &overlay_opencl_uninit,
322 .query_formats = &ff_opencl_filter_query_formats,320 .query_formats = &ff_opencl_filter_query_formats,
323 .activate = &overlay_opencl_activate,321 .activate = &overlay_opencl_activate,
324 .inputs = overlay_opencl_inputs,322 FILTER_INPUTS(overlay_opencl_inputs),
325 .outputs = overlay_opencl_outputs,323 FILTER_OUTPUTS(overlay_opencl_outputs),
326 .flags_internal = FF_FILTER_FLAG_HWFRAME_AWARE,324 .flags_internal = FF_FILTER_FLAG_HWFRAME_AWARE,
327};325};
libavfilter/vf_overlay_qsv.c+2−4
@@ -403,7 +403,6 @@ static const AVFilterPad overlay_qsv_inputs[] = { · 402 unmodified lines
403 .type = AVMEDIA_TYPE_VIDEO,403 .type = AVMEDIA_TYPE_VIDEO,
404 .config_props = config_overlay_input,404 .config_props = config_overlay_input,
405 },405 },
406 { NULL }
407};406};
408 407
409static const AVFilterPad overlay_qsv_outputs[] = {408static const AVFilterPad overlay_qsv_outputs[] = {
@@ -412,7 +411,6 @@ static const AVFilterPad overlay_qsv_outputs[] = { · 2 unmodified lines
412 .type = AVMEDIA_TYPE_VIDEO,411 .type = AVMEDIA_TYPE_VIDEO,
413 .config_props = config_output,412 .config_props = config_output,
414 },413 },
415 { NULL }
416};414};
417 415
418const AVFilter ff_vf_overlay_qsv = {416const AVFilter ff_vf_overlay_qsv = {
@@ -424,8 +422,8 @@ const AVFilter ff_vf_overlay_qsv = { · 5 unmodified lines
424 .init = overlay_qsv_init,422 .init = overlay_qsv_init,
425 .uninit = overlay_qsv_uninit,423 .uninit = overlay_qsv_uninit,
426 .activate = activate,424 .activate = activate,
427 .inputs = overlay_qsv_inputs,425 FILTER_INPUTS(overlay_qsv_inputs),
428 .outputs = overlay_qsv_outputs,426 FILTER_OUTPUTS(overlay_qsv_outputs),
429 .priv_class = &overlay_qsv_class,427 .priv_class = &overlay_qsv_class,
430 .flags_internal = FF_FILTER_FLAG_HWFRAME_AWARE,428 .flags_internal = FF_FILTER_FLAG_HWFRAME_AWARE,
431};429};
libavfilter/vf_overlay_vulkan.c+2−4
@@ -463,7 +463,6 @@ static const AVFilterPad overlay_vulkan_inputs[] = { · 462 unmodified lines
463 .type = AVMEDIA_TYPE_VIDEO,463 .type = AVMEDIA_TYPE_VIDEO,
464 .config_props = &ff_vk_filter_config_input,464 .config_props = &ff_vk_filter_config_input,
465 },465 },
466 { NULL }
467};466};
468 467
469static const AVFilterPad overlay_vulkan_outputs[] = {468static const AVFilterPad overlay_vulkan_outputs[] = {
@@ -472,7 +471,6 @@ static const AVFilterPad overlay_vulkan_outputs[] = { · 2 unmodified lines
472 .type = AVMEDIA_TYPE_VIDEO,471 .type = AVMEDIA_TYPE_VIDEO,
473 .config_props = &overlay_vulkan_config_output,472 .config_props = &overlay_vulkan_config_output,
474 },473 },
475 { NULL }
476};474};
477 475
478const AVFilter ff_vf_overlay_vulkan = {476const AVFilter ff_vf_overlay_vulkan = {
@@ -483,8 +481,8 @@ const AVFilter ff_vf_overlay_vulkan = { · 4 unmodified lines
483 .uninit = &overlay_vulkan_uninit,481 .uninit = &overlay_vulkan_uninit,
484 .query_formats = &ff_vk_filter_query_formats,482 .query_formats = &ff_vk_filter_query_formats,
485 .activate = &overlay_vulkan_activate,483 .activate = &overlay_vulkan_activate,
486 .inputs = overlay_vulkan_inputs,484 FILTER_INPUTS(overlay_vulkan_inputs),
487 .outputs = overlay_vulkan_outputs,485 FILTER_OUTPUTS(overlay_vulkan_outputs),
488 .priv_class = &overlay_vulkan_class,486 .priv_class = &overlay_vulkan_class,
489 .flags_internal = FF_FILTER_FLAG_HWFRAME_AWARE,487 .flags_internal = FF_FILTER_FLAG_HWFRAME_AWARE,
490};488};
libavfilter/vf_owdenoise.c+2−4
@@ -351,7 +351,6 @@ static const AVFilterPad owdenoise_inputs[] = { · 350 unmodified lines
351 .filter_frame = filter_frame,351 .filter_frame = filter_frame,
352 .config_props = config_input,352 .config_props = config_input,
353 },353 },
354 { NULL }
355};354};
356 355
357static const AVFilterPad owdenoise_outputs[] = {356static const AVFilterPad owdenoise_outputs[] = {
@@ -359,7 +358,6 @@ static const AVFilterPad owdenoise_outputs[] = { · 1 unmodified line
359 .name = "default",358 .name = "default",
360 .type = AVMEDIA_TYPE_VIDEO,359 .type = AVMEDIA_TYPE_VIDEO,
361 },360 },
362 { NULL }
363};361};
364 362
365const AVFilter ff_vf_owdenoise = {363const AVFilter ff_vf_owdenoise = {
@@ -368,8 +366,8 @@ const AVFilter ff_vf_owdenoise = { · 2 unmodified lines
368 .priv_size = sizeof(OWDenoiseContext),366 .priv_size = sizeof(OWDenoiseContext),
369 .uninit = uninit,367 .uninit = uninit,
370 .query_formats = query_formats,368 .query_formats = query_formats,
371 .inputs = owdenoise_inputs,369 FILTER_INPUTS(owdenoise_inputs),
372 .outputs = owdenoise_outputs,370 FILTER_OUTPUTS(owdenoise_outputs),
373 .priv_class = &owdenoise_class,371 .priv_class = &owdenoise_class,
374 .flags = AVFILTER_FLAG_SUPPORT_TIMELINE_GENERIC,372 .flags = AVFILTER_FLAG_SUPPORT_TIMELINE_GENERIC,
375};373};
libavfilter/vf_pad.c+2−4
@@ -441,7 +441,6 @@ static const AVFilterPad avfilter_vf_pad_inputs[] = { · 440 unmodified lines
441 .get_buffer.video = get_video_buffer,441 .get_buffer.video = get_video_buffer,
442 .filter_frame = filter_frame,442 .filter_frame = filter_frame,
443 },443 },
444 { NULL }
445};444};
446 445
447static const AVFilterPad avfilter_vf_pad_outputs[] = {446static const AVFilterPad avfilter_vf_pad_outputs[] = {
@@ -450,7 +449,6 @@ static const AVFilterPad avfilter_vf_pad_outputs[] = { · 2 unmodified lines
450 .type = AVMEDIA_TYPE_VIDEO,449 .type = AVMEDIA_TYPE_VIDEO,
451 .config_props = config_output,450 .config_props = config_output,
452 },451 },
453 { NULL }
454};452};
455 453
456const AVFilter ff_vf_pad = {454const AVFilter ff_vf_pad = {
@@ -459,6 +457,6 @@ const AVFilter ff_vf_pad = { · 2 unmodified lines
459 .priv_size = sizeof(PadContext),457 .priv_size = sizeof(PadContext),
460 .priv_class = &pad_class,458 .priv_class = &pad_class,
461 .query_formats = query_formats,459 .query_formats = query_formats,
462 .inputs = avfilter_vf_pad_inputs,460 FILTER_INPUTS(avfilter_vf_pad_inputs),
463 .outputs = avfilter_vf_pad_outputs,461 FILTER_OUTPUTS(avfilter_vf_pad_outputs),
464};462};
libavfilter/vf_pad_opencl.c+2−4
@@ -354,7 +354,6 @@ static const AVFilterPad pad_opencl_inputs[] = { · 353 unmodified lines
354 .filter_frame = filter_frame,354 .filter_frame = filter_frame,
355 .config_props = &ff_opencl_filter_config_input,355 .config_props = &ff_opencl_filter_config_input,
356 },356 },
357 { NULL }
358};357};
359 358
360static const AVFilterPad pad_opencl_outputs[] = {359static const AVFilterPad pad_opencl_outputs[] = {
@@ -363,7 +362,6 @@ static const AVFilterPad pad_opencl_outputs[] = { · 2 unmodified lines
363 .type = AVMEDIA_TYPE_VIDEO,362 .type = AVMEDIA_TYPE_VIDEO,
364 .config_props = &pad_opencl_config_output,363 .config_props = &pad_opencl_config_output,
365 },364 },
366 { NULL }
367};365};
368 366
369#define OFFSET(x) offsetof(PadOpenCLContext, x)367#define OFFSET(x) offsetof(PadOpenCLContext, x)
@@ -391,7 +389,7 @@ const AVFilter ff_vf_pad_opencl = { · 21 unmodified lines
391 .init = &ff_opencl_filter_init,389 .init = &ff_opencl_filter_init,
392 .uninit = &pad_opencl_uninit,390 .uninit = &pad_opencl_uninit,
393 .query_formats = &ff_opencl_filter_query_formats,391 .query_formats = &ff_opencl_filter_query_formats,
394 .inputs = pad_opencl_inputs,392 FILTER_INPUTS(pad_opencl_inputs),
395 .outputs = pad_opencl_outputs,393 FILTER_OUTPUTS(pad_opencl_outputs),
396 .flags_internal = FF_FILTER_FLAG_HWFRAME_AWARE394 .flags_internal = FF_FILTER_FLAG_HWFRAME_AWARE
397};395};
libavfilter/vf_palettegen.c+2−4
@@ -557,7 +557,6 @@ static const AVFilterPad palettegen_inputs[] = { · 556 unmodified lines
557 .type = AVMEDIA_TYPE_VIDEO,557 .type = AVMEDIA_TYPE_VIDEO,
558 .filter_frame = filter_frame,558 .filter_frame = filter_frame,
559 },559 },
560 { NULL }
561};560};
562 561
563static const AVFilterPad palettegen_outputs[] = {562static const AVFilterPad palettegen_outputs[] = {
@@ -567,7 +566,6 @@ static const AVFilterPad palettegen_outputs[] = { · 3 unmodified lines
567 .config_props = config_output,566 .config_props = config_output,
568 .request_frame = request_frame,567 .request_frame = request_frame,
569 },568 },
570 { NULL }
571};569};
572 570
573const AVFilter ff_vf_palettegen = {571const AVFilter ff_vf_palettegen = {
@@ -576,7 +574,7 @@ const AVFilter ff_vf_palettegen = { · 2 unmodified lines
576 .priv_size = sizeof(PaletteGenContext),574 .priv_size = sizeof(PaletteGenContext),
577 .uninit = uninit,575 .uninit = uninit,
578 .query_formats = query_formats,576 .query_formats = query_formats,
579 .inputs = palettegen_inputs,577 FILTER_INPUTS(palettegen_inputs),
580 .outputs = palettegen_outputs,578 FILTER_OUTPUTS(palettegen_outputs),
581 .priv_class = &palettegen_class,579 .priv_class = &palettegen_class,
582};580};
libavfilter/vf_paletteuse.c+2−4
@@ -1118,7 +1118,6 @@ static const AVFilterPad paletteuse_inputs[] = { · 1117 unmodified lines
1118 .type = AVMEDIA_TYPE_VIDEO,1118 .type = AVMEDIA_TYPE_VIDEO,
1119 .config_props = config_input_palette,1119 .config_props = config_input_palette,
1120 },1120 },
1121 { NULL }
1122};1121};
1123 1122
1124static const AVFilterPad paletteuse_outputs[] = {1123static const AVFilterPad paletteuse_outputs[] = {
@@ -1127,7 +1126,6 @@ static const AVFilterPad paletteuse_outputs[] = { · 2 unmodified lines
1127 .type = AVMEDIA_TYPE_VIDEO,1126 .type = AVMEDIA_TYPE_VIDEO,
1128 .config_props = config_output,1127 .config_props = config_output,
1129 },1128 },
1130 { NULL }
1131};1129};
1132 1130
1133const AVFilter ff_vf_paletteuse = {1131const AVFilter ff_vf_paletteuse = {
@@ -1138,7 +1136,7 @@ const AVFilter ff_vf_paletteuse = { · 4 unmodified lines
1138 .init = init,1136 .init = init,
1139 .uninit = uninit,1137 .uninit = uninit,
1140 .activate = activate,1138 .activate = activate,
1141 .inputs = paletteuse_inputs,1139 FILTER_INPUTS(paletteuse_inputs),
1142 .outputs = paletteuse_outputs,1140 FILTER_OUTPUTS(paletteuse_outputs),
1143 .priv_class = &paletteuse_class,1141 .priv_class = &paletteuse_class,
1144};1142};
libavfilter/vf_perspective.c+2−4
@@ -498,7 +498,6 @@ static const AVFilterPad perspective_inputs[] = { · 497 unmodified lines
498 .filter_frame = filter_frame,498 .filter_frame = filter_frame,
499 .config_props = config_input,499 .config_props = config_input,
500 },500 },
501 { NULL }
502};501};
503 502
504static const AVFilterPad perspective_outputs[] = {503static const AVFilterPad perspective_outputs[] = {
@@ -506,7 +505,6 @@ static const AVFilterPad perspective_outputs[] = { · 1 unmodified line
506 .name = "default",505 .name = "default",
507 .type = AVMEDIA_TYPE_VIDEO,506 .type = AVMEDIA_TYPE_VIDEO,
508 },507 },
509 { NULL }
510};508};
511 509
512const AVFilter ff_vf_perspective = {510const AVFilter ff_vf_perspective = {
@@ -516,8 +514,8 @@ const AVFilter ff_vf_perspective = { · 3 unmodified lines
516 .init = init,514 .init = init,
517 .uninit = uninit,515 .uninit = uninit,
518 .query_formats = query_formats,516 .query_formats = query_formats,
519 .inputs = perspective_inputs,517 FILTER_INPUTS(perspective_inputs),
520 .outputs = perspective_outputs,518 FILTER_OUTPUTS(perspective_outputs),
521 .priv_class = &perspective_class,519 .priv_class = &perspective_class,
522 .flags = AVFILTER_FLAG_SUPPORT_TIMELINE_GENERIC | AVFILTER_FLAG_SLICE_THREADS,520 .flags = AVFILTER_FLAG_SUPPORT_TIMELINE_GENERIC | AVFILTER_FLAG_SLICE_THREADS,
523};521};
libavfilter/vf_phase.c+2−4
@@ -221,7 +221,6 @@ static const AVFilterPad phase_inputs[] = { · 220 unmodified lines
221 .filter_frame = filter_frame,221 .filter_frame = filter_frame,
222 .config_props = config_input,222 .config_props = config_input,
223 },223 },
224 { NULL }
225};224};
226 225
227static const AVFilterPad phase_outputs[] = {226static const AVFilterPad phase_outputs[] = {
@@ -229,7 +228,6 @@ static const AVFilterPad phase_outputs[] = { · 1 unmodified line
229 .name = "default",228 .name = "default",
230 .type = AVMEDIA_TYPE_VIDEO,229 .type = AVMEDIA_TYPE_VIDEO,
231 },230 },
232 { NULL }
233};231};
234 232
235const AVFilter ff_vf_phase = {233const AVFilter ff_vf_phase = {
@@ -239,8 +237,8 @@ const AVFilter ff_vf_phase = { · 3 unmodified lines
239 .priv_class = &phase_class,237 .priv_class = &phase_class,
240 .uninit = uninit,238 .uninit = uninit,
241 .query_formats = query_formats,239 .query_formats = query_formats,
242 .inputs = phase_inputs,240 FILTER_INPUTS(phase_inputs),
243 .outputs = phase_outputs,241 FILTER_OUTPUTS(phase_outputs),
244 .flags = AVFILTER_FLAG_SUPPORT_TIMELINE_INTERNAL,242 .flags = AVFILTER_FLAG_SUPPORT_TIMELINE_INTERNAL,
245 .process_command = ff_filter_process_command,243 .process_command = ff_filter_process_command,
246};244};
libavfilter/vf_photosensitivity.c+2−4
@@ -317,7 +317,6 @@ static const AVFilterPad inputs[] = { · 316 unmodified lines
317 .filter_frame = filter_frame,317 .filter_frame = filter_frame,
318 .config_props = config_input,318 .config_props = config_input,
319 },319 },
320 { NULL }
321};320};
322 321
323static const AVFilterPad outputs[] = {322static const AVFilterPad outputs[] = {
@@ -325,7 +324,6 @@ static const AVFilterPad outputs[] = { · 1 unmodified line
325 .name = "default",324 .name = "default",
326 .type = AVMEDIA_TYPE_VIDEO,325 .type = AVMEDIA_TYPE_VIDEO,
327 },326 },
328 { NULL }
329};327};
330 328
331const AVFilter ff_vf_photosensitivity = {329const AVFilter ff_vf_photosensitivity = {
@@ -335,6 +333,6 @@ const AVFilter ff_vf_photosensitivity = { · 3 unmodified lines
335 .priv_class = &photosensitivity_class,333 .priv_class = &photosensitivity_class,
336 .uninit = uninit,334 .uninit = uninit,
337 .query_formats = query_formats,335 .query_formats = query_formats,
338 .inputs = inputs,336 FILTER_INPUTS(inputs),
339 .outputs = outputs,337 FILTER_OUTPUTS(outputs),
340};338};
libavfilter/vf_pixdesctest.c+2−4
@@ -113,7 +113,6 @@ static const AVFilterPad avfilter_vf_pixdesctest_inputs[] = { · 112 unmodified lines
113 .filter_frame = filter_frame,113 .filter_frame = filter_frame,
114 .config_props = config_props,114 .config_props = config_props,
115 },115 },
116 { NULL }
117};116};
118 117
119static const AVFilterPad avfilter_vf_pixdesctest_outputs[] = {118static const AVFilterPad avfilter_vf_pixdesctest_outputs[] = {
@@ -121,7 +120,6 @@ static const AVFilterPad avfilter_vf_pixdesctest_outputs[] = { · 1 unmodified line
121 .name = "default",120 .name = "default",
122 .type = AVMEDIA_TYPE_VIDEO,121 .type = AVMEDIA_TYPE_VIDEO,
123 },122 },
124 { NULL }
125};123};
126 124
127const AVFilter ff_vf_pixdesctest = {125const AVFilter ff_vf_pixdesctest = {
@@ -129,6 +127,6 @@ const AVFilter ff_vf_pixdesctest = { · 1 unmodified line
129 .description = NULL_IF_CONFIG_SMALL("Test pixel format definitions."),127 .description = NULL_IF_CONFIG_SMALL("Test pixel format definitions."),
130 .priv_size = sizeof(PixdescTestContext),128 .priv_size = sizeof(PixdescTestContext),
131 .uninit = uninit,129 .uninit = uninit,
132 .inputs = avfilter_vf_pixdesctest_inputs,130 FILTER_INPUTS(avfilter_vf_pixdesctest_inputs),
133 .outputs = avfilter_vf_pixdesctest_outputs,131 FILTER_OUTPUTS(avfilter_vf_pixdesctest_outputs),
134};132};
libavfilter/vf_pp.c+2−4
@@ -177,7 +177,6 @@ static const AVFilterPad pp_inputs[] = { · 176 unmodified lines
177 .config_props = pp_config_props,177 .config_props = pp_config_props,
178 .filter_frame = pp_filter_frame,178 .filter_frame = pp_filter_frame,
179 },179 },
180 { NULL }
181};180};
182 181
183static const AVFilterPad pp_outputs[] = {182static const AVFilterPad pp_outputs[] = {
@@ -185,7 +184,6 @@ static const AVFilterPad pp_outputs[] = { · 1 unmodified line
185 .name = "default",184 .name = "default",
186 .type = AVMEDIA_TYPE_VIDEO,185 .type = AVMEDIA_TYPE_VIDEO,
187 },186 },
188 { NULL }
189};187};
190 188
191const AVFilter ff_vf_pp = {189const AVFilter ff_vf_pp = {
@@ -195,8 +193,8 @@ const AVFilter ff_vf_pp = { · 3 unmodified lines
195 .init = pp_init,193 .init = pp_init,
196 .uninit = pp_uninit,194 .uninit = pp_uninit,
197 .query_formats = pp_query_formats,195 .query_formats = pp_query_formats,
198 .inputs = pp_inputs,196 FILTER_INPUTS(pp_inputs),
199 .outputs = pp_outputs,197 FILTER_OUTPUTS(pp_outputs),
200 .process_command = pp_process_command,198 .process_command = pp_process_command,
201 .priv_class = &pp_class,199 .priv_class = &pp_class,
202 .flags = AVFILTER_FLAG_SUPPORT_TIMELINE_GENERIC,200 .flags = AVFILTER_FLAG_SUPPORT_TIMELINE_GENERIC,
libavfilter/vf_pp7.c+2−4
@@ -387,7 +387,6 @@ static const AVFilterPad pp7_inputs[] = { · 386 unmodified lines
387 .config_props = config_input,387 .config_props = config_input,
388 .filter_frame = filter_frame,388 .filter_frame = filter_frame,
389 },389 },
390 { NULL }
391};390};
392 391
393static const AVFilterPad pp7_outputs[] = {392static const AVFilterPad pp7_outputs[] = {
@@ -395,7 +394,6 @@ static const AVFilterPad pp7_outputs[] = { · 1 unmodified line
395 .name = "default",394 .name = "default",
396 .type = AVMEDIA_TYPE_VIDEO,395 .type = AVMEDIA_TYPE_VIDEO,
397 },396 },
398 { NULL }
399};397};
400 398
401const AVFilter ff_vf_pp7 = {399const AVFilter ff_vf_pp7 = {
@@ -404,8 +402,8 @@ const AVFilter ff_vf_pp7 = { · 2 unmodified lines
404 .priv_size = sizeof(PP7Context),402 .priv_size = sizeof(PP7Context),
405 .uninit = uninit,403 .uninit = uninit,
406 .query_formats = query_formats,404 .query_formats = query_formats,
407 .inputs = pp7_inputs,405 FILTER_INPUTS(pp7_inputs),
408 .outputs = pp7_outputs,406 FILTER_OUTPUTS(pp7_outputs),
409 .priv_class = &pp7_class,407 .priv_class = &pp7_class,
410 .flags = AVFILTER_FLAG_SUPPORT_TIMELINE_INTERNAL,408 .flags = AVFILTER_FLAG_SUPPORT_TIMELINE_INTERNAL,
411};409};
libavfilter/vf_premultiply.c+2−3
@@ -819,7 +819,6 @@ static const AVFilterPad premultiply_outputs[] = { · 818 unmodified lines
819 .type = AVMEDIA_TYPE_VIDEO,819 .type = AVMEDIA_TYPE_VIDEO,
820 .config_props = config_output,820 .config_props = config_output,
821 },821 },
822 { NULL }
823};822};
824 823
825#if CONFIG_PREMULTIPLY_FILTER824#if CONFIG_PREMULTIPLY_FILTER
@@ -833,7 +832,7 @@ const AVFilter ff_vf_premultiply = { · 7 unmodified lines
833 .query_formats = query_formats,832 .query_formats = query_formats,
834 .activate = activate,833 .activate = activate,
835 .inputs = NULL,834 .inputs = NULL,
836 .outputs = premultiply_outputs,835 FILTER_OUTPUTS(premultiply_outputs),
837 .priv_class = &premultiply_class,836 .priv_class = &premultiply_class,
838 .flags = AVFILTER_FLAG_SUPPORT_TIMELINE_INTERNAL |837 .flags = AVFILTER_FLAG_SUPPORT_TIMELINE_INTERNAL |
839 AVFILTER_FLAG_DYNAMIC_INPUTS |838 AVFILTER_FLAG_DYNAMIC_INPUTS |
@@ -856,7 +855,7 @@ const AVFilter ff_vf_unpremultiply = { · 16 unmodified lines
856 .query_formats = query_formats,855 .query_formats = query_formats,
857 .activate = activate,856 .activate = activate,
858 .inputs = NULL,857 .inputs = NULL,
859 .outputs = premultiply_outputs,858 FILTER_OUTPUTS(premultiply_outputs),
860 .priv_class = &unpremultiply_class,859 .priv_class = &unpremultiply_class,
861 .flags = AVFILTER_FLAG_SUPPORT_TIMELINE_INTERNAL |860 .flags = AVFILTER_FLAG_SUPPORT_TIMELINE_INTERNAL |
862 AVFILTER_FLAG_DYNAMIC_INPUTS |861 AVFILTER_FLAG_DYNAMIC_INPUTS |
libavfilter/vf_procamp_vaapi.c+2−4
@@ -219,7 +219,6 @@ static const AVFilterPad procamp_vaapi_inputs[] = { · 218 unmodified lines
219 .filter_frame = &procamp_vaapi_filter_frame,219 .filter_frame = &procamp_vaapi_filter_frame,
220 .config_props = &ff_vaapi_vpp_config_input,220 .config_props = &ff_vaapi_vpp_config_input,
221 },221 },
222 { NULL }
223};222};
224 223
225static const AVFilterPad procamp_vaapi_outputs[] = {224static const AVFilterPad procamp_vaapi_outputs[] = {
@@ -228,7 +227,6 @@ static const AVFilterPad procamp_vaapi_outputs[] = { · 2 unmodified lines
228 .type = AVMEDIA_TYPE_VIDEO,227 .type = AVMEDIA_TYPE_VIDEO,
229 .config_props = &ff_vaapi_vpp_config_output,228 .config_props = &ff_vaapi_vpp_config_output,
230 },229 },
231 { NULL }
232};230};
233 231
234const AVFilter ff_vf_procamp_vaapi = {232const AVFilter ff_vf_procamp_vaapi = {
@@ -238,8 +236,8 @@ const AVFilter ff_vf_procamp_vaapi = { · 3 unmodified lines
238 .init = &procamp_vaapi_init,236 .init = &procamp_vaapi_init,
239 .uninit = &ff_vaapi_vpp_ctx_uninit,237 .uninit = &ff_vaapi_vpp_ctx_uninit,
240 .query_formats = &ff_vaapi_vpp_query_formats,238 .query_formats = &ff_vaapi_vpp_query_formats,
241 .inputs = procamp_vaapi_inputs,239 FILTER_INPUTS(procamp_vaapi_inputs),
242 .outputs = procamp_vaapi_outputs,240 FILTER_OUTPUTS(procamp_vaapi_outputs),
243 .priv_class = &procamp_vaapi_class,241 .priv_class = &procamp_vaapi_class,
244 .flags_internal = FF_FILTER_FLAG_HWFRAME_AWARE,242 .flags_internal = FF_FILTER_FLAG_HWFRAME_AWARE,
245};243};
libavfilter/vf_program_opencl.c+2−4
@@ -359,7 +359,6 @@ static const AVFilterPad program_opencl_outputs[] = { · 358 unmodified lines
359 .type = AVMEDIA_TYPE_VIDEO,359 .type = AVMEDIA_TYPE_VIDEO,
360 .config_props = &program_opencl_config_output,360 .config_props = &program_opencl_config_output,
361 },361 },
362 { NULL }
363};362};
364 363
365const AVFilter ff_vf_program_opencl = {364const AVFilter ff_vf_program_opencl = {
@@ -374,7 +373,7 @@ const AVFilter ff_vf_program_opencl = { · 8 unmodified lines
374 .query_formats = &ff_opencl_filter_query_formats,373 .query_formats = &ff_opencl_filter_query_formats,
375 .activate = &program_opencl_activate,374 .activate = &program_opencl_activate,
376 .inputs = NULL,375 .inputs = NULL,
377 .outputs = program_opencl_outputs,376 FILTER_OUTPUTS(program_opencl_outputs),
378 .flags_internal = FF_FILTER_FLAG_HWFRAME_AWARE,377 .flags_internal = FF_FILTER_FLAG_HWFRAME_AWARE,
379};378};
380 379
@@ -413,7 +412,6 @@ static const AVFilterPad openclsrc_outputs[] = { · 32 unmodified lines
413 .config_props = &program_opencl_config_output,412 .config_props = &program_opencl_config_output,
414 .request_frame = &program_opencl_request_frame,413 .request_frame = &program_opencl_request_frame,
415 },414 },
416 { NULL }
417};415};
418 416
419const AVFilter ff_vsrc_openclsrc = {417const AVFilter ff_vsrc_openclsrc = {
@@ -425,7 +423,7 @@ const AVFilter ff_vsrc_openclsrc = { · 5 unmodified lines
425 .uninit = &program_opencl_uninit,423 .uninit = &program_opencl_uninit,
426 .query_formats = &ff_opencl_filter_query_formats,424 .query_formats = &ff_opencl_filter_query_formats,
427 .inputs = NULL,425 .inputs = NULL,
428 .outputs = openclsrc_outputs,426 FILTER_OUTPUTS(openclsrc_outputs),
429 .flags_internal = FF_FILTER_FLAG_HWFRAME_AWARE,427 .flags_internal = FF_FILTER_FLAG_HWFRAME_AWARE,
430};428};
431 429
libavfilter/vf_pseudocolor.c+2−4
@@ -894,7 +894,6 @@ static const AVFilterPad inputs[] = { · 893 unmodified lines
894 .filter_frame = filter_frame,894 .filter_frame = filter_frame,
895 .config_props = config_input,895 .config_props = config_input,
896 },896 },
897 { NULL }
898};897};
899 898
900static const AVFilterPad outputs[] = {899static const AVFilterPad outputs[] = {
@@ -902,7 +901,6 @@ static const AVFilterPad outputs[] = { · 1 unmodified line
902 .name = "default",901 .name = "default",
903 .type = AVMEDIA_TYPE_VIDEO,902 .type = AVMEDIA_TYPE_VIDEO,
904 },903 },
905 { NULL }
906};904};
907 905
908static av_cold void uninit(AVFilterContext *ctx)906static av_cold void uninit(AVFilterContext *ctx)
@@ -925,8 +923,8 @@ const AVFilter ff_vf_pseudocolor = { · 16 unmodified lines
925 .priv_class = &pseudocolor_class,923 .priv_class = &pseudocolor_class,
926 .uninit = uninit,924 .uninit = uninit,
927 .query_formats = query_formats,925 .query_formats = query_formats,
928 .inputs = inputs,926 FILTER_INPUTS(inputs),
929 .outputs = outputs,927 FILTER_OUTPUTS(outputs),
930 .flags = AVFILTER_FLAG_SUPPORT_TIMELINE_GENERIC | AVFILTER_FLAG_SLICE_THREADS,928 .flags = AVFILTER_FLAG_SUPPORT_TIMELINE_GENERIC | AVFILTER_FLAG_SLICE_THREADS,
931 .process_command = process_command,929 .process_command = process_command,
932};930};
libavfilter/vf_psnr.c+2−4
@@ -453,7 +453,6 @@ static const AVFilterPad psnr_inputs[] = { · 452 unmodified lines
453 .type = AVMEDIA_TYPE_VIDEO,453 .type = AVMEDIA_TYPE_VIDEO,
454 .config_props = config_input_ref,454 .config_props = config_input_ref,
455 },455 },
456 { NULL }
457};456};
458 457
459static const AVFilterPad psnr_outputs[] = {458static const AVFilterPad psnr_outputs[] = {
@@ -462,7 +461,6 @@ static const AVFilterPad psnr_outputs[] = { · 2 unmodified lines
462 .type = AVMEDIA_TYPE_VIDEO,461 .type = AVMEDIA_TYPE_VIDEO,
463 .config_props = config_output,462 .config_props = config_output,
464 },463 },
465 { NULL }
466};464};
467 465
468const AVFilter ff_vf_psnr = {466const AVFilter ff_vf_psnr = {
@@ -475,7 +473,7 @@ const AVFilter ff_vf_psnr = { · 6 unmodified lines
475 .activate = activate,473 .activate = activate,
476 .priv_size = sizeof(PSNRContext),474 .priv_size = sizeof(PSNRContext),
477 .priv_class = &psnr_class,475 .priv_class = &psnr_class,
478 .inputs = psnr_inputs,476 FILTER_INPUTS(psnr_inputs),
479 .outputs = psnr_outputs,477 FILTER_OUTPUTS(psnr_outputs),
480 .flags = AVFILTER_FLAG_SUPPORT_TIMELINE_INTERNAL | AVFILTER_FLAG_SLICE_THREADS,478 .flags = AVFILTER_FLAG_SUPPORT_TIMELINE_INTERNAL | AVFILTER_FLAG_SLICE_THREADS,
481};479};
libavfilter/vf_pullup.c+2−4
@@ -750,7 +750,6 @@ static const AVFilterPad pullup_inputs[] = { · 749 unmodified lines
750 .filter_frame = filter_frame,750 .filter_frame = filter_frame,
751 .config_props = config_input,751 .config_props = config_input,
752 },752 },
753 { NULL }
754};753};
755 754
756static const AVFilterPad pullup_outputs[] = {755static const AVFilterPad pullup_outputs[] = {
@@ -758,7 +757,6 @@ static const AVFilterPad pullup_outputs[] = { · 1 unmodified line
758 .name = "default",757 .name = "default",
759 .type = AVMEDIA_TYPE_VIDEO,758 .type = AVMEDIA_TYPE_VIDEO,
760 },759 },
761 { NULL }
762};760};
763 761
764const AVFilter ff_vf_pullup = {762const AVFilter ff_vf_pullup = {
@@ -768,6 +766,6 @@ const AVFilter ff_vf_pullup = { · 3 unmodified lines
768 .priv_class = &pullup_class,766 .priv_class = &pullup_class,
769 .uninit = uninit,767 .uninit = uninit,
770 .query_formats = query_formats,768 .query_formats = query_formats,
771 .inputs = pullup_inputs,769 FILTER_INPUTS(pullup_inputs),
772 .outputs = pullup_outputs,770 FILTER_OUTPUTS(pullup_outputs),
773};771};
libavfilter/vf_qp.c+2−4
@@ -182,7 +182,6 @@ static const AVFilterPad qp_inputs[] = { · 181 unmodified lines
182 .filter_frame = filter_frame,182 .filter_frame = filter_frame,
183 .config_props = config_input,183 .config_props = config_input,
184 },184 },
185 { NULL }
186};185};
187 186
188static const AVFilterPad qp_outputs[] = {187static const AVFilterPad qp_outputs[] = {
@@ -190,15 +189,14 @@ static const AVFilterPad qp_outputs[] = { · 1 unmodified line
190 .name = "default",189 .name = "default",
191 .type = AVMEDIA_TYPE_VIDEO,190 .type = AVMEDIA_TYPE_VIDEO,
192 },191 },
193 { NULL }
194};192};
195 193
196const AVFilter ff_vf_qp = {194const AVFilter ff_vf_qp = {
197 .name = "qp",195 .name = "qp",
198 .description = NULL_IF_CONFIG_SMALL("Change video quantization parameters."),196 .description = NULL_IF_CONFIG_SMALL("Change video quantization parameters."),
199 .priv_size = sizeof(QPContext),197 .priv_size = sizeof(QPContext),
200 .inputs = qp_inputs,198 FILTER_INPUTS(qp_inputs),
201 .outputs = qp_outputs,199 FILTER_OUTPUTS(qp_outputs),
202 .priv_class = &qp_class,200 .priv_class = &qp_class,
203 .flags = AVFILTER_FLAG_SUPPORT_TIMELINE_INTERNAL,201 .flags = AVFILTER_FLAG_SUPPORT_TIMELINE_INTERNAL,
204};202};
libavfilter/vf_random.c+2−4
@@ -127,7 +127,6 @@ static const AVFilterPad random_inputs[] = { · 126 unmodified lines
127 .type = AVMEDIA_TYPE_VIDEO,127 .type = AVMEDIA_TYPE_VIDEO,
128 .filter_frame = filter_frame,128 .filter_frame = filter_frame,
129 },129 },
130 { NULL }
131};130};
132 131
133static const AVFilterPad random_outputs[] = {132static const AVFilterPad random_outputs[] = {
@@ -136,7 +135,6 @@ static const AVFilterPad random_outputs[] = { · 2 unmodified lines
136 .type = AVMEDIA_TYPE_VIDEO,135 .type = AVMEDIA_TYPE_VIDEO,
137 .request_frame = request_frame,136 .request_frame = request_frame,
138 },137 },
139 { NULL }
140};138};
141 139
142const AVFilter ff_vf_random = {140const AVFilter ff_vf_random = {
@@ -146,6 +144,6 @@ const AVFilter ff_vf_random = { · 3 unmodified lines
146 .priv_class = &random_class,144 .priv_class = &random_class,
147 .init = init,145 .init = init,
148 .uninit = uninit,146 .uninit = uninit,
149 .inputs = random_inputs,147 FILTER_INPUTS(random_inputs),
150 .outputs = random_outputs,148 FILTER_OUTPUTS(random_outputs),
151};149};
libavfilter/vf_readeia608.c+2−4
@@ -542,7 +542,6 @@ static const AVFilterPad readeia608_inputs[] = { · 541 unmodified lines
542 .filter_frame = filter_frame,542 .filter_frame = filter_frame,
543 .config_props = config_input,543 .config_props = config_input,
544 },544 },
545 { NULL }
546};545};
547 546
548static const AVFilterPad readeia608_outputs[] = {547static const AVFilterPad readeia608_outputs[] = {
@@ -550,7 +549,6 @@ static const AVFilterPad readeia608_outputs[] = { · 1 unmodified line
550 .name = "default",549 .name = "default",
551 .type = AVMEDIA_TYPE_VIDEO,550 .type = AVMEDIA_TYPE_VIDEO,
552 },551 },
553 { NULL }
554};552};
555 553
556const AVFilter ff_vf_readeia608 = {554const AVFilter ff_vf_readeia608 = {
@@ -559,8 +557,8 @@ const AVFilter ff_vf_readeia608 = { · 2 unmodified lines
559 .priv_size = sizeof(ReadEIA608Context),557 .priv_size = sizeof(ReadEIA608Context),
560 .priv_class = &readeia608_class,558 .priv_class = &readeia608_class,
561 .query_formats = query_formats,559 .query_formats = query_formats,
562 .inputs = readeia608_inputs,560 FILTER_INPUTS(readeia608_inputs),
563 .outputs = readeia608_outputs,561 FILTER_OUTPUTS(readeia608_outputs),
564 .uninit = uninit,562 .uninit = uninit,
565 .flags = AVFILTER_FLAG_SUPPORT_TIMELINE_GENERIC | AVFILTER_FLAG_SLICE_THREADS,563 .flags = AVFILTER_FLAG_SUPPORT_TIMELINE_GENERIC | AVFILTER_FLAG_SLICE_THREADS,
566 .process_command = process_command,564 .process_command = process_command,
libavfilter/vf_readvitc.c+2−4
@@ -232,7 +232,6 @@ static const AVFilterPad inputs[] = { · 231 unmodified lines
232 .filter_frame = filter_frame,232 .filter_frame = filter_frame,
233 .config_props = config_props,233 .config_props = config_props,
234 },234 },
235 { NULL }
236};235};
237 236
238static const AVFilterPad outputs[] = {237static const AVFilterPad outputs[] = {
@@ -240,7 +239,6 @@ static const AVFilterPad outputs[] = { · 1 unmodified line
240 .name = "default",239 .name = "default",
241 .type = AVMEDIA_TYPE_VIDEO,240 .type = AVMEDIA_TYPE_VIDEO,
242 },241 },
243 { NULL }
244};242};
245 243
246const AVFilter ff_vf_readvitc = {244const AVFilter ff_vf_readvitc = {
@@ -248,8 +246,8 @@ const AVFilter ff_vf_readvitc = { · 1 unmodified line
248 .description = NULL_IF_CONFIG_SMALL("Read vertical interval timecode and write it to frame metadata."),246 .description = NULL_IF_CONFIG_SMALL("Read vertical interval timecode and write it to frame metadata."),
249 .priv_size = sizeof(ReadVitcContext),247 .priv_size = sizeof(ReadVitcContext),
250 .priv_class = &readvitc_class,248 .priv_class = &readvitc_class,
251 .inputs = inputs,249 FILTER_INPUTS(inputs),
252 .outputs = outputs,250 FILTER_OUTPUTS(outputs),
253 .init = init,251 .init = init,
254 .query_formats = query_formats,252 .query_formats = query_formats,
255};253};
libavfilter/vf_remap.c+2−4
@@ -387,7 +387,6 @@ static const AVFilterPad remap_inputs[] = { · 386 unmodified lines
387 .name = "ymap",387 .name = "ymap",
388 .type = AVMEDIA_TYPE_VIDEO,388 .type = AVMEDIA_TYPE_VIDEO,
389 },389 },
390 { NULL }
391};390};
392 391
393static const AVFilterPad remap_outputs[] = {392static const AVFilterPad remap_outputs[] = {
@@ -396,7 +395,6 @@ static const AVFilterPad remap_outputs[] = { · 2 unmodified lines
396 .type = AVMEDIA_TYPE_VIDEO,395 .type = AVMEDIA_TYPE_VIDEO,
397 .config_props = config_output,396 .config_props = config_output,
398 },397 },
399 { NULL }
400};398};
401 399
402const AVFilter ff_vf_remap = {400const AVFilter ff_vf_remap = {
@@ -406,8 +404,8 @@ const AVFilter ff_vf_remap = { · 3 unmodified lines
406 .uninit = uninit,404 .uninit = uninit,
407 .query_formats = query_formats,405 .query_formats = query_formats,
408 .activate = activate,406 .activate = activate,
409 .inputs = remap_inputs,407 FILTER_INPUTS(remap_inputs),
410 .outputs = remap_outputs,408 FILTER_OUTPUTS(remap_outputs),
411 .priv_class = &remap_class,409 .priv_class = &remap_class,
412 .flags = AVFILTER_FLAG_SUPPORT_TIMELINE_GENERIC | AVFILTER_FLAG_SLICE_THREADS,410 .flags = AVFILTER_FLAG_SUPPORT_TIMELINE_GENERIC | AVFILTER_FLAG_SLICE_THREADS,
413};411};
libavfilter/vf_removegrain.c+2−4
@@ -634,7 +634,6 @@ static const AVFilterPad removegrain_inputs[] = { · 633 unmodified lines
634 .filter_frame = filter_frame,634 .filter_frame = filter_frame,
635 .config_props = config_input,635 .config_props = config_input,
636 },636 },
637 { NULL }
638};637};
639 638
640static const AVFilterPad removegrain_outputs[] = {639static const AVFilterPad removegrain_outputs[] = {
@@ -642,7 +641,6 @@ static const AVFilterPad removegrain_outputs[] = { · 1 unmodified line
642 .name = "default",641 .name = "default",
643 .type = AVMEDIA_TYPE_VIDEO,642 .type = AVMEDIA_TYPE_VIDEO,
644 },643 },
645 { NULL }
646};644};
647 645
648const AVFilter ff_vf_removegrain = {646const AVFilter ff_vf_removegrain = {
@@ -650,8 +648,8 @@ const AVFilter ff_vf_removegrain = { · 1 unmodified line
650 .description = NULL_IF_CONFIG_SMALL("Remove grain."),648 .description = NULL_IF_CONFIG_SMALL("Remove grain."),
651 .priv_size = sizeof(RemoveGrainContext),649 .priv_size = sizeof(RemoveGrainContext),
652 .query_formats = query_formats,650 .query_formats = query_formats,
653 .inputs = removegrain_inputs,651 FILTER_INPUTS(removegrain_inputs),
654 .outputs = removegrain_outputs,652 FILTER_OUTPUTS(removegrain_outputs),
655 .priv_class = &removegrain_class,653 .priv_class = &removegrain_class,
656 .flags = AVFILTER_FLAG_SUPPORT_TIMELINE_GENERIC | AVFILTER_FLAG_SLICE_THREADS,654 .flags = AVFILTER_FLAG_SUPPORT_TIMELINE_GENERIC | AVFILTER_FLAG_SLICE_THREADS,
657};655};
libavfilter/vf_removelogo.c+2−4
@@ -559,7 +559,6 @@ static const AVFilterPad removelogo_inputs[] = { · 558 unmodified lines
559 .config_props = config_props_input,559 .config_props = config_props_input,
560 .filter_frame = filter_frame,560 .filter_frame = filter_frame,
561 },561 },
562 { NULL }
563};562};
564 563
565static const AVFilterPad removelogo_outputs[] = {564static const AVFilterPad removelogo_outputs[] = {
@@ -567,7 +566,6 @@ static const AVFilterPad removelogo_outputs[] = { · 1 unmodified line
567 .name = "default",566 .name = "default",
568 .type = AVMEDIA_TYPE_VIDEO,567 .type = AVMEDIA_TYPE_VIDEO,
569 },568 },
570 { NULL }
571};569};
572 570
573const AVFilter ff_vf_removelogo = {571const AVFilter ff_vf_removelogo = {
@@ -577,8 +575,8 @@ const AVFilter ff_vf_removelogo = { · 3 unmodified lines
577 .init = init,575 .init = init,
578 .uninit = uninit,576 .uninit = uninit,
579 .query_formats = query_formats,577 .query_formats = query_formats,
580 .inputs = removelogo_inputs,578 FILTER_INPUTS(removelogo_inputs),
581 .outputs = removelogo_outputs,579 FILTER_OUTPUTS(removelogo_outputs),
582 .priv_class = &removelogo_class,580 .priv_class = &removelogo_class,
583 .flags = AVFILTER_FLAG_SUPPORT_TIMELINE_GENERIC,581 .flags = AVFILTER_FLAG_SUPPORT_TIMELINE_GENERIC,
584};582};
libavfilter/vf_repeatfields.c+2−4
@@ -167,7 +167,6 @@ static const AVFilterPad repeatfields_inputs[] = { · 166 unmodified lines
167 .filter_frame = filter_frame,167 .filter_frame = filter_frame,
168 .config_props = config_input,168 .config_props = config_input,
169 },169 },
170 { NULL }
171};170};
172 171
173static const AVFilterPad repeatfields_outputs[] = {172static const AVFilterPad repeatfields_outputs[] = {
@@ -175,7 +174,6 @@ static const AVFilterPad repeatfields_outputs[] = { · 1 unmodified line
175 .name = "default",174 .name = "default",
176 .type = AVMEDIA_TYPE_VIDEO,175 .type = AVMEDIA_TYPE_VIDEO,
177 },176 },
178 { NULL }
179};177};
180 178
181const AVFilter ff_vf_repeatfields = {179const AVFilter ff_vf_repeatfields = {
@@ -183,7 +181,7 @@ const AVFilter ff_vf_repeatfields = { · 1 unmodified line
183 .description = NULL_IF_CONFIG_SMALL("Hard repeat fields based on MPEG repeat field flag."),181 .description = NULL_IF_CONFIG_SMALL("Hard repeat fields based on MPEG repeat field flag."),
184 .priv_size = sizeof(RepeatFieldsContext),182 .priv_size = sizeof(RepeatFieldsContext),
185 .uninit = uninit,183 .uninit = uninit,
186 .inputs = repeatfields_inputs,184 FILTER_INPUTS(repeatfields_inputs),
187 .outputs = repeatfields_outputs,185 FILTER_OUTPUTS(repeatfields_outputs),
188 .query_formats = query_formats,186 .query_formats = query_formats,
189};187};
libavfilter/vf_rotate.c+2−4
@@ -585,7 +585,6 @@ static const AVFilterPad rotate_inputs[] = { · 584 unmodified lines
585 .type = AVMEDIA_TYPE_VIDEO,585 .type = AVMEDIA_TYPE_VIDEO,
586 .filter_frame = filter_frame,586 .filter_frame = filter_frame,
587 },587 },
588 { NULL }
589};588};
590 589
591static const AVFilterPad rotate_outputs[] = {590static const AVFilterPad rotate_outputs[] = {
@@ -594,7 +593,6 @@ static const AVFilterPad rotate_outputs[] = { · 2 unmodified lines
594 .type = AVMEDIA_TYPE_VIDEO,593 .type = AVMEDIA_TYPE_VIDEO,
595 .config_props = config_props,594 .config_props = config_props,
596 },595 },
597 { NULL }
598};596};
599 597
600const AVFilter ff_vf_rotate = {598const AVFilter ff_vf_rotate = {
@@ -605,8 +603,8 @@ const AVFilter ff_vf_rotate = { · 4 unmodified lines
605 .uninit = uninit,603 .uninit = uninit,
606 .query_formats = query_formats,604 .query_formats = query_formats,
607 .process_command = process_command,605 .process_command = process_command,
608 .inputs = rotate_inputs,606 FILTER_INPUTS(rotate_inputs),
609 .outputs = rotate_outputs,607 FILTER_OUTPUTS(rotate_outputs),
610 .priv_class = &rotate_class,608 .priv_class = &rotate_class,
611 .flags = AVFILTER_FLAG_SUPPORT_TIMELINE_GENERIC | AVFILTER_FLAG_SLICE_THREADS,609 .flags = AVFILTER_FLAG_SUPPORT_TIMELINE_GENERIC | AVFILTER_FLAG_SLICE_THREADS,
612};610};
libavfilter/vf_sab.c+2−4
@@ -309,7 +309,6 @@ static const AVFilterPad sab_inputs[] = { · 308 unmodified lines
309 .filter_frame = filter_frame,309 .filter_frame = filter_frame,
310 .config_props = config_props,310 .config_props = config_props,
311 },311 },
312 { NULL }
313};312};
314 313
315static const AVFilterPad sab_outputs[] = {314static const AVFilterPad sab_outputs[] = {
@@ -317,7 +316,6 @@ static const AVFilterPad sab_outputs[] = { · 1 unmodified line
317 .name = "default",316 .name = "default",
318 .type = AVMEDIA_TYPE_VIDEO,317 .type = AVMEDIA_TYPE_VIDEO,
319 },318 },
320 { NULL }
321};319};
322 320
323const AVFilter ff_vf_sab = {321const AVFilter ff_vf_sab = {
@@ -327,8 +325,8 @@ const AVFilter ff_vf_sab = { · 3 unmodified lines
327 .init = init,325 .init = init,
328 .uninit = uninit,326 .uninit = uninit,
329 .query_formats = query_formats,327 .query_formats = query_formats,
330 .inputs = sab_inputs,328 FILTER_INPUTS(sab_inputs),
331 .outputs = sab_outputs,329 FILTER_OUTPUTS(sab_outputs),
332 .priv_class = &sab_class,330 .priv_class = &sab_class,
333 .flags = AVFILTER_FLAG_SUPPORT_TIMELINE_GENERIC,331 .flags = AVFILTER_FLAG_SUPPORT_TIMELINE_GENERIC,
334};332};
libavfilter/vf_scale.c+4−8
@@ -957,7 +957,6 @@ static const AVFilterPad avfilter_vf_scale_inputs[] = { · 956 unmodified lines
957 .type = AVMEDIA_TYPE_VIDEO,957 .type = AVMEDIA_TYPE_VIDEO,
958 .filter_frame = filter_frame,958 .filter_frame = filter_frame,
959 },959 },
960 { NULL }
961};960};
962 961
963static const AVFilterPad avfilter_vf_scale_outputs[] = {962static const AVFilterPad avfilter_vf_scale_outputs[] = {
@@ -966,7 +965,6 @@ static const AVFilterPad avfilter_vf_scale_outputs[] = { · 2 unmodified lines
966 .type = AVMEDIA_TYPE_VIDEO,965 .type = AVMEDIA_TYPE_VIDEO,
967 .config_props = config_props,966 .config_props = config_props,
968 },967 },
969 { NULL }
970};968};
971 969
972const AVFilter ff_vf_scale = {970const AVFilter ff_vf_scale = {
@@ -977,8 +975,8 @@ const AVFilter ff_vf_scale = { · 4 unmodified lines
977 .query_formats = query_formats,975 .query_formats = query_formats,
978 .priv_size = sizeof(ScaleContext),976 .priv_size = sizeof(ScaleContext),
979 .priv_class = &scale_class,977 .priv_class = &scale_class,
980 .inputs = avfilter_vf_scale_inputs,978 FILTER_INPUTS(avfilter_vf_scale_inputs),
981 .outputs = avfilter_vf_scale_outputs,979 FILTER_OUTPUTS(avfilter_vf_scale_outputs),
982 .process_command = process_command,980 .process_command = process_command,
983};981};
984 982
@@ -1002,7 +1000,6 @@ static const AVFilterPad avfilter_vf_scale2ref_inputs[] = { · 17 unmodified lines
1002 .type = AVMEDIA_TYPE_VIDEO,1000 .type = AVMEDIA_TYPE_VIDEO,
1003 .filter_frame = filter_frame_ref,1001 .filter_frame = filter_frame_ref,
1004 },1002 },
1005 { NULL }
1006};1003};
1007 1004
1008static const AVFilterPad avfilter_vf_scale2ref_outputs[] = {1005static const AVFilterPad avfilter_vf_scale2ref_outputs[] = {
@@ -1018,7 +1015,6 @@ static const AVFilterPad avfilter_vf_scale2ref_outputs[] = { · 9 unmodified lines
1018 .config_props = config_props_ref,1015 .config_props = config_props_ref,
1019 .request_frame= request_frame_ref,1016 .request_frame= request_frame_ref,
1020 },1017 },
1021 { NULL }
1022};1018};
1023 1019
1024const AVFilter ff_vf_scale2ref = {1020const AVFilter ff_vf_scale2ref = {
@@ -1029,7 +1025,7 @@ const AVFilter ff_vf_scale2ref = { · 4 unmodified lines
1029 .query_formats = query_formats,1025 .query_formats = query_formats,
1030 .priv_size = sizeof(ScaleContext),1026 .priv_size = sizeof(ScaleContext),
1031 .priv_class = &scale2ref_class,1027 .priv_class = &scale2ref_class,
1032 .inputs = avfilter_vf_scale2ref_inputs,1028 FILTER_INPUTS(avfilter_vf_scale2ref_inputs),
1033 .outputs = avfilter_vf_scale2ref_outputs,1029 FILTER_OUTPUTS(avfilter_vf_scale2ref_outputs),
1034 .process_command = process_command,1030 .process_command = process_command,
1035};1031};
libavfilter/vf_scale_cuda.c+2−4
@@ -625,7 +625,6 @@ static const AVFilterPad cudascale_inputs[] = { · 624 unmodified lines
625 .filter_frame = cudascale_filter_frame,625 .filter_frame = cudascale_filter_frame,
626 .get_buffer.video = cudascale_get_video_buffer,626 .get_buffer.video = cudascale_get_video_buffer,
627 },627 },
628 { NULL }
629};628};
630 629
631static const AVFilterPad cudascale_outputs[] = {630static const AVFilterPad cudascale_outputs[] = {
@@ -634,7 +633,6 @@ static const AVFilterPad cudascale_outputs[] = { · 2 unmodified lines
634 .type = AVMEDIA_TYPE_VIDEO,633 .type = AVMEDIA_TYPE_VIDEO,
635 .config_props = cudascale_config_props,634 .config_props = cudascale_config_props,
636 },635 },
637 { NULL }
638};636};
639 637
640const AVFilter ff_vf_scale_cuda = {638const AVFilter ff_vf_scale_cuda = {
@@ -648,8 +646,8 @@ const AVFilter ff_vf_scale_cuda = { · 7 unmodified lines
648 .priv_size = sizeof(CUDAScaleContext),646 .priv_size = sizeof(CUDAScaleContext),
649 .priv_class = &cudascale_class,647 .priv_class = &cudascale_class,
650 648
651 .inputs = cudascale_inputs,649 FILTER_INPUTS(cudascale_inputs),
652 .outputs = cudascale_outputs,650 FILTER_OUTPUTS(cudascale_outputs),
653 651
654 .flags_internal = FF_FILTER_FLAG_HWFRAME_AWARE,652 .flags_internal = FF_FILTER_FLAG_HWFRAME_AWARE,
655};653};
libavfilter/vf_scale_npp.c+2−4
@@ -577,7 +577,6 @@ static const AVFilterPad nppscale_inputs[] = { · 576 unmodified lines
577 .type = AVMEDIA_TYPE_VIDEO,577 .type = AVMEDIA_TYPE_VIDEO,
578 .filter_frame = nppscale_filter_frame,578 .filter_frame = nppscale_filter_frame,
579 },579 },
580 { NULL }
581};580};
582 581
583static const AVFilterPad nppscale_outputs[] = {582static const AVFilterPad nppscale_outputs[] = {
@@ -586,7 +585,6 @@ static const AVFilterPad nppscale_outputs[] = { · 2 unmodified lines
586 .type = AVMEDIA_TYPE_VIDEO,585 .type = AVMEDIA_TYPE_VIDEO,
587 .config_props = nppscale_config_props,586 .config_props = nppscale_config_props,
588 },587 },
589 { NULL }
590};588};
591 589
592const AVFilter ff_vf_scale_npp = {590const AVFilter ff_vf_scale_npp = {
@@ -601,8 +599,8 @@ const AVFilter ff_vf_scale_npp = { · 8 unmodified lines
601 .priv_size = sizeof(NPPScaleContext),599 .priv_size = sizeof(NPPScaleContext),
602 .priv_class = &nppscale_class,600 .priv_class = &nppscale_class,
603 601
604 .inputs = nppscale_inputs,602 FILTER_INPUTS(nppscale_inputs),
605 .outputs = nppscale_outputs,603 FILTER_OUTPUTS(nppscale_outputs),
606 604
607 .flags_internal = FF_FILTER_FLAG_HWFRAME_AWARE,605 .flags_internal = FF_FILTER_FLAG_HWFRAME_AWARE,
608};606};
libavfilter/vf_scale_qsv.c+2−4
@@ -650,7 +650,6 @@ static const AVFilterPad qsvscale_inputs[] = { · 649 unmodified lines
650 .type = AVMEDIA_TYPE_VIDEO,650 .type = AVMEDIA_TYPE_VIDEO,
651 .filter_frame = qsvscale_filter_frame,651 .filter_frame = qsvscale_filter_frame,
652 },652 },
653 { NULL }
654};653};
655 654
656static const AVFilterPad qsvscale_outputs[] = {655static const AVFilterPad qsvscale_outputs[] = {
@@ -659,7 +658,6 @@ static const AVFilterPad qsvscale_outputs[] = { · 2 unmodified lines
659 .type = AVMEDIA_TYPE_VIDEO,658 .type = AVMEDIA_TYPE_VIDEO,
660 .config_props = qsvscale_config_props,659 .config_props = qsvscale_config_props,
661 },660 },
662 { NULL }
663};661};
664 662
665const AVFilter ff_vf_scale_qsv = {663const AVFilter ff_vf_scale_qsv = {
@@ -673,8 +671,8 @@ const AVFilter ff_vf_scale_qsv = { · 7 unmodified lines
673 .priv_size = sizeof(QSVScaleContext),671 .priv_size = sizeof(QSVScaleContext),
674 .priv_class = &qsvscale_class,672 .priv_class = &qsvscale_class,
675 673
676 .inputs = qsvscale_inputs,674 FILTER_INPUTS(qsvscale_inputs),
677 .outputs = qsvscale_outputs,675 FILTER_OUTPUTS(qsvscale_outputs),
678 676
679 .flags_internal = FF_FILTER_FLAG_HWFRAME_AWARE,677 .flags_internal = FF_FILTER_FLAG_HWFRAME_AWARE,
680};678};
libavfilter/vf_scale_vaapi.c+2−4
@@ -269,7 +269,6 @@ static const AVFilterPad scale_vaapi_inputs[] = { · 268 unmodified lines
269 .filter_frame = &scale_vaapi_filter_frame,269 .filter_frame = &scale_vaapi_filter_frame,
270 .config_props = &ff_vaapi_vpp_config_input,270 .config_props = &ff_vaapi_vpp_config_input,
271 },271 },
272 { NULL }
273};272};
274 273
275static const AVFilterPad scale_vaapi_outputs[] = {274static const AVFilterPad scale_vaapi_outputs[] = {
@@ -278,7 +277,6 @@ static const AVFilterPad scale_vaapi_outputs[] = { · 2 unmodified lines
278 .type = AVMEDIA_TYPE_VIDEO,277 .type = AVMEDIA_TYPE_VIDEO,
279 .config_props = &scale_vaapi_config_output,278 .config_props = &scale_vaapi_config_output,
280 },279 },
281 { NULL }
282};280};
283 281
284const AVFilter ff_vf_scale_vaapi = {282const AVFilter ff_vf_scale_vaapi = {
@@ -288,8 +286,8 @@ const AVFilter ff_vf_scale_vaapi = { · 3 unmodified lines
288 .init = &scale_vaapi_init,286 .init = &scale_vaapi_init,
289 .uninit = &ff_vaapi_vpp_ctx_uninit,287 .uninit = &ff_vaapi_vpp_ctx_uninit,
290 .query_formats = &ff_vaapi_vpp_query_formats,288 .query_formats = &ff_vaapi_vpp_query_formats,
291 .inputs = scale_vaapi_inputs,289 FILTER_INPUTS(scale_vaapi_inputs),
292 .outputs = scale_vaapi_outputs,290 FILTER_OUTPUTS(scale_vaapi_outputs),
293 .priv_class = &scale_vaapi_class,291 .priv_class = &scale_vaapi_class,
294 .flags_internal = FF_FILTER_FLAG_HWFRAME_AWARE,292 .flags_internal = FF_FILTER_FLAG_HWFRAME_AWARE,
295};293};
libavfilter/vf_scale_vulkan.c+2−4
@@ -512,7 +512,6 @@ static const AVFilterPad scale_vulkan_inputs[] = { · 511 unmodified lines
512 .filter_frame = &scale_vulkan_filter_frame,512 .filter_frame = &scale_vulkan_filter_frame,
513 .config_props = &ff_vk_filter_config_input,513 .config_props = &ff_vk_filter_config_input,
514 },514 },
515 { NULL }
516};515};
517 516
518static const AVFilterPad scale_vulkan_outputs[] = {517static const AVFilterPad scale_vulkan_outputs[] = {
@@ -521,7 +520,6 @@ static const AVFilterPad scale_vulkan_outputs[] = { · 2 unmodified lines
521 .type = AVMEDIA_TYPE_VIDEO,520 .type = AVMEDIA_TYPE_VIDEO,
522 .config_props = &scale_vulkan_config_output,521 .config_props = &scale_vulkan_config_output,
523 },522 },
524 { NULL }
525};523};
526 524
527const AVFilter ff_vf_scale_vulkan = {525const AVFilter ff_vf_scale_vulkan = {
@@ -531,8 +529,8 @@ const AVFilter ff_vf_scale_vulkan = { · 3 unmodified lines
531 .init = &ff_vk_filter_init,529 .init = &ff_vk_filter_init,
532 .uninit = &scale_vulkan_uninit,530 .uninit = &scale_vulkan_uninit,
533 .query_formats = &ff_vk_filter_query_formats,531 .query_formats = &ff_vk_filter_query_formats,
534 .inputs = scale_vulkan_inputs,532 FILTER_INPUTS(scale_vulkan_inputs),
535 .outputs = scale_vulkan_outputs,533 FILTER_OUTPUTS(scale_vulkan_outputs),
536 .priv_class = &scale_vulkan_class,534 .priv_class = &scale_vulkan_class,
537 .flags_internal = FF_FILTER_FLAG_HWFRAME_AWARE,535 .flags_internal = FF_FILTER_FLAG_HWFRAME_AWARE,
538};536};
libavfilter/vf_scdet.c+2−4
@@ -196,7 +196,6 @@ static const AVFilterPad scdet_inputs[] = { · 195 unmodified lines
196 .type = AVMEDIA_TYPE_VIDEO,196 .type = AVMEDIA_TYPE_VIDEO,
197 .config_props = config_input,197 .config_props = config_input,
198 },198 },
199 { NULL }
200};199};
201 200
202static const AVFilterPad scdet_outputs[] = {201static const AVFilterPad scdet_outputs[] = {
@@ -204,7 +203,6 @@ static const AVFilterPad scdet_outputs[] = { · 1 unmodified line
204 .name = "default",203 .name = "default",
205 .type = AVMEDIA_TYPE_VIDEO,204 .type = AVMEDIA_TYPE_VIDEO,
206 },205 },
207 { NULL }
208};206};
209 207
210const AVFilter ff_vf_scdet = {208const AVFilter ff_vf_scdet = {
@@ -214,7 +212,7 @@ const AVFilter ff_vf_scdet = { · 3 unmodified lines
214 .priv_class = &scdet_class,212 .priv_class = &scdet_class,
215 .uninit = uninit,213 .uninit = uninit,
216 .query_formats = query_formats,214 .query_formats = query_formats,
217 .inputs = scdet_inputs,215 FILTER_INPUTS(scdet_inputs),
218 .outputs = scdet_outputs,216 FILTER_OUTPUTS(scdet_outputs),
219 .activate = activate,217 .activate = activate,
220};218};
libavfilter/vf_scroll.c+2−4
@@ -197,7 +197,6 @@ static const AVFilterPad scroll_inputs[] = { · 196 unmodified lines
197 .config_props = config_input,197 .config_props = config_input,
198 .filter_frame = filter_frame,198 .filter_frame = filter_frame,
199 },199 },
200 { NULL }
201};200};
202 201
203static const AVFilterPad scroll_outputs[] = {202static const AVFilterPad scroll_outputs[] = {
@@ -205,7 +204,6 @@ static const AVFilterPad scroll_outputs[] = { · 1 unmodified line
205 .name = "default",204 .name = "default",
206 .type = AVMEDIA_TYPE_VIDEO,205 .type = AVMEDIA_TYPE_VIDEO,
207 },206 },
208 { NULL }
209};207};
210 208
211const AVFilter ff_vf_scroll = {209const AVFilter ff_vf_scroll = {
@@ -214,8 +212,8 @@ const AVFilter ff_vf_scroll = { · 2 unmodified lines
214 .priv_size = sizeof(ScrollContext),212 .priv_size = sizeof(ScrollContext),
215 .priv_class = &scroll_class,213 .priv_class = &scroll_class,
216 .query_formats = query_formats,214 .query_formats = query_formats,
217 .inputs = scroll_inputs,215 FILTER_INPUTS(scroll_inputs),
218 .outputs = scroll_outputs,216 FILTER_OUTPUTS(scroll_outputs),
219 .flags = AVFILTER_FLAG_SUPPORT_TIMELINE_GENERIC | AVFILTER_FLAG_SLICE_THREADS,217 .flags = AVFILTER_FLAG_SUPPORT_TIMELINE_GENERIC | AVFILTER_FLAG_SLICE_THREADS,
220 .process_command = ff_filter_process_command,218 .process_command = ff_filter_process_command,
221};219};
libavfilter/vf_selectivecolor.c+2−4
@@ -456,7 +456,6 @@ static const AVFilterPad selectivecolor_inputs[] = { · 455 unmodified lines
456 .filter_frame = filter_frame,456 .filter_frame = filter_frame,
457 .config_props = config_input,457 .config_props = config_input,
458 },458 },
459 { NULL }
460};459};
461 460
462static const AVFilterPad selectivecolor_outputs[] = {461static const AVFilterPad selectivecolor_outputs[] = {
@@ -464,7 +463,6 @@ static const AVFilterPad selectivecolor_outputs[] = { · 1 unmodified line
464 .name = "default",463 .name = "default",
465 .type = AVMEDIA_TYPE_VIDEO,464 .type = AVMEDIA_TYPE_VIDEO,
466 },465 },
467 { NULL }
468};466};
469 467
470const AVFilter ff_vf_selectivecolor = {468const AVFilter ff_vf_selectivecolor = {
@@ -472,8 +470,8 @@ const AVFilter ff_vf_selectivecolor = { · 1 unmodified line
472 .description = NULL_IF_CONFIG_SMALL("Apply CMYK adjustments to specific color ranges."),470 .description = NULL_IF_CONFIG_SMALL("Apply CMYK adjustments to specific color ranges."),
473 .priv_size = sizeof(SelectiveColorContext),471 .priv_size = sizeof(SelectiveColorContext),
474 .query_formats = query_formats,472 .query_formats = query_formats,
475 .inputs = selectivecolor_inputs,473 FILTER_INPUTS(selectivecolor_inputs),
476 .outputs = selectivecolor_outputs,474 FILTER_OUTPUTS(selectivecolor_outputs),
477 .priv_class = &selectivecolor_class,475 .priv_class = &selectivecolor_class,
478 .flags = AVFILTER_FLAG_SUPPORT_TIMELINE_GENERIC | AVFILTER_FLAG_SLICE_THREADS,476 .flags = AVFILTER_FLAG_SUPPORT_TIMELINE_GENERIC | AVFILTER_FLAG_SLICE_THREADS,
479};477};
libavfilter/vf_separatefields.c+2−4
@@ -161,7 +161,6 @@ static const AVFilterPad separatefields_inputs[] = { · 160 unmodified lines
161 .name = "default",161 .name = "default",
162 .type = AVMEDIA_TYPE_VIDEO,162 .type = AVMEDIA_TYPE_VIDEO,
163 },163 },
164 { NULL }
165};164};
166 165
167static const AVFilterPad separatefields_outputs[] = {166static const AVFilterPad separatefields_outputs[] = {
@@ -170,7 +169,6 @@ static const AVFilterPad separatefields_outputs[] = { · 2 unmodified lines
170 .type = AVMEDIA_TYPE_VIDEO,169 .type = AVMEDIA_TYPE_VIDEO,
171 .config_props = config_props_output,170 .config_props = config_props_output,
172 },171 },
173 { NULL }
174};172};
175 173
176const AVFilter ff_vf_separatefields = {174const AVFilter ff_vf_separatefields = {
@@ -179,6 +177,6 @@ const AVFilter ff_vf_separatefields = { · 2 unmodified lines
179 .priv_size = sizeof(SeparateFieldsContext),177 .priv_size = sizeof(SeparateFieldsContext),
180 .activate = activate,178 .activate = activate,
181 .uninit = uninit,179 .uninit = uninit,
182 .inputs = separatefields_inputs,180 FILTER_INPUTS(separatefields_inputs),
183 .outputs = separatefields_outputs,181 FILTER_OUTPUTS(separatefields_outputs),
184};182};
libavfilter/vf_setparams.c+6−8
@@ -151,7 +151,6 @@ static const AVFilterPad inputs[] = { · 150 unmodified lines
151 .type = AVMEDIA_TYPE_VIDEO,151 .type = AVMEDIA_TYPE_VIDEO,
152 .filter_frame = filter_frame,152 .filter_frame = filter_frame,
153 },153 },
154 { NULL }
155};154};
156 155
157static const AVFilterPad outputs[] = {156static const AVFilterPad outputs[] = {
@@ -159,7 +158,6 @@ static const AVFilterPad outputs[] = { · 1 unmodified line
159 .name = "default",158 .name = "default",
160 .type = AVMEDIA_TYPE_VIDEO,159 .type = AVMEDIA_TYPE_VIDEO,
161 },160 },
162 { NULL }
163};161};
164 162
165const AVFilter ff_vf_setparams = {163const AVFilter ff_vf_setparams = {
@@ -167,8 +165,8 @@ const AVFilter ff_vf_setparams = { · 1 unmodified line
167 .description = NULL_IF_CONFIG_SMALL("Force field, or color property for the output video frame."),165 .description = NULL_IF_CONFIG_SMALL("Force field, or color property for the output video frame."),
168 .priv_size = sizeof(SetParamsContext),166 .priv_size = sizeof(SetParamsContext),
169 .priv_class = &setparams_class,167 .priv_class = &setparams_class,
170 .inputs = inputs,168 FILTER_INPUTS(inputs),
171 .outputs = outputs,169 FILTER_OUTPUTS(outputs),
172};170};
173 171
174#if CONFIG_SETRANGE_FILTER172#if CONFIG_SETRANGE_FILTER
@@ -206,8 +204,8 @@ const AVFilter ff_vf_setrange = { · 31 unmodified lines
206 .priv_size = sizeof(SetParamsContext),204 .priv_size = sizeof(SetParamsContext),
207 .init = init_setrange,205 .init = init_setrange,
208 .priv_class = &setrange_class,206 .priv_class = &setrange_class,
209 .inputs = inputs,207 FILTER_INPUTS(inputs),
210 .outputs = outputs,208 FILTER_OUTPUTS(outputs),
211};209};
212#endif /* CONFIG_SETRANGE_FILTER */210#endif /* CONFIG_SETRANGE_FILTER */
213 211
@@ -240,7 +238,7 @@ const AVFilter ff_vf_setfield = { · 26 unmodified lines
240 .priv_size = sizeof(SetParamsContext),238 .priv_size = sizeof(SetParamsContext),
241 .init = init_setfield,239 .init = init_setfield,
242 .priv_class = &setfield_class,240 .priv_class = &setfield_class,
243 .inputs = inputs,241 FILTER_INPUTS(inputs),
244 .outputs = outputs,242 FILTER_OUTPUTS(outputs),
245};243};
246#endif /* CONFIG_SETFIELD_FILTER */244#endif /* CONFIG_SETFIELD_FILTER */
libavfilter/vf_shear.c+2−4
@@ -302,7 +302,6 @@ static const AVFilterPad inputs[] = { · 301 unmodified lines
302 .type = AVMEDIA_TYPE_VIDEO,302 .type = AVMEDIA_TYPE_VIDEO,
303 .filter_frame = filter_frame,303 .filter_frame = filter_frame,
304 },304 },
305 { NULL }
306};305};
307 306
308static const AVFilterPad outputs[] = {307static const AVFilterPad outputs[] = {
@@ -311,7 +310,6 @@ static const AVFilterPad outputs[] = { · 2 unmodified lines
311 .type = AVMEDIA_TYPE_VIDEO,310 .type = AVMEDIA_TYPE_VIDEO,
312 .config_props = config_output,311 .config_props = config_output,
313 },312 },
314 { NULL }
315};313};
316 314
317const AVFilter ff_vf_shear = {315const AVFilter ff_vf_shear = {
@@ -320,8 +318,8 @@ const AVFilter ff_vf_shear = { · 2 unmodified lines
320 .priv_size = sizeof(ShearContext),318 .priv_size = sizeof(ShearContext),
321 .init = init,319 .init = init,
322 .query_formats = query_formats,320 .query_formats = query_formats,
323 .inputs = inputs,321 FILTER_INPUTS(inputs),
324 .outputs = outputs,322 FILTER_OUTPUTS(outputs),
325 .priv_class = &shear_class,323 .priv_class = &shear_class,
326 .flags = AVFILTER_FLAG_SUPPORT_TIMELINE_GENERIC | AVFILTER_FLAG_SLICE_THREADS,324 .flags = AVFILTER_FLAG_SUPPORT_TIMELINE_GENERIC | AVFILTER_FLAG_SLICE_THREADS,
327 .process_command = process_command,325 .process_command = process_command,
libavfilter/vf_showinfo.c+2−4
@@ -661,7 +661,6 @@ static const AVFilterPad avfilter_vf_showinfo_inputs[] = { · 660 unmodified lines
661 .filter_frame = filter_frame,661 .filter_frame = filter_frame,
662 .config_props = config_props_in,662 .config_props = config_props_in,
663 },663 },
664 { NULL }
665};664};
666 665
667static const AVFilterPad avfilter_vf_showinfo_outputs[] = {666static const AVFilterPad avfilter_vf_showinfo_outputs[] = {
@@ -670,14 +669,13 @@ static const AVFilterPad avfilter_vf_showinfo_outputs[] = { · 2 unmodified lines
670 .type = AVMEDIA_TYPE_VIDEO,669 .type = AVMEDIA_TYPE_VIDEO,
671 .config_props = config_props_out,670 .config_props = config_props_out,
672 },671 },
673 { NULL }
674};672};
675 673
676const AVFilter ff_vf_showinfo = {674const AVFilter ff_vf_showinfo = {
677 .name = "showinfo",675 .name = "showinfo",
678 .description = NULL_IF_CONFIG_SMALL("Show textual information for each video frame."),676 .description = NULL_IF_CONFIG_SMALL("Show textual information for each video frame."),
679 .inputs = avfilter_vf_showinfo_inputs,677 FILTER_INPUTS(avfilter_vf_showinfo_inputs),
680 .outputs = avfilter_vf_showinfo_outputs,678 FILTER_OUTPUTS(avfilter_vf_showinfo_outputs),
681 .priv_size = sizeof(ShowInfoContext),679 .priv_size = sizeof(ShowInfoContext),
682 .priv_class = &showinfo_class,680 .priv_class = &showinfo_class,
683};681};
libavfilter/vf_showpalette.c+2−4
@@ -100,7 +100,6 @@ static const AVFilterPad showpalette_inputs[] = { · 99 unmodified lines
100 .type = AVMEDIA_TYPE_VIDEO,100 .type = AVMEDIA_TYPE_VIDEO,
101 .filter_frame = filter_frame,101 .filter_frame = filter_frame,
102 },102 },
103 { NULL }
104};103};
105 104
106static const AVFilterPad showpalette_outputs[] = {105static const AVFilterPad showpalette_outputs[] = {
@@ -109,7 +108,6 @@ static const AVFilterPad showpalette_outputs[] = { · 2 unmodified lines
109 .type = AVMEDIA_TYPE_VIDEO,108 .type = AVMEDIA_TYPE_VIDEO,
110 .config_props = config_output,109 .config_props = config_output,
111 },110 },
112 { NULL }
113};111};
114 112
115const AVFilter ff_vf_showpalette = {113const AVFilter ff_vf_showpalette = {
@@ -117,7 +115,7 @@ const AVFilter ff_vf_showpalette = { · 1 unmodified line
117 .description = NULL_IF_CONFIG_SMALL("Display frame palette."),115 .description = NULL_IF_CONFIG_SMALL("Display frame palette."),
118 .priv_size = sizeof(ShowPaletteContext),116 .priv_size = sizeof(ShowPaletteContext),
119 .query_formats = query_formats,117 .query_formats = query_formats,
120 .inputs = showpalette_inputs,118 FILTER_INPUTS(showpalette_inputs),
121 .outputs = showpalette_outputs,119 FILTER_OUTPUTS(showpalette_outputs),
122 .priv_class = &showpalette_class,120 .priv_class = &showpalette_class,
123};121};
libavfilter/vf_shuffleframes.c+2−4
@@ -144,7 +144,6 @@ static const AVFilterPad shuffleframes_inputs[] = { · 143 unmodified lines
144 .type = AVMEDIA_TYPE_VIDEO,144 .type = AVMEDIA_TYPE_VIDEO,
145 .filter_frame = filter_frame,145 .filter_frame = filter_frame,
146 },146 },
147 { NULL },
148};147};
149 148
150static const AVFilterPad shuffleframes_outputs[] = {149static const AVFilterPad shuffleframes_outputs[] = {
@@ -152,7 +151,6 @@ static const AVFilterPad shuffleframes_outputs[] = { · 1 unmodified line
152 .name = "default",151 .name = "default",
153 .type = AVMEDIA_TYPE_VIDEO,152 .type = AVMEDIA_TYPE_VIDEO,
154 },153 },
155 { NULL },
156};154};
157 155
158const AVFilter ff_vf_shuffleframes = {156const AVFilter ff_vf_shuffleframes = {
@@ -162,7 +160,7 @@ const AVFilter ff_vf_shuffleframes = { · 3 unmodified lines
162 .priv_class = &shuffleframes_class,160 .priv_class = &shuffleframes_class,
163 .init = init,161 .init = init,
164 .uninit = uninit,162 .uninit = uninit,
165 .inputs = shuffleframes_inputs,163 FILTER_INPUTS(shuffleframes_inputs),
166 .outputs = shuffleframes_outputs,164 FILTER_OUTPUTS(shuffleframes_outputs),
167 .flags = AVFILTER_FLAG_SUPPORT_TIMELINE_GENERIC,165 .flags = AVFILTER_FLAG_SUPPORT_TIMELINE_GENERIC,
168};166};
libavfilter/vf_shufflepixels.c+2−4
@@ -434,7 +434,6 @@ static const AVFilterPad shufflepixels_inputs[] = { · 433 unmodified lines
434 .type = AVMEDIA_TYPE_VIDEO,434 .type = AVMEDIA_TYPE_VIDEO,
435 .filter_frame = filter_frame,435 .filter_frame = filter_frame,
436 },436 },
437 { NULL },
438};437};
439 438
440static const AVFilterPad shufflepixels_outputs[] = {439static const AVFilterPad shufflepixels_outputs[] = {
@@ -443,7 +442,6 @@ static const AVFilterPad shufflepixels_outputs[] = { · 2 unmodified lines
443 .type = AVMEDIA_TYPE_VIDEO,442 .type = AVMEDIA_TYPE_VIDEO,
444 .config_props = config_output,443 .config_props = config_output,
445 },444 },
446 { NULL },
447};445};
448 446
449const AVFilter ff_vf_shufflepixels = {447const AVFilter ff_vf_shufflepixels = {
@@ -453,7 +451,7 @@ const AVFilter ff_vf_shufflepixels = { · 3 unmodified lines
453 .priv_class = &shufflepixels_class,451 .priv_class = &shufflepixels_class,
454 .query_formats = query_formats,452 .query_formats = query_formats,
455 .uninit = uninit,453 .uninit = uninit,
456 .inputs = shufflepixels_inputs,454 FILTER_INPUTS(shufflepixels_inputs),
457 .outputs = shufflepixels_outputs,455 FILTER_OUTPUTS(shufflepixels_outputs),
458 .flags = AVFILTER_FLAG_SUPPORT_TIMELINE_GENERIC | AVFILTER_FLAG_SLICE_THREADS,456 .flags = AVFILTER_FLAG_SUPPORT_TIMELINE_GENERIC | AVFILTER_FLAG_SLICE_THREADS,
459};457};
libavfilter/vf_shuffleplanes.c+2−4
@@ -151,7 +151,6 @@ static const AVFilterPad shuffleplanes_inputs[] = { · 150 unmodified lines
151 .config_props = shuffleplanes_config_input,151 .config_props = shuffleplanes_config_input,
152 .filter_frame = shuffleplanes_filter_frame,152 .filter_frame = shuffleplanes_filter_frame,
153 },153 },
154 { NULL },
155};154};
156 155
157static const AVFilterPad shuffleplanes_outputs[] = {156static const AVFilterPad shuffleplanes_outputs[] = {
@@ -159,7 +158,6 @@ static const AVFilterPad shuffleplanes_outputs[] = { · 1 unmodified line
159 .name = "default",158 .name = "default",
160 .type = AVMEDIA_TYPE_VIDEO,159 .type = AVMEDIA_TYPE_VIDEO,
161 },160 },
162 { NULL },
163};161};
164 162
165const AVFilter ff_vf_shuffleplanes = {163const AVFilter ff_vf_shuffleplanes = {
@@ -168,7 +166,7 @@ const AVFilter ff_vf_shuffleplanes = { · 2 unmodified lines
168 .priv_size = sizeof(ShufflePlanesContext),166 .priv_size = sizeof(ShufflePlanesContext),
169 .priv_class = &shuffleplanes_class,167 .priv_class = &shuffleplanes_class,
170 .query_formats = query_formats,168 .query_formats = query_formats,
171 .inputs = shuffleplanes_inputs,169 FILTER_INPUTS(shuffleplanes_inputs),
172 .outputs = shuffleplanes_outputs,170 FILTER_OUTPUTS(shuffleplanes_outputs),
173 .flags = AVFILTER_FLAG_SUPPORT_TIMELINE_GENERIC,171 .flags = AVFILTER_FLAG_SUPPORT_TIMELINE_GENERIC,
174};172};
libavfilter/vf_signalstats.c+2−4
@@ -997,7 +997,6 @@ static const AVFilterPad signalstats_inputs[] = { · 996 unmodified lines
997 .type = AVMEDIA_TYPE_VIDEO,997 .type = AVMEDIA_TYPE_VIDEO,
998 .filter_frame = filter_frame,998 .filter_frame = filter_frame,
999 },999 },
1000 { NULL }
1001};1000};
1002 1001
1003static const AVFilterPad signalstats_outputs[] = {1002static const AVFilterPad signalstats_outputs[] = {
@@ -1006,7 +1005,6 @@ static const AVFilterPad signalstats_outputs[] = { · 2 unmodified lines
1006 .config_props = config_output,1005 .config_props = config_output,
1007 .type = AVMEDIA_TYPE_VIDEO,1006 .type = AVMEDIA_TYPE_VIDEO,
1008 },1007 },
1009 { NULL }
1010};1008};
1011 1009
1012const AVFilter ff_vf_signalstats = {1010const AVFilter ff_vf_signalstats = {
@@ -1016,8 +1014,8 @@ const AVFilter ff_vf_signalstats = { · 3 unmodified lines
1016 .uninit = uninit,1014 .uninit = uninit,
1017 .query_formats = query_formats,1015 .query_formats = query_formats,
1018 .priv_size = sizeof(SignalstatsContext),1016 .priv_size = sizeof(SignalstatsContext),
1019 .inputs = signalstats_inputs,1017 FILTER_INPUTS(signalstats_inputs),
1020 .outputs = signalstats_outputs,1018 FILTER_OUTPUTS(signalstats_outputs),
1021 .priv_class = &signalstats_class,1019 .priv_class = &signalstats_class,
1022 .flags = AVFILTER_FLAG_SLICE_THREADS,1020 .flags = AVFILTER_FLAG_SLICE_THREADS,
1023};1021};
libavfilter/vf_signature.c+1−2
@@ -755,7 +755,6 @@ static const AVFilterPad signature_outputs[] = { · 754 unmodified lines
755 .request_frame = request_frame,755 .request_frame = request_frame,
756 .config_props = config_output,756 .config_props = config_output,
757 },757 },
758 { NULL }
759};758};
760 759
761const AVFilter ff_vf_signature = {760const AVFilter ff_vf_signature = {
@@ -766,7 +765,7 @@ const AVFilter ff_vf_signature = { · 4 unmodified lines
766 .init = init,765 .init = init,
767 .uninit = uninit,766 .uninit = uninit,
768 .query_formats = query_formats,767 .query_formats = query_formats,
769 .outputs = signature_outputs,768 FILTER_OUTPUTS(signature_outputs),
770 .inputs = NULL,769 .inputs = NULL,
771 .flags = AVFILTER_FLAG_DYNAMIC_INPUTS,770 .flags = AVFILTER_FLAG_DYNAMIC_INPUTS,
772};771};
libavfilter/vf_smartblur.c+2−4
@@ -277,7 +277,6 @@ static const AVFilterPad smartblur_inputs[] = { · 276 unmodified lines
277 .filter_frame = filter_frame,277 .filter_frame = filter_frame,
278 .config_props = config_props,278 .config_props = config_props,
279 },279 },
280 { NULL }
281};280};
282 281
283static const AVFilterPad smartblur_outputs[] = {282static const AVFilterPad smartblur_outputs[] = {
@@ -285,7 +284,6 @@ static const AVFilterPad smartblur_outputs[] = { · 1 unmodified line
285 .name = "default",284 .name = "default",
286 .type = AVMEDIA_TYPE_VIDEO,285 .type = AVMEDIA_TYPE_VIDEO,
287 },286 },
288 { NULL }
289};287};
290 288
291const AVFilter ff_vf_smartblur = {289const AVFilter ff_vf_smartblur = {
@@ -295,8 +293,8 @@ const AVFilter ff_vf_smartblur = { · 3 unmodified lines
295 .init = init,293 .init = init,
296 .uninit = uninit,294 .uninit = uninit,
297 .query_formats = query_formats,295 .query_formats = query_formats,
298 .inputs = smartblur_inputs,296 FILTER_INPUTS(smartblur_inputs),
299 .outputs = smartblur_outputs,297 FILTER_OUTPUTS(smartblur_outputs),
300 .priv_class = &smartblur_class,298 .priv_class = &smartblur_class,
301 .flags = AVFILTER_FLAG_SUPPORT_TIMELINE_GENERIC,299 .flags = AVFILTER_FLAG_SUPPORT_TIMELINE_GENERIC,
302};300};
libavfilter/vf_spp.c+2−4
@@ -495,7 +495,6 @@ static const AVFilterPad spp_inputs[] = { · 494 unmodified lines
495 .config_props = config_input,495 .config_props = config_input,
496 .filter_frame = filter_frame,496 .filter_frame = filter_frame,
497 },497 },
498 { NULL }
499};498};
500 499
501static const AVFilterPad spp_outputs[] = {500static const AVFilterPad spp_outputs[] = {
@@ -503,7 +502,6 @@ static const AVFilterPad spp_outputs[] = { · 1 unmodified line
503 .name = "default",502 .name = "default",
504 .type = AVMEDIA_TYPE_VIDEO,503 .type = AVMEDIA_TYPE_VIDEO,
505 },504 },
506 { NULL }
507};505};
508 506
509const AVFilter ff_vf_spp = {507const AVFilter ff_vf_spp = {
@@ -513,8 +511,8 @@ const AVFilter ff_vf_spp = { · 3 unmodified lines
513 .init_dict = init_dict,511 .init_dict = init_dict,
514 .uninit = uninit,512 .uninit = uninit,
515 .query_formats = query_formats,513 .query_formats = query_formats,
516 .inputs = spp_inputs,514 FILTER_INPUTS(spp_inputs),
517 .outputs = spp_outputs,515 FILTER_OUTPUTS(spp_outputs),
518 .process_command = process_command,516 .process_command = process_command,
519 .priv_class = &spp_class,517 .priv_class = &spp_class,
520 .flags = AVFILTER_FLAG_SUPPORT_TIMELINE_INTERNAL,518 .flags = AVFILTER_FLAG_SUPPORT_TIMELINE_INTERNAL,
libavfilter/vf_sr.c+2−4
@@ -174,7 +174,6 @@ static const AVFilterPad sr_inputs[] = { · 173 unmodified lines
174 .type = AVMEDIA_TYPE_VIDEO,174 .type = AVMEDIA_TYPE_VIDEO,
175 .filter_frame = filter_frame,175 .filter_frame = filter_frame,
176 },176 },
177 { NULL }
178};177};
179 178
180static const AVFilterPad sr_outputs[] = {179static const AVFilterPad sr_outputs[] = {
@@ -183,7 +182,6 @@ static const AVFilterPad sr_outputs[] = { · 2 unmodified lines
183 .config_props = config_output,182 .config_props = config_output,
184 .type = AVMEDIA_TYPE_VIDEO,183 .type = AVMEDIA_TYPE_VIDEO,
185 },184 },
186 { NULL }
187};185};
188 186
189const AVFilter ff_vf_sr = {187const AVFilter ff_vf_sr = {
@@ -193,7 +191,7 @@ const AVFilter ff_vf_sr = { · 3 unmodified lines
193 .init = init,191 .init = init,
194 .uninit = uninit,192 .uninit = uninit,
195 .query_formats = query_formats,193 .query_formats = query_formats,
196 .inputs = sr_inputs,194 FILTER_INPUTS(sr_inputs),
197 .outputs = sr_outputs,195 FILTER_OUTPUTS(sr_outputs),
198 .priv_class = &sr_class,196 .priv_class = &sr_class,
199};197};
libavfilter/vf_ssim.c+2−4
@@ -579,7 +579,6 @@ static const AVFilterPad ssim_inputs[] = { · 578 unmodified lines
579 .type = AVMEDIA_TYPE_VIDEO,579 .type = AVMEDIA_TYPE_VIDEO,
580 .config_props = config_input_ref,580 .config_props = config_input_ref,
581 },581 },
582 { NULL }
583};582};
584 583
585static const AVFilterPad ssim_outputs[] = {584static const AVFilterPad ssim_outputs[] = {
@@ -588,7 +587,6 @@ static const AVFilterPad ssim_outputs[] = { · 2 unmodified lines
588 .type = AVMEDIA_TYPE_VIDEO,587 .type = AVMEDIA_TYPE_VIDEO,
589 .config_props = config_output,588 .config_props = config_output,
590 },589 },
591 { NULL }
592};590};
593 591
594const AVFilter ff_vf_ssim = {592const AVFilter ff_vf_ssim = {
@@ -601,7 +599,7 @@ const AVFilter ff_vf_ssim = { · 6 unmodified lines
601 .activate = activate,599 .activate = activate,
602 .priv_size = sizeof(SSIMContext),600 .priv_size = sizeof(SSIMContext),
603 .priv_class = &ssim_class,601 .priv_class = &ssim_class,
604 .inputs = ssim_inputs,602 FILTER_INPUTS(ssim_inputs),
605 .outputs = ssim_outputs,603 FILTER_OUTPUTS(ssim_outputs),
606 .flags = AVFILTER_FLAG_SUPPORT_TIMELINE_INTERNAL | AVFILTER_FLAG_SLICE_THREADS,604 .flags = AVFILTER_FLAG_SUPPORT_TIMELINE_INTERNAL | AVFILTER_FLAG_SLICE_THREADS,
607};605};
libavfilter/vf_stack.c+3−4
@@ -402,7 +402,6 @@ static const AVFilterPad outputs[] = { · 401 unmodified lines
402 .type = AVMEDIA_TYPE_VIDEO,402 .type = AVMEDIA_TYPE_VIDEO,
403 .config_props = config_output,403 .config_props = config_output,
404 },404 },
405 { NULL }
406};405};
407 406
408#if CONFIG_HSTACK_FILTER407#if CONFIG_HSTACK_FILTER
@@ -416,7 +415,7 @@ const AVFilter ff_vf_hstack = { · 7 unmodified lines
416 .priv_size = sizeof(StackContext),415 .priv_size = sizeof(StackContext),
417 .priv_class = &hstack_class,416 .priv_class = &hstack_class,
418 .query_formats = query_formats,417 .query_formats = query_formats,
419 .outputs = outputs,418 FILTER_OUTPUTS(outputs),
420 .init = init,419 .init = init,
421 .uninit = uninit,420 .uninit = uninit,
422 .activate = activate,421 .activate = activate,
@@ -436,7 +435,7 @@ const AVFilter ff_vf_vstack = { · 13 unmodified lines
436 .priv_size = sizeof(StackContext),435 .priv_size = sizeof(StackContext),
437 .priv_class = &vstack_class,436 .priv_class = &vstack_class,
438 .query_formats = query_formats,437 .query_formats = query_formats,
439 .outputs = outputs,438 FILTER_OUTPUTS(outputs),
440 .init = init,439 .init = init,
441 .uninit = uninit,440 .uninit = uninit,
442 .activate = activate,441 .activate = activate,
@@ -463,7 +462,7 @@ const AVFilter ff_vf_xstack = { · 20 unmodified lines
463 .priv_size = sizeof(StackContext),462 .priv_size = sizeof(StackContext),
464 .priv_class = &xstack_class,463 .priv_class = &xstack_class,
465 .query_formats = query_formats,464 .query_formats = query_formats,
466 .outputs = outputs,465 FILTER_OUTPUTS(outputs),
467 .init = init,466 .init = init,
468 .uninit = uninit,467 .uninit = uninit,
469 .activate = activate,468 .activate = activate,
libavfilter/vf_stereo3d.c+2−4
@@ -1096,7 +1096,6 @@ static const AVFilterPad stereo3d_inputs[] = { · 1095 unmodified lines
1096 .type = AVMEDIA_TYPE_VIDEO,1096 .type = AVMEDIA_TYPE_VIDEO,
1097 .filter_frame = filter_frame,1097 .filter_frame = filter_frame,
1098 },1098 },
1099 { NULL }
1100};1099};
1101 1100
1102static const AVFilterPad stereo3d_outputs[] = {1101static const AVFilterPad stereo3d_outputs[] = {
@@ -1105,7 +1104,6 @@ static const AVFilterPad stereo3d_outputs[] = { · 2 unmodified lines
1105 .type = AVMEDIA_TYPE_VIDEO,1104 .type = AVMEDIA_TYPE_VIDEO,
1106 .config_props = config_output,1105 .config_props = config_output,
1107 },1106 },
1108 { NULL }
1109};1107};
1110 1108
1111const AVFilter ff_vf_stereo3d = {1109const AVFilter ff_vf_stereo3d = {
@@ -1114,8 +1112,8 @@ const AVFilter ff_vf_stereo3d = { · 2 unmodified lines
1114 .priv_size = sizeof(Stereo3DContext),1112 .priv_size = sizeof(Stereo3DContext),
1115 .uninit = uninit,1113 .uninit = uninit,
1116 .query_formats = query_formats,1114 .query_formats = query_formats,
1117 .inputs = stereo3d_inputs,1115 FILTER_INPUTS(stereo3d_inputs),
1118 .outputs = stereo3d_outputs,1116 FILTER_OUTPUTS(stereo3d_outputs),
1119 .priv_class = &stereo3d_class,1117 .priv_class = &stereo3d_class,
1120 .flags = AVFILTER_FLAG_SLICE_THREADS,1118 .flags = AVFILTER_FLAG_SLICE_THREADS,
1121};1119};
libavfilter/vf_subtitles.c+4−6
@@ -202,7 +202,6 @@ static const AVFilterPad ass_inputs[] = { · 201 unmodified lines
202 .filter_frame = filter_frame,202 .filter_frame = filter_frame,
203 .config_props = config_input,203 .config_props = config_input,
204 },204 },
205 { NULL }
206};205};
207 206
208static const AVFilterPad ass_outputs[] = {207static const AVFilterPad ass_outputs[] = {
@@ -210,7 +209,6 @@ static const AVFilterPad ass_outputs[] = { · 1 unmodified line
210 .name = "default",209 .name = "default",
211 .type = AVMEDIA_TYPE_VIDEO,210 .type = AVMEDIA_TYPE_VIDEO,
212 },211 },
213 { NULL }
214};212};
215 213
216#if CONFIG_ASS_FILTER214#if CONFIG_ASS_FILTER
@@ -254,8 +252,8 @@ const AVFilter ff_vf_ass = { · 37 unmodified lines
254 .init = init_ass,252 .init = init_ass,
255 .uninit = uninit,253 .uninit = uninit,
256 .query_formats = query_formats,254 .query_formats = query_formats,
257 .inputs = ass_inputs,255 FILTER_INPUTS(ass_inputs),
258 .outputs = ass_outputs,256 FILTER_OUTPUTS(ass_outputs),
259 .priv_class = &ass_class,257 .priv_class = &ass_class,
260};258};
261#endif259#endif
@@ -488,8 +486,8 @@ const AVFilter ff_vf_subtitles = { · 226 unmodified lines
488 .init = init_subtitles,486 .init = init_subtitles,
489 .uninit = uninit,487 .uninit = uninit,
490 .query_formats = query_formats,488 .query_formats = query_formats,
491 .inputs = ass_inputs,489 FILTER_INPUTS(ass_inputs),
492 .outputs = ass_outputs,490 FILTER_OUTPUTS(ass_outputs),
493 .priv_class = &subtitles_class,491 .priv_class = &subtitles_class,
494};492};
495#endif493#endif
libavfilter/vf_super2xsai.c+2−4
@@ -345,7 +345,6 @@ static const AVFilterPad super2xsai_inputs[] = { · 344 unmodified lines
345 .config_props = config_input,345 .config_props = config_input,
346 .filter_frame = filter_frame,346 .filter_frame = filter_frame,
347 },347 },
348 { NULL }
349};348};
350 349
351static const AVFilterPad super2xsai_outputs[] = {350static const AVFilterPad super2xsai_outputs[] = {
@@ -354,7 +353,6 @@ static const AVFilterPad super2xsai_outputs[] = { · 2 unmodified lines
354 .type = AVMEDIA_TYPE_VIDEO,353 .type = AVMEDIA_TYPE_VIDEO,
355 .config_props = config_output,354 .config_props = config_output,
356 },355 },
357 { NULL }
358};356};
359 357
360const AVFilter ff_vf_super2xsai = {358const AVFilter ff_vf_super2xsai = {
@@ -362,7 +360,7 @@ const AVFilter ff_vf_super2xsai = { · 1 unmodified line
362 .description = NULL_IF_CONFIG_SMALL("Scale the input by 2x using the Super2xSaI pixel art algorithm."),360 .description = NULL_IF_CONFIG_SMALL("Scale the input by 2x using the Super2xSaI pixel art algorithm."),
363 .priv_size = sizeof(Super2xSaIContext),361 .priv_size = sizeof(Super2xSaIContext),
364 .query_formats = query_formats,362 .query_formats = query_formats,
365 .inputs = super2xsai_inputs,363 FILTER_INPUTS(super2xsai_inputs),
366 .outputs = super2xsai_outputs,364 FILTER_OUTPUTS(super2xsai_outputs),
367 .flags = AVFILTER_FLAG_SLICE_THREADS,365 .flags = AVFILTER_FLAG_SLICE_THREADS,
368};366};
libavfilter/vf_swaprect.c+2−4
@@ -232,7 +232,6 @@ static const AVFilterPad inputs[] = { · 231 unmodified lines
232 .filter_frame = filter_frame,232 .filter_frame = filter_frame,
233 .config_props = config_input,233 .config_props = config_input,
234 },234 },
235 { NULL }
236};235};
237 236
238static const AVFilterPad outputs[] = {237static const AVFilterPad outputs[] = {
@@ -240,7 +239,6 @@ static const AVFilterPad outputs[] = { · 1 unmodified line
240 .name = "default",239 .name = "default",
241 .type = AVMEDIA_TYPE_VIDEO,240 .type = AVMEDIA_TYPE_VIDEO,
242 },241 },
243 { NULL }
244};242};
245 243
246const AVFilter ff_vf_swaprect = {244const AVFilter ff_vf_swaprect = {
@@ -250,8 +248,8 @@ const AVFilter ff_vf_swaprect = { · 3 unmodified lines
250 .priv_class = &swaprect_class,248 .priv_class = &swaprect_class,
251 .query_formats = query_formats,249 .query_formats = query_formats,
252 .uninit = uninit,250 .uninit = uninit,
253 .inputs = inputs,251 FILTER_INPUTS(inputs),
254 .outputs = outputs,252 FILTER_OUTPUTS(outputs),
255 .flags = AVFILTER_FLAG_SUPPORT_TIMELINE_GENERIC,253 .flags = AVFILTER_FLAG_SUPPORT_TIMELINE_GENERIC,
256 .process_command = ff_filter_process_command,254 .process_command = ff_filter_process_command,
257};255};
libavfilter/vf_swapuv.c+2−4
@@ -100,7 +100,6 @@ static const AVFilterPad swapuv_inputs[] = { · 99 unmodified lines
100 .get_buffer.video = get_video_buffer,100 .get_buffer.video = get_video_buffer,
101 .filter_frame = filter_frame,101 .filter_frame = filter_frame,
102 },102 },
103 { NULL }
104};103};
105 104
106static const AVFilterPad swapuv_outputs[] = {105static const AVFilterPad swapuv_outputs[] = {
@@ -108,7 +107,6 @@ static const AVFilterPad swapuv_outputs[] = { · 1 unmodified line
108 .name = "default",107 .name = "default",
109 .type = AVMEDIA_TYPE_VIDEO,108 .type = AVMEDIA_TYPE_VIDEO,
110 },109 },
111 { NULL }
112};110};
113 111
114const AVFilter ff_vf_swapuv = {112const AVFilter ff_vf_swapuv = {
@@ -117,7 +115,7 @@ const AVFilter ff_vf_swapuv = { · 2 unmodified lines
117 .query_formats = query_formats,115 .query_formats = query_formats,
118 .priv_size = sizeof(SwapUVContext),116 .priv_size = sizeof(SwapUVContext),
119 .priv_class = &swapuv_class,117 .priv_class = &swapuv_class,
120 .inputs = swapuv_inputs,118 FILTER_INPUTS(swapuv_inputs),
121 .outputs = swapuv_outputs,119 FILTER_OUTPUTS(swapuv_outputs),
122 .flags = AVFILTER_FLAG_SUPPORT_TIMELINE_GENERIC,120 .flags = AVFILTER_FLAG_SUPPORT_TIMELINE_GENERIC,
123};121};
libavfilter/vf_telecine.c+2−4
@@ -275,7 +275,6 @@ static const AVFilterPad telecine_inputs[] = { · 274 unmodified lines
275 .filter_frame = filter_frame,275 .filter_frame = filter_frame,
276 .config_props = config_input,276 .config_props = config_input,
277 },277 },
278 { NULL }
279};278};
280 279
281static const AVFilterPad telecine_outputs[] = {280static const AVFilterPad telecine_outputs[] = {
@@ -284,7 +283,6 @@ static const AVFilterPad telecine_outputs[] = { · 2 unmodified lines
284 .type = AVMEDIA_TYPE_VIDEO,283 .type = AVMEDIA_TYPE_VIDEO,
285 .config_props = config_output,284 .config_props = config_output,
286 },285 },
287 { NULL }
288};286};
289 287
290const AVFilter ff_vf_telecine = {288const AVFilter ff_vf_telecine = {
@@ -295,6 +293,6 @@ const AVFilter ff_vf_telecine = { · 4 unmodified lines
295 .init = init,293 .init = init,
296 .uninit = uninit,294 .uninit = uninit,
297 .query_formats = query_formats,295 .query_formats = query_formats,
298 .inputs = telecine_inputs,296 FILTER_INPUTS(telecine_inputs),
299 .outputs = telecine_outputs,297 FILTER_OUTPUTS(telecine_outputs),
300};298};
libavfilter/vf_threshold.c+2−4
@@ -342,7 +342,6 @@ static const AVFilterPad inputs[] = { · 341 unmodified lines
342 .name = "max",342 .name = "max",
343 .type = AVMEDIA_TYPE_VIDEO,343 .type = AVMEDIA_TYPE_VIDEO,
344 },344 },
345 { NULL }
346};345};
347 346
348static const AVFilterPad outputs[] = {347static const AVFilterPad outputs[] = {
@@ -351,7 +350,6 @@ static const AVFilterPad outputs[] = { · 2 unmodified lines
351 .type = AVMEDIA_TYPE_VIDEO,350 .type = AVMEDIA_TYPE_VIDEO,
352 .config_props = config_output,351 .config_props = config_output,
353 },352 },
354 { NULL }
355};353};
356 354
357const AVFilter ff_vf_threshold = {355const AVFilter ff_vf_threshold = {
@@ -362,8 +360,8 @@ const AVFilter ff_vf_threshold = { · 4 unmodified lines
362 .uninit = uninit,360 .uninit = uninit,
363 .query_formats = query_formats,361 .query_formats = query_formats,
364 .activate = activate,362 .activate = activate,
365 .inputs = inputs,363 FILTER_INPUTS(inputs),
366 .outputs = outputs,364 FILTER_OUTPUTS(outputs),
367 .flags = AVFILTER_FLAG_SUPPORT_TIMELINE_INTERNAL | AVFILTER_FLAG_SLICE_THREADS,365 .flags = AVFILTER_FLAG_SUPPORT_TIMELINE_INTERNAL | AVFILTER_FLAG_SLICE_THREADS,
368 .process_command = ff_filter_process_command,366 .process_command = ff_filter_process_command,
369};367};
libavfilter/vf_thumbnail.c+2−4
@@ -272,7 +272,6 @@ static const AVFilterPad thumbnail_inputs[] = { · 271 unmodified lines
272 .config_props = config_props,272 .config_props = config_props,
273 .filter_frame = filter_frame,273 .filter_frame = filter_frame,
274 },274 },
275 { NULL }
276};275};
277 276
278static const AVFilterPad thumbnail_outputs[] = {277static const AVFilterPad thumbnail_outputs[] = {
@@ -281,7 +280,6 @@ static const AVFilterPad thumbnail_outputs[] = { · 2 unmodified lines
281 .type = AVMEDIA_TYPE_VIDEO,280 .type = AVMEDIA_TYPE_VIDEO,
282 .request_frame = request_frame,281 .request_frame = request_frame,
283 },282 },
284 { NULL }
285};283};
286 284
287const AVFilter ff_vf_thumbnail = {285const AVFilter ff_vf_thumbnail = {
@@ -291,8 +289,8 @@ const AVFilter ff_vf_thumbnail = { · 3 unmodified lines
291 .init = init,289 .init = init,
292 .uninit = uninit,290 .uninit = uninit,
293 .query_formats = query_formats,291 .query_formats = query_formats,
294 .inputs = thumbnail_inputs,292 FILTER_INPUTS(thumbnail_inputs),
295 .outputs = thumbnail_outputs,293 FILTER_OUTPUTS(thumbnail_outputs),
296 .priv_class = &thumbnail_class,294 .priv_class = &thumbnail_class,
297 .flags = AVFILTER_FLAG_SUPPORT_TIMELINE_GENERIC,295 .flags = AVFILTER_FLAG_SUPPORT_TIMELINE_GENERIC,
298};296};
libavfilter/vf_thumbnail_cuda.c+2−4
@@ -428,7 +428,6 @@ static const AVFilterPad thumbnail_cuda_inputs[] = { · 427 unmodified lines
428 .config_props = config_props,428 .config_props = config_props,
429 .filter_frame = filter_frame,429 .filter_frame = filter_frame,
430 },430 },
431 { NULL }
432};431};
433 432
434static const AVFilterPad thumbnail_cuda_outputs[] = {433static const AVFilterPad thumbnail_cuda_outputs[] = {
@@ -437,7 +436,6 @@ static const AVFilterPad thumbnail_cuda_outputs[] = { · 2 unmodified lines
437 .type = AVMEDIA_TYPE_VIDEO,436 .type = AVMEDIA_TYPE_VIDEO,
438 .request_frame = request_frame,437 .request_frame = request_frame,
439 },438 },
440 { NULL }
441};439};
442 440
443const AVFilter ff_vf_thumbnail_cuda = {441const AVFilter ff_vf_thumbnail_cuda = {
@@ -447,8 +445,8 @@ const AVFilter ff_vf_thumbnail_cuda = { · 3 unmodified lines
447 .init = init,445 .init = init,
448 .uninit = uninit,446 .uninit = uninit,
449 .query_formats = query_formats,447 .query_formats = query_formats,
450 .inputs = thumbnail_cuda_inputs,448 FILTER_INPUTS(thumbnail_cuda_inputs),
451 .outputs = thumbnail_cuda_outputs,449 FILTER_OUTPUTS(thumbnail_cuda_outputs),
452 .priv_class = &thumbnail_cuda_class,450 .priv_class = &thumbnail_cuda_class,
453 .flags_internal = FF_FILTER_FLAG_HWFRAME_AWARE,451 .flags_internal = FF_FILTER_FLAG_HWFRAME_AWARE,
454};452};
libavfilter/vf_tile.c+2−4
@@ -272,7 +272,6 @@ static const AVFilterPad tile_inputs[] = { · 271 unmodified lines
272 .type = AVMEDIA_TYPE_VIDEO,272 .type = AVMEDIA_TYPE_VIDEO,
273 .filter_frame = filter_frame,273 .filter_frame = filter_frame,
274 },274 },
275 { NULL }
276};275};
277 276
278static const AVFilterPad tile_outputs[] = {277static const AVFilterPad tile_outputs[] = {
@@ -282,7 +281,6 @@ static const AVFilterPad tile_outputs[] = { · 3 unmodified lines
282 .config_props = config_props,281 .config_props = config_props,
283 .request_frame = request_frame,282 .request_frame = request_frame,
284 },283 },
285 { NULL }
286};284};
287 285
288const AVFilter ff_vf_tile = {286const AVFilter ff_vf_tile = {
@@ -292,7 +290,7 @@ const AVFilter ff_vf_tile = { · 3 unmodified lines
292 .uninit = uninit,290 .uninit = uninit,
293 .query_formats = query_formats,291 .query_formats = query_formats,
294 .priv_size = sizeof(TileContext),292 .priv_size = sizeof(TileContext),
295 .inputs = tile_inputs,293 FILTER_INPUTS(tile_inputs),
296 .outputs = tile_outputs,294 FILTER_OUTPUTS(tile_outputs),
297 .priv_class = &tile_class,295 .priv_class = &tile_class,
298};296};
libavfilter/vf_tinterlace.c+4−6
@@ -540,7 +540,6 @@ static const AVFilterPad tinterlace_inputs[] = { · 539 unmodified lines
540 .type = AVMEDIA_TYPE_VIDEO,540 .type = AVMEDIA_TYPE_VIDEO,
541 .filter_frame = filter_frame,541 .filter_frame = filter_frame,
542 },542 },
543 { NULL }
544};543};
545 544
546static const AVFilterPad tinterlace_outputs[] = {545static const AVFilterPad tinterlace_outputs[] = {
@@ -549,7 +548,6 @@ static const AVFilterPad tinterlace_outputs[] = { · 2 unmodified lines
549 .type = AVMEDIA_TYPE_VIDEO,548 .type = AVMEDIA_TYPE_VIDEO,
550 .config_props = config_out_props,549 .config_props = config_out_props,
551 },550 },
552 { NULL }
553};551};
554 552
555const AVFilter ff_vf_tinterlace = {553const AVFilter ff_vf_tinterlace = {
@@ -558,8 +556,8 @@ const AVFilter ff_vf_tinterlace = { · 2 unmodified lines
558 .priv_size = sizeof(TInterlaceContext),556 .priv_size = sizeof(TInterlaceContext),
559 .uninit = uninit,557 .uninit = uninit,
560 .query_formats = query_formats,558 .query_formats = query_formats,
561 .inputs = tinterlace_inputs,559 FILTER_INPUTS(tinterlace_inputs),
562 .outputs = tinterlace_outputs,560 FILTER_OUTPUTS(tinterlace_outputs),
563 .priv_class = &tinterlace_class,561 .priv_class = &tinterlace_class,
564};562};
565 563
@@ -571,7 +569,7 @@ const AVFilter ff_vf_interlace = { · 5 unmodified lines
571 .init = init_interlace,569 .init = init_interlace,
572 .uninit = uninit,570 .uninit = uninit,
573 .query_formats = query_formats,571 .query_formats = query_formats,
574 .inputs = tinterlace_inputs,572 FILTER_INPUTS(tinterlace_inputs),
575 .outputs = tinterlace_outputs,573 FILTER_OUTPUTS(tinterlace_outputs),
576 .priv_class = &interlace_class,574 .priv_class = &interlace_class,
577};575};
libavfilter/vf_tmidequalizer.c+2−4
@@ -415,7 +415,6 @@ static const AVFilterPad tmidequalizer_inputs[] = { · 414 unmodified lines
415 .config_props = config_input,415 .config_props = config_input,
416 .filter_frame = filter_frame,416 .filter_frame = filter_frame,
417 },417 },
418 { NULL }
419};418};
420 419
421static const AVFilterPad tmidequalizer_outputs[] = {420static const AVFilterPad tmidequalizer_outputs[] = {
@@ -424,7 +423,6 @@ static const AVFilterPad tmidequalizer_outputs[] = { · 2 unmodified lines
424 .type = AVMEDIA_TYPE_VIDEO,423 .type = AVMEDIA_TYPE_VIDEO,
425 .request_frame = request_frame,424 .request_frame = request_frame,
426 },425 },
427 { NULL }
428};426};
429 427
430const AVFilter ff_vf_tmidequalizer = {428const AVFilter ff_vf_tmidequalizer = {
@@ -433,8 +431,8 @@ const AVFilter ff_vf_tmidequalizer = { · 2 unmodified lines
433 .priv_size = sizeof(TMidEqualizerContext),431 .priv_size = sizeof(TMidEqualizerContext),
434 .uninit = uninit,432 .uninit = uninit,
435 .query_formats = query_formats,433 .query_formats = query_formats,
436 .inputs = tmidequalizer_inputs,434 FILTER_INPUTS(tmidequalizer_inputs),
437 .outputs = tmidequalizer_outputs,435 FILTER_OUTPUTS(tmidequalizer_outputs),
438 .priv_class = &tmidequalizer_class,436 .priv_class = &tmidequalizer_class,
439 .flags = AVFILTER_FLAG_SUPPORT_TIMELINE_INTERNAL,437 .flags = AVFILTER_FLAG_SUPPORT_TIMELINE_INTERNAL,
440};438};
libavfilter/vf_tonemap.c+2−4
@@ -324,7 +324,6 @@ static const AVFilterPad tonemap_inputs[] = { · 323 unmodified lines
324 .type = AVMEDIA_TYPE_VIDEO,324 .type = AVMEDIA_TYPE_VIDEO,
325 .filter_frame = filter_frame,325 .filter_frame = filter_frame,
326 },326 },
327 { NULL }
328};327};
329 328
330static const AVFilterPad tonemap_outputs[] = {329static const AVFilterPad tonemap_outputs[] = {
@@ -332,7 +331,6 @@ static const AVFilterPad tonemap_outputs[] = { · 1 unmodified line
332 .name = "default",331 .name = "default",
333 .type = AVMEDIA_TYPE_VIDEO,332 .type = AVMEDIA_TYPE_VIDEO,
334 },333 },
335 { NULL }
336};334};
337 335
338const AVFilter ff_vf_tonemap = {336const AVFilter ff_vf_tonemap = {
@@ -342,7 +340,7 @@ const AVFilter ff_vf_tonemap = { · 3 unmodified lines
342 .query_formats = query_formats,340 .query_formats = query_formats,
343 .priv_size = sizeof(TonemapContext),341 .priv_size = sizeof(TonemapContext),
344 .priv_class = &tonemap_class,342 .priv_class = &tonemap_class,
345 .inputs = tonemap_inputs,343 FILTER_INPUTS(tonemap_inputs),
346 .outputs = tonemap_outputs,344 FILTER_OUTPUTS(tonemap_outputs),
347 .flags = AVFILTER_FLAG_SLICE_THREADS,345 .flags = AVFILTER_FLAG_SLICE_THREADS,
348};346};
libavfilter/vf_tonemap_opencl.c+2−4
@@ -527,7 +527,6 @@ static const AVFilterPad tonemap_opencl_inputs[] = { · 526 unmodified lines
527 .filter_frame = &tonemap_opencl_filter_frame,527 .filter_frame = &tonemap_opencl_filter_frame,
528 .config_props = &ff_opencl_filter_config_input,528 .config_props = &ff_opencl_filter_config_input,
529 },529 },
530 { NULL }
531};530};
532 531
533static const AVFilterPad tonemap_opencl_outputs[] = {532static const AVFilterPad tonemap_opencl_outputs[] = {
@@ -536,7 +535,6 @@ static const AVFilterPad tonemap_opencl_outputs[] = { · 2 unmodified lines
536 .type = AVMEDIA_TYPE_VIDEO,535 .type = AVMEDIA_TYPE_VIDEO,
537 .config_props = &tonemap_opencl_config_output,536 .config_props = &tonemap_opencl_config_output,
538 },537 },
539 { NULL }
540};538};
541 539
542const AVFilter ff_vf_tonemap_opencl = {540const AVFilter ff_vf_tonemap_opencl = {
@@ -547,7 +545,7 @@ const AVFilter ff_vf_tonemap_opencl = { · 4 unmodified lines
547 .init = &ff_opencl_filter_init,545 .init = &ff_opencl_filter_init,
548 .uninit = &tonemap_opencl_uninit,546 .uninit = &tonemap_opencl_uninit,
549 .query_formats = &ff_opencl_filter_query_formats,547 .query_formats = &ff_opencl_filter_query_formats,
550 .inputs = tonemap_opencl_inputs,548 FILTER_INPUTS(tonemap_opencl_inputs),
551 .outputs = tonemap_opencl_outputs,549 FILTER_OUTPUTS(tonemap_opencl_outputs),
552 .flags_internal = FF_FILTER_FLAG_HWFRAME_AWARE,550 .flags_internal = FF_FILTER_FLAG_HWFRAME_AWARE,
553};551};
libavfilter/vf_tonemap_vaapi.c+2−4
@@ -391,7 +391,6 @@ static const AVFilterPad tonemap_vaapi_inputs[] = { · 390 unmodified lines
391 .filter_frame = &tonemap_vaapi_filter_frame,391 .filter_frame = &tonemap_vaapi_filter_frame,
392 .config_props = &ff_vaapi_vpp_config_input,392 .config_props = &ff_vaapi_vpp_config_input,
393 },393 },
394 { NULL }
395};394};
396 395
397static const AVFilterPad tonemap_vaapi_outputs[] = {396static const AVFilterPad tonemap_vaapi_outputs[] = {
@@ -400,7 +399,6 @@ static const AVFilterPad tonemap_vaapi_outputs[] = { · 2 unmodified lines
400 .type = AVMEDIA_TYPE_VIDEO,399 .type = AVMEDIA_TYPE_VIDEO,
401 .config_props = &ff_vaapi_vpp_config_output,400 .config_props = &ff_vaapi_vpp_config_output,
402 },401 },
403 { NULL }
404};402};
405 403
406const AVFilter ff_vf_tonemap_vaapi = {404const AVFilter ff_vf_tonemap_vaapi = {
@@ -410,8 +408,8 @@ const AVFilter ff_vf_tonemap_vaapi = { · 3 unmodified lines
410 .init = &tonemap_vaapi_init,408 .init = &tonemap_vaapi_init,
411 .uninit = &ff_vaapi_vpp_ctx_uninit,409 .uninit = &ff_vaapi_vpp_ctx_uninit,
412 .query_formats = &ff_vaapi_vpp_query_formats,410 .query_formats = &ff_vaapi_vpp_query_formats,
413 .inputs = tonemap_vaapi_inputs,411 FILTER_INPUTS(tonemap_vaapi_inputs),
414 .outputs = tonemap_vaapi_outputs,412 FILTER_OUTPUTS(tonemap_vaapi_outputs),
415 .priv_class = &tonemap_vaapi_class,413 .priv_class = &tonemap_vaapi_class,
416 .flags_internal = FF_FILTER_FLAG_HWFRAME_AWARE,414 .flags_internal = FF_FILTER_FLAG_HWFRAME_AWARE,
417};415};
libavfilter/vf_tpad.c+2−4
@@ -193,7 +193,6 @@ static const AVFilterPad tpad_inputs[] = { · 192 unmodified lines
193 .type = AVMEDIA_TYPE_VIDEO,193 .type = AVMEDIA_TYPE_VIDEO,
194 .config_props = config_input,194 .config_props = config_input,
195 },195 },
196 { NULL }
197};196};
198 197
199static const AVFilterPad tpad_outputs[] = {198static const AVFilterPad tpad_outputs[] = {
@@ -201,7 +200,6 @@ static const AVFilterPad tpad_outputs[] = { · 1 unmodified line
201 .name = "default",200 .name = "default",
202 .type = AVMEDIA_TYPE_VIDEO,201 .type = AVMEDIA_TYPE_VIDEO,
203 },202 },
204 { NULL }
205};203};
206 204
207const AVFilter ff_vf_tpad = {205const AVFilter ff_vf_tpad = {
@@ -212,6 +210,6 @@ const AVFilter ff_vf_tpad = { · 4 unmodified lines
212 .query_formats = query_formats,210 .query_formats = query_formats,
213 .activate = activate,211 .activate = activate,
214 .uninit = uninit,212 .uninit = uninit,
215 .inputs = tpad_inputs,213 FILTER_INPUTS(tpad_inputs),
216 .outputs = tpad_outputs,214 FILTER_OUTPUTS(tpad_outputs),
217};215};
libavfilter/vf_transpose.c+2−4
@@ -386,7 +386,6 @@ static const AVFilterPad avfilter_vf_transpose_inputs[] = { · 385 unmodified lines
386 .get_buffer.video = get_video_buffer,386 .get_buffer.video = get_video_buffer,
387 .filter_frame = filter_frame,387 .filter_frame = filter_frame,
388 },388 },
389 { NULL }
390};389};
391 390
392static const AVFilterPad avfilter_vf_transpose_outputs[] = {391static const AVFilterPad avfilter_vf_transpose_outputs[] = {
@@ -395,7 +394,6 @@ static const AVFilterPad avfilter_vf_transpose_outputs[] = { · 2 unmodified lines
395 .config_props = config_props_output,394 .config_props = config_props_output,
396 .type = AVMEDIA_TYPE_VIDEO,395 .type = AVMEDIA_TYPE_VIDEO,
397 },396 },
398 { NULL }
399};397};
400 398
401const AVFilter ff_vf_transpose = {399const AVFilter ff_vf_transpose = {
@@ -404,7 +402,7 @@ const AVFilter ff_vf_transpose = { · 2 unmodified lines
404 .priv_size = sizeof(TransContext),402 .priv_size = sizeof(TransContext),
405 .priv_class = &transpose_class,403 .priv_class = &transpose_class,
406 .query_formats = query_formats,404 .query_formats = query_formats,
407 .inputs = avfilter_vf_transpose_inputs,405 FILTER_INPUTS(avfilter_vf_transpose_inputs),
408 .outputs = avfilter_vf_transpose_outputs,406 FILTER_OUTPUTS(avfilter_vf_transpose_outputs),
409 .flags = AVFILTER_FLAG_SLICE_THREADS,407 .flags = AVFILTER_FLAG_SLICE_THREADS,
410};408};
libavfilter/vf_transpose_npp.c+2−4
@@ -460,7 +460,6 @@ static const AVFilterPad npptranspose_inputs[] = { · 459 unmodified lines
460 .type = AVMEDIA_TYPE_VIDEO,460 .type = AVMEDIA_TYPE_VIDEO,
461 .filter_frame = npptranspose_filter_frame,461 .filter_frame = npptranspose_filter_frame,
462 },462 },
463 { NULL }
464};463};
465 464
466static const AVFilterPad npptranspose_outputs[] = {465static const AVFilterPad npptranspose_outputs[] = {
@@ -469,7 +468,6 @@ static const AVFilterPad npptranspose_outputs[] = { · 2 unmodified lines
469 .type = AVMEDIA_TYPE_VIDEO,468 .type = AVMEDIA_TYPE_VIDEO,
470 .config_props = npptranspose_config_props,469 .config_props = npptranspose_config_props,
471 },470 },
472 { NULL }
473};471};
474 472
475const AVFilter ff_vf_transpose_npp = {473const AVFilter ff_vf_transpose_npp = {
@@ -480,7 +478,7 @@ const AVFilter ff_vf_transpose_npp = { · 4 unmodified lines
480 .query_formats = npptranspose_query_formats,478 .query_formats = npptranspose_query_formats,
481 .priv_size = sizeof(NPPTransposeContext),479 .priv_size = sizeof(NPPTransposeContext),
482 .priv_class = &npptranspose_class,480 .priv_class = &npptranspose_class,
483 .inputs = npptranspose_inputs,481 FILTER_INPUTS(npptranspose_inputs),
484 .outputs = npptranspose_outputs,482 FILTER_OUTPUTS(npptranspose_outputs),
485 .flags_internal = FF_FILTER_FLAG_HWFRAME_AWARE,483 .flags_internal = FF_FILTER_FLAG_HWFRAME_AWARE,
486};484};
libavfilter/vf_transpose_opencl.c+2−4
@@ -260,7 +260,6 @@ static const AVFilterPad transpose_opencl_inputs[] = { · 259 unmodified lines
260 .filter_frame = &transpose_opencl_filter_frame,260 .filter_frame = &transpose_opencl_filter_frame,
261 .config_props = &ff_opencl_filter_config_input,261 .config_props = &ff_opencl_filter_config_input,
262 },262 },
263 { NULL }
264};263};
265 264
266static const AVFilterPad transpose_opencl_outputs[] = {265static const AVFilterPad transpose_opencl_outputs[] = {
@@ -269,7 +268,6 @@ static const AVFilterPad transpose_opencl_outputs[] = { · 2 unmodified lines
269 .type = AVMEDIA_TYPE_VIDEO,268 .type = AVMEDIA_TYPE_VIDEO,
270 .config_props = &transpose_opencl_config_output,269 .config_props = &transpose_opencl_config_output,
271 },270 },
272 { NULL }
273};271};
274 272
275const AVFilter ff_vf_transpose_opencl = {273const AVFilter ff_vf_transpose_opencl = {
@@ -280,7 +278,7 @@ const AVFilter ff_vf_transpose_opencl = { · 4 unmodified lines
280 .init = &ff_opencl_filter_init,278 .init = &ff_opencl_filter_init,
281 .uninit = &transpose_opencl_uninit,279 .uninit = &transpose_opencl_uninit,
282 .query_formats = &ff_opencl_filter_query_formats,280 .query_formats = &ff_opencl_filter_query_formats,
283 .inputs = transpose_opencl_inputs,281 FILTER_INPUTS(transpose_opencl_inputs),
284 .outputs = transpose_opencl_outputs,282 FILTER_OUTPUTS(transpose_opencl_outputs),
285 .flags_internal = FF_FILTER_FLAG_HWFRAME_AWARE,283 .flags_internal = FF_FILTER_FLAG_HWFRAME_AWARE,
286};284};
libavfilter/vf_transpose_vaapi.c+2−4
@@ -260,7 +260,6 @@ static const AVFilterPad transpose_vaapi_inputs[] = { · 259 unmodified lines
260 .get_buffer.video = get_video_buffer,260 .get_buffer.video = get_video_buffer,
261 .config_props = &ff_vaapi_vpp_config_input,261 .config_props = &ff_vaapi_vpp_config_input,
262 },262 },
263 { NULL }
264};263};
265 264
266static const AVFilterPad transpose_vaapi_outputs[] = {265static const AVFilterPad transpose_vaapi_outputs[] = {
@@ -269,7 +268,6 @@ static const AVFilterPad transpose_vaapi_outputs[] = { · 2 unmodified lines
269 .type = AVMEDIA_TYPE_VIDEO,268 .type = AVMEDIA_TYPE_VIDEO,
270 .config_props = &transpose_vaapi_vpp_config_output,269 .config_props = &transpose_vaapi_vpp_config_output,
271 },270 },
272 { NULL }
273};271};
274 272
275const AVFilter ff_vf_transpose_vaapi = {273const AVFilter ff_vf_transpose_vaapi = {
@@ -279,8 +277,8 @@ const AVFilter ff_vf_transpose_vaapi = { · 3 unmodified lines
279 .init = &transpose_vaapi_init,277 .init = &transpose_vaapi_init,
280 .uninit = &ff_vaapi_vpp_ctx_uninit,278 .uninit = &ff_vaapi_vpp_ctx_uninit,
281 .query_formats = &ff_vaapi_vpp_query_formats,279 .query_formats = &ff_vaapi_vpp_query_formats,
282 .inputs = transpose_vaapi_inputs,280 FILTER_INPUTS(transpose_vaapi_inputs),
283 .outputs = transpose_vaapi_outputs,281 FILTER_OUTPUTS(transpose_vaapi_outputs),
284 .priv_class = &transpose_vaapi_class,282 .priv_class = &transpose_vaapi_class,
285 .flags_internal = FF_FILTER_FLAG_HWFRAME_AWARE,283 .flags_internal = FF_FILTER_FLAG_HWFRAME_AWARE,
286};284};
libavfilter/vf_unsharp.c+2−4
@@ -343,7 +343,6 @@ static const AVFilterPad avfilter_vf_unsharp_inputs[] = { · 342 unmodified lines
343 .filter_frame = filter_frame,343 .filter_frame = filter_frame,
344 .config_props = config_input,344 .config_props = config_input,
345 },345 },
346 { NULL }
347};346};
348 347
349static const AVFilterPad avfilter_vf_unsharp_outputs[] = {348static const AVFilterPad avfilter_vf_unsharp_outputs[] = {
@@ -351,7 +350,6 @@ static const AVFilterPad avfilter_vf_unsharp_outputs[] = { · 1 unmodified line
351 .name = "default",350 .name = "default",
352 .type = AVMEDIA_TYPE_VIDEO,351 .type = AVMEDIA_TYPE_VIDEO,
353 },352 },
354 { NULL }
355};353};
356 354
357const AVFilter ff_vf_unsharp = {355const AVFilter ff_vf_unsharp = {
@@ -362,7 +360,7 @@ const AVFilter ff_vf_unsharp = { · 4 unmodified lines
362 .init = init,360 .init = init,
363 .uninit = uninit,361 .uninit = uninit,
364 .query_formats = query_formats,362 .query_formats = query_formats,
365 .inputs = avfilter_vf_unsharp_inputs,363 FILTER_INPUTS(avfilter_vf_unsharp_inputs),
366 .outputs = avfilter_vf_unsharp_outputs,364 FILTER_OUTPUTS(avfilter_vf_unsharp_outputs),
367 .flags = AVFILTER_FLAG_SUPPORT_TIMELINE_GENERIC | AVFILTER_FLAG_SLICE_THREADS,365 .flags = AVFILTER_FLAG_SUPPORT_TIMELINE_GENERIC | AVFILTER_FLAG_SLICE_THREADS,
368};366};
libavfilter/vf_unsharp_opencl.c+2−4
@@ -386,7 +386,6 @@ static const AVFilterPad unsharp_opencl_inputs[] = { · 385 unmodified lines
386 .filter_frame = &unsharp_opencl_filter_frame,386 .filter_frame = &unsharp_opencl_filter_frame,
387 .config_props = &ff_opencl_filter_config_input,387 .config_props = &ff_opencl_filter_config_input,
388 },388 },
389 { NULL }
390};389};
391 390
392static const AVFilterPad unsharp_opencl_outputs[] = {391static const AVFilterPad unsharp_opencl_outputs[] = {
@@ -395,7 +394,6 @@ static const AVFilterPad unsharp_opencl_outputs[] = { · 2 unmodified lines
395 .type = AVMEDIA_TYPE_VIDEO,394 .type = AVMEDIA_TYPE_VIDEO,
396 .config_props = &ff_opencl_filter_config_output,395 .config_props = &ff_opencl_filter_config_output,
397 },396 },
398 { NULL }
399};397};
400 398
401const AVFilter ff_vf_unsharp_opencl = {399const AVFilter ff_vf_unsharp_opencl = {
@@ -406,7 +404,7 @@ const AVFilter ff_vf_unsharp_opencl = { · 4 unmodified lines
406 .init = &ff_opencl_filter_init,404 .init = &ff_opencl_filter_init,
407 .uninit = &unsharp_opencl_uninit,405 .uninit = &unsharp_opencl_uninit,
408 .query_formats = &ff_opencl_filter_query_formats,406 .query_formats = &ff_opencl_filter_query_formats,
409 .inputs = unsharp_opencl_inputs,407 FILTER_INPUTS(unsharp_opencl_inputs),
410 .outputs = unsharp_opencl_outputs,408 FILTER_OUTPUTS(unsharp_opencl_outputs),
411 .flags_internal = FF_FILTER_FLAG_HWFRAME_AWARE,409 .flags_internal = FF_FILTER_FLAG_HWFRAME_AWARE,
412};410};
libavfilter/vf_untile.c+2−4
@@ -172,7 +172,6 @@ static const AVFilterPad untile_inputs[] = { · 171 unmodified lines
172 .name = "default",172 .name = "default",
173 .type = AVMEDIA_TYPE_VIDEO,173 .type = AVMEDIA_TYPE_VIDEO,
174 },174 },
175 { NULL }
176};175};
177 176
178static const AVFilterPad untile_outputs[] = {177static const AVFilterPad untile_outputs[] = {
@@ -181,7 +180,6 @@ static const AVFilterPad untile_outputs[] = { · 2 unmodified lines
181 .type = AVMEDIA_TYPE_VIDEO,180 .type = AVMEDIA_TYPE_VIDEO,
182 .config_props = config_output,181 .config_props = config_output,
183 },182 },
184 { NULL }
185};183};
186 184
187const AVFilter ff_vf_untile = {185const AVFilter ff_vf_untile = {
@@ -192,7 +190,7 @@ const AVFilter ff_vf_untile = { · 4 unmodified lines
192 .query_formats = query_formats,190 .query_formats = query_formats,
193 .activate = activate,191 .activate = activate,
194 .priv_size = sizeof(UntileContext),192 .priv_size = sizeof(UntileContext),
195 .inputs = untile_inputs,193 FILTER_INPUTS(untile_inputs),
196 .outputs = untile_outputs,194 FILTER_OUTPUTS(untile_outputs),
197 .priv_class = &untile_class,195 .priv_class = &untile_class,
198};196};
libavfilter/vf_uspp.c+2−4
@@ -480,7 +480,6 @@ static const AVFilterPad uspp_inputs[] = { · 479 unmodified lines
480 .config_props = config_input,480 .config_props = config_input,
481 .filter_frame = filter_frame,481 .filter_frame = filter_frame,
482 },482 },
483 { NULL }
484};483};
485 484
486static const AVFilterPad uspp_outputs[] = {485static const AVFilterPad uspp_outputs[] = {
@@ -488,7 +487,6 @@ static const AVFilterPad uspp_outputs[] = { · 1 unmodified line
488 .name = "default",487 .name = "default",
489 .type = AVMEDIA_TYPE_VIDEO,488 .type = AVMEDIA_TYPE_VIDEO,
490 },489 },
491 { NULL }
492};490};
493 491
494const AVFilter ff_vf_uspp = {492const AVFilter ff_vf_uspp = {
@@ -497,8 +495,8 @@ const AVFilter ff_vf_uspp = { · 2 unmodified lines
497 .priv_size = sizeof(USPPContext),495 .priv_size = sizeof(USPPContext),
498 .uninit = uninit,496 .uninit = uninit,
499 .query_formats = query_formats,497 .query_formats = query_formats,
500 .inputs = uspp_inputs,498 FILTER_INPUTS(uspp_inputs),
501 .outputs = uspp_outputs,499 FILTER_OUTPUTS(uspp_outputs),
502 .priv_class = &uspp_class,500 .priv_class = &uspp_class,
503 .flags = AVFILTER_FLAG_SUPPORT_TIMELINE_INTERNAL,501 .flags = AVFILTER_FLAG_SUPPORT_TIMELINE_INTERNAL,
504};502};
libavfilter/vf_v360.c+2−4
@@ -4966,7 +4966,6 @@ static const AVFilterPad inputs[] = { · 4965 unmodified lines
4966 .type = AVMEDIA_TYPE_VIDEO,4966 .type = AVMEDIA_TYPE_VIDEO,
4967 .filter_frame = filter_frame,4967 .filter_frame = filter_frame,
4968 },4968 },
4969 { NULL }
4970};4969};
4971 4970
4972static const AVFilterPad outputs[] = {4971static const AVFilterPad outputs[] = {
@@ -4975,7 +4974,6 @@ static const AVFilterPad outputs[] = { · 2 unmodified lines
4975 .type = AVMEDIA_TYPE_VIDEO,4974 .type = AVMEDIA_TYPE_VIDEO,
4976 .config_props = config_output,4975 .config_props = config_output,
4977 },4976 },
4978 { NULL }
4979};4977};
4980 4978
4981const AVFilter ff_vf_v360 = {4979const AVFilter ff_vf_v360 = {
@@ -4985,8 +4983,8 @@ const AVFilter ff_vf_v360 = { · 3 unmodified lines
4985 .init = init,4983 .init = init,
4986 .uninit = uninit,4984 .uninit = uninit,
4987 .query_formats = query_formats,4985 .query_formats = query_formats,
4988 .inputs = inputs,4986 FILTER_INPUTS(inputs),
4989 .outputs = outputs,4987 FILTER_OUTPUTS(outputs),
4990 .priv_class = &v360_class,4988 .priv_class = &v360_class,
4991 .flags = AVFILTER_FLAG_SLICE_THREADS,4989 .flags = AVFILTER_FLAG_SLICE_THREADS,
4992 .process_command = process_command,4990 .process_command = process_command,
libavfilter/vf_vaguedenoiser.c+2−4
@@ -595,7 +595,6 @@ static const AVFilterPad vaguedenoiser_inputs[] = { · 594 unmodified lines
595 .config_props = config_input,595 .config_props = config_input,
596 .filter_frame = filter_frame,596 .filter_frame = filter_frame,
597 },597 },
598 { NULL }
599};598};
600 599
601 600
@@ -604,7 +603,6 @@ static const AVFilterPad vaguedenoiser_outputs[] = { · 2 unmodified lines
604 .name = "default",603 .name = "default",
605 .type = AVMEDIA_TYPE_VIDEO604 .type = AVMEDIA_TYPE_VIDEO
606 },605 },
607 { NULL }
608};606};
609 607
610const AVFilter ff_vf_vaguedenoiser = {608const AVFilter ff_vf_vaguedenoiser = {
@@ -615,7 +613,7 @@ const AVFilter ff_vf_vaguedenoiser = { · 4 unmodified lines
615 .init = init,613 .init = init,
616 .uninit = uninit,614 .uninit = uninit,
617 .query_formats = query_formats,615 .query_formats = query_formats,
618 .inputs = vaguedenoiser_inputs,616 FILTER_INPUTS(vaguedenoiser_inputs),
619 .outputs = vaguedenoiser_outputs,617 FILTER_OUTPUTS(vaguedenoiser_outputs),
620 .flags = AVFILTER_FLAG_SUPPORT_TIMELINE_GENERIC,618 .flags = AVFILTER_FLAG_SUPPORT_TIMELINE_GENERIC,
621};619};
libavfilter/vf_vectorscope.c+2−4
@@ -1575,7 +1575,6 @@ static const AVFilterPad inputs[] = { · 1574 unmodified lines
1575 .filter_frame = filter_frame,1575 .filter_frame = filter_frame,
1576 .config_props = config_input,1576 .config_props = config_input,
1577 },1577 },
1578 { NULL }
1579};1578};
1580 1579
1581static const AVFilterPad outputs[] = {1580static const AVFilterPad outputs[] = {
@@ -1584,7 +1583,6 @@ static const AVFilterPad outputs[] = { · 2 unmodified lines
1584 .type = AVMEDIA_TYPE_VIDEO,1583 .type = AVMEDIA_TYPE_VIDEO,
1585 .config_props = config_output,1584 .config_props = config_output,
1586 },1585 },
1587 { NULL }
1588};1586};
1589 1587
1590const AVFilter ff_vf_vectorscope = {1588const AVFilter ff_vf_vectorscope = {
@@ -1594,6 +1592,6 @@ const AVFilter ff_vf_vectorscope = { · 3 unmodified lines
1594 .priv_class = &vectorscope_class,1592 .priv_class = &vectorscope_class,
1595 .query_formats = query_formats,1593 .query_formats = query_formats,
1596 .uninit = uninit,1594 .uninit = uninit,
1597 .inputs = inputs,1595 FILTER_INPUTS(inputs),
1598 .outputs = outputs,1596 FILTER_OUTPUTS(outputs),
1599};1597};
libavfilter/vf_vflip.c+2−4
@@ -133,7 +133,6 @@ static const AVFilterPad avfilter_vf_vflip_inputs[] = { · 132 unmodified lines
133 .filter_frame = filter_frame,133 .filter_frame = filter_frame,
134 .config_props = config_input,134 .config_props = config_input,
135 },135 },
136 { NULL }
137};136};
138 137
139static const AVFilterPad avfilter_vf_vflip_outputs[] = {138static const AVFilterPad avfilter_vf_vflip_outputs[] = {
@@ -141,7 +140,6 @@ static const AVFilterPad avfilter_vf_vflip_outputs[] = { · 1 unmodified line
141 .name = "default",140 .name = "default",
142 .type = AVMEDIA_TYPE_VIDEO,141 .type = AVMEDIA_TYPE_VIDEO,
143 },142 },
144 { NULL }
145};143};
146 144
147const AVFilter ff_vf_vflip = {145const AVFilter ff_vf_vflip = {
@@ -149,7 +147,7 @@ const AVFilter ff_vf_vflip = { · 1 unmodified line
149 .description = NULL_IF_CONFIG_SMALL("Flip the input video vertically."),147 .description = NULL_IF_CONFIG_SMALL("Flip the input video vertically."),
150 .priv_size = sizeof(FlipContext),148 .priv_size = sizeof(FlipContext),
151 .priv_class = &vflip_class,149 .priv_class = &vflip_class,
152 .inputs = avfilter_vf_vflip_inputs,150 FILTER_INPUTS(avfilter_vf_vflip_inputs),
153 .outputs = avfilter_vf_vflip_outputs,151 FILTER_OUTPUTS(avfilter_vf_vflip_outputs),
154 .flags = AVFILTER_FLAG_SUPPORT_TIMELINE_GENERIC,152 .flags = AVFILTER_FLAG_SUPPORT_TIMELINE_GENERIC,
155};153};
libavfilter/vf_vfrdet.c+2−4
@@ -93,7 +93,6 @@ static const AVFilterPad vfrdet_inputs[] = { · 92 unmodified lines
93 .type = AVMEDIA_TYPE_VIDEO,93 .type = AVMEDIA_TYPE_VIDEO,
94 .filter_frame = filter_frame,94 .filter_frame = filter_frame,
95 },95 },
96 { NULL }
97};96};
98 97
99static const AVFilterPad vfrdet_outputs[] = {98static const AVFilterPad vfrdet_outputs[] = {
@@ -101,7 +100,6 @@ static const AVFilterPad vfrdet_outputs[] = { · 1 unmodified line
101 .name = "default",100 .name = "default",
102 .type = AVMEDIA_TYPE_VIDEO,101 .type = AVMEDIA_TYPE_VIDEO,
103 },102 },
104 { NULL }
105};103};
106 104
107const AVFilter ff_vf_vfrdet = {105const AVFilter ff_vf_vfrdet = {
@@ -110,6 +108,6 @@ const AVFilter ff_vf_vfrdet = { · 2 unmodified lines
110 .priv_size = sizeof(VFRDETContext),108 .priv_size = sizeof(VFRDETContext),
111 .init = init,109 .init = init,
112 .uninit = uninit,110 .uninit = uninit,
113 .inputs = vfrdet_inputs,111 FILTER_INPUTS(vfrdet_inputs),
114 .outputs = vfrdet_outputs,112 FILTER_OUTPUTS(vfrdet_outputs),
115};113};
libavfilter/vf_vibrance.c+2−4
@@ -344,7 +344,6 @@ static const AVFilterPad vibrance_inputs[] = { · 343 unmodified lines
344 .filter_frame = filter_frame,344 .filter_frame = filter_frame,
345 .config_props = config_input,345 .config_props = config_input,
346 },346 },
347 { NULL }
348};347};
349 348
350static const AVFilterPad vibrance_outputs[] = {349static const AVFilterPad vibrance_outputs[] = {
@@ -352,7 +351,6 @@ static const AVFilterPad vibrance_outputs[] = { · 1 unmodified line
352 .name = "default",351 .name = "default",
353 .type = AVMEDIA_TYPE_VIDEO,352 .type = AVMEDIA_TYPE_VIDEO,
354 },353 },
355 { NULL }
356};354};
357 355
358#define OFFSET(x) offsetof(VibranceContext, x)356#define OFFSET(x) offsetof(VibranceContext, x)
@@ -378,8 +376,8 @@ const AVFilter ff_vf_vibrance = { · 19 unmodified lines
378 .priv_size = sizeof(VibranceContext),376 .priv_size = sizeof(VibranceContext),
379 .priv_class = &vibrance_class,377 .priv_class = &vibrance_class,
380 .query_formats = query_formats,378 .query_formats = query_formats,
381 .inputs = vibrance_inputs,379 FILTER_INPUTS(vibrance_inputs),
382 .outputs = vibrance_outputs,380 FILTER_OUTPUTS(vibrance_outputs),
383 .flags = AVFILTER_FLAG_SUPPORT_TIMELINE_GENERIC | AVFILTER_FLAG_SLICE_THREADS,381 .flags = AVFILTER_FLAG_SUPPORT_TIMELINE_GENERIC | AVFILTER_FLAG_SLICE_THREADS,
384 .process_command = ff_filter_process_command,382 .process_command = ff_filter_process_command,
385};383};
libavfilter/vf_vidstabdetect.c+2−4
@@ -193,7 +193,6 @@ static const AVFilterPad avfilter_vf_vidstabdetect_inputs[] = { · 192 unmodified lines
193 .filter_frame = filter_frame,193 .filter_frame = filter_frame,
194 .config_props = config_input,194 .config_props = config_input,
195 },195 },
196 { NULL }
197};196};
198 197
199static const AVFilterPad avfilter_vf_vidstabdetect_outputs[] = {198static const AVFilterPad avfilter_vf_vidstabdetect_outputs[] = {
@@ -201,7 +200,6 @@ static const AVFilterPad avfilter_vf_vidstabdetect_outputs[] = { · 1 unmodified line
201 .name = "default",200 .name = "default",
202 .type = AVMEDIA_TYPE_VIDEO,201 .type = AVMEDIA_TYPE_VIDEO,
203 },202 },
204 { NULL }
205};203};
206 204
207const AVFilter ff_vf_vidstabdetect = {205const AVFilter ff_vf_vidstabdetect = {
@@ -213,7 +211,7 @@ const AVFilter ff_vf_vidstabdetect = { · 5 unmodified lines
213 .init = init,211 .init = init,
214 .uninit = uninit,212 .uninit = uninit,
215 .query_formats = query_formats,213 .query_formats = query_formats,
216 .inputs = avfilter_vf_vidstabdetect_inputs,214 FILTER_INPUTS(avfilter_vf_vidstabdetect_inputs),
217 .outputs = avfilter_vf_vidstabdetect_outputs,215 FILTER_OUTPUTS(avfilter_vf_vidstabdetect_outputs),
218 .priv_class = &vidstabdetect_class,216 .priv_class = &vidstabdetect_class,
219};217};
libavfilter/vf_vidstabtransform.c+2−4
@@ -294,7 +294,6 @@ static const AVFilterPad avfilter_vf_vidstabtransform_inputs[] = { · 293 unmodified lines
294 .filter_frame = filter_frame,294 .filter_frame = filter_frame,
295 .config_props = config_input,295 .config_props = config_input,
296 },296 },
297 { NULL }
298};297};
299 298
300static const AVFilterPad avfilter_vf_vidstabtransform_outputs[] = {299static const AVFilterPad avfilter_vf_vidstabtransform_outputs[] = {
@@ -302,7 +301,6 @@ static const AVFilterPad avfilter_vf_vidstabtransform_outputs[] = { · 1 unmodified line
302 .name = "default",301 .name = "default",
303 .type = AVMEDIA_TYPE_VIDEO,302 .type = AVMEDIA_TYPE_VIDEO,
304 },303 },
305 { NULL }
306};304};
307 305
308const AVFilter ff_vf_vidstabtransform = {306const AVFilter ff_vf_vidstabtransform = {
@@ -314,7 +312,7 @@ const AVFilter ff_vf_vidstabtransform = { · 5 unmodified lines
314 .init = init,312 .init = init,
315 .uninit = uninit,313 .uninit = uninit,
316 .query_formats = query_formats,314 .query_formats = query_formats,
317 .inputs = avfilter_vf_vidstabtransform_inputs,315 FILTER_INPUTS(avfilter_vf_vidstabtransform_inputs),
318 .outputs = avfilter_vf_vidstabtransform_outputs,316 FILTER_OUTPUTS(avfilter_vf_vidstabtransform_outputs),
319 .priv_class = &vidstabtransform_class,317 .priv_class = &vidstabtransform_class,
320};318};
libavfilter/vf_vif.c+2−4
@@ -627,7 +627,6 @@ static const AVFilterPad vif_inputs[] = { · 626 unmodified lines
627 .type = AVMEDIA_TYPE_VIDEO,627 .type = AVMEDIA_TYPE_VIDEO,
628 .config_props = config_input_ref,628 .config_props = config_input_ref,
629 },629 },
630 { NULL }
631};630};
632 631
633static const AVFilterPad vif_outputs[] = {632static const AVFilterPad vif_outputs[] = {
@@ -636,7 +635,6 @@ static const AVFilterPad vif_outputs[] = { · 2 unmodified lines
636 .type = AVMEDIA_TYPE_VIDEO,635 .type = AVMEDIA_TYPE_VIDEO,
637 .config_props = config_output,636 .config_props = config_output,
638 },637 },
639 { NULL }
640};638};
641 639
642const AVFilter ff_vf_vif = {640const AVFilter ff_vf_vif = {
@@ -647,7 +645,7 @@ const AVFilter ff_vf_vif = { · 4 unmodified lines
647 .priv_size = sizeof(VIFContext),645 .priv_size = sizeof(VIFContext),
648 .priv_class = &vif_class,646 .priv_class = &vif_class,
649 .activate = activate,647 .activate = activate,
650 .inputs = vif_inputs,648 FILTER_INPUTS(vif_inputs),
651 .outputs = vif_outputs,649 FILTER_OUTPUTS(vif_outputs),
652 .flags = AVFILTER_FLAG_SUPPORT_TIMELINE_INTERNAL | AVFILTER_FLAG_SLICE_THREADS,650 .flags = AVFILTER_FLAG_SUPPORT_TIMELINE_INTERNAL | AVFILTER_FLAG_SLICE_THREADS,
653};651};
libavfilter/vf_vignette.c+2−4
@@ -327,7 +327,6 @@ static const AVFilterPad vignette_inputs[] = { · 326 unmodified lines
327 .filter_frame = filter_frame,327 .filter_frame = filter_frame,
328 .config_props = config_props,328 .config_props = config_props,
329 },329 },
330 { NULL }
331};330};
332 331
333static const AVFilterPad vignette_outputs[] = {332static const AVFilterPad vignette_outputs[] = {
@@ -335,7 +334,6 @@ static const AVFilterPad vignette_outputs[] = { · 1 unmodified line
335 .name = "default",334 .name = "default",
336 .type = AVMEDIA_TYPE_VIDEO,335 .type = AVMEDIA_TYPE_VIDEO,
337 },336 },
338 { NULL }
339};337};
340 338
341const AVFilter ff_vf_vignette = {339const AVFilter ff_vf_vignette = {
@@ -345,8 +343,8 @@ const AVFilter ff_vf_vignette = { · 3 unmodified lines
345 .init = init,343 .init = init,
346 .uninit = uninit,344 .uninit = uninit,
347 .query_formats = query_formats,345 .query_formats = query_formats,
348 .inputs = vignette_inputs,346 FILTER_INPUTS(vignette_inputs),
349 .outputs = vignette_outputs,347 FILTER_OUTPUTS(vignette_outputs),
350 .priv_class = &vignette_class,348 .priv_class = &vignette_class,
351 .flags = AVFILTER_FLAG_SUPPORT_TIMELINE_GENERIC,349 .flags = AVFILTER_FLAG_SUPPORT_TIMELINE_GENERIC,
352};350};
libavfilter/vf_vmafmotion.c+2−4
@@ -347,7 +347,6 @@ static const AVFilterPad vmafmotion_inputs[] = { · 346 unmodified lines
347 .filter_frame = filter_frame,347 .filter_frame = filter_frame,
348 .config_props = config_input_ref,348 .config_props = config_input_ref,
349 },349 },
350 { NULL }
351};350};
352 351
353static const AVFilterPad vmafmotion_outputs[] = {352static const AVFilterPad vmafmotion_outputs[] = {
@@ -355,7 +354,6 @@ static const AVFilterPad vmafmotion_outputs[] = { · 1 unmodified line
355 .name = "default",354 .name = "default",
356 .type = AVMEDIA_TYPE_VIDEO,355 .type = AVMEDIA_TYPE_VIDEO,
357 },356 },
358 { NULL }
359};357};
360 358
361const AVFilter ff_vf_vmafmotion = {359const AVFilter ff_vf_vmafmotion = {
@@ -366,6 +364,6 @@ const AVFilter ff_vf_vmafmotion = { · 4 unmodified lines
366 .query_formats = query_formats,364 .query_formats = query_formats,
367 .priv_size = sizeof(VMAFMotionContext),365 .priv_size = sizeof(VMAFMotionContext),
368 .priv_class = &vmafmotion_class,366 .priv_class = &vmafmotion_class,
369 .inputs = vmafmotion_inputs,367 FILTER_INPUTS(vmafmotion_inputs),
370 .outputs = vmafmotion_outputs,368 FILTER_OUTPUTS(vmafmotion_outputs),
371};369};
libavfilter/vf_vpp_qsv.c+2−4
@@ -600,7 +600,6 @@ static const AVFilterPad vpp_inputs[] = { · 599 unmodified lines
600 .type = AVMEDIA_TYPE_VIDEO,600 .type = AVMEDIA_TYPE_VIDEO,
601 .config_props = config_input,601 .config_props = config_input,
602 },602 },
603 { NULL }
604};603};
605 604
606static const AVFilterPad vpp_outputs[] = {605static const AVFilterPad vpp_outputs[] = {
@@ -609,7 +608,6 @@ static const AVFilterPad vpp_outputs[] = { · 2 unmodified lines
609 .type = AVMEDIA_TYPE_VIDEO,608 .type = AVMEDIA_TYPE_VIDEO,
610 .config_props = config_output,609 .config_props = config_output,
611 },610 },
612 { NULL }
613};611};
614 612
615const AVFilter ff_vf_vpp_qsv = {613const AVFilter ff_vf_vpp_qsv = {
@@ -619,8 +617,8 @@ const AVFilter ff_vf_vpp_qsv = { · 3 unmodified lines
619 .query_formats = query_formats,617 .query_formats = query_formats,
620 .init = vpp_init,618 .init = vpp_init,
621 .uninit = vpp_uninit,619 .uninit = vpp_uninit,
622 .inputs = vpp_inputs,620 FILTER_INPUTS(vpp_inputs),
623 .outputs = vpp_outputs,621 FILTER_OUTPUTS(vpp_outputs),
624 .activate = activate,622 .activate = activate,
625 .priv_class = &vpp_class,623 .priv_class = &vpp_class,
626 .flags_internal = FF_FILTER_FLAG_HWFRAME_AWARE,624 .flags_internal = FF_FILTER_FLAG_HWFRAME_AWARE,
libavfilter/vf_w3fdif.c+2−4
@@ -598,7 +598,6 @@ static const AVFilterPad w3fdif_inputs[] = { · 597 unmodified lines
598 .filter_frame = filter_frame,598 .filter_frame = filter_frame,
599 .config_props = config_input,599 .config_props = config_input,
600 },600 },
601 { NULL }
602};601};
603 602
604static const AVFilterPad w3fdif_outputs[] = {603static const AVFilterPad w3fdif_outputs[] = {
@@ -608,7 +607,6 @@ static const AVFilterPad w3fdif_outputs[] = { · 3 unmodified lines
608 .config_props = config_output,607 .config_props = config_output,
609 .request_frame = request_frame,608 .request_frame = request_frame,
610 },609 },
611 { NULL }
612};610};
613 611
614const AVFilter ff_vf_w3fdif = {612const AVFilter ff_vf_w3fdif = {
@@ -618,8 +616,8 @@ const AVFilter ff_vf_w3fdif = { · 3 unmodified lines
618 .priv_class = &w3fdif_class,616 .priv_class = &w3fdif_class,
619 .uninit = uninit,617 .uninit = uninit,
620 .query_formats = query_formats,618 .query_formats = query_formats,
621 .inputs = w3fdif_inputs,619 FILTER_INPUTS(w3fdif_inputs),
622 .outputs = w3fdif_outputs,620 FILTER_OUTPUTS(w3fdif_outputs),
623 .flags = AVFILTER_FLAG_SUPPORT_TIMELINE_INTERNAL | AVFILTER_FLAG_SLICE_THREADS,621 .flags = AVFILTER_FLAG_SUPPORT_TIMELINE_INTERNAL | AVFILTER_FLAG_SLICE_THREADS,
624 .process_command = ff_filter_process_command,622 .process_command = ff_filter_process_command,
625};623};
libavfilter/vf_waveform.c+2−4
@@ -3503,7 +3503,6 @@ static const AVFilterPad inputs[] = { · 3502 unmodified lines
3503 .filter_frame = filter_frame,3503 .filter_frame = filter_frame,
3504 .config_props = config_input,3504 .config_props = config_input,
3505 },3505 },
3506 { NULL }
3507};3506};
3508 3507
3509static const AVFilterPad outputs[] = {3508static const AVFilterPad outputs[] = {
@@ -3512,7 +3511,6 @@ static const AVFilterPad outputs[] = { · 2 unmodified lines
3512 .type = AVMEDIA_TYPE_VIDEO,3511 .type = AVMEDIA_TYPE_VIDEO,
3513 .config_props = config_output,3512 .config_props = config_output,
3514 },3513 },
3515 { NULL }
3516};3514};
3517 3515
3518const AVFilter ff_vf_waveform = {3516const AVFilter ff_vf_waveform = {
@@ -3522,7 +3520,7 @@ const AVFilter ff_vf_waveform = { · 3 unmodified lines
3522 .priv_class = &waveform_class,3520 .priv_class = &waveform_class,
3523 .query_formats = query_formats,3521 .query_formats = query_formats,
3524 .uninit = uninit,3522 .uninit = uninit,
3525 .inputs = inputs,3523 FILTER_INPUTS(inputs),
3526 .outputs = outputs,3524 FILTER_OUTPUTS(outputs),
3527 .flags = AVFILTER_FLAG_SLICE_THREADS,3525 .flags = AVFILTER_FLAG_SLICE_THREADS,
3528};3526};
libavfilter/vf_weave.c+4−6
@@ -178,7 +178,6 @@ static const AVFilterPad weave_inputs[] = { · 177 unmodified lines
178 .type = AVMEDIA_TYPE_VIDEO,178 .type = AVMEDIA_TYPE_VIDEO,
179 .filter_frame = filter_frame,179 .filter_frame = filter_frame,
180 },180 },
181 { NULL }
182};181};
183 182
184static const AVFilterPad weave_outputs[] = {183static const AVFilterPad weave_outputs[] = {
@@ -187,7 +186,6 @@ static const AVFilterPad weave_outputs[] = { · 2 unmodified lines
187 .type = AVMEDIA_TYPE_VIDEO,186 .type = AVMEDIA_TYPE_VIDEO,
188 .config_props = config_props_output,187 .config_props = config_props_output,
189 },188 },
190 { NULL }
191};189};
192 190
193const AVFilter ff_vf_weave = {191const AVFilter ff_vf_weave = {
@@ -197,8 +195,8 @@ const AVFilter ff_vf_weave = { · 3 unmodified lines
197 .priv_class = &weave_class,195 .priv_class = &weave_class,
198 .query_formats = query_formats,196 .query_formats = query_formats,
199 .uninit = uninit,197 .uninit = uninit,
200 .inputs = weave_inputs,198 FILTER_INPUTS(weave_inputs),
201 .outputs = weave_outputs,199 FILTER_OUTPUTS(weave_outputs),
202 .flags = AVFILTER_FLAG_SLICE_THREADS,200 .flags = AVFILTER_FLAG_SLICE_THREADS,
203};201};
204 202
@@ -223,7 +221,7 @@ const AVFilter ff_vf_doubleweave = { · 18 unmodified lines
223 .query_formats = query_formats,221 .query_formats = query_formats,
224 .init = init,222 .init = init,
225 .uninit = uninit,223 .uninit = uninit,
226 .inputs = weave_inputs,224 FILTER_INPUTS(weave_inputs),
227 .outputs = weave_outputs,225 FILTER_OUTPUTS(weave_outputs),
228 .flags = AVFILTER_FLAG_SLICE_THREADS,226 .flags = AVFILTER_FLAG_SLICE_THREADS,
229};227};
libavfilter/vf_xbr.c+2−4
@@ -410,7 +410,6 @@ static const AVFilterPad xbr_inputs[] = { · 409 unmodified lines
410 .type = AVMEDIA_TYPE_VIDEO,410 .type = AVMEDIA_TYPE_VIDEO,
411 .filter_frame = filter_frame,411 .filter_frame = filter_frame,
412 },412 },
413 { NULL }
414};413};
415 414
416static const AVFilterPad xbr_outputs[] = {415static const AVFilterPad xbr_outputs[] = {
@@ -419,14 +418,13 @@ static const AVFilterPad xbr_outputs[] = { · 2 unmodified lines
419 .type = AVMEDIA_TYPE_VIDEO,418 .type = AVMEDIA_TYPE_VIDEO,
420 .config_props = config_output,419 .config_props = config_output,
421 },420 },
422 { NULL }
423};421};
424 422
425const AVFilter ff_vf_xbr = {423const AVFilter ff_vf_xbr = {
426 .name = "xbr",424 .name = "xbr",
427 .description = NULL_IF_CONFIG_SMALL("Scale the input using xBR algorithm."),425 .description = NULL_IF_CONFIG_SMALL("Scale the input using xBR algorithm."),
428 .inputs = xbr_inputs,426 FILTER_INPUTS(xbr_inputs),
429 .outputs = xbr_outputs,427 FILTER_OUTPUTS(xbr_outputs),
430 .query_formats = query_formats,428 .query_formats = query_formats,
431 .priv_size = sizeof(XBRContext),429 .priv_size = sizeof(XBRContext),
432 .priv_class = &xbr_class,430 .priv_class = &xbr_class,
libavfilter/vf_xfade.c+2−4
@@ -1942,7 +1942,6 @@ static const AVFilterPad xfade_inputs[] = { · 1941 unmodified lines
1942 .name = "xfade",1942 .name = "xfade",
1943 .type = AVMEDIA_TYPE_VIDEO,1943 .type = AVMEDIA_TYPE_VIDEO,
1944 },1944 },
1945 { NULL }
1946};1945};
1947 1946
1948static const AVFilterPad xfade_outputs[] = {1947static const AVFilterPad xfade_outputs[] = {
@@ -1951,7 +1950,6 @@ static const AVFilterPad xfade_outputs[] = { · 2 unmodified lines
1951 .type = AVMEDIA_TYPE_VIDEO,1950 .type = AVMEDIA_TYPE_VIDEO,
1952 .config_props = config_output,1951 .config_props = config_output,
1953 },1952 },
1954 { NULL }
1955};1953};
1956 1954
1957const AVFilter ff_vf_xfade = {1955const AVFilter ff_vf_xfade = {
@@ -1962,7 +1960,7 @@ const AVFilter ff_vf_xfade = { · 4 unmodified lines
1962 .query_formats = query_formats,1960 .query_formats = query_formats,
1963 .activate = xfade_activate,1961 .activate = xfade_activate,
1964 .uninit = uninit,1962 .uninit = uninit,
1965 .inputs = xfade_inputs,1963 FILTER_INPUTS(xfade_inputs),
1966 .outputs = xfade_outputs,1964 FILTER_OUTPUTS(xfade_outputs),
1967 .flags = AVFILTER_FLAG_SLICE_THREADS,1965 .flags = AVFILTER_FLAG_SLICE_THREADS,
1968};1966};
libavfilter/vf_xfade_opencl.c+2−4
@@ -411,7 +411,6 @@ static const AVFilterPad xfade_opencl_inputs[] = { · 410 unmodified lines
411 .get_buffer.video = get_video_buffer,411 .get_buffer.video = get_video_buffer,
412 .config_props = &ff_opencl_filter_config_input,412 .config_props = &ff_opencl_filter_config_input,
413 },413 },
414 { NULL }
415};414};
416 415
417static const AVFilterPad xfade_opencl_outputs[] = {416static const AVFilterPad xfade_opencl_outputs[] = {
@@ -420,7 +419,6 @@ static const AVFilterPad xfade_opencl_outputs[] = { · 2 unmodified lines
420 .type = AVMEDIA_TYPE_VIDEO,419 .type = AVMEDIA_TYPE_VIDEO,
421 .config_props = &xfade_opencl_config_output,420 .config_props = &xfade_opencl_config_output,
422 },421 },
423 { NULL }
424};422};
425 423
426const AVFilter ff_vf_xfade_opencl = {424const AVFilter ff_vf_xfade_opencl = {
@@ -432,7 +430,7 @@ const AVFilter ff_vf_xfade_opencl = { · 5 unmodified lines
432 .uninit = &xfade_opencl_uninit,430 .uninit = &xfade_opencl_uninit,
433 .query_formats = &ff_opencl_filter_query_formats,431 .query_formats = &ff_opencl_filter_query_formats,
434 .activate = &xfade_opencl_activate,432 .activate = &xfade_opencl_activate,
435 .inputs = xfade_opencl_inputs,433 FILTER_INPUTS(xfade_opencl_inputs),
436 .outputs = xfade_opencl_outputs,434 FILTER_OUTPUTS(xfade_opencl_outputs),
437 .flags_internal = FF_FILTER_FLAG_HWFRAME_AWARE,435 .flags_internal = FF_FILTER_FLAG_HWFRAME_AWARE,
438};436};
libavfilter/vf_xmedian.c+3−6
@@ -383,7 +383,6 @@ static const AVFilterPad outputs[] = { · 382 unmodified lines
383 .type = AVMEDIA_TYPE_VIDEO,383 .type = AVMEDIA_TYPE_VIDEO,
384 .config_props = config_output,384 .config_props = config_output,
385 },385 },
386 { NULL }
387};386};
388 387
389#if CONFIG_XMEDIAN_FILTER388#if CONFIG_XMEDIAN_FILTER
@@ -395,7 +394,7 @@ const AVFilter ff_vf_xmedian = { · 5 unmodified lines
395 .priv_size = sizeof(XMedianContext),394 .priv_size = sizeof(XMedianContext),
396 .priv_class = &xmedian_class,395 .priv_class = &xmedian_class,
397 .query_formats = query_formats,396 .query_formats = query_formats,
398 .outputs = outputs,397 FILTER_OUTPUTS(outputs),
399 .preinit = xmedian_framesync_preinit,398 .preinit = xmedian_framesync_preinit,
400 .init = init,399 .init = init,
401 .uninit = uninit,400 .uninit = uninit,
@@ -460,7 +459,6 @@ static const AVFilterPad tmedian_inputs[] = { · 58 unmodified lines
460 .type = AVMEDIA_TYPE_VIDEO,459 .type = AVMEDIA_TYPE_VIDEO,
461 .filter_frame = tmedian_filter_frame,460 .filter_frame = tmedian_filter_frame,
462 },461 },
463 { NULL }
464};462};
465 463
466static const AVFilterPad tmedian_outputs[] = {464static const AVFilterPad tmedian_outputs[] = {
@@ -469,7 +467,6 @@ static const AVFilterPad tmedian_outputs[] = { · 2 unmodified lines
469 .type = AVMEDIA_TYPE_VIDEO,467 .type = AVMEDIA_TYPE_VIDEO,
470 .config_props = config_output,468 .config_props = config_output,
471 },469 },
472 { NULL }
473};470};
474 471
475AVFILTER_DEFINE_CLASS(tmedian);472AVFILTER_DEFINE_CLASS(tmedian);
@@ -480,8 +477,8 @@ const AVFilter ff_vf_tmedian = { · 4 unmodified lines
480 .priv_size = sizeof(XMedianContext),477 .priv_size = sizeof(XMedianContext),
481 .priv_class = &tmedian_class,478 .priv_class = &tmedian_class,
482 .query_formats = query_formats,479 .query_formats = query_formats,
483 .inputs = tmedian_inputs,480 FILTER_INPUTS(tmedian_inputs),
484 .outputs = tmedian_outputs,481 FILTER_OUTPUTS(tmedian_outputs),
485 .init = init,482 .init = init,
486 .uninit = uninit,483 .uninit = uninit,
487 .flags = AVFILTER_FLAG_SUPPORT_TIMELINE_INTERNAL | AVFILTER_FLAG_SLICE_THREADS,484 .flags = AVFILTER_FLAG_SUPPORT_TIMELINE_INTERNAL | AVFILTER_FLAG_SLICE_THREADS,
libavfilter/vf_yadif.c+2−4
@@ -337,7 +337,6 @@ static const AVFilterPad avfilter_vf_yadif_inputs[] = { · 336 unmodified lines
337 .type = AVMEDIA_TYPE_VIDEO,337 .type = AVMEDIA_TYPE_VIDEO,
338 .filter_frame = ff_yadif_filter_frame,338 .filter_frame = ff_yadif_filter_frame,
339 },339 },
340 { NULL }
341};340};
342 341
343static const AVFilterPad avfilter_vf_yadif_outputs[] = {342static const AVFilterPad avfilter_vf_yadif_outputs[] = {
@@ -347,7 +346,6 @@ static const AVFilterPad avfilter_vf_yadif_outputs[] = { · 3 unmodified lines
347 .request_frame = ff_yadif_request_frame,346 .request_frame = ff_yadif_request_frame,
348 .config_props = config_output,347 .config_props = config_output,
349 },348 },
350 { NULL }
351};349};
352 350
353const AVFilter ff_vf_yadif = {351const AVFilter ff_vf_yadif = {
@@ -357,7 +355,7 @@ const AVFilter ff_vf_yadif = { · 3 unmodified lines
357 .priv_class = &yadif_class,355 .priv_class = &yadif_class,
358 .uninit = uninit,356 .uninit = uninit,
359 .query_formats = query_formats,357 .query_formats = query_formats,
360 .inputs = avfilter_vf_yadif_inputs,358 FILTER_INPUTS(avfilter_vf_yadif_inputs),
361 .outputs = avfilter_vf_yadif_outputs,359 FILTER_OUTPUTS(avfilter_vf_yadif_outputs),
362 .flags = AVFILTER_FLAG_SUPPORT_TIMELINE_INTERNAL | AVFILTER_FLAG_SLICE_THREADS,360 .flags = AVFILTER_FLAG_SUPPORT_TIMELINE_INTERNAL | AVFILTER_FLAG_SLICE_THREADS,
363};361};
libavfilter/vf_yadif_cuda.c+2−4
@@ -363,7 +363,6 @@ static const AVFilterPad deint_cuda_inputs[] = { · 362 unmodified lines
363 .filter_frame = ff_yadif_filter_frame,363 .filter_frame = ff_yadif_filter_frame,
364 .config_props = config_input,364 .config_props = config_input,
365 },365 },
366 { NULL }
367};366};
368 367
369static const AVFilterPad deint_cuda_outputs[] = {368static const AVFilterPad deint_cuda_outputs[] = {
@@ -373,7 +372,6 @@ static const AVFilterPad deint_cuda_outputs[] = { · 3 unmodified lines
373 .request_frame = ff_yadif_request_frame,372 .request_frame = ff_yadif_request_frame,
374 .config_props = config_output,373 .config_props = config_output,
375 },374 },
376 { NULL }
377};375};
378 376
379const AVFilter ff_vf_yadif_cuda = {377const AVFilter ff_vf_yadif_cuda = {
@@ -383,8 +381,8 @@ const AVFilter ff_vf_yadif_cuda = { · 3 unmodified lines
383 .priv_class = &yadif_cuda_class,381 .priv_class = &yadif_cuda_class,
384 .uninit = deint_cuda_uninit,382 .uninit = deint_cuda_uninit,
385 .query_formats = deint_cuda_query_formats,383 .query_formats = deint_cuda_query_formats,
386 .inputs = deint_cuda_inputs,384 FILTER_INPUTS(deint_cuda_inputs),
387 .outputs = deint_cuda_outputs,385 FILTER_OUTPUTS(deint_cuda_outputs),
388 .flags = AVFILTER_FLAG_SUPPORT_TIMELINE_INTERNAL,386 .flags = AVFILTER_FLAG_SUPPORT_TIMELINE_INTERNAL,
389 .flags_internal = FF_FILTER_FLAG_HWFRAME_AWARE,387 .flags_internal = FF_FILTER_FLAG_HWFRAME_AWARE,
390};388};
libavfilter/vf_yaepblur.c+2−4
@@ -312,7 +312,6 @@ static const AVFilterPad yaep_inputs[] = { · 311 unmodified lines
312 .config_props = config_input,312 .config_props = config_input,
313 .filter_frame = filter_frame,313 .filter_frame = filter_frame,
314 },314 },
315 { NULL }
316};315};
317 316
318static const AVFilterPad yaep_outputs[] = {317static const AVFilterPad yaep_outputs[] = {
@@ -320,7 +319,6 @@ static const AVFilterPad yaep_outputs[] = { · 1 unmodified line
320 .name = "default",319 .name = "default",
321 .type = AVMEDIA_TYPE_VIDEO,320 .type = AVMEDIA_TYPE_VIDEO,
322 },321 },
323 { NULL }
324};322};
325 323
326#define OFFSET(x) offsetof(YAEPContext, x)324#define OFFSET(x) offsetof(YAEPContext, x)
@@ -345,8 +343,8 @@ const AVFilter ff_vf_yaepblur = { · 18 unmodified lines
345 .priv_class = &yaepblur_class,343 .priv_class = &yaepblur_class,
346 .uninit = uninit,344 .uninit = uninit,
347 .query_formats = query_formats,345 .query_formats = query_formats,
348 .inputs = yaep_inputs,346 FILTER_INPUTS(yaep_inputs),
349 .outputs = yaep_outputs,347 FILTER_OUTPUTS(yaep_outputs),
350 .flags = AVFILTER_FLAG_SUPPORT_TIMELINE_GENERIC | AVFILTER_FLAG_SLICE_THREADS,348 .flags = AVFILTER_FLAG_SUPPORT_TIMELINE_GENERIC | AVFILTER_FLAG_SLICE_THREADS,
351 .process_command = ff_filter_process_command,349 .process_command = ff_filter_process_command,
352};350};
libavfilter/vf_zoompan.c+2−4
@@ -361,7 +361,6 @@ static const AVFilterPad inputs[] = { · 360 unmodified lines
361 .name = "default",361 .name = "default",
362 .type = AVMEDIA_TYPE_VIDEO,362 .type = AVMEDIA_TYPE_VIDEO,
363 },363 },
364 { NULL }
365};364};
366 365
367static const AVFilterPad outputs[] = {366static const AVFilterPad outputs[] = {
@@ -370,7 +369,6 @@ static const AVFilterPad outputs[] = { · 2 unmodified lines
370 .type = AVMEDIA_TYPE_VIDEO,369 .type = AVMEDIA_TYPE_VIDEO,
371 .config_props = config_output,370 .config_props = config_output,
372 },371 },
373 { NULL }
374};372};
375 373
376const AVFilter ff_vf_zoompan = {374const AVFilter ff_vf_zoompan = {
@@ -382,6 +380,6 @@ const AVFilter ff_vf_zoompan = { · 5 unmodified lines
382 .uninit = uninit,380 .uninit = uninit,
383 .query_formats = query_formats,381 .query_formats = query_formats,
384 .activate = activate,382 .activate = activate,
385 .inputs = inputs,383 FILTER_INPUTS(inputs),
386 .outputs = outputs,384 FILTER_OUTPUTS(outputs),
387};385};
libavfilter/vf_zscale.c+2−4
@@ -914,7 +914,6 @@ static const AVFilterPad avfilter_vf_zscale_inputs[] = { · 913 unmodified lines
914 .type = AVMEDIA_TYPE_VIDEO,914 .type = AVMEDIA_TYPE_VIDEO,
915 .filter_frame = filter_frame,915 .filter_frame = filter_frame,
916 },916 },
917 { NULL }
918};917};
919 918
920static const AVFilterPad avfilter_vf_zscale_outputs[] = {919static const AVFilterPad avfilter_vf_zscale_outputs[] = {
@@ -923,7 +922,6 @@ static const AVFilterPad avfilter_vf_zscale_outputs[] = { · 2 unmodified lines
923 .type = AVMEDIA_TYPE_VIDEO,922 .type = AVMEDIA_TYPE_VIDEO,
924 .config_props = config_props,923 .config_props = config_props,
925 },924 },
926 { NULL }
927};925};
928 926
929const AVFilter ff_vf_zscale = {927const AVFilter ff_vf_zscale = {
@@ -934,7 +932,7 @@ const AVFilter ff_vf_zscale = { · 4 unmodified lines
934 .priv_size = sizeof(ZScaleContext),932 .priv_size = sizeof(ZScaleContext),
935 .priv_class = &zscale_class,933 .priv_class = &zscale_class,
936 .uninit = uninit,934 .uninit = uninit,
937 .inputs = avfilter_vf_zscale_inputs,935 FILTER_INPUTS(avfilter_vf_zscale_inputs),
938 .outputs = avfilter_vf_zscale_outputs,936 FILTER_OUTPUTS(avfilter_vf_zscale_outputs),
939 .process_command = process_command,937 .process_command = process_command,
940};938};
libavfilter/vsink_nullsink.c+1−2
@@ -32,13 +32,12 @@ static const AVFilterPad avfilter_vsink_nullsink_inputs[] = { · 31 unmodified lines
32 .type = AVMEDIA_TYPE_VIDEO,32 .type = AVMEDIA_TYPE_VIDEO,
33 .filter_frame = filter_frame,33 .filter_frame = filter_frame,
34 },34 },
35 { NULL },
36};35};
37 36
38const AVFilter ff_vsink_nullsink = {37const AVFilter ff_vsink_nullsink = {
39 .name = "nullsink",38 .name = "nullsink",
40 .description = NULL_IF_CONFIG_SMALL("Do absolutely nothing with the input video."),39 .description = NULL_IF_CONFIG_SMALL("Do absolutely nothing with the input video."),
41 .priv_size = 0,40 .priv_size = 0,
42 .inputs = avfilter_vsink_nullsink_inputs,41 FILTER_INPUTS(avfilter_vsink_nullsink_inputs),
43 .outputs = NULL,42 .outputs = NULL,
44};43};
libavfilter/vsrc_cellauto.c+1−2
@@ -321,7 +321,6 @@ static const AVFilterPad cellauto_outputs[] = { · 320 unmodified lines
321 .request_frame = request_frame,321 .request_frame = request_frame,
322 .config_props = config_props,322 .config_props = config_props,
323 },323 },
324 { NULL }
325};324};
326 325
327const AVFilter ff_vsrc_cellauto = {326const AVFilter ff_vsrc_cellauto = {
@@ -333,5 +332,5 @@ const AVFilter ff_vsrc_cellauto = { · 5 unmodified lines
333 .uninit = uninit,332 .uninit = uninit,
334 .query_formats = query_formats,333 .query_formats = query_formats,
335 .inputs = NULL,334 .inputs = NULL,
336 .outputs = cellauto_outputs,335 FILTER_OUTPUTS(cellauto_outputs),
337};336};
libavfilter/vsrc_gradients.c+1−2
@@ -292,7 +292,6 @@ static const AVFilterPad gradients_outputs[] = { · 291 unmodified lines
292 .type = AVMEDIA_TYPE_VIDEO,292 .type = AVMEDIA_TYPE_VIDEO,
293 .config_props = config_output,293 .config_props = config_output,
294 },294 },
295 { NULL }
296};295};
297 296
298const AVFilter ff_vsrc_gradients = {297const AVFilter ff_vsrc_gradients = {
@@ -302,7 +301,7 @@ const AVFilter ff_vsrc_gradients = { · 3 unmodified lines
302 .priv_class = &gradients_class,301 .priv_class = &gradients_class,
303 .query_formats = query_formats,302 .query_formats = query_formats,
304 .inputs = NULL,303 .inputs = NULL,
305 .outputs = gradients_outputs,304 FILTER_OUTPUTS(gradients_outputs),
306 .activate = activate,305 .activate = activate,
307 .flags = AVFILTER_FLAG_SLICE_THREADS,306 .flags = AVFILTER_FLAG_SLICE_THREADS,
308};307};
libavfilter/vsrc_life.c+1−2
@@ -436,7 +436,6 @@ static const AVFilterPad life_outputs[] = { · 435 unmodified lines
436 .request_frame = request_frame,436 .request_frame = request_frame,
437 .config_props = config_props,437 .config_props = config_props,
438 },438 },
439 { NULL}
440};439};
441 440
442const AVFilter ff_vsrc_life = {441const AVFilter ff_vsrc_life = {
@@ -448,5 +447,5 @@ const AVFilter ff_vsrc_life = { · 5 unmodified lines
448 .uninit = uninit,447 .uninit = uninit,
449 .query_formats = query_formats,448 .query_formats = query_formats,
450 .inputs = NULL,449 .inputs = NULL,
451 .outputs = life_outputs,450 FILTER_OUTPUTS(life_outputs),
452};451};
libavfilter/vsrc_mandelbrot.c+1−2
@@ -413,7 +413,6 @@ static const AVFilterPad mandelbrot_outputs[] = { · 412 unmodified lines
413 .request_frame = request_frame,413 .request_frame = request_frame,
414 .config_props = config_props,414 .config_props = config_props,
415 },415 },
416 { NULL }
417};416};
418 417
419const AVFilter ff_vsrc_mandelbrot = {418const AVFilter ff_vsrc_mandelbrot = {
@@ -425,5 +424,5 @@ const AVFilter ff_vsrc_mandelbrot = { · 5 unmodified lines
425 .uninit = uninit,424 .uninit = uninit,
426 .query_formats = query_formats,425 .query_formats = query_formats,
427 .inputs = NULL,426 .inputs = NULL,
428 .outputs = mandelbrot_outputs,427 FILTER_OUTPUTS(mandelbrot_outputs),
429};428};
libavfilter/vsrc_mptestsrc.c+1−2
@@ -351,7 +351,6 @@ static const AVFilterPad mptestsrc_outputs[] = { · 350 unmodified lines
351 .request_frame = request_frame,351 .request_frame = request_frame,
352 .config_props = config_props,352 .config_props = config_props,
353 },353 },
354 { NULL }
355};354};
356 355
357const AVFilter ff_vsrc_mptestsrc = {356const AVFilter ff_vsrc_mptestsrc = {
@@ -362,5 +361,5 @@ const AVFilter ff_vsrc_mptestsrc = { · 4 unmodified lines
362 .init = init,361 .init = init,
363 .query_formats = query_formats,362 .query_formats = query_formats,
364 .inputs = NULL,363 .inputs = NULL,
365 .outputs = mptestsrc_outputs,364 FILTER_OUTPUTS(mptestsrc_outputs),
366};365};
libavfilter/vsrc_sierpinski.c+1−2
@@ -218,7 +218,6 @@ static const AVFilterPad sierpinski_outputs[] = { · 217 unmodified lines
218 .request_frame = sierpinski_request_frame,218 .request_frame = sierpinski_request_frame,
219 .config_props = config_output,219 .config_props = config_output,
220 },220 },
221 { NULL }
222};221};
223 222
224const AVFilter ff_vsrc_sierpinski = {223const AVFilter ff_vsrc_sierpinski = {
@@ -228,6 +227,6 @@ const AVFilter ff_vsrc_sierpinski = { · 3 unmodified lines
228 .priv_class = &sierpinski_class,227 .priv_class = &sierpinski_class,
229 .query_formats = query_formats,228 .query_formats = query_formats,
230 .inputs = NULL,229 .inputs = NULL,
231 .outputs = sierpinski_outputs,230 FILTER_OUTPUTS(sierpinski_outputs),
232 .flags = AVFILTER_FLAG_SLICE_THREADS,231 .flags = AVFILTER_FLAG_SLICE_THREADS,
233};232};
libavfilter/vsrc_testsrc.c+13−23
@@ -263,7 +263,6 @@ static const AVFilterPad color_outputs[] = { · 262 unmodified lines
263 .type = AVMEDIA_TYPE_VIDEO,263 .type = AVMEDIA_TYPE_VIDEO,
264 .config_props = color_config_props,264 .config_props = color_config_props,
265 },265 },
266 { NULL }
267};266};
268 267
269const AVFilter ff_vsrc_color = {268const AVFilter ff_vsrc_color = {
@@ -276,7 +275,7 @@ const AVFilter ff_vsrc_color = { · 6 unmodified lines
276 .activate = activate,275 .activate = activate,
277 .query_formats = color_query_formats,276 .query_formats = color_query_formats,
278 .inputs = NULL,277 .inputs = NULL,
279 .outputs = color_outputs,278 FILTER_OUTPUTS(color_outputs),
280 .process_command = color_process_command,279 .process_command = color_process_command,
281};280};
282 281
@@ -394,7 +393,6 @@ static const AVFilterPad haldclutsrc_outputs[] = { · 111 unmodified lines
394 .type = AVMEDIA_TYPE_VIDEO,393 .type = AVMEDIA_TYPE_VIDEO,
395 .config_props = haldclutsrc_config_props,394 .config_props = haldclutsrc_config_props,
396 },395 },
397 { NULL }
398};396};
399 397
400const AVFilter ff_vsrc_haldclutsrc = {398const AVFilter ff_vsrc_haldclutsrc = {
@@ -407,7 +405,7 @@ const AVFilter ff_vsrc_haldclutsrc = { · 6 unmodified lines
407 .query_formats = haldclutsrc_query_formats,405 .query_formats = haldclutsrc_query_formats,
408 .activate = activate,406 .activate = activate,
409 .inputs = NULL,407 .inputs = NULL,
410 .outputs = haldclutsrc_outputs,408 FILTER_OUTPUTS(haldclutsrc_outputs),
411};409};
412#endif /* CONFIG_HALDCLUTSRC_FILTER */410#endif /* CONFIG_HALDCLUTSRC_FILTER */
413 411
@@ -432,7 +430,6 @@ static const AVFilterPad nullsrc_outputs[] = { · 18 unmodified lines
432 .type = AVMEDIA_TYPE_VIDEO,430 .type = AVMEDIA_TYPE_VIDEO,
433 .config_props = config_props,431 .config_props = config_props,
434 },432 },
435 { NULL },
436};433};
437 434
438const AVFilter ff_vsrc_nullsrc = {435const AVFilter ff_vsrc_nullsrc = {
@@ -444,7 +441,7 @@ const AVFilter ff_vsrc_nullsrc = { · 5 unmodified lines
444 .priv_size = sizeof(TestSourceContext),441 .priv_size = sizeof(TestSourceContext),
445 .priv_class = &nullsrc_class,442 .priv_class = &nullsrc_class,
446 .inputs = NULL,443 .inputs = NULL,
447 .outputs = nullsrc_outputs,444 FILTER_OUTPUTS(nullsrc_outputs),
448};445};
449 446
450#endif /* CONFIG_NULLSRC_FILTER */447#endif /* CONFIG_NULLSRC_FILTER */
@@ -665,7 +662,6 @@ static const AVFilterPad avfilter_vsrc_testsrc_outputs[] = { · 214 unmodified lines
665 .type = AVMEDIA_TYPE_VIDEO,662 .type = AVMEDIA_TYPE_VIDEO,
666 .config_props = config_props,663 .config_props = config_props,
667 },664 },
668 { NULL }
669};665};
670 666
671const AVFilter ff_vsrc_testsrc = {667const AVFilter ff_vsrc_testsrc = {
@@ -678,7 +674,7 @@ const AVFilter ff_vsrc_testsrc = { · 6 unmodified lines
678 .query_formats = test_query_formats,674 .query_formats = test_query_formats,
679 .activate = activate,675 .activate = activate,
680 .inputs = NULL,676 .inputs = NULL,
681 .outputs = avfilter_vsrc_testsrc_outputs,677 FILTER_OUTPUTS(avfilter_vsrc_testsrc_outputs),
682};678};
683 679
684#endif /* CONFIG_TESTSRC_FILTER */680#endif /* CONFIG_TESTSRC_FILTER */
@@ -938,7 +934,6 @@ static const AVFilterPad avfilter_vsrc_testsrc2_outputs[] = { · 253 unmodified lines
938 .type = AVMEDIA_TYPE_VIDEO,934 .type = AVMEDIA_TYPE_VIDEO,
939 .config_props = test2_config_props,935 .config_props = test2_config_props,
940 },936 },
941 { NULL }
942};937};
943 938
944const AVFilter ff_vsrc_testsrc2 = {939const AVFilter ff_vsrc_testsrc2 = {
@@ -951,7 +946,7 @@ const AVFilter ff_vsrc_testsrc2 = { · 6 unmodified lines
951 .query_formats = test2_query_formats,946 .query_formats = test2_query_formats,
952 .activate = activate,947 .activate = activate,
953 .inputs = NULL,948 .inputs = NULL,
954 .outputs = avfilter_vsrc_testsrc2_outputs,949 FILTER_OUTPUTS(avfilter_vsrc_testsrc2_outputs),
955};950};
956 951
957#endif /* CONFIG_TESTSRC2_FILTER */952#endif /* CONFIG_TESTSRC2_FILTER */
@@ -1110,7 +1105,6 @@ static const AVFilterPad avfilter_vsrc_rgbtestsrc_outputs[] = { · 152 unmodified lines
1110 .type = AVMEDIA_TYPE_VIDEO,1105 .type = AVMEDIA_TYPE_VIDEO,
1111 .config_props = rgbtest_config_props,1106 .config_props = rgbtest_config_props,
1112 },1107 },
1113 { NULL }
1114};1108};
1115 1109
1116const AVFilter ff_vsrc_rgbtestsrc = {1110const AVFilter ff_vsrc_rgbtestsrc = {
@@ -1123,7 +1117,7 @@ const AVFilter ff_vsrc_rgbtestsrc = { · 6 unmodified lines
1123 .query_formats = rgbtest_query_formats,1117 .query_formats = rgbtest_query_formats,
1124 .activate = activate,1118 .activate = activate,
1125 .inputs = NULL,1119 .inputs = NULL,
1126 .outputs = avfilter_vsrc_rgbtestsrc_outputs,1120 FILTER_OUTPUTS(avfilter_vsrc_rgbtestsrc_outputs),
1127};1121};
1128 1122
1129#endif /* CONFIG_RGBTESTSRC_FILTER */1123#endif /* CONFIG_RGBTESTSRC_FILTER */
@@ -1283,7 +1277,6 @@ static const AVFilterPad avfilter_vsrc_yuvtestsrc_outputs[] = { · 153 unmodified lines
1283 .type = AVMEDIA_TYPE_VIDEO,1277 .type = AVMEDIA_TYPE_VIDEO,
1284 .config_props = yuvtest_config_props,1278 .config_props = yuvtest_config_props,
1285 },1279 },
1286 { NULL }
1287};1280};
1288 1281
1289const AVFilter ff_vsrc_yuvtestsrc = {1282const AVFilter ff_vsrc_yuvtestsrc = {
@@ -1296,7 +1289,7 @@ const AVFilter ff_vsrc_yuvtestsrc = { · 6 unmodified lines
1296 .query_formats = yuvtest_query_formats,1289 .query_formats = yuvtest_query_formats,
1297 .activate = activate,1290 .activate = activate,
1298 .inputs = NULL,1291 .inputs = NULL,
1299 .outputs = avfilter_vsrc_yuvtestsrc_outputs,1292 FILTER_OUTPUTS(avfilter_vsrc_yuvtestsrc_outputs),
1300};1293};
1301 1294
1302#endif /* CONFIG_YUVTESTSRC_FILTER */1295#endif /* CONFIG_YUVTESTSRC_FILTER */
@@ -1423,7 +1416,6 @@ static const AVFilterPad smptebars_outputs[] = { · 120 unmodified lines
1423 .type = AVMEDIA_TYPE_VIDEO,1416 .type = AVMEDIA_TYPE_VIDEO,
1424 .config_props = config_props,1417 .config_props = config_props,
1425 },1418 },
1426 { NULL }
1427};1419};
1428 1420
1429#if CONFIG_PAL75BARS_FILTER1421#if CONFIG_PAL75BARS_FILTER
@@ -1470,7 +1462,7 @@ const AVFilter ff_vsrc_pal75bars = { · 40 unmodified lines
1470 .query_formats = smptebars_query_formats,1462 .query_formats = smptebars_query_formats,
1471 .activate = activate,1463 .activate = activate,
1472 .inputs = NULL,1464 .inputs = NULL,
1473 .outputs = smptebars_outputs,1465 FILTER_OUTPUTS(smptebars_outputs),
1474};1466};
1475 1467
1476#endif /* CONFIG_PAL75BARS_FILTER */1468#endif /* CONFIG_PAL75BARS_FILTER */
@@ -1517,7 +1509,7 @@ const AVFilter ff_vsrc_pal100bars = { · 40 unmodified lines
1517 .query_formats = smptebars_query_formats,1509 .query_formats = smptebars_query_formats,
1518 .activate = activate,1510 .activate = activate,
1519 .inputs = NULL,1511 .inputs = NULL,
1520 .outputs = smptebars_outputs,1512 FILTER_OUTPUTS(smptebars_outputs),
1521};1513};
1522 1514
1523#endif /* CONFIG_PAL100BARS_FILTER */1515#endif /* CONFIG_PAL100BARS_FILTER */
@@ -1585,7 +1577,7 @@ const AVFilter ff_vsrc_smptebars = { · 61 unmodified lines
1585 .query_formats = smptebars_query_formats,1577 .query_formats = smptebars_query_formats,
1586 .activate = activate,1578 .activate = activate,
1587 .inputs = NULL,1579 .inputs = NULL,
1588 .outputs = smptebars_outputs,1580 FILTER_OUTPUTS(smptebars_outputs),
1589};1581};
1590 1582
1591#endif /* CONFIG_SMPTEBARS_FILTER */1583#endif /* CONFIG_SMPTEBARS_FILTER */
@@ -1691,7 +1683,7 @@ const AVFilter ff_vsrc_smptehdbars = { · 99 unmodified lines
1691 .query_formats = smptebars_query_formats,1683 .query_formats = smptebars_query_formats,
1692 .activate = activate,1684 .activate = activate,
1693 .inputs = NULL,1685 .inputs = NULL,
1694 .outputs = smptebars_outputs,1686 FILTER_OUTPUTS(smptebars_outputs),
1695};1687};
1696 1688
1697#endif /* CONFIG_SMPTEHDBARS_FILTER */1689#endif /* CONFIG_SMPTEHDBARS_FILTER */
@@ -1753,7 +1745,6 @@ static const AVFilterPad avfilter_vsrc_allyuv_outputs[] = { · 55 unmodified lines
1753 .type = AVMEDIA_TYPE_VIDEO,1745 .type = AVMEDIA_TYPE_VIDEO,
1754 .config_props = config_props,1746 .config_props = config_props,
1755 },1747 },
1756 { NULL }
1757};1748};
1758 1749
1759const AVFilter ff_vsrc_allyuv = {1750const AVFilter ff_vsrc_allyuv = {
@@ -1766,7 +1757,7 @@ const AVFilter ff_vsrc_allyuv = { · 6 unmodified lines
1766 .query_formats = allyuv_query_formats,1757 .query_formats = allyuv_query_formats,
1767 .activate = activate,1758 .activate = activate,
1768 .inputs = NULL,1759 .inputs = NULL,
1769 .outputs = avfilter_vsrc_allyuv_outputs,1760 FILTER_OUTPUTS(avfilter_vsrc_allyuv_outputs),
1770};1761};
1771 1762
1772#endif /* CONFIG_ALLYUV_FILTER */1763#endif /* CONFIG_ALLYUV_FILTER */
@@ -1827,7 +1818,6 @@ static const AVFilterPad avfilter_vsrc_allrgb_outputs[] = { · 54 unmodified lines
1827 .type = AVMEDIA_TYPE_VIDEO,1818 .type = AVMEDIA_TYPE_VIDEO,
1828 .config_props = allrgb_config_props,1819 .config_props = allrgb_config_props,
1829 },1820 },
1830 { NULL }
1831};1821};
1832 1822
1833const AVFilter ff_vsrc_allrgb = {1823const AVFilter ff_vsrc_allrgb = {
@@ -1840,7 +1830,7 @@ const AVFilter ff_vsrc_allrgb = { · 6 unmodified lines
1840 .query_formats = allrgb_query_formats,1830 .query_formats = allrgb_query_formats,
1841 .activate = activate,1831 .activate = activate,
1842 .inputs = NULL,1832 .inputs = NULL,
1843 .outputs = avfilter_vsrc_allrgb_outputs,1833 FILTER_OUTPUTS(avfilter_vsrc_allrgb_outputs),
1844};1834};
1845 1835
1846#endif /* CONFIG_ALLRGB_FILTER */1836#endif /* CONFIG_ALLRGB_FILTER */

Keyboard shortcuts

General

Show keyboard shortcuts
?
Focus the current search
/

Issues and pull requests

Open filters
f

Issues, pull requests and Inbox

Select next item
j↓
Select previous item
k↑
Open selected item
Enter
Dismiss filters or clear selection
Esc

Repository code

Go to file
t