You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

493 lines
11 KiB

  1. if PACKAGE_libffmpeg-custom
  2. comment "Build Licensing"
  3. config FFMPEG_CUSTOM_GPL
  4. bool "Allow use of GPL code"
  5. help
  6. By default, FFMpeg is licensed under the LGPL. This builds a GPL licensed version.
  7. Some software requires this, such as libx264.
  8. default y
  9. config FFMPEG_CUSTOM_GPLV3
  10. bool "Use (L)GPL v3"
  11. help
  12. Uses the LPGL v3 if GPL isn't selected, or GPL v3 if it is.
  13. config FFMPEG_CUSTOM_NONFREE
  14. bool "Use code with complex licensing requirements; see help"
  15. help
  16. This sets --enable-nonfree, which in almost all cases, will prohibit redistribution of the resulting package.
  17. Use this with care.
  18. default n
  19. config FFMPEG_CUSTOM_PATENTED
  20. bool "Include patented codecs and technologies"
  21. default BUILD_PATENTED
  22. comment "Build Properties"
  23. config FFMPEG_CUSTOM_LARGE
  24. bool "Build libffmpeg for performance instead of minimizing size on disk"
  25. default y if ( x86_64 )
  26. default n
  27. comment "Profiles"
  28. config FFMPEG_CUSTOM_FFSERVER_SUPPORT
  29. bool "Include support for ffserver (FFmpeg streaming server)"
  30. select FFMPEG_CUSTOM_MUXER_ffm
  31. select FFMPEG_CUSTOM_DEMUXER_ffm
  32. select FFMPEG_CUSTOM_DEMUXER_rtsp
  33. select FFMPEG_CUSTOM_PROTOCOL_rtp
  34. config FFMPEG_CUSTOM_MINIDLNA_SUPPORT
  35. bool "Include support for minidlna"
  36. depends on FFMPEG_CUSTOM_PATENTED
  37. select FFMPEG_CUSTOM_DECODER_aac
  38. select FFMPEG_CUSTOM_DECODER_ac3
  39. select FFMPEG_CUSTOM_DECODER_flac
  40. select FFMPEG_CUSTOM_DECODER_h264
  41. select FFMPEG_CUSTOM_DECODER_hevc
  42. select FFMPEG_CUSTOM_DECODER_jpegls
  43. select FFMPEG_CUSTOM_DECODER_mp2
  44. select FFMPEG_CUSTOM_DECODER_mp3
  45. select FFMPEG_CUSTOM_DECODER_mpeg1video
  46. select FFMPEG_CUSTOM_DECODER_mpeg2video
  47. select FFMPEG_CUSTOM_DECODER_mpeg4
  48. select FFMPEG_CUSTOM_DECODER_mpegvideo
  49. select FFMPEG_CUSTOM_DECODER_png
  50. select FFMPEG_CUSTOM_DECODER_opus
  51. select FFMPEG_CUSTOM_DECODER_vc1
  52. select FFMPEG_CUSTOM_DECODER_vorbis
  53. select FFMPEG_CUSTOM_DECODER_wmav1
  54. select FFMPEG_CUSTOM_DECODER_wmav2
  55. select FFMPEG_CUSTOM_DEMUXER_avi
  56. select FFMPEG_CUSTOM_DEMUXER_flac
  57. select FFMPEG_CUSTOM_DEMUXER_matroska
  58. select FFMPEG_CUSTOM_DEMUXER_mov
  59. select FFMPEG_CUSTOM_DEMUXER_mp3
  60. select FFMPEG_CUSTOM_DEMUXER_mpegps
  61. select FFMPEG_CUSTOM_DEMUXER_mpegts
  62. select FFMPEG_CUSTOM_DEMUXER_mpegvideo
  63. select FFMPEG_CUSTOM_DEMUXER_ogg
  64. select FFMPEG_CUSTOM_PROTOCOL_file
  65. config FFMPEG_CUSTOM_AUDIO_DEC_SUPPORT
  66. bool "Include support for most audio decoding requirements"
  67. depends on FFMPEG_CUSTOM_PATENTED
  68. select FFMPEG_CUSTOM_DECODER_aac
  69. select FFMPEG_CUSTOM_DECODER_aac_latm
  70. select FFMPEG_CUSTOM_DECODER_ac3
  71. select FFMPEG_CUSTOM_SELECT_adpcm
  72. select FFMPEG_CUSTOM_DECODER_alac
  73. select FFMPEG_CUSTOM_DECODER_amrnb
  74. select FFMPEG_CUSTOM_DECODER_amrwb
  75. select FFMPEG_CUSTOM_DECODER_ape
  76. select FFMPEG_CUSTOM_DECODER_atrac3
  77. select FFMPEG_CUSTOM_DECODER_flac
  78. select FFMPEG_CUSTOM_DECODER_mp2
  79. select FFMPEG_CUSTOM_DECODER_mp3
  80. select FFMPEG_CUSTOM_DECODER_mpc7
  81. select FFMPEG_CUSTOM_DECODER_mpc8
  82. select FFMPEG_CUSTOM_DECODER_opus
  83. select FFMPEG_CUSTOM_DECODER_pcm_s16be
  84. select FFMPEG_CUSTOM_DECODER_pcm_s16le
  85. select FFMPEG_CUSTOM_DECODER_vorbis
  86. select FFMPEG_CUSTOM_DECODER_wavpack
  87. select FFMPEG_CUSTOM_DECODER_wmav1
  88. select FFMPEG_CUSTOM_DECODER_wmav2
  89. select FFMPEG_CUSTOM_DECODER_wmalossless
  90. select FFMPEG_CUSTOM_DECODER_wmapro
  91. select FFMPEG_CUSTOM_DECODER_zlib
  92. select FFMPEG_CUSTOM_DEMUXER_aac
  93. select FFMPEG_CUSTOM_DEMUXER_ac3
  94. select FFMPEG_CUSTOM_DEMUXER_aiff
  95. select FFMPEG_CUSTOM_DEMUXER_amr
  96. select FFMPEG_CUSTOM_DEMUXER_ape
  97. select FFMPEG_CUSTOM_DEMUXER_avi
  98. select FFMPEG_CUSTOM_DEMUXER_flac
  99. select FFMPEG_CUSTOM_DEMUXER_ffm
  100. select FFMPEG_CUSTOM_DEMUXER_matroska
  101. select FFMPEG_CUSTOM_DEMUXER_mp3
  102. select FFMPEG_CUSTOM_DEMUXER_mov
  103. select FFMPEG_CUSTOM_DEMUXER_mpc
  104. select FFMPEG_CUSTOM_DEMUXER_mpc8
  105. select FFMPEG_CUSTOM_DEMUXER_mpegts
  106. select FFMPEG_CUSTOM_DEMUXER_ogg
  107. select FFMPEG_CUSTOM_DEMUXER_rm
  108. select FFMPEG_CUSTOM_DEMUXER_rtsp
  109. select FFMPEG_CUSTOM_DEMUXER_rtp
  110. select FFMPEG_CUSTOM_DEMUXER_sdp
  111. select FFMPEG_CUSTOM_DEMUXER_wav
  112. select FFMPEG_CUSTOM_DEMUXER_wv
  113. select FFMPEG_CUSTOM_PROTOCOL_file
  114. select FFMPEG_CUSTOM_PROTOCOL_http
  115. select FFMPEG_CUSTOM_PROTOCOL_rtp
  116. select FFMPEG_CUSTOM_PROTOCOL_tcp
  117. select FFMPEG_CUSTOM_PROTOCOL_udp
  118. comment "External Libraries"
  119. config FFMPEG_CUSTOM_SELECT_libfdk-aac
  120. bool "Fraunhofer FDK AAC encoding library (libfdk-aac)"
  121. depends on FFMPEG_CUSTOM_NONFREE
  122. depends on FFMPEG_CUSTOM_PATENTED
  123. depends on PACKAGE_fdk-aac
  124. config FFMPEG_CUSTOM_SELECT_libmp3lame
  125. bool "Libmp3lame"
  126. depends on PACKAGE_lame-lib
  127. select FFMPEG_CUSTOM_DECODER_mp3
  128. select FFMPEG_CUSTOM_MUXER_mp3
  129. select FFMPEG_CUSTOM_DEMUXER_mp3
  130. config FFMPEG_CUSTOM_SELECT_libopus
  131. bool "Libopus"
  132. config FFMPEG_CUSTOM_SELECT_libshine
  133. bool "Libshine"
  134. config FFMPEG_CUSTOM_SELECT_libx264
  135. bool "Libx264"
  136. depends on FFMPEG_CUSTOM_PATENTED
  137. depends on FFMPEG_CUSTOM_GPL
  138. depends on PACKAGE_libx264
  139. select FFMPEG_CUSTOM_DECODER_h264
  140. select FFMPEG_CUSTOM_MUXER_h264
  141. select FFMPEG_CUSTOM_DEMUXER_h264
  142. comment "Encoders"
  143. config FFMPEG_CUSTOM_ENCODER_ac3
  144. bool "AC3"
  145. config FFMPEG_CUSTOM_ENCODER_jpegls
  146. bool "JPEG-LS"
  147. config FFMPEG_CUSTOM_ENCODER_mpeg1video
  148. bool "MPEG-1 Video"
  149. config FFMPEG_CUSTOM_ENCODER_mpeg2video
  150. bool "MPEG-2 Video"
  151. config FFMPEG_CUSTOM_ENCODER_mpeg4
  152. bool "MPEG-4"
  153. depends on FFMPEG_CUSTOM_PATENTED
  154. config FFMPEG_CUSTOM_ENCODER_pcm_s16be
  155. bool "PCM signed 16-bit big-endian"
  156. config FFMPEG_CUSTOM_ENCODER_pcm_s16le
  157. bool "PCM signed 16-bit little-endian"
  158. config FFMPEG_CUSTOM_ENCODER_png
  159. bool "PNG"
  160. select FFMPEG_CUSTOM_ENCODER_zlib
  161. config FFMPEG_CUSTOM_ENCODER_vorbis
  162. bool "Vorbis"
  163. config FFMPEG_CUSTOM_ENCODER_zlib
  164. bool "Zlib"
  165. comment "Decoders"
  166. config FFMPEG_CUSTOM_DECODER_aac
  167. bool "AAC (Advanced Audio Coding)"
  168. depends on FFMPEG_CUSTOM_PATENTED
  169. config FFMPEG_CUSTOM_SELECT_adpcm
  170. bool "ADPCM (multiple types)"
  171. config FFMPEG_CUSTOM_DECODER_ac3
  172. bool "AC3"
  173. config FFMPEG_CUSTOM_DECODER_alac
  174. bool "ALAC"
  175. config FFMPEG_CUSTOM_DECODER_amrnb
  176. bool "AMR-NB"
  177. select FFMPEG_CUSTOM_DEMUXER_amr
  178. config FFMPEG_CUSTOM_DECODER_amrwb
  179. bool "AMR-WB"
  180. select FFMPEG_CUSTOM_DEMUXER_amr
  181. config FFMPEG_CUSTOM_DECODER_ape
  182. bool "APE"
  183. config FFMPEG_CUSTOM_DECODER_atrac3
  184. bool "ATRAC3"
  185. depends on FFMPEG_CUSTOM_PATENTED
  186. config FFMPEG_CUSTOM_DECODER_flac
  187. bool "FLAC"
  188. config FFMPEG_CUSTOM_DECODER_gif
  189. bool "GIF"
  190. config FFMPEG_CUSTOM_DECODER_h264
  191. bool "H.264"
  192. depends on FFMPEG_CUSTOM_PATENTED
  193. config FFMPEG_CUSTOM_DECODER_hevc
  194. bool "HEVC / H.265 Video"
  195. depends on FFMPEG_CUSTOM_PATENTED
  196. config FFMPEG_CUSTOM_DECODER_jpegls
  197. bool "JPEG-LS"
  198. config FFMPEG_CUSTOM_DECODER_mp2
  199. bool "MP2 (MPEG Audio Layer 2)"
  200. config FFMPEG_CUSTOM_DECODER_mp3
  201. bool "MP3 (MPEG Audio Layer 3)"
  202. config FFMPEG_CUSTOM_DECODER_mpegvideo
  203. bool "MPEG Video"
  204. config FFMPEG_CUSTOM_DECODER_mpeg1video
  205. bool "MPEG-1 Video"
  206. config FFMPEG_CUSTOM_DECODER_mpeg2video
  207. bool "MPEG-2 Video"
  208. config FFMPEG_CUSTOM_DECODER_mpeg4
  209. bool "MPEG-4"
  210. depends on FFMPEG_CUSTOM_PATENTED
  211. config FFMPEG_CUSTOM_DECODER_mpc7
  212. bool "Musepack 7"
  213. select FFMPEG_CUSTOM_DEMUXER_mpc
  214. config FFMPEG_CUSTOM_DECODER_mpc8
  215. bool "Musepack 8"
  216. select FFMPEG_CUSTOM_DEMUXER_mpc8
  217. config FFMPEG_CUSTOM_DECODER_opus
  218. bool "Opus"
  219. config FFMPEG_CUSTOM_DECODER_pcm_s16be
  220. bool "PCM signed 16-bit big-endian"
  221. config FFMPEG_CUSTOM_DECODER_pcm_s16le
  222. bool "PCM signed 16-bit little-endian"
  223. config FFMPEG_CUSTOM_DECODER_png
  224. bool "PNG"
  225. select FFMPEG_CUSTOM_DECODER_zlib
  226. config FFMPEG_CUSTOM_DECODER_vc1
  227. bool "VC-1 / WMV9"
  228. depends on FFMPEG_CUSTOM_PATENTED
  229. config FFMPEG_CUSTOM_DECODER_vorbis
  230. bool "Vorbis"
  231. select FFMPEG_CUSTOM_DEMUXER_ogg
  232. config FFMPEG_CUSTOM_DECODER_wavpack
  233. bool "Wavpack"
  234. config FFMPEG_CUSTOM_DECODER_wmav1
  235. bool "WMAv1"
  236. depends on FFMPEG_CUSTOM_PATENTED
  237. config FFMPEG_CUSTOM_DECODER_wmav2
  238. bool "WMAv2"
  239. depends on FFMPEG_CUSTOM_PATENTED
  240. config FFMPEG_CUSTOM_DECODER_zlib
  241. bool "Zlib"
  242. comment "Muxers"
  243. config FFMPEG_CUSTOM_MUXER_ac3
  244. bool "AC3"
  245. config FFMPEG_CUSTOM_MUXER_ffm
  246. bool "FFM (ffserver live feed)"
  247. config FFMPEG_CUSTOM_MUXER_h264
  248. bool "H.264 Raw Video"
  249. depends on FFMPEG_CUSTOM_PATENTED
  250. config FFMPEG_CUSTOM_MUXER_hevc
  251. bool "HEVC / H265 Raw Video"
  252. depends on FFMPEG_CUSTOM_PATENTED
  253. config FFMPEG_CUSTOM_MUXER_mp3
  254. bool "MP3 (MPEG Audio Layer 3)"
  255. config FFMPEG_CUSTOM_MUXER_mp4
  256. bool "MP4"
  257. config FFMPEG_CUSTOM_MUXER_mpeg1video
  258. bool "MPEG-1 Video"
  259. config FFMPEG_CUSTOM_MUXER_mpeg2video
  260. bool "MPEG-2 Video"
  261. config FFMPEG_CUSTOM_MUXER_mpegts
  262. bool "MPEG-2 (TS)"
  263. config FFMPEG_CUSTOM_MUXER_ogg
  264. bool "Ogg"
  265. config FFMPEG_CUSTOM_MUXER_rtp
  266. bool "RTP"
  267. comment "Demuxers"
  268. config FFMPEG_CUSTOM_DEMUXER_aac
  269. bool "AAC"
  270. config FFMPEG_CUSTOM_DEMUXER_avi
  271. bool "AVI (Audio Video Interleave)"
  272. config FFMPEG_CUSTOM_DEMUXER_ac3
  273. bool "AC3"
  274. config FFMPEG_CUSTOM_DEMUXER_amr
  275. bool "AMR"
  276. config FFMPEG_CUSTOM_DEMUXER_ape
  277. bool "APE"
  278. config FFMPEG_CUSTOM_DEMUXER_flac
  279. bool "FLAC"
  280. config FFMPEG_CUSTOM_DEMUXER_ffm
  281. bool "FFM (ffserver live feed)"
  282. config FFMPEG_CUSTOM_DEMUXER_h264
  283. bool "H.264 Raw Video"
  284. depends on FFMPEG_CUSTOM_PATENTED
  285. config FFMPEG_CUSTOM_DEMUXER_hevc
  286. bool "HEVC / H265 Raw Video"
  287. depends on FFMPEG_CUSTOM_PATENTED
  288. config FFMPEG_CUSTOM_DEMUXER_matroska
  289. bool "Matroska (MKA,MKV)"
  290. select FFMPEG_CUSTOM_DECODER_zlib
  291. config FFMPEG_CUSTOM_DEMUXER_mov
  292. bool "MOV/MP4/M4A/3GP/3G2/MJ2"
  293. select FFMPEG_CUSTOM_DECODER_zlib
  294. config FFMPEG_CUSTOM_DEMUXER_mp3
  295. bool "MP3 (MPEG Audio Layer 3)"
  296. config FFMPEG_CUSTOM_DEMUXER_mpegvideo
  297. bool "MPEG Video (Raw)"
  298. config FFMPEG_CUSTOM_DEMUXER_mpegps
  299. bool "MPEG-2 (PS)"
  300. config FFMPEG_CUSTOM_DEMUXER_mpegts
  301. bool "MPEG-2 (TS)"
  302. config FFMPEG_CUSTOM_DEMUXER_mpc
  303. bool "Musepack"
  304. config FFMPEG_CUSTOM_DEMUXER_mpc8
  305. bool "Musepack 8"
  306. config FFMPEG_CUSTOM_DEMUXER_ogg
  307. bool "Ogg"
  308. config FFMPEG_CUSTOM_DEMUXER_rm
  309. bool "RM"
  310. help
  311. RealMedia format demuxer
  312. config FFMPEG_CUSTOM_DEMUXER_rtsp
  313. bool "RTSP"
  314. select FFMPEG_CUSTOM_DEMUXER_rm
  315. select FFMPEG_CUSTOM_DEMUXER_sdp
  316. select FFMPEG_CUSTOM_DEMUXER_rtp
  317. config FFMPEG_CUSTOM_DEMUXER_sdp
  318. bool "SDP"
  319. select FFMPEG_CUSTOM_DEMUXER_mpegts
  320. config FFMPEG_CUSTOM_DEMUXER_rtp
  321. bool "RTP"
  322. config FFMPEG_CUSTOM_DEMUXER_vc1
  323. bool "VC-1 / WMV9 Raw Video"
  324. depends on FFMPEG_CUSTOM_PATENTED
  325. config FFMPEG_CUSTOM_DEMUXER_wav
  326. bool "WAV"
  327. config FFMPEG_CUSTOM_DEMUXER_wv
  328. bool "WV"
  329. comment "Parsers"
  330. config FFMPEG_CUSTOM_PARSER_aac
  331. bool "AAC (Advanced Audio Coding)"
  332. depends on FFMPEG_CUSTOM_PATENTED
  333. config FFMPEG_CUSTOM_PARSER_ac3
  334. bool "AC3"
  335. config FFMPEG_CUSTOM_PARSER_flac
  336. bool "FLAC"
  337. config FFMPEG_CUSTOM_PARSER_h264
  338. bool "H.264"
  339. depends on FFMPEG_CUSTOM_PATENTED
  340. select FFMPEG_CUSTOM_DECODER_h264
  341. config FFMPEG_CUSTOM_PARSER_hevc
  342. bool "HEVC / H265"
  343. depends on FFMPEG_CUSTOM_PATENTED
  344. select FFMPEG_CUSTOM_DECODER_hevc
  345. config FFMPEG_CUSTOM_PARSER_mpegaudio
  346. bool "MPEG Audio"
  347. config FFMPEG_CUSTOM_PARSER_mpegvideo
  348. bool "MPEG Video"
  349. config FFMPEG_CUSTOM_PARSER_mpeg4video
  350. bool "MPEG-4 Video"
  351. config FFMPEG_CUSTOM_PARSER_opus
  352. bool "Opus"
  353. config FFMPEG_CUSTOM_PARSER_vc1
  354. bool "VC-1 / WMV9"
  355. depends on FFMPEG_CUSTOM_PATENTED
  356. select FFMPEG_CUSTOM_DECODER_vc1
  357. comment "Protocols"
  358. config FFMPEG_CUSTOM_PROTOCOL_file
  359. bool "file:"
  360. config FFMPEG_CUSTOM_PROTOCOL_http
  361. bool "http:"
  362. config FFMPEG_CUSTOM_PROTOCOL_icecast
  363. bool "icecast:"
  364. select FFMPEG_CUSTOM_PROTOCOL_http
  365. config FFMPEG_CUSTOM_PROTOCOL_pipe
  366. bool "pipe:"
  367. config FFMPEG_CUSTOM_PROTOCOL_rtp
  368. bool "rtp:"
  369. select FFMPEG_CUSTOM_PROTOCOL_udp
  370. config FFMPEG_CUSTOM_PROTOCOL_tcp
  371. bool "tcp:"
  372. config FFMPEG_CUSTOM_PROTOCOL_udp
  373. bool "udp:"
  374. endif