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.

484 lines
11 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_MINIDLNA_SUPPORT
  36. bool "Include support for minidlna"
  37. select FFMPEG_CUSTOM_DECODER_aac
  38. select FFMPEG_CUSTOM_DECODER_ac3
  39. select FFMPEG_CUSTOM_DECODER_flac
  40. select FFMPEG_CUSTOM_DECODER_h264 if (BUILD_PATENTED)
  41. select FFMPEG_CUSTOM_DECODER_hevc if (BUILD_PATENTED)
  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 if (BUILD_PATENTED)
  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. select FFMPEG_CUSTOM_DECODER_aac
  68. select FFMPEG_CUSTOM_DECODER_aac_latm
  69. select FFMPEG_CUSTOM_DECODER_ac3
  70. select FFMPEG_CUSTOM_SELECT_adpcm
  71. select FFMPEG_CUSTOM_DECODER_alac
  72. select FFMPEG_CUSTOM_DECODER_amrnb
  73. select FFMPEG_CUSTOM_DECODER_amrwb
  74. select FFMPEG_CUSTOM_DECODER_ape
  75. select FFMPEG_CUSTOM_DECODER_atrac3 if (BUILD_PATENTED)
  76. select FFMPEG_CUSTOM_DECODER_flac
  77. select FFMPEG_CUSTOM_DECODER_mp2
  78. select FFMPEG_CUSTOM_DECODER_mp3
  79. select FFMPEG_CUSTOM_DECODER_mpc7
  80. select FFMPEG_CUSTOM_DECODER_mpc8
  81. select FFMPEG_CUSTOM_DECODER_opus
  82. select FFMPEG_CUSTOM_DECODER_pcm_s16be
  83. select FFMPEG_CUSTOM_DECODER_pcm_s16le
  84. select FFMPEG_CUSTOM_DECODER_vorbis
  85. select FFMPEG_CUSTOM_DECODER_wavpack
  86. select FFMPEG_CUSTOM_DECODER_wmav1
  87. select FFMPEG_CUSTOM_DECODER_wmav2
  88. select FFMPEG_CUSTOM_DECODER_wmalossless
  89. select FFMPEG_CUSTOM_DECODER_wmapro
  90. select FFMPEG_CUSTOM_DECODER_zlib
  91. select FFMPEG_CUSTOM_DEMUXER_aac
  92. select FFMPEG_CUSTOM_DEMUXER_ac3
  93. select FFMPEG_CUSTOM_DEMUXER_aiff
  94. select FFMPEG_CUSTOM_DEMUXER_amr
  95. select FFMPEG_CUSTOM_DEMUXER_ape
  96. select FFMPEG_CUSTOM_DEMUXER_avi
  97. select FFMPEG_CUSTOM_DEMUXER_flac
  98. select FFMPEG_CUSTOM_DEMUXER_ffm
  99. select FFMPEG_CUSTOM_DEMUXER_matroska
  100. select FFMPEG_CUSTOM_DEMUXER_mp3
  101. select FFMPEG_CUSTOM_DEMUXER_mov
  102. select FFMPEG_CUSTOM_DEMUXER_mpc
  103. select FFMPEG_CUSTOM_DEMUXER_mpc8
  104. select FFMPEG_CUSTOM_DEMUXER_mpegts
  105. select FFMPEG_CUSTOM_DEMUXER_ogg
  106. select FFMPEG_CUSTOM_DEMUXER_rm
  107. select FFMPEG_CUSTOM_DEMUXER_rtsp
  108. select FFMPEG_CUSTOM_DEMUXER_rtp
  109. select FFMPEG_CUSTOM_DEMUXER_sdp
  110. select FFMPEG_CUSTOM_DEMUXER_wav
  111. select FFMPEG_CUSTOM_DEMUXER_wv
  112. select FFMPEG_CUSTOM_PROTOCOL_file
  113. select FFMPEG_CUSTOM_PROTOCOL_http
  114. select FFMPEG_CUSTOM_PROTOCOL_rtp
  115. select FFMPEG_CUSTOM_PROTOCOL_tcp
  116. select FFMPEG_CUSTOM_PROTOCOL_udp
  117. config FFMPEG_CUSTOM_PROGRAMS
  118. bool "Include ffmpeg command-line utilities"
  119. select PACKAGE_ffmpeg-custom
  120. select PACKAGE_ffprobe-custom
  121. comment "External Libraries"
  122. config FFMPEG_CUSTOM_SELECT_libfdk-aac
  123. bool "Fraunhofer FDK AAC encoding library (libfdk-aac)"
  124. depends on FFMPEG_CUSTOM_NONFREE
  125. depends on PACKAGE_fdk-aac
  126. config FFMPEG_CUSTOM_SELECT_libmp3lame
  127. bool "Libmp3lame"
  128. depends on PACKAGE_lame-lib
  129. select FFMPEG_CUSTOM_DECODER_mp3
  130. select FFMPEG_CUSTOM_MUXER_mp3
  131. select FFMPEG_CUSTOM_DEMUXER_mp3
  132. config FFMPEG_CUSTOM_SELECT_libopus
  133. bool "Libopus"
  134. config FFMPEG_CUSTOM_SELECT_libshine
  135. bool "Libshine"
  136. config FFMPEG_CUSTOM_SELECT_libx264
  137. bool "Libx264"
  138. depends on FFMPEG_CUSTOM_PATENTED
  139. depends on FFMPEG_CUSTOM_GPL
  140. depends on PACKAGE_libx264
  141. select FFMPEG_CUSTOM_DECODER_h264
  142. select FFMPEG_CUSTOM_MUXER_h264
  143. select FFMPEG_CUSTOM_DEMUXER_h264
  144. comment "Encoders"
  145. config FFMPEG_CUSTOM_ENCODER_ac3
  146. bool "AC3"
  147. config FFMPEG_CUSTOM_ENCODER_jpegls
  148. bool "JPEG-LS"
  149. config FFMPEG_CUSTOM_ENCODER_mpeg1video
  150. bool "MPEG-1 Video"
  151. config FFMPEG_CUSTOM_ENCODER_mpeg2video
  152. bool "MPEG-2 Video"
  153. config FFMPEG_CUSTOM_ENCODER_mpeg4
  154. bool "MPEG-4"
  155. config FFMPEG_CUSTOM_ENCODER_pcm_s16be
  156. bool "PCM signed 16-bit big-endian"
  157. config FFMPEG_CUSTOM_ENCODER_pcm_s16le
  158. bool "PCM signed 16-bit little-endian"
  159. config FFMPEG_CUSTOM_ENCODER_png
  160. bool "PNG"
  161. select FFMPEG_CUSTOM_ENCODER_zlib
  162. config FFMPEG_CUSTOM_ENCODER_vorbis
  163. bool "Vorbis"
  164. config FFMPEG_CUSTOM_ENCODER_zlib
  165. bool "Zlib"
  166. comment "Decoders"
  167. config FFMPEG_CUSTOM_DECODER_aac
  168. bool "AAC (Advanced Audio Coding)"
  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. config FFMPEG_CUSTOM_DECODER_mpc7
  211. bool "Musepack 7"
  212. select FFMPEG_CUSTOM_DEMUXER_mpc
  213. config FFMPEG_CUSTOM_DECODER_mpc8
  214. bool "Musepack 8"
  215. select FFMPEG_CUSTOM_DEMUXER_mpc8
  216. config FFMPEG_CUSTOM_DECODER_opus
  217. bool "Opus"
  218. config FFMPEG_CUSTOM_DECODER_pcm_s16be
  219. bool "PCM signed 16-bit big-endian"
  220. config FFMPEG_CUSTOM_DECODER_pcm_s16le
  221. bool "PCM signed 16-bit little-endian"
  222. config FFMPEG_CUSTOM_DECODER_png
  223. bool "PNG"
  224. select FFMPEG_CUSTOM_DECODER_zlib
  225. config FFMPEG_CUSTOM_DECODER_vc1
  226. bool "VC-1 / WMV9"
  227. depends on FFMPEG_CUSTOM_PATENTED
  228. config FFMPEG_CUSTOM_DECODER_vorbis
  229. bool "Vorbis"
  230. select FFMPEG_CUSTOM_DEMUXER_ogg
  231. config FFMPEG_CUSTOM_DECODER_wavpack
  232. bool "Wavpack"
  233. config FFMPEG_CUSTOM_DECODER_wmav1
  234. bool "WMAv1"
  235. config FFMPEG_CUSTOM_DECODER_wmav2
  236. bool "WMAv2"
  237. config FFMPEG_CUSTOM_DECODER_zlib
  238. bool "Zlib"
  239. comment "Muxers"
  240. config FFMPEG_CUSTOM_MUXER_ac3
  241. bool "AC3"
  242. config FFMPEG_CUSTOM_MUXER_h264
  243. bool "H.264 Raw Video"
  244. depends on FFMPEG_CUSTOM_PATENTED
  245. config FFMPEG_CUSTOM_MUXER_hevc
  246. bool "HEVC / H265 Raw Video"
  247. depends on FFMPEG_CUSTOM_PATENTED
  248. config FFMPEG_CUSTOM_MUXER_mp3
  249. bool "MP3 (MPEG Audio Layer 3)"
  250. config FFMPEG_CUSTOM_MUXER_mp4
  251. bool "MP4"
  252. config FFMPEG_CUSTOM_MUXER_mpeg1video
  253. bool "MPEG-1 Video"
  254. config FFMPEG_CUSTOM_MUXER_mpeg2video
  255. bool "MPEG-2 Video"
  256. config FFMPEG_CUSTOM_MUXER_mpegts
  257. bool "MPEG-2 (TS)"
  258. config FFMPEG_CUSTOM_MUXER_ogg
  259. bool "Ogg"
  260. config FFMPEG_CUSTOM_MUXER_rtp
  261. bool "RTP"
  262. comment "Demuxers"
  263. config FFMPEG_CUSTOM_DEMUXER_aac
  264. bool "AAC"
  265. config FFMPEG_CUSTOM_DEMUXER_avi
  266. bool "AVI (Audio Video Interleave)"
  267. config FFMPEG_CUSTOM_DEMUXER_ac3
  268. bool "AC3"
  269. config FFMPEG_CUSTOM_DEMUXER_amr
  270. bool "AMR"
  271. config FFMPEG_CUSTOM_DEMUXER_ape
  272. bool "APE"
  273. config FFMPEG_CUSTOM_DEMUXER_flac
  274. bool "FLAC"
  275. config FFMPEG_CUSTOM_DEMUXER_h264
  276. bool "H.264 Raw Video"
  277. depends on FFMPEG_CUSTOM_PATENTED
  278. config FFMPEG_CUSTOM_DEMUXER_hevc
  279. bool "HEVC / H265 Raw Video"
  280. depends on FFMPEG_CUSTOM_PATENTED
  281. config FFMPEG_CUSTOM_DEMUXER_matroska
  282. bool "Matroska (MKA,MKV)"
  283. select FFMPEG_CUSTOM_DECODER_zlib
  284. config FFMPEG_CUSTOM_DEMUXER_mov
  285. bool "MOV/MP4/M4A/3GP/3G2/MJ2"
  286. select FFMPEG_CUSTOM_DECODER_zlib
  287. config FFMPEG_CUSTOM_DEMUXER_mp3
  288. bool "MP3 (MPEG Audio Layer 3)"
  289. config FFMPEG_CUSTOM_DEMUXER_mpegvideo
  290. bool "MPEG Video (Raw)"
  291. config FFMPEG_CUSTOM_DEMUXER_mpegps
  292. bool "MPEG-2 (PS)"
  293. config FFMPEG_CUSTOM_DEMUXER_mpegts
  294. bool "MPEG-2 (TS)"
  295. config FFMPEG_CUSTOM_DEMUXER_mpc
  296. bool "Musepack"
  297. config FFMPEG_CUSTOM_DEMUXER_mpc8
  298. bool "Musepack 8"
  299. config FFMPEG_CUSTOM_DEMUXER_ogg
  300. bool "Ogg"
  301. config FFMPEG_CUSTOM_DEMUXER_rm
  302. bool "RM"
  303. help
  304. RealMedia format demuxer
  305. config FFMPEG_CUSTOM_DEMUXER_rtsp
  306. bool "RTSP"
  307. select FFMPEG_CUSTOM_DEMUXER_rm
  308. select FFMPEG_CUSTOM_DEMUXER_sdp
  309. select FFMPEG_CUSTOM_DEMUXER_rtp
  310. config FFMPEG_CUSTOM_DEMUXER_sdp
  311. bool "SDP"
  312. select FFMPEG_CUSTOM_DEMUXER_mpegts
  313. config FFMPEG_CUSTOM_DEMUXER_rtp
  314. bool "RTP"
  315. config FFMPEG_CUSTOM_DEMUXER_vc1
  316. bool "VC-1 / WMV9 Raw Video"
  317. depends on FFMPEG_CUSTOM_PATENTED
  318. config FFMPEG_CUSTOM_DEMUXER_wav
  319. bool "WAV"
  320. config FFMPEG_CUSTOM_DEMUXER_wv
  321. bool "WV"
  322. comment "Parsers"
  323. config FFMPEG_CUSTOM_PARSER_aac
  324. bool "AAC (Advanced Audio Coding)"
  325. config FFMPEG_CUSTOM_PARSER_ac3
  326. bool "AC3"
  327. config FFMPEG_CUSTOM_PARSER_flac
  328. bool "FLAC"
  329. config FFMPEG_CUSTOM_PARSER_h264
  330. bool "H.264"
  331. depends on FFMPEG_CUSTOM_PATENTED
  332. select FFMPEG_CUSTOM_DECODER_h264
  333. config FFMPEG_CUSTOM_PARSER_hevc
  334. bool "HEVC / H265"
  335. depends on FFMPEG_CUSTOM_PATENTED
  336. select FFMPEG_CUSTOM_DECODER_hevc
  337. config FFMPEG_CUSTOM_PARSER_mpegaudio
  338. bool "MPEG Audio"
  339. config FFMPEG_CUSTOM_PARSER_mpegvideo
  340. bool "MPEG Video"
  341. config FFMPEG_CUSTOM_PARSER_mpeg4video
  342. bool "MPEG-4 Video"
  343. config FFMPEG_CUSTOM_PARSER_opus
  344. bool "Opus"
  345. config FFMPEG_CUSTOM_PARSER_vc1
  346. bool "VC-1 / WMV9"
  347. depends on FFMPEG_CUSTOM_PATENTED
  348. select FFMPEG_CUSTOM_DECODER_vc1
  349. comment "Protocols"
  350. config FFMPEG_CUSTOM_PROTOCOL_file
  351. bool "file:"
  352. config FFMPEG_CUSTOM_PROTOCOL_http
  353. bool "http:"
  354. config FFMPEG_CUSTOM_PROTOCOL_icecast
  355. bool "icecast:"
  356. select FFMPEG_CUSTOM_PROTOCOL_http
  357. config FFMPEG_CUSTOM_PROTOCOL_pipe
  358. bool "pipe:"
  359. config FFMPEG_CUSTOM_PROTOCOL_rtp
  360. bool "rtp:"
  361. select FFMPEG_CUSTOM_PROTOCOL_udp
  362. config FFMPEG_CUSTOM_PROTOCOL_tcp
  363. bool "tcp:"
  364. config FFMPEG_CUSTOM_PROTOCOL_udp
  365. bool "udp:"
  366. endif