Skip to content
This repository

HTTPS clone URL

Subversion checkout URL

You can clone with HTTPS or Subversion.

Download ZIP
Browse code

Merge from git.ffmpeg.org at 74d6871

This resyncs ffmpeg to Feb 20, 2010.

Conflicts:
	mythtv/configure
	mythtv/libs/libmythtv/RTjpegN.h
  • Loading branch information...
commit de9e4ca9e5fd8eaaffa3eae67c6218b76a08fed0 1 parent ddf379b
Gavin Hurlbut authored March 09, 2011

Showing 231 changed files with 24,301 additions and 11,038 deletions. Show diff stats Hide diff stats

  1. 1  mythplugins/mytharchive/mytharchive/mytharchive.pro
  2. 1  mythplugins/mythmusic/mythmusic/mythmusic.pro
  3. 1  mythplugins/programs-libs.pro
  4. 204  mythtv/configure
  5. 45  mythtv/external/FFmpeg/.gitignore
  6. 6  mythtv/external/FFmpeg/CREDITS
  7. 46  mythtv/external/FFmpeg/Changelog
  8. 2  mythtv/external/FFmpeg/LICENSE
  9. 30  mythtv/external/FFmpeg/MAINTAINERS
  10. 53  mythtv/external/FFmpeg/Makefile
  11. 229  mythtv/external/FFmpeg/cmdutils.c
  12. 85  mythtv/external/FFmpeg/cmdutils.h
  13. 3  mythtv/external/FFmpeg/common.mak
  14. 355  mythtv/external/FFmpeg/configure
  15. 262  mythtv/external/FFmpeg/doc/APIchanges
  16. 2  mythtv/external/FFmpeg/doc/TODO
  17. 77  mythtv/external/FFmpeg/doc/bitstream_filters.texi
  18. 37  mythtv/external/FFmpeg/doc/build_system.txt
  19. 67  mythtv/external/FFmpeg/doc/demuxers.texi
  20. 21  mythtv/external/FFmpeg/doc/developer.texi
  21. 20  mythtv/external/FFmpeg/doc/encoders.texi
  22. 140  mythtv/external/FFmpeg/doc/eval.texi
  23. 19  mythtv/external/FFmpeg/doc/faq.texi
  24. 256  mythtv/external/FFmpeg/doc/{ffmpeg-doc.texi → ffmpeg.texi}
  25. 9  mythtv/external/FFmpeg/doc/{ffplay-doc.texi → ffplay.texi}
  26. 27  mythtv/external/FFmpeg/doc/{ffprobe-doc.texi → ffprobe.texi}
  27. 6  mythtv/external/FFmpeg/doc/{ffserver-doc.texi → ffserver.texi}
  28. 6  mythtv/external/FFmpeg/doc/fftools-common-opts.texi
  29. 921  mythtv/external/FFmpeg/doc/filters.texi
  30. 50  mythtv/external/FFmpeg/doc/general.texi
  31. 259  mythtv/external/FFmpeg/doc/git-howto.txt
  32. 13  mythtv/external/FFmpeg/doc/indevs.texi
  33. 5  mythtv/external/FFmpeg/doc/libavfilter.texi
  34. 68  mythtv/external/FFmpeg/doc/metadata.texi
  35. 65  mythtv/external/FFmpeg/doc/multithreading.txt
  36. 207  mythtv/external/FFmpeg/doc/muxers.texi
  37. 63  mythtv/external/FFmpeg/doc/optimization.txt
  38. 219  mythtv/external/FFmpeg/doc/protocols.texi
  39. 4  mythtv/external/FFmpeg/doc/soc.txt
  40. 24  mythtv/external/FFmpeg/doc/t2h.init
  41. 1  mythtv/external/FFmpeg/doc/texi2pod.pl
  42. 1,336  mythtv/external/FFmpeg/ffmpeg.c
  43. 399  mythtv/external/FFmpeg/ffplay.c
  44. 22  mythtv/external/FFmpeg/ffpresets/libx264-default.ffpreset
  45. 4  mythtv/external/FFmpeg/ffpresets/libx264-fast.ffpreset
  46. 4  mythtv/external/FFmpeg/ffpresets/libx264-fast_firstpass.ffpreset
  47. 4  mythtv/external/FFmpeg/ffpresets/libx264-faster.ffpreset
  48. 4  mythtv/external/FFmpeg/ffpresets/libx264-faster_firstpass.ffpreset
  49. 22  mythtv/external/FFmpeg/ffpresets/libx264-fastfirstpass.ffpreset
  50. 22  mythtv/external/FFmpeg/ffpresets/libx264-hq.ffpreset
  51. 4  mythtv/external/FFmpeg/ffpresets/libx264-lossless_fast.ffpreset
  52. 4  mythtv/external/FFmpeg/ffpresets/libx264-lossless_max.ffpreset
  53. 4  mythtv/external/FFmpeg/ffpresets/libx264-lossless_medium.ffpreset
  54. 4  mythtv/external/FFmpeg/ffpresets/libx264-lossless_slow.ffpreset
  55. 4  mythtv/external/FFmpeg/ffpresets/libx264-lossless_slower.ffpreset
  56. 4  mythtv/external/FFmpeg/ffpresets/libx264-lossless_ultrafast.ffpreset
  57. 22  mythtv/external/FFmpeg/ffpresets/libx264-max.ffpreset
  58. 4  mythtv/external/FFmpeg/ffpresets/libx264-medium.ffpreset
  59. 4  mythtv/external/FFmpeg/ffpresets/libx264-medium_firstpass.ffpreset
  60. 22  mythtv/external/FFmpeg/ffpresets/libx264-normal.ffpreset
  61. 4  mythtv/external/FFmpeg/ffpresets/libx264-placebo.ffpreset
  62. 4  mythtv/external/FFmpeg/ffpresets/libx264-placebo_firstpass.ffpreset
  63. 4  mythtv/external/FFmpeg/ffpresets/libx264-slow.ffpreset
  64. 4  mythtv/external/FFmpeg/ffpresets/libx264-slow_firstpass.ffpreset
  65. 4  mythtv/external/FFmpeg/ffpresets/libx264-slower.ffpreset
  66. 4  mythtv/external/FFmpeg/ffpresets/libx264-slower_firstpass.ffpreset
  67. 22  mythtv/external/FFmpeg/ffpresets/libx264-slowfirstpass.ffpreset
  68. 4  mythtv/external/FFmpeg/ffpresets/libx264-superfast.ffpreset
  69. 4  mythtv/external/FFmpeg/ffpresets/libx264-superfast_firstpass.ffpreset
  70. 4  mythtv/external/FFmpeg/ffpresets/libx264-ultrafast.ffpreset
  71. 4  mythtv/external/FFmpeg/ffpresets/libx264-ultrafast_firstpass.ffpreset
  72. 4  mythtv/external/FFmpeg/ffpresets/libx264-veryfast.ffpreset
  73. 4  mythtv/external/FFmpeg/ffpresets/libx264-veryfast_firstpass.ffpreset
  74. 4  mythtv/external/FFmpeg/ffpresets/libx264-veryslow.ffpreset
  75. 4  mythtv/external/FFmpeg/ffpresets/libx264-veryslow_firstpass.ffpreset
  76. 23  mythtv/external/FFmpeg/ffprobe.c
  77. 94  mythtv/external/FFmpeg/ffserver.c
  78. 41  mythtv/external/FFmpeg/libavcodec/4xm.c
  79. 2  mythtv/external/FFmpeg/libavcodec/8bps.c
  80. 6  mythtv/external/FFmpeg/libavcodec/8svx.c
  81. 44  mythtv/external/FFmpeg/libavcodec/Makefile
  82. 52  mythtv/external/FFmpeg/libavcodec/a64colors.h
  83. 5  mythtv/external/FFmpeg/libavcodec/a64enc.h
  84. 303  mythtv/external/FFmpeg/libavcodec/a64multienc.c
  85. 60  mythtv/external/FFmpeg/libavcodec/a64tables.h
  86. 36  mythtv/external/FFmpeg/libavcodec/aac.h
  87. 2  mythtv/external/FFmpeg/libavcodec/aac_adtstoasc_bsf.c
  88. 2  mythtv/external/FFmpeg/libavcodec/aac_parser.c
  89. 6  mythtv/external/FFmpeg/libavcodec/aac_tablegen_decl.h
  90. 680  mythtv/external/FFmpeg/libavcodec/aacdec.c
  91. 23  mythtv/external/FFmpeg/libavcodec/aacdectab.h
  92. 25  mythtv/external/FFmpeg/libavcodec/aacenc.c
  93. 375  mythtv/external/FFmpeg/libavcodec/aacpsy.c
  94. 23  mythtv/external/FFmpeg/libavcodec/aacsbr.c
  95. 2  mythtv/external/FFmpeg/libavcodec/aasc.c
  96. 46  mythtv/external/FFmpeg/libavcodec/ac3.c
  97. 21  mythtv/external/FFmpeg/libavcodec/ac3.h
  98. 34  mythtv/external/FFmpeg/libavcodec/ac3_parser.c
  99. 11  mythtv/external/FFmpeg/libavcodec/ac3_parser.h
  100. 30  mythtv/external/FFmpeg/libavcodec/ac3dec.c
  101. 18  mythtv/external/FFmpeg/libavcodec/ac3dec.h
  102. 6  mythtv/external/FFmpeg/libavcodec/ac3dec_data.c
  103. 1  mythtv/external/FFmpeg/libavcodec/ac3dec_data.h
  104. 60  mythtv/external/FFmpeg/libavcodec/ac3dsp.c
  105. 54  mythtv/external/FFmpeg/libavcodec/ac3dsp.h
  106. 2,591  mythtv/external/FFmpeg/libavcodec/ac3enc.c
  107. 430  mythtv/external/FFmpeg/libavcodec/ac3enc_fixed.c
  108. 59  mythtv/external/FFmpeg/libavcodec/ac3enc_fixed.h
  109. 124  mythtv/external/FFmpeg/libavcodec/ac3enc_float.c
  110. 45  mythtv/external/FFmpeg/libavcodec/ac3enc_float.h
  111. 32  mythtv/external/FFmpeg/libavcodec/ac3tab.c
  112. 7  mythtv/external/FFmpeg/libavcodec/ac3tab.h
  113. 106  mythtv/external/FFmpeg/libavcodec/adpcm.c
  114. 4  mythtv/external/FFmpeg/libavcodec/adxdec.c
  115. 4  mythtv/external/FFmpeg/libavcodec/adxenc.c
  116. 40  mythtv/external/FFmpeg/libavcodec/alac.c
  117. 26  mythtv/external/FFmpeg/libavcodec/alacenc.c
  118. 34  mythtv/external/FFmpeg/libavcodec/allcodecs.c
  119. 155  mythtv/external/FFmpeg/libavcodec/alsdec.c
  120. 68  mythtv/external/FFmpeg/libavcodec/amr.h
  121. 46  mythtv/external/FFmpeg/libavcodec/amrnbdec.c
  122. 1,890  mythtv/external/FFmpeg/libavcodec/amrwbdata.h
  123. 1,237  mythtv/external/FFmpeg/libavcodec/amrwbdec.c
  124. 2  mythtv/external/FFmpeg/libavcodec/anm.c
  125. 6  mythtv/external/FFmpeg/libavcodec/ansi.c
  126. 7  mythtv/external/FFmpeg/libavcodec/apedec.c
  127. 10  mythtv/external/FFmpeg/libavcodec/arm/Makefile
  128. 21  mythtv/external/FFmpeg/libavcodec/arm/asm-offsets.h
  129. 12  mythtv/external/FFmpeg/libavcodec/arm/asm.S
  130. 2  mythtv/external/FFmpeg/libavcodec/arm/dcadsp_init_arm.c
  131. 5  mythtv/external/FFmpeg/libavcodec/arm/dcadsp_neon.S
  132. 5  mythtv/external/FFmpeg/libavcodec/arm/dsputil_init_arm.c
  133. 15  mythtv/external/FFmpeg/libavcodec/arm/dsputil_init_neon.c
  134. 7  mythtv/external/FFmpeg/libavcodec/arm/dsputil_init_vfp.c
  135. 8  mythtv/external/FFmpeg/libavcodec/arm/dsputil_iwmmxt.c
  136. 425  mythtv/external/FFmpeg/libavcodec/arm/dsputil_neon.S
  137. 84  mythtv/external/FFmpeg/libavcodec/arm/dsputil_vfp.S
  138. 4  mythtv/external/FFmpeg/libavcodec/arm/fft_init_arm.c
  139. 48  mythtv/external/FFmpeg/libavcodec/arm/fmtconvert_init_arm.c
  140. 391  mythtv/external/FFmpeg/libavcodec/arm/fmtconvert_neon.S
  141. 77  mythtv/external/FFmpeg/libavcodec/arm/fmtconvert_vfp.S
  142. 8  mythtv/external/FFmpeg/libavcodec/arm/h264idct_neon.S
  143. 4  mythtv/external/FFmpeg/libavcodec/arm/h264pred_neon.S
  144. 3  mythtv/external/FFmpeg/libavcodec/arm/mpegvideo_iwmmxt.c
  145. 17  mythtv/external/FFmpeg/libavcodec/arm/mpegvideo_neon.S
  146. 8  mythtv/external/FFmpeg/libavcodec/arm/synth_filter_neon.S
  147. 92  mythtv/external/FFmpeg/libavcodec/arm/vp56_arith.h
  148. 29  mythtv/external/FFmpeg/libavcodec/arm/vp8.h
  149. 220  mythtv/external/FFmpeg/libavcodec/arm/vp8_armv6.S
  150. 163  mythtv/external/FFmpeg/libavcodec/arm/vp8dsp_init_arm.c
  151. 1,910  mythtv/external/FFmpeg/libavcodec/arm/vp8dsp_neon.S
  152. 124  mythtv/external/FFmpeg/libavcodec/ass.c
  153. 77  mythtv/external/FFmpeg/libavcodec/ass.h
  154. 62  mythtv/external/FFmpeg/libavcodec/assdec.c
  155. 67  mythtv/external/FFmpeg/libavcodec/assenc.c
  156. 8  mythtv/external/FFmpeg/libavcodec/asv1.c
  157. 8  mythtv/external/FFmpeg/libavcodec/atrac.c
  158. 4  mythtv/external/FFmpeg/libavcodec/atrac.h
  159. 8  mythtv/external/FFmpeg/libavcodec/atrac1.c
  160. 10  mythtv/external/FFmpeg/libavcodec/atrac3.c
  161. 182  mythtv/external/FFmpeg/libavcodec/audioconvert.c
  162. 50  mythtv/external/FFmpeg/libavcodec/audioconvert.h
  163. 2  mythtv/external/FFmpeg/libavcodec/aura.c
  164. 510  mythtv/external/FFmpeg/libavcodec/avcodec.h
  165. 18  mythtv/external/FFmpeg/libavcodec/avpacket.c
  166. 2  mythtv/external/FFmpeg/libavcodec/avs.c
  167. 2  mythtv/external/FFmpeg/libavcodec/bethsoftvideo.c
  168. 13  mythtv/external/FFmpeg/libavcodec/bfi.c
  169. 19  mythtv/external/FFmpeg/libavcodec/bgmc.c
  170. 8  mythtv/external/FFmpeg/libavcodec/bgmc.h
  171. 375  mythtv/external/FFmpeg/libavcodec/bink.c
  172. 23  mythtv/external/FFmpeg/libavcodec/binkaudio.c
  173. 41  mythtv/external/FFmpeg/libavcodec/binkdata.h
  174. 3  mythtv/external/FFmpeg/libavcodec/bmp.c
  175. 44  mythtv/external/FFmpeg/libavcodec/bmpenc.c
  176. 2  mythtv/external/FFmpeg/libavcodec/c93.c
  177. 6  mythtv/external/FFmpeg/libavcodec/cavs.c
  178. 2  mythtv/external/FFmpeg/libavcodec/cavs_parser.c
  179. 2  mythtv/external/FFmpeg/libavcodec/cavsdec.c
  180. 5  mythtv/external/FFmpeg/libavcodec/cavsdsp.c
  181. 2  mythtv/external/FFmpeg/libavcodec/cdgraphics.c
  182. 2  mythtv/external/FFmpeg/libavcodec/chomp_bsf.c
  183. 2  mythtv/external/FFmpeg/libavcodec/cinepak.c
  184. 9  mythtv/external/FFmpeg/libavcodec/cljr.c
  185. 7  mythtv/external/FFmpeg/libavcodec/cook.c
  186. 31  mythtv/external/FFmpeg/libavcodec/cscd.c
  187. 4  mythtv/external/FFmpeg/libavcodec/cyuv.c
  188. 513  mythtv/external/FFmpeg/libavcodec/dca.c
  189. 2  mythtv/external/FFmpeg/libavcodec/dca_parser.c
  190. 12,288  mythtv/external/FFmpeg/libavcodec/dcadata.h
  191. 6  mythtv/external/FFmpeg/libavcodec/dcadsp.c
  192. 2  mythtv/external/FFmpeg/libavcodec/dcadsp.h
  193. 25  mythtv/external/FFmpeg/libavcodec/dct-test.c
  194. 4  mythtv/external/FFmpeg/libavcodec/dirac.c
  195. 2  mythtv/external/FFmpeg/libavcodec/dirac_parser.c
  196. 2  mythtv/external/FFmpeg/libavcodec/dnxhd_parser.c
  197. 17  mythtv/external/FFmpeg/libavcodec/dnxhddec.c
  198. 16  mythtv/external/FFmpeg/libavcodec/dnxhdenc.c
  199. 6  mythtv/external/FFmpeg/libavcodec/dpcm.c
  200. 11  mythtv/external/FFmpeg/libavcodec/dpx.c
  201. 6  mythtv/external/FFmpeg/libavcodec/dsicinav.c
  202. 211  mythtv/external/FFmpeg/libavcodec/dsputil.c
  203. 125  mythtv/external/FFmpeg/libavcodec/dsputil.h
  204. 2  mythtv/external/FFmpeg/libavcodec/dump_extradata_bsf.c
  205. 14  mythtv/external/FFmpeg/libavcodec/dv.c
  206. 4  mythtv/external/FFmpeg/libavcodec/dvbsub.c
  207. 10  mythtv/external/FFmpeg/libavcodec/dvbsub_parser.c
  208. 47  mythtv/external/FFmpeg/libavcodec/dvbsubdec.c
  209. 14  mythtv/external/FFmpeg/libavcodec/dvdata.c
  210. 2  mythtv/external/FFmpeg/libavcodec/dvdsub_parser.c
  211. 18  mythtv/external/FFmpeg/libavcodec/dvdsubdec.c
  212. 2  mythtv/external/FFmpeg/libavcodec/dvdsubenc.c
  213. 4  mythtv/external/FFmpeg/libavcodec/dwt.c
  214. 2  mythtv/external/FFmpeg/libavcodec/dwt.h
  215. 2  mythtv/external/FFmpeg/libavcodec/dxa.c
  216. 4  mythtv/external/FFmpeg/libavcodec/dxva2_h264.c
  217. 2  mythtv/external/FFmpeg/libavcodec/dxva2_mpeg2.c
  218. 4  mythtv/external/FFmpeg/libavcodec/dxva2_vc1.c
  219. 13  mythtv/external/FFmpeg/libavcodec/eacmv.c
  220. 6  mythtv/external/FFmpeg/libavcodec/eamad.c
  221. 2  mythtv/external/FFmpeg/libavcodec/eatgq.c
  222. 6  mythtv/external/FFmpeg/libavcodec/eatgv.c
  223. 2  mythtv/external/FFmpeg/libavcodec/eatqi.c
  224. 2  mythtv/external/FFmpeg/libavcodec/escape124.c
  225. 16  mythtv/external/FFmpeg/libavcodec/fft.c
  226. 7  mythtv/external/FFmpeg/libavcodec/fft.h
  227. 931  mythtv/external/FFmpeg/libavcodec/ffv1.c
  228. 108  mythtv/external/FFmpeg/libavcodec/flac.c
  229. 17  mythtv/external/FFmpeg/libavcodec/flac.h
  230. 682  mythtv/external/FFmpeg/libavcodec/flac_parser.c
1  mythplugins/mytharchive/mytharchive/mytharchive.pro
@@ -12,7 +12,6 @@ DEPENDPATH *= $${INCLUDEPATH}
12 12
 LIBS += -lmythswscale
13 13
 LIBS += -lmythavformat
14 14
 LIBS += -lmythavcodec
15  
-LIBS += -lmythavcore
16 15
 LIBS += -lmythavutil
17 16
 LIBS += -lmythmetadata-$$LIBVERSION
18 17
 
1  mythplugins/mythmusic/mythmusic/mythmusic.pro
@@ -18,7 +18,6 @@ INSTALLS += target
18 18
 
19 19
 LIBS += -lmythavformat
20 20
 LIBS += -lmythavcodec
21  
-LIBS += -lmythavcore
22 21
 LIBS += -lmythavutil
23 22
 LIBS += -ltag -logg -lvorbisfile -lvorbis -lvorbisenc -lFLAC -lmp3lame
24 23
 
1  mythplugins/programs-libs.pro
@@ -8,7 +8,6 @@ LIBS += -L$${LIBDIR} $$EXTRA_LIBS -lmythbase-$$LIBVERSION
8 8
 LIBS += -lmyth-$$LIBVERSION -lmythui-$$LIBVERSION -lmythupnp-$$LIBVERSION
9 9
 LIBS += -lmythservicecontracts-$$LIBVERSION
10 10
 LIBS += -lmythavcodec
11  
-LIBS += -lmythavcore
12 11
 LIBS += -lmythavutil
13 12
 LIBS += -lmythavformat
14 13
 
204  mythtv/configure
@@ -170,7 +170,6 @@ Configuration options:
170 170
   --disable-ffserver       disable ffserver build
171 171
   --disable-avdevice       disable libavdevice build
172 172
   --disable-avcodec        disable libavcodec build
173  
-  --disable-avcore         disable libavcore build
174 173
   --disable-avformat       disable libavformat build
175 174
   --disable-swscale        disable libswscale build
176 175
   --enable-postproc        enable GPLed postprocessing support [no]
@@ -246,8 +245,10 @@ Configuration options:
246 245
 External library support:
247 246
   --enable-avisynth        enable reading of AVISynth script files [no]
248 247
   --enable-bzlib           enable bzlib [autodetect]
  248
+  --enable-frei0r          enable frei0r video filtering
249 249
   --enable-libopencore-amrnb enable AMR-NB de/encoding via libopencore-amrnb [no]
250 250
   --enable-libopencore-amrwb enable AMR-WB decoding via libopencore-amrwb [no]
  251
+  --enable-libopencv       enable video filtering via libopencv [no]
251 252
   --enable-libdc1394       enable IIDC-1394 grabbing using libdc1394
252 253
                            and libraw1394 [no]
253 254
   --enable-libdirac        enable Dirac support via libdirac [no]
@@ -594,20 +595,29 @@ check_deps(){
594 595
     done
595 596
 }
596 597
 
  598
+print_config_h(){
  599
+    enabled $1 && v=1 || v=0
  600
+    echo "#define $2 $v"
  601
+}
  602
+
  603
+print_config_mak(){
  604
+    enabled $1 && v= || v=!
  605
+    echo "$v$2=yes"
  606
+}
  607
+
  608
+print_config_asm(){
  609
+    enabled $1 && echo "%define $2"
  610
+}
  611
+
597 612
 print_config(){
598 613
     pfx=$1
599  
-    header=$2
600  
-    makefile=$3
601  
-    shift 3
  614
+    files=$2
  615
+    shift 2
602 616
     for cfg; do
603 617
         ucname="$(toupper $cfg)"
604  
-        if enabled $cfg; then
605  
-            echo "#define ${pfx}${ucname} 1" >> $header
606  
-            echo "${pfx}${ucname}=yes" >> $makefile
607  
-        else
608  
-            echo "#define ${pfx}${ucname} 0" >> $header
609  
-            echo "!${pfx}${ucname}=yes" >> $makefile
610  
-        fi
  618
+        for f in $files; do
  619
+            "print_config_${f##*.}" $cfg ${pfx}${ucname} >>$f
  620
+        done
611 621
     done
612 622
 }
613 623
 
@@ -1080,7 +1090,6 @@ CONFIG_LIST="
1080 1090
     $COMPONENT_LIST
1081 1091
     aandct
1082 1092
     avcodec
1083  
-    avcore
1084 1093
     avdevice
1085 1094
     avfilter
1086 1095
     avformat
@@ -1096,6 +1105,7 @@ CONFIG_LIST="
1096 1105
     ffprobe
1097 1106
     ffserver
1098 1107
     fft
  1108
+    frei0r
1099 1109
     golomb
1100 1110
     gpl
1101 1111
     gray
@@ -1111,6 +1121,7 @@ CONFIG_LIST="
1111 1121
     libnut
1112 1122
     libopencore_amrnb
1113 1123
     libopencore_amrwb
  1124
+    libopencv
1114 1125
     libopenjpeg
1115 1126
     librtmp
1116 1127
     libschroedinger
@@ -1132,6 +1143,7 @@ CONFIG_LIST="
1132 1143
     pic
1133 1144
     postproc
1134 1145
     rdft
  1146
+    rtpdec
1135 1147
     runtime_cpudetect
1136 1148
     shared
1137 1149
     small
@@ -1203,13 +1215,13 @@ HAVE_LIST="
1203 1215
     $ARCH_EXT_LIST
1204 1216
     $HAVE_LIST_PUB
1205 1217
     $THREADS_LIST
  1218
+    aligned_stack
1206 1219
     alsa_asoundlib_h
1207 1220
     altivec_h
1208 1221
     arpa_inet_h
1209 1222
     attribute_may_alias
1210 1223
     attribute_packed
1211 1224
     bswap
1212  
-    byteswap_h
1213 1225
     closesocket
1214 1226
     cmov
1215 1227
     conio_h
@@ -1258,8 +1270,10 @@ HAVE_LIST="
1258 1270
     machine_ioctl_bt848_h
1259 1271
     machine_ioctl_meteor_h
1260 1272
     malloc_h
  1273
+    MapViewOfFile
1261 1274
     memalign
1262 1275
     mkstemp
  1276
+    mmap
1263 1277
     pld
1264 1278
     posix_memalign
1265 1279
     round
@@ -1272,6 +1286,7 @@ HAVE_LIST="
1272 1286
     poll_h
1273 1287
     setrlimit
1274 1288
     strerror_r
  1289
+    strtok_r
1275 1290
     struct_addrinfo
1276 1291
     struct_ipv6_mreq
1277 1292
     struct_sockaddr_in6
@@ -1280,7 +1295,6 @@ HAVE_LIST="
1280 1295
     symver
1281 1296
     symver_gnu_asm
1282 1297
     symver_asm_label
1283  
-    sys_endian_h
1284 1298
     sys_mman_h
1285 1299
     sys_resource_h
1286 1300
     sys_select_h
@@ -1294,6 +1308,7 @@ HAVE_LIST="
1294 1308
     VirtualAlloc
1295 1309
     winsock2_h
1296 1310
     xform_asm
  1311
+    xmm_clobbers
1297 1312
     yasm
1298 1313
 "
1299 1314
 
@@ -1392,6 +1407,7 @@ CMDLINE_SELECT="
1392 1407
     opengl
1393 1408
     optimizations
1394 1409
     stripping
  1410
+    symver
1395 1411
     yasm
1396 1412
 "
1397 1413
 
@@ -1473,6 +1489,7 @@ mmx2_deps="mmx"
1473 1489
 sse_deps="mmx"
1474 1490
 ssse3_deps="sse"
1475 1491
 
  1492
+aligned_stack_if_any="ppc x86"
1476 1493
 fast_64bit_if_any="alpha ia64 mips64 parisc64 ppc64 sparc64 x86_64"
1477 1494
 fast_clz_if_any="alpha armv5te avr32 mips ppc x86"
1478 1495
 fast_unaligned_if_any="armv6 ppc x86"
@@ -1490,10 +1507,12 @@ rdft_select="fft"
1490 1507
 # decoders / encoders / hardware accelerators
1491 1508
 aac_decoder_select="mdct rdft"
1492 1509
 aac_encoder_select="mdct"
1493  
-aac_latm_decoder_select="aac_decoder"
  1510
+aac_latm_decoder_select="aac_decoder aac_latm_parser"
1494 1511
 ac3_decoder_select="mdct ac3_parser"
  1512
+ac3_encoder_select="mdct"
1495 1513
 alac_encoder_select="lpc"
1496 1514
 amrnb_decoder_select="lsp"
  1515
+amrwb_decoder_select="lsp"
1497 1516
 atrac1_decoder_select="mdct"
1498 1517
 atrac3_decoder_select="mdct"
1499 1518
 binkaudio_dct_decoder_select="mdct rdft dct"
@@ -1620,13 +1639,11 @@ vdpau_deps="vdpau_vdpau_h vdpau_vdpau_x11_h"
1620 1639
 
1621 1640
 # parsers
1622 1641
 h264_parser_select="golomb h264dsp h264pred"
1623  
-latm_parser_deps="libfaad"
1624 1642
 
1625 1643
 # external libraries
1626 1644
 libdirac_decoder_deps="libdirac !libschroedinger"
1627 1645
 libdirac_encoder_deps="libdirac"
1628 1646
 libfaac_encoder_deps="libfaac"
1629  
-libfaad_latm_decoder_deps="libfaad"
1630 1647
 libgsm_decoder_deps="libgsm"
1631 1648
 libgsm_encoder_deps="libgsm"
1632 1649
 libgsm_ms_decoder_deps="libgsm"
@@ -1648,32 +1665,36 @@ libxavs_encoder_deps="libxavs"
1648 1665
 libxvid_encoder_deps="libxvid"
1649 1666
 
1650 1667
 # demuxers / muxers
1651  
-ac3_demuxer_deps="ac3_parser"
  1668
+ac3_demuxer_select="ac3_parser"
1652 1669
 asf_stream_muxer_select="asf_muxer"
1653 1670
 avisynth_demuxer_deps="avisynth"
1654  
-dirac_demuxer_deps="dirac_parser"
  1671
+dirac_demuxer_select="dirac_parser"
1655 1672
 eac3_demuxer_select="ac3_parser"
  1673
+flac_demuxer_select="flac_parser"
1656 1674
 ipod_muxer_select="mov_muxer"
1657 1675
 libnut_demuxer_deps="libnut"
1658 1676
 libnut_muxer_deps="libnut"
1659 1677
 matroska_audio_muxer_select="matroska_muxer"
1660 1678
 matroska_demuxer_suggest="zlib bzlib"
1661 1679
 mov_demuxer_suggest="zlib"
1662  
-mp3_demuxer_deps="mpegaudio_parser"
  1680
+mp3_demuxer_select="mpegaudio_parser"
1663 1681
 mp4_muxer_select="mov_muxer"
1664 1682
 mpegtsraw_demuxer_select="mpegts_demuxer"
1665 1683
 mxf_d10_muxer_select="mxf_muxer"
1666 1684
 ogg_demuxer_select="golomb"
1667 1685
 psp_muxer_select="mov_muxer"
1668  
-rtsp_demuxer_deps="sdp_demuxer"
1669  
-rtsp_muxer_deps="sdp_demuxer"
1670  
-rtsp_muxer_select="rtp_muxer"
1671  
-sdp_demuxer_deps="rtp_protocol mpegts_demuxer"
1672  
-sdp_demuxer_select="asf_demuxer rm_demuxer"
  1686
+rtp_demuxer_select="sdp_demuxer"
  1687
+rtpdec_select="asf_demuxer rm_demuxer rtp_protocol mpegts_demuxer mov_demuxer"
  1688
+rtsp_demuxer_select="http_protocol rtpdec"
  1689
+rtsp_muxer_select="rtp_muxer http_protocol rtp_protocol"
  1690
+sap_demuxer_select="sdp_demuxer"
  1691
+sap_muxer_select="rtp_muxer rtp_protocol"
  1692
+sdp_demuxer_select="rtpdec"
1673 1693
 spdif_muxer_select="aac_parser"
1674 1694
 tg2_muxer_select="mov_muxer"
1675 1695
 tgp_muxer_select="mov_muxer"
1676 1696
 w64_demuxer_deps="wav_demuxer"
  1697
+wtv_demuxer_deps="disable-borked"
1677 1698
 
1678 1699
 # indevs / outdevs
1679 1700
 alsa_indev_deps="alsa_asoundlib_h snd_pcm_htimestamp"
@@ -1702,6 +1723,16 @@ rtp_protocol_select="udp_protocol"
1702 1723
 tcp_protocol_deps="network"
1703 1724
 udp_protocol_deps="network"
1704 1725
 
  1726
+# filters
  1727
+blackframe_filter_deps="gpl"
  1728
+cropdetect_filter_deps="gpl"
  1729
+frei0r_filter_deps="frei0r dlopen strtok_r"
  1730
+frei0r_src_filter_deps="frei0r dlopen strtok_r"
  1731
+hqdn3d_filter_deps="gpl"
  1732
+scale_filter_deps="swscale"
  1733
+ocv_filter_deps="libopencv"
  1734
+yadif_filter_deps="gpl"
  1735
+
1705 1736
 # libraries
1706 1737
 avdevice_deps="avcodec avformat"
1707 1738
 avformat_deps="avcodec"
@@ -1961,7 +1992,6 @@ libxml2_path_default="${sysroot}/usr/include/libxml2"
1961 1992
 
1962 1993
 # configurable options
1963 1994
 enable avcodec
1964  
-enable avcore
1965 1995
 enable avdevice
1966 1996
 enable avfilter
1967 1997
 enable avformat
@@ -2310,6 +2340,8 @@ tmpfile TMPS  .S
2310 2340
 tmpfile TMPV  .ver
2311 2341
 tmpfile TMPSH .sh
2312 2342
 tmpfile TMPCXX .cpp
  2343
+tmpfile TMPASM .asm
  2344
+tmpfile TMPMAK .mak
2313 2345
 
2314 2346
 unset -f mktemp
2315 2347
 
@@ -3564,6 +3596,7 @@ check_func  inet_aton $network_extralibs
3564 3596
 check_func  isatty
3565 3597
 check_func  ${malloc_prefix}memalign            && enable memalign
3566 3598
 check_func  mkstemp
  3599
+check_func  mmap
3567 3600
 check_func  ${malloc_prefix}posix_memalign      && enable posix_memalign
3568 3601
 check_func  setrlimit
3569 3602
 check_func  strerror_r
@@ -3666,6 +3699,8 @@ enabled libmp3lame && require  libmp3lame lame/lame.h lame_init -lmp3lame
3666 3699
 enabled libnut     && require  libnut libnut.h nut_demuxer_init -lnut
3667 3700
 enabled libopencore_amrnb  && require libopencore_amrnb opencore-amrnb/interf_dec.h Decoder_Interface_init -lopencore-amrnb
3668 3701
 enabled libopencore_amrwb  && require libopencore_amrwb opencore-amrwb/dec_if.h D_IF_init -lopencore-amrwb
  3702
+enabled libopencv  && { check_lib opencv/cv.h cvCreateImageHeader $(pkg-config --libs opencv) ||
  3703
+                        die "ERROR: libopencv not found"; }
3669 3704
 enabled libopenjpeg && require libopenjpeg openjpeg.h opj_version -lopenjpeg
3670 3705
 enabled librtmp    && { check_lib librtmp/rtmp.h RTMP_Socket $(pkg-config --libs librtmp) ||
3671 3706
                         die "ERROR: librtmp not found or RTMP_Socket() missing, librtmp version must be >= 2.2.f"; }
@@ -3680,8 +3715,8 @@ enabled libvpx     && {
3680 3715
     enabled libvpx_encoder && { check_lib2 "vpx/vpx_encoder.h vpx/vp8cx.h" vpx_codec_enc_init_ver -lvpx ||
3681 3716
                                 die "ERROR: libvpx encoder version must be >=0.9.1"; } }
3682 3717
 enabled libx264    && require  libx264 x264.h x264_encoder_encode -lx264 &&
3683  
-                      { check_cpp_condition x264.h "X264_BUILD >= 98" ||
3684  
-                        die "ERROR: libx264 version must be >= 0.98."; }
  3718
+                      { check_cpp_condition x264.h "X264_BUILD >= 99" ||
  3719
+                        die "ERROR: libx264 version must be >= 0.99."; }
3685 3720
 enabled libxavs    && require  libxavs xavs.h xavs_encoder_encode -lxavs
3686 3721
 enabled libxvid    && require  libxvid xvid.h xvid_global -lxvidcore
3687 3722
 enabled mlib       && require  mediaLib mlib_types.h mlib_VectorSub_S16_U8_Mod -lmlib
@@ -3903,7 +3938,7 @@ check_ldflags -Wl,--warn-common
3903 3938
 <<BLOCKQUOTE
3904 3939
 check_ldflags -Wl,--as-needed
3905 3940
 BLOCKQUOTE
3906  
-check_ldflags '-Wl,-rpath-link,\$(BUILD_ROOT)/external/FFmpeg/libpostproc -Wl,-rpath-link,\$(BUILD_ROOT)/external/FFmpeg/libswscale -Wl,-rpath-link,\$(BUILD_ROOT)/external/FFmpeg/libavfilter -Wl,-rpath-link,\$(BUILD_ROOT)/external/FFmpeg/libavdevice -Wl,-rpath-link,\$(BUILD_ROOT)/external/FFmpeg/libavformat -Wl,-rpath-link,\$(BUILD_ROOT)/external/FFmpeg/libavcodec -Wl,-rpath-link,\$(BUILD_ROOT)/external/FFmpeg/libavcore -Wl,-rpath-link,\$(BUILD_ROOT)/external/FFmpeg/libavutil'
  3941
+check_ldflags '-Wl,-rpath-link,\$(BUILD_ROOT)/external/FFmpeg/libpostproc -Wl,-rpath-link,\$(BUILD_ROOT)/external/FFmpeg/libswscale -Wl,-rpath-link,\$(BUILD_ROOT)/external/FFmpeg/libavfilter -Wl,-rpath-link,\$(BUILD_ROOT)/external/FFmpeg/libavdevice -Wl,-rpath-link,\$(BUILD_ROOT)/external/FFmpeg/libavformat -Wl,-rpath-link,\$(BUILD_ROOT)/external/FFmpeg/libavcodec -Wl,-rpath-link,\$(BUILD_ROOT)/external/FFmpeg/libavutil'
3907 3942
 check_ldflags -Wl,-Bsymbolic
3908 3943
 
3909 3944
 echo "X{};" > $TMPV
@@ -4294,6 +4329,7 @@ echo "threading support         ${thread_type-no}"
4294 4329
 echo "SDL support               ${sdl-no}"
4295 4330
 echo "Sun medialib support      ${mlib-no}"
4296 4331
 echo "AVISynth enabled          ${avisynth-no}"
  4332
+echo "frei0r enabled            ${frei0r-no}"
4297 4333
 echo "libdc1394 support         ${libdc1394-no}"
4298 4334
 echo "libdirac enabled          ${libdirac-no}"
4299 4335
 echo "libfaac enabled           ${libfaac-no}"
@@ -4302,6 +4338,7 @@ echo "libmp3lame enabled        ${libmp3lame-no}"
4302 4338
 echo "libnut enabled            ${libnut-no}"
4303 4339
 echo "libopencore-amrnb support ${libopencore_amrnb-no}"
4304 4340
 echo "libopencore-amrwb support ${libopencore_amrwb-no}"
  4341
+echo "libopencv support         ${libopencv-no}"
4305 4342
 echo "libopenjpeg enabled       ${libopenjpeg-no}"
4306 4343
 echo "librtmp enabled           ${librtmp-no}"
4307 4344
 echo "libschroedinger enabled   ${libschroedinger-no}"
@@ -4354,7 +4391,6 @@ if enabled source_path_used; then
4354 4391
         doc
4355 4392
         libavcodec
4356 4393
         libavcodec/$arch
4357  
-        libavcore
4358 4394
         libavdevice
4359 4395
         libavfilter
4360 4396
         libavformat
@@ -4373,7 +4409,6 @@ if enabled source_path_used; then
4373 4409
         doc/texi2pod.pl
4374 4410
         libavcodec/Makefile
4375 4411
         libavcodec/${arch}/Makefile
4376  
-        libavcore/Makefile
4377 4412
         libavdevice/Makefile
4378 4413
         libavfilter/Makefile
4379 4414
         libavformat/Makefile
@@ -4387,6 +4422,8 @@ fi
4387 4422
 
4388 4423
 enabled stripping || strip="echo skipping strip"
4389 4424
 
  4425
+config_files="$TMPH $TMPMAK"
  4426
+
4390 4427
 if enabled backend; then
4391 4428
   echo "Video4Linux sup.          ${v4l-no}"
4392 4429
   echo "ivtv support              ${ivtv-no}"
@@ -4456,7 +4493,7 @@ echo "Creating $MYTH_CONFIG_H and $MYTH_CONFIG_MAK"
4456 4493
 date >> config.log
4457 4494
 echo "   $0 $MYTHTV_CONFIGURATION" >> config.log
4458 4495
 
4459  
-cat > libs/libmythbase/mythconfig.mak <<EOF
  4496
+cat > $TMPMAK <<EOF
4460 4497
 # Automatically generated by configure - do not modify!
4461 4498
 FFMPEG_CONFIGURATION=$FFMPEG_CONFIGURATION
4462 4499
 MYTHTV_CONFIG_MAK=1
@@ -4545,22 +4582,21 @@ get_version(){
4545 4582
     eval $(grep "#define ${name}_VERSION_M" "$file" | awk '{ print $2"="$3 }')
4546 4583
     eval ${name}_VERSION=\$${name}_VERSION_MAJOR.\$${name}_VERSION_MINOR.\$${name}_VERSION_MICRO
4547 4584
     lcname=$(tolower $name)
4548  
-    eval echo "${lcname}_VERSION=\$${name}_VERSION" >> $MYTH_CONFIG_MAK
4549  
-    eval echo "${lcname}_VERSION_MAJOR=\$${name}_VERSION_MAJOR" >> $MYTH_CONFIG_MAK
  4585
+    eval echo "${lcname}_VERSION=\$${name}_VERSION" >> $TMPMAK
  4586
+    eval echo "${lcname}_VERSION_MAJOR=\$${name}_VERSION_MAJOR" >> $TMPMAK
4550 4587
 }
4551 4588
 
4552 4589
 get_version LIBSWSCALE  external/FFmpeg/libswscale/swscale.h
4553 4590
 get_version LIBPOSTPROC external/FFmpeg/libpostproc/postprocess.h
4554 4591
 get_version LIBAVCODEC  external/FFmpeg/libavcodec/avcodec.h
4555  
-get_version LIBAVCORE   external/FFmpeg/libavcore/avcore.h
4556 4592
 get_version LIBAVDEVICE external/FFmpeg/libavdevice/avdevice.h
4557  
-get_version LIBAVFORMAT external/FFmpeg/libavformat/avformat.h
  4593
+get_version LIBAVFORMAT external/FFmpeg/libavformat/version.h
4558 4594
 get_version LIBAVUTIL   external/FFmpeg/libavutil/avutil.h
4559 4595
 get_version LIBAVFILTER external/FFmpeg/libavfilter/avfilter.h
4560 4596
 
4561 4597
 
4562  
-echo "RUNPREFIX=$runprefix" >> $MYTH_CONFIG_MAK
4563  
-echo "SYSROOT=$sysroot" >> $MYTH_CONFIG_MAK
  4598
+echo "RUNPREFIX=$runprefix" >> $TMPMAK
  4599
+echo "SYSROOT=$sysroot" >> $TMPMAK
4564 4600
 
4565 4601
 enabled audio_alsa        && append CCONFIG "using_alsa"
4566 4602
 enabled audio_jack        && append CCONFIG "using_jack"
@@ -4570,17 +4606,17 @@ enabled audio_pulseoutput && append CCONFIG "using_pulseoutput"
4570 4606
 
4571 4607
 if enabled darwin_da; then
4572 4608
   append CCONFIG "darwin_da"
4573  
-  echo "SLIB_UNINSTALL_EXTRA_CMD=${SLIB_UNINSTALL_EXTRA_CMD}" >> $MYTH_CONFIG_MAK
  4609
+  echo "SLIB_UNINSTALL_EXTRA_CMD=${SLIB_UNINSTALL_EXTRA_CMD}" >> $TMPMAK
4574 4610
 fi
4575 4611
 
4576 4612
 if enabled freetype2; then
4577  
-    echo "FREETYPE_CFLAGS=`freetype-config --cflags`" >> $MYTH_CONFIG_MAK
4578  
-    echo "FREETYPE_LIBS=`freetype-config --libs`" >> $MYTH_CONFIG_MAK
  4613
+    echo "FREETYPE_CFLAGS=`freetype-config --cflags`" >> $TMPMAK
  4614
+    echo "FREETYPE_LIBS=`freetype-config --libs`" >> $TMPMAK
4579 4615
 fi
4580 4616
 
4581 4617
 if test $target_os = darwin; then
4582 4618
   # Qt, by default builds .app bundles everywhere. Prevent this.
4583  
-  enabled mac_bundle || echo "CONFIG -= app_bundle" >> $MYTH_CONFIG_MAK
  4619
+  enabled mac_bundle || echo "CONFIG -= app_bundle" >> $TMPMAK
4584 4620
 fi
4585 4621
 
4586 4622
 cat > $TMPH <<EOF
@@ -4626,26 +4662,31 @@ if enabled cygwin ; then
4626 4662
   echo "#endif" >> $TMPH
4627 4663
 fi
4628 4664
 
4629  
-print_config ARCH_   $TMPH $MYTH_CONFIG_MAK $ARCH_LIST
4630  
-print_config HAVE_   $TMPH $MYTH_CONFIG_MAK $HAVE_LIST
4631  
-print_config HAVE_   $TMPH $MYTH_CONFIG_MAK $MYTHTV_HAVE_LIST
4632  
-print_config CONFIG_ $TMPH $MYTH_CONFIG_MAK $CONFIG_LIST   \
4633  
-                                      $CONFIG_EXTRA      \
4634  
-                                      $DECODER_LIST      \
4635  
-                                      $ENCODER_LIST      \
4636  
-                                      $HWACCEL_LIST      \
4637  
-                                      $PARSER_LIST       \
4638  
-                                      $BSF_LIST          \
4639  
-                                      $DEMUXER_LIST      \
4640  
-                                      $MUXER_LIST        \
4641  
-                                      $FILTER_LIST       \
4642  
-                                      $PROTOCOL_LIST     \
4643  
-                                      $INDEV_LIST        \
4644  
-                                      $OUTDEV_LIST       \
4645  
-                                      $MYTHTV_LIST       \
4646  
-                                      $MYTHTV_CONFIG_LIST \
4647  
-
4648  
-cat >>config.mak <<EOF
  4665
+if enabled yasm; then
  4666
+    append config_files $TMPASM
  4667
+    printf '' >$TMPASM
  4668
+fi
  4669
+
  4670
+print_config ARCH_   "$config_files" $ARCH_LIST
  4671
+print_config HAVE_   "$config_files" $HAVE_LIST
  4672
+print_config HAVE_   "$config_files" $MYTHTV_HAVE_LIST
  4673
+print_config CONFIG_ "$config_files" $CONFIG_LIST       \
  4674
+                                     $CONFIG_EXTRA      \
  4675
+                                     $DECODER_LIST      \
  4676
+                                     $ENCODER_LIST      \
  4677
+                                     $HWACCEL_LIST      \
  4678
+                                     $PARSER_LIST       \
  4679
+                                     $BSF_LIST          \
  4680
+                                     $DEMUXER_LIST      \
  4681
+                                     $MUXER_LIST        \
  4682
+                                     $FILTER_LIST       \
  4683
+                                     $PROTOCOL_LIST     \
  4684
+                                     $INDEV_LIST        \
  4685
+                                     $OUTDEV_LIST       \
  4686
+                                     $MYTHTV_LIST       \
  4687
+                                     $MYTHTV_CONFIG_LIST \
  4688
+
  4689
+cat >> $TMPMAK <<EOF
4649 4690
 ACODEC_TESTS=$(print_enabled -n _test $ACODEC_TESTS)
4650 4691
 VCODEC_TESTS=$(print_enabled -n _test $VCODEC_TESTS)
4651 4692
 LAVF_TESTS=$(print_enabled   -n _test $LAVF_TESTS)
@@ -4695,9 +4736,9 @@ fi
4695 4736
 
4696 4737
 if enabled firewire; then
4697 4738
   if test $target_os = darwin; then
4698  
-      echo "CONFIG_MAC_AVC=$mac_avc" >>  $MYTH_CONFIG_MAK
  4739
+      echo "CONFIG_MAC_AVC=$mac_avc" >> $TMPMAK
4699 4740
   else
4700  
-      echo "CONFIG_FIREWIRE_LIBS=-lraw1394 -liec61883 -lavc1394 -lrom1394" >>  $MYTH_CONFIG_MAK
  4741
+      echo "CONFIG_FIREWIRE_LIBS=-lraw1394 -liec61883 -lavc1394 -lrom1394" >> $TMPMAK
4701 4742
   fi
4702 4743
 fi
4703 4744
 
@@ -4735,34 +4776,34 @@ if enabled x11; then
4735 4776
 fi
4736 4777
 
4737 4778
 if enabled directfb; then
4738  
-  echo "CONFIG_DIRECTFB_LIBS=$CONFIG_DIRECTFB_LIBS" >> $MYTH_CONFIG_MAK
4739  
-  echo "CONFIG_DIRECTFB_CXXFLAGS=$CONFIG_DIRECTFB_CXXFLAGS" >> $MYTH_CONFIG_MAK
  4779
+  echo "CONFIG_DIRECTFB_LIBS=$CONFIG_DIRECTFB_LIBS" >> $TMPMAK
  4780
+  echo "CONFIG_DIRECTFB_CXXFLAGS=$CONFIG_DIRECTFB_CXXFLAGS" >> $TMPMAK
4740 4781
 fi
4741 4782
 
4742 4783
 if ! enabled darwin && enabled opengl; then
4743  
-  echo "CONFIG_OPENGL_LIBS=$gl_lib $glu_lib" >> $MYTH_CONFIG_MAK
  4784
+  echo "CONFIG_OPENGL_LIBS=$gl_lib $glu_lib" >> $TMPMAK
4744 4785
 fi
4745 4786
 
4746 4787
 if test x"$PERL_CONFIG_OPTS" != x"" ; then
4747  
-  echo "PERL_CONFIG_OPTS=$PERL_CONFIG_OPTS" >> $MYTH_CONFIG_MAK
  4788
+  echo "PERL_CONFIG_OPTS=$PERL_CONFIG_OPTS" >> $TMPMAK
4748 4789
 fi
4749 4790
 
4750 4791
 if test x"$CCONFIG" != x"" ; then
4751  
-  echo "CCONFIG=$CCONFIG" >> $MYTH_CONFIG_MAK
  4792
+  echo "CCONFIG=$CCONFIG" >> $TMPMAK
4752 4793
   echo "#define MYTH_BUILD_CONFIG \"$CCONFIG\"" >>$TMPH
4753 4794
 fi
4754 4795
 
4755 4796
 if test x"$CONFIG_DEFINES" != x"" ; then
4756  
-  echo "CONFIG_DEFINES=$CONFIG_DEFINES" >> $MYTH_CONFIG_MAK
  4797
+  echo "CONFIG_DEFINES=$CONFIG_DEFINES" >> $TMPMAK
4757 4798
 fi
4758 4799
 
4759 4800
 if test x"$CONFIG_INCLUDEPATH" != x"" ; then
4760  
-  echo "CONFIG_INCLUDEPATH=$CONFIG_INCLUDEPATH" >> $MYTH_CONFIG_MAK
  4801
+  echo "CONFIG_INCLUDEPATH=$CONFIG_INCLUDEPATH" >> $TMPMAK
4761 4802
 fi
4762 4803
 
4763 4804
 echo "#endif /* MYTHTV_CONFIG_H */" >> $TMPH
4764 4805
 
4765  
-cat <<EOF >> $MYTH_CONFIG_MAK
  4806
+cat <<EOF >> $TMPMAK
4766 4807
 # HACK: If Qt 4 and MythTV's installed library dirs are the same, remove the
4767 4808
 #       -L from early in the link line, to ignore any old installed libmyth*
4768 4809
 # Note: Qt uses QMAKE_INCDIR_QT to build an absolute path for include
@@ -4772,7 +4813,7 @@ QMAKE_LIBDIR-=${sysroot}${libdir}
4772 4813
 LATE_LIBS+=-L${sysroot}${libdir}
4773 4814
 EOF
4774 4815
 
4775  
-#echo "endif # FFMPEG_CONFIG_MAK" >> config.mak
  4816
+#echo "endif # FFMPEG_CONFIG_MAK" >> $TMPMAK
4776 4817
 
4777 4818
 cp_if_changed $TMPH $MYTH_CONFIG_H
4778 4819
 
@@ -4784,8 +4825,16 @@ if [ ! -e config.h ] ; then
4784 4825
   ln -s $MYTH_CONFIG_H config.h
4785 4826
 fi
4786 4827
 
4787  
-rm -f config.mak
4788  
-ln -s $MYTH_CONFIG_MAK config.mak
  4828
+cp_if_changed $TMPMAK $MYTH_CONFIG_MAK
  4829
+
  4830
+if ! test -L config.mak ; then
  4831
+  ln -s $MYTH_CONFIG_MAK config.mak
  4832
+fi
  4833
+
  4834
+if [ ! -e config.mak ] ; then
  4835
+  ln -s $MYTH_CONFIG_MAK config.mak
  4836
+fi
  4837
+
4789 4838
 
4790 4839
 # create config.mak for external/FFmpeg
4791 4840
 cat >  external/FFmpeg/config.mak <<EOF
@@ -4799,7 +4848,7 @@ SLIB_INSTALL_EXTRA_CMD=${SLIB_INSTALL_EXTRA_CMD}
4799 4848
 SLIB_UNINSTALL_EXTRA_CMD=${SLIB_UNINSTALL_EXTRA_CMD}
4800 4849
 EOF
4801 4850
 # Strip out the old dirs that we are about to put back in.
4802  
-sed -e '/^S?H?LIBDIR=.*$/d' -e '/^INCDIR=.*$/d' -e '/^BINDIR=.*$/d' -e '/^DATADIR=.*$/d' -e '/^MANDIR=.*$/d' $MYTH_CONFIG_MAK >> external/FFmpeg/config.mak
  4851
+sed -e '/^S?H?LIBDIR=.*$/d' -e '/^INCDIR=.*$/d' -e '/^BINDIR=.*$/d' -e '/^DATADIR=.*$/d' -e '/^MANDIR=.*$/d' $TMPMAK >> external/FFmpeg/config.mak
4803 4852
 cat >> external/FFmpeg/config.mak <<EOF
4804 4853
 LIBDIR=\$(INSTALL_ROOT)$libdir
4805 4854
 SHLIBDIR=\$(INSTALL_ROOT)$shlibdir
@@ -4816,6 +4865,7 @@ rm -f external/FFmpeg/config.h
4816 4865
 (cd external/FFmpeg/ && ln -s ../../$MYTH_CONFIG_H config.h)
4817 4866
 touch external/FFmpeg/.config
4818 4867
 
  4868
+enabled yasm && cp_if_changed $TMPASM external/FFmpeg/config.asm
4819 4869
 
4820 4870
 # delete old myth config files in old location
4821 4871
 if [ -e libs/libmyth/mythconfig.mak ] ; then
@@ -4831,7 +4881,7 @@ cat > $TMPH <<EOF
4831 4881
 #ifndef AVUTIL_AVCONFIG_H
4832 4882
 #define AVUTIL_AVCONFIG_H
4833 4883
 EOF
4834  
-print_config AV_HAVE_ $TMPH /dev/null $HAVE_LIST_PUB
  4884
+print_config AV_HAVE_ $TMPH $HAVE_LIST_PUB
4835 4885
 
4836 4886
 echo "#endif /* AVUTIL_AVCONFIG_H */" >> $TMPH
4837 4887
 
45  mythtv/external/FFmpeg/.gitignore
... ...
@@ -0,0 +1,45 @@
  1
+.config
  2
+.version
  3
+*.o
  4
+*.d
  5
+*.exe
  6
+*.ho
  7
+*-example
  8
+*-test
  9
+*_g
  10
+config.*
  11
+doc/*.1
  12
+doc/*.html
  13
+doc/*.pod
  14
+doxy
  15
+ffmpeg
  16
+ffplay
  17
+ffprobe
  18
+ffserver
  19
+libavcodec/libavcodec*
  20
+libavcore/libavcore*
  21
+libavdevice/libavdevice*
  22
+libavfilter/libavfilter*
  23
+libavformat/libavformat*
  24
+libavutil/avconfig.h
  25
+libavutil/libavutil*
  26
+libpostproc/libpostproc*
  27
+libswscale/libswscale*
  28
+tests/audiogen
  29
+tests/base64
  30
+tests/data
  31
+tests/rotozoom
  32
+tests/seek_test
  33
+tests/tiny_psnr
  34
+tests/videogen
  35
+tests/vsynth1
  36
+tests/vsynth2
  37
+tools/cws2fws
  38
+tools/graph2dot
  39
+tools/lavfi-showfiltfmts
  40
+tools/pktdumper
  41
+tools/probetest
  42
+tools/qt-faststart
  43
+tools/trasher
  44
+tools/trasher*.d
  45
+version.h
6  mythtv/external/FFmpeg/CREDITS
... ...
@@ -1,5 +1,7 @@
1  
-This file contains the name of the people who have contributed to
2  
-FFmpeg. The names are sorted alphabetically by last name.
  1
+This file contains the names of some of the people who have contributed to
  2
+FFmpeg. The names are sorted alphabetically by last name.  As this file is
  3
+currently quite outdated and git serves as a much better tool for determining
  4
+authorship, it remains here for historical reasons only.
3 5
 
4 6
 Dénes Balatoni
5 7
 Michel Bardiaux
46  mythtv/external/FFmpeg/Changelog
@@ -31,6 +31,52 @@ version <next>:
31 31
 - RTP packetization and depacketization of VP8
32 32
 - hflip filter
33 33
 - Apple HTTP Live Streaming demuxer
  34
+- a64 codec
  35
+- MMS-HTTP support
  36
+- G.722 ADPCM audio encoder/decoder
  37
+- R10k video decoder
  38
+- ocv_smooth filter
  39
+- frei0r wrapper filter
  40
+- change crop filter syntax to width:height:x:y
  41
+- make the crop filter accept parametric expressions
  42
+- make ffprobe accept AVFormatContext options
  43
+- yadif filter
  44
+- blackframe filter
  45
+- Demuxer for Leitch/Harris' VR native stream format (LXF)
  46
+- RTP depacketization of the X-QT QuickTime format
  47
+- SAP (Session Announcement Protocol, RFC 2974) muxer and demuxer
  48
+- cropdetect filter
  49
+- ffmpeg -crop* options removed
  50
+- transpose filter added
  51
+- ffmpeg -force_key_frames option added
  52
+- demuxer for receiving raw rtp:// URLs without an SDP description
  53
+- single stream LATM/LOAS decoder
  54
+- setpts filter added
  55
+- Win64 support for optimized asm functions
  56
+- MJPEG/AVI1 to JPEG/JFIF bitstream filter
  57
+- ASS subtitle encoder and decoder
  58
+- IEC 61937 encapsulation for E-AC3, TrueHD, DTS-HD (for HDMI passthrough)
  59
+- overlay filter added
  60
+- rename aspect filter to setdar, and pixelaspect to setsar
  61
+- IEC 61937 demuxer
  62
+- Mobotix .mxg demuxer
  63
+- frei0r source added
  64
+- hqdn3d filter added
  65
+- RTP depacketization of QCELP
  66
+- FLAC parser added
  67
+- gradfun filter added
  68
+- AMR-WB decoder
  69
+- replace the ocv_smooth filter with a more generic ocv filter
  70
+- Windows Televison (WTV) demuxer
  71
+- FFmpeg metadata format muxer and demuxer
  72
+- SubRip (srt) subtitle decoder
  73
+- floating-point AC-3 encoder added
  74
+- Lagarith decoder
  75
+- ffmpeg -copytb option added
  76
+- IVF muxer added
  77
+- Wing Commander IV movies decoder added
  78
+- movie source added
  79
+- Bink version 'b' video decoder
34 80
 
35 81
 
36 82
 version 0.6:
2  mythtv/external/FFmpeg/LICENSE
@@ -15,8 +15,6 @@ Specifically, the GPL parts of FFmpeg are
15 15
 
16 16
 - libpostproc
17 17
 - optional x86 optimizations in the files
18  
-  libavcodec/x86/h264_deblock_sse2.asm
19  
-  libavcodec/x86/h264_idct_sse2.asm
20 18
   libavcodec/x86/idct_mmx.c
21 19
 - the X11 grabber in libavdevice/x11grab.c
22 20
 
30  mythtv/external/FFmpeg/MAINTAINERS
@@ -5,13 +5,6 @@ Below is a list of the people maintaining different parts of the
5 5
 FFmpeg code.
6 6
 
7 7
 
8  
-Project Leader
9  
-==============
10  
-
11  
-Michael Niedermayer
12  
-  final design decisions
13  
-
14  
-
15 8
 Applications
16 9
 ============
17 10
 
@@ -109,11 +102,11 @@ Codecs:
109 102
   8bps.c                                Roberto Togni
110 103
   8svx.c                                Jaikrishnan Menon
111 104
   aasc.c                                Kostya Shishkov
112  
-  aac*, sbr.h                           Alex Converse
113 105
   ac3*                                  Justin Ruggles
114 106
   alacenc.c                             Jaikrishnan Menon
115 107
   alsdec.c                              Thilo Borgmann
116 108
   apedec.c                              Kostya Shishkov
  109
+  ass*                                  Aurelien Jacobs
117 110
   asv*                                  Michael Niedermayer
118 111
   atrac3*                               Benjamin Larsson
119 112
   bgmc.c, bgmc.h                        Thilo Borgmann
@@ -136,6 +129,7 @@ Codecs:
136 129
   flac*                                 Justin Ruggles
137 130
   flashsv*                              Benjamin Larsson
138 131
   flicvideo.c                           Mike Melanson
  132
+  g722.c                                Martin Storsjo
139 133
   g726.c                                Roman Shaposhnik
140 134
   gifdec.c                              Baptiste Coudurier
141 135
   h264*                                 Loren Merritt, Michael Niedermayer
@@ -196,6 +190,7 @@ Codecs:
196 190
   smc.c                                 Mike Melanson
197 191
   snow.c                                Michael Niedermayer, Loren Merritt
198 192
   sonic.c                               Alex Beregszaszi
  193
+  srtdec.c                              Aurelien Jacobs
199 194
   sunrast.c                             Ivo van Poorten
200 195
   svq3.c                                Michael Niedermayer
201 196
   targa.c                               Kostya Shishkov
@@ -260,8 +255,10 @@ Muxers/Demuxers:
260 255
   adtsenc.c                             Robert Swain
261 256
   aiff.c                                Baptiste Coudurier
262 257
   ape.c                                 Kostya Shishkov
  258
+  ass*                                  Aurelien Jacobs
263 259
   avi*                                  Michael Niedermayer
264 260
   bink.c                                Peter Ross
  261
+  caf*                                  Peter Ross
265 262
   crc.c                                 Michael Niedermayer
266 263
   daud.c                                Reimar Doeffinger
267 264
   dv.c                                  Roman Shaposhnik
@@ -274,13 +271,14 @@ Muxers/Demuxers:
274 271
   gxf.c                                 Reimar Doeffinger
275 272
   gxfenc.c                              Baptiste Coudurier
276 273
   idcin.c                               Mike Melanson
277  
-  idroq.c                               Mike Melanson
  274
+  idroqdec.c                            Mike Melanson
278 275
   iff.c                                 Jaikrishnan Menon
279 276
   ipmovie.c                             Mike Melanson
280 277
   img2.c                                Michael Niedermayer
281 278
   iss.c                                 Stefan Gehrer
282 279
   libnut.c                              Oded Shimon
283 280
   lmlm4.c                               Ivo van Poorten
  281
+  lxfdec.c                              Tomas Härdin
284 282
   matroska.c                            Aurelien Jacobs
285 283
   matroskadec.c                         Aurelien Jacobs
286 284
   matroskaenc.c                         David Conrad
@@ -310,14 +308,15 @@ Muxers/Demuxers:
310 308
   rl2.c                                 Sascha Sommer
311 309
   rmdec.c, rmenc.c                      Ronald S. Bultje, Kostya Shishkov
312 310
   rtmp*                                 Kostya Shishkov
313  
-  rtp.c, rtpenc.c                       Luca Abeni
  311
+  rtp.c, rtpenc.c                       Martin Storsjo
314 312
   rtpdec_asf.*                          Ronald S. Bultje
315  
-  rtpenc_mpv.*, rtpenc_aac.*            Luca Abeni
  313
+  rtpenc_mpv.*, rtpenc_aac.*            Martin Storsjo
316 314
   rtsp.c                                Luca Barbato
317  
-  sdp.c                                 Luca Abeni
  315
+  sdp.c                                 Martin Storsjo
318 316
   segafilm.c                            Mike Melanson
319 317
   siff.c                                Kostya Shishkov
320 318
   smacker.c                             Kostya Shishkov
  319
+  srtdec.c                              Aurelien Jacobs
321 320
   swf.c                                 Baptiste Coudurier
322 321
   tta.c                                 Alex Beregszaszi
323 322
   txd.c                                 Ivo van Poorten
@@ -325,6 +324,7 @@ Muxers/Demuxers:
325 324
   wav.c                                 Michael Niedermayer
326 325
   wc3movie.c                            Mike Melanson
327 326
   westwood.c                            Mike Melanson
  327
+  wtv.c                                 Peter Ross
328 328
   wv.c                                  Kostya Shishkov
329 329
 
330 330
 Protocols:
@@ -353,12 +353,16 @@ x86                                     Michael Niedermayer
353 353
 GnuPG Fingerprints of maintainers and others who have svn write access
354 354
 ======================================================================
355 355
 
  356
+Anssi Hannula                 1A92 FF42 2DD9 8D2E 8AF7 65A9 4278 C520 513D F3CB
  357
+Anton Khirnov                 6D0C 6625 56F8 65D1 E5F5 814B B50A 1241 C067 07AB
356 358
 Attila Kinali                 11F0 F9A6 A1D2 11F6 C745 D10C 6520 BCDD F2DF E765
357 359
 Baptiste Coudurier            8D77 134D 20CC 9220 201F C5DB 0AC9 325C 5C1A BAAA
  360
+Ben Littler                   3EE3 3723 E560 3214 A8CD 4DEB 2CDB FCE7 768C 8D2C
358 361
 Benoit Fouet                  B22A 4F4F 43EF 636B BB66 FCDC 0023 AE1E 2985 49C8
359 362
 Daniel Verkamp                78A6 07ED 782C 653E C628 B8B9 F0EB 8DD8 2F0E 21C7
360 363
 Diego Biurrun                 8227 1E31 B6D9 4994 7427 E220 9CAE D6CC 4757 FCC5
361 364
 Jaikrishnan Menon             61A1 F09F 01C9 2D45 78E1 C862 25DC 8831 AF70 D368
  365
+Justin Ruggles                3136 ECC0 C10D 6C04 5F43 CA29 FCBE CD2A 3787 1EBF
362 366
 Loren Merritt                 ABD9 08F4 C920 3F65 D8BE 35D7 1540 DAA7 060F 56DE
363 367
 Luca Barbato                  6677 4209 213C 8843 5B67 29E7 E84C 78C2 84E9 0E34
364 368
 Michael Niedermayer           9FF2 128B 147E F673 0BAD F133 611E C787 040B 0FAB
@@ -367,5 +371,7 @@ Peter Ross                    A907 E02F A6E5 0CD2 34CD 20D2 6760 79C5 AC40 DD6B
367 371
 Reimar Döffinger              C61D 16E5 9E2C D10C 8958 38A4 0899 A2B9 06D4 D9C7
368 372
 Reinhard Tartler              9300 5DC2 7E87 6C37 ED7B CA9A 9808 3544 9453 48A4
369 373
 Reynaldo H. Verdejo Pinochet  6E27 CD34 170C C78E 4D4F 5F40 C18E 077F 3114 452A
  374
+Robert Swain                  EE7A 56EA 4A81 A7B5 2001 A521 67FA 362D A2FC 3E71
370 375
 Sascha Sommer                 38A0 F88B 868E 9D3A 97D4 D6A0 E823 706F 1E07 0D3C
371 376
 Stefano Sabatini              9A43 10F8 D32C D33C 48E7 C52C 5DF2 8E4D B2EE 066B
  377
+Tomas Härdin                  D133 29CA 4EEC 9DB4 7076 F697 B04B 7403 3313 41FD
53  mythtv/external/FFmpeg/Makefile
@@ -9,20 +9,21 @@ PROGS-$(CONFIG_FFPLAY)   += ffplay
9 9
 PROGS-$(CONFIG_FFPROBE)  += ffprobe
10 10
 PROGS-$(CONFIG_FFSERVER) += ffserver
11 11
 
12  
-PROGS      := $(addsuffix   $(EXESUF), $(PROGS-yes))
13  
-PROGS_G     = $(addsuffix _g$(EXESUF), $(PROGS-yes))
14  
-OBJS        = $(addsuffix .o,          $(PROGS-yes)) cmdutils.o
15  
-MANPAGES    = $(addprefix doc/, $(addsuffix .1, $(PROGS-yes)))
16  
-HTMLPAGES   = $(addprefix doc/, $(addsuffix -doc.html, $(PROGS-yes)))
17  
-TOOLS       = $(addprefix tools/, $(addsuffix $(EXESUF), cws2fws pktdumper probetest qt-faststart trasher))
18  
-HOSTPROGS   = $(addprefix tests/, audiogen videogen rotozoom tiny_psnr base64)
  12
+PROGS      := $(PROGS-yes:%=%$(EXESUF))
  13
+PROGS_G     = $(PROGS-yes:%=%_g$(EXESUF))
  14
+OBJS        = $(PROGS-yes:%=%.o) cmdutils.o
  15
+MANPAGES    = $(PROGS-yes:%=doc/%.1)
  16
+PODPAGES    = $(PROGS-yes:%=doc/%.pod)
  17
+HTMLPAGES   = $(PROGS-yes:%=doc/%.html)
  18
+TOOLS       = $(addprefix tools/, $(addsuffix $(EXESUF), cws2fws graph2dot lavfi-showfiltfmts pktdumper probetest qt-faststart trasher))
  19
+TESTTOOLS   = audiogen videogen rotozoom tiny_psnr base64
  20
+HOSTPROGS  := $(TESTTOOLS:%=tests/%)
19 21
 MYTHPROGS   = $(addprefix myth, ${PROGS})
20 22
 
21 23
 BASENAMES   = ffmpeg ffplay ffprobe ffserver
22  
-ALLPROGS    = $(addsuffix   $(EXESUF), $(BASENAMES))
23  
-ALLPROGS_G  = $(addsuffix _g$(EXESUF), $(BASENAMES))
24  
-ALLMANPAGES = $(addsuffix .1, $(BASENAMES))
25  
-ALLHTMLPAGES= $(addsuffix -doc.html, $(BASENAMES))
  24
+ALLPROGS    = $(BASENAMES:%=%$(EXESUF))
  25
+ALLPROGS_G  = $(BASENAMES:%=%_g$(EXESUF))
  26
+ALLMANPAGES = $(BASENAMES:%=%.1)
26 27
 
27 28
 FFLIBS-$(CONFIG_AVDEVICE) += avdevice
28 29
 FFLIBS-$(CONFIG_AVFILTER) += avfilter
@@ -30,7 +31,6 @@ FFLIBS-$(CONFIG_AVFORMAT) += avformat
30 31
 FFLIBS-$(CONFIG_AVCODEC)  += avcodec
31 32
 FFLIBS-$(CONFIG_POSTPROC) += postproc
32 33
 FFLIBS-$(CONFIG_SWSCALE)  += swscale
33  
-FFLIBS-$(CONFIG_AVCORE)   += avcore
34 34
 
35 35
 FFLIBS := avutil
36 36
 
@@ -70,7 +70,7 @@ config.h: .config
70 70
 
71 71
 SUBDIR_VARS := OBJS FFLIBS CLEANFILES DIRS TESTPROGS EXAMPLES SKIPHEADERS \
72 72
                ALTIVEC-OBJS MMX-OBJS NEON-OBJS X86-OBJS YASM-OBJS-FFT YASM-OBJS \
73  
-               HOSTPROGS BUILT_HEADERS TESTOBJS ARCH_HEADERS
  73
+               HOSTPROGS BUILT_HEADERS TESTOBJS ARCH_HEADERS ARMV6-OBJS
74 74
 
75 75
 define RESET
76 76
 $(1) :=
@@ -95,7 +95,7 @@ tools/%$(EXESUF): tools/%.o
95 95
 	$(LD) $(FF_LDFLAGS) -o $@ $< $(FF_EXTRALIBS)
96 96
 
97 97
 tools/%.o: tools/%.c
98  
-	$(CC) $(CPPFLAGS) $(CFLAGS) $(CC_O) $<
  98
+	$(CC) $(CPPFLAGS) $(CFLAGS) -c $(CC_O) $<
99 99
 
100 100
 ffplay.o: CFLAGS += $(SDL_CFLAGS)
101 101
 
@@ -115,21 +115,22 @@ version.h .version:
115 115
 
116 116
 alltools: $(TOOLS)
117 117
 
118  
-documentation: $(addprefix doc/, developer.html faq.html general.html libavfilter.html \
119  
-                                 $(ALLHTMLPAGES) $(ALLMANPAGES))
  118
+DOCS = $(addprefix doc/, developer.html faq.html general.html libavfilter.html) $(HTMLPAGES) $(MANPAGES) $(PODPAGES)
120 119
 
121  
-$(HTMLPAGES) $(MANPAGES): doc/fftools-common-opts.texi
  120
+documentation: $(DOCS)
122 121
 
123  
-doc/ffmpeg.pod doc/ffmpeg-doc.html: doc/indevs.texi doc/filters.texi doc/outdevs.texi doc/protocols.texi
124  
-doc/ffplay.pod doc/ffplay-doc.html: doc/indevs.texi doc/filters.texi doc/outdevs.texi doc/protocols.texi
125  
-doc/ffprobe.pod doc/ffprobe-doc.html: doc/indevs.texi doc/protocols.texi
  122
+-include $(wildcard $(DOCS:%=%.d))
  123
+
  124
+TEXIDEP = awk '/^@include/ { printf "$@: $(@D)/%s\n", $$2 }' <$< >$(@:%=%.d)
126 125
 
127 126
 doc/%.html: TAG = HTML
128  
-doc/%.html: doc/%.texi
129  
-	$(M)cd doc && texi2html -monolithic -number $(<:doc/%=%)
  127
+doc/%.html: doc/%.texi $(SRC_PATH_BARE)/doc/t2h.init
  128
+	$(Q)$(TEXIDEP)
  129
+	$(M)cd doc && texi2html -monolithic --init-file $(SRC_PATH_BARE)/doc/t2h.init $(<:doc/%=%)
130 130
 
131 131
 doc/%.pod: TAG = POD
132  
-doc/%.pod: doc/%-doc.texi
  132
+doc/%.pod: doc/%.texi
  133
+	$(Q)$(TEXIDEP)
133 134
 	$(M)doc/texi2pod.pl $< $@
134 135
 
135 136
 doc/%.1: TAG = MAN
@@ -169,13 +170,14 @@ testclean:
169 170
 	$(RM) -r tests/vsynth1 tests/vsynth2 tests/data
170 171
 	$(RM) $(addprefix tests/,$(CLEANSUFFIXES))
171 172
 	$(RM) tests/seek_test$(EXESUF) tests/seek_test.o
172  
-	$(RM) $(addprefix tests/,$(addsuffix $(HOSTEXESUF),audiogen videogen rotozoom tiny_psnr base64))
  173
+	$(RM) $(TESTTOOLS:%=tests/%$(HOSTEXESUF))
173 174
 
174 175
 clean:: testclean
175 176
 	$(RM) $(ALLPROGS) $(ALLPROGS_G)
176 177
 	$(RM) $(CLEANSUFFIXES)
177 178
 	$(RM) doc/*.html doc/*.pod doc/*.1
178 179
 	$(RM) $(TOOLS)
  180
+	$(RM) $(CLEANSUFFIXES:%=tools/%)
179 181
 
180 182
 distclean::
181 183
 	$(RM) $(DISTCLEANSUFFIXES)
@@ -299,4 +301,7 @@ $(FATE): ffmpeg$(EXESUF) $(FATE_UTILS:%=tests/%$(HOSTEXESUF))
299 301
 	@echo "TEST    $(@:fate-%=%)"
300 302
 	$(Q)$(SRC_PATH)/tests/fate-run.sh $@ "$(SAMPLES)" "$(TARGET_EXEC)" "$(TARGET_PATH)" '$(CMD)' '$(CMP)' '$(REF)' '$(FUZZ)'
301 303
 
  304
+fate-list:
  305
+	@printf '%s\n' $(sort $(FATE))
  306
+
302 307
 .PHONY: documentation *test regtest-* alltools check config
229  mythtv/external/FFmpeg/cmdutils.c
@@ -35,10 +35,10 @@
35 35
 #include "libswscale/swscale.h"
36 36
 #include "libpostproc/postprocess.h"
37 37
 #include "libavutil/avstring.h"
  38
+#include "libavutil/parseutils.h"
38 39
 #include "libavutil/pixdesc.h"
39 40
 #include "libavutil/eval.h"
40 41
 #include "libavcodec/opt.h"
41  
-#include "libavcore/avcore.h"
42 42
 #include "cmdutils.h"
43 43
 #include "version.h"
44 44
 #if CONFIG_NETWORK
@@ -49,12 +49,51 @@
49 49
 #endif
50 50
 
51 51
 const char **opt_names;
  52
+const char **opt_values;
52 53
 static int opt_name_count;
53 54
 AVCodecContext *avcodec_opts[AVMEDIA_TYPE_NB];
54 55
 AVFormatContext *avformat_opts;
55 56
 struct SwsContext *sws_opts;
56 57
 
57  
-const int this_year = 2010;
  58
+static const int this_year = 2011;
  59
+
  60
+void init_opts(void)
  61
+{
  62
+    int i;
  63
+    for (i = 0; i < AVMEDIA_TYPE_NB; i++)
  64
+        avcodec_opts[i] = avcodec_alloc_context2(i);
  65
+    avformat_opts = avformat_alloc_context();
  66
+#if CONFIG_SWSCALE
  67
+    sws_opts = sws_getContext(16, 16, 0, 16, 16, 0, SWS_BICUBIC, NULL, NULL, NULL);
  68
+#endif
  69
+}
  70
+
  71
+void uninit_opts(void)
  72
+{
  73
+    int i;
  74
+    for (i = 0; i < AVMEDIA_TYPE_NB; i++)
  75
+        av_freep(&avcodec_opts[i]);
  76
+    av_freep(&avformat_opts->key);
  77
+    av_freep(&avformat_opts);
  78
+#if CONFIG_SWSCALE
  79
+    av_freep(&sws_opts);
  80
+#endif
  81
+    for (i = 0; i < opt_name_count; i++) {
  82
+        //opt_values are only stored for codec-specific options in which case
  83
+        //both the name and value are dup'd
  84
+        if (opt_values[i]) {
  85
+            av_freep(&opt_names[i]);
  86
+            av_freep(&opt_values[i]);
  87
+        }
  88
+    }
  89
+    av_freep(&opt_names);
  90
+    av_freep(&opt_values);
  91
+}
  92
+
  93
+void log_callback_help(void* ptr, int level, const char* fmt, va_list vl)
  94
+{
  95
+    vfprintf(stdout, fmt, vl);
  96
+}
58 97
 
59 98
 double parse_number_or_die(const char *context, const char *numstr, int type, double min, double max)
60 99
 {
@@ -75,8 +114,8 @@ double parse_number_or_die(const char *context, const char *numstr, int type, do
75 114
 
76 115
 int64_t parse_time_or_die(const char *context, const char *timestr, int is_duration)
77 116
 {
78  
-    int64_t us = parse_date(timestr, is_duration);
79  
-    if (us == INT64_MIN) {
  117
+    int64_t us;
  118
+    if (av_parse_time(&us, timestr, is_duration) < 0) {
80 119
         fprintf(stderr, "Invalid %s specification for %s: %s\n",