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.

499 lines
12 KiB

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