Merge commit '6516632967da5e6bd7d6136e8678f826669ed26e'
authorMichael Niedermayer <michaelni@gmx.at>
Sun, 7 Jul 2013 09:26:28 +0000 (11:26 +0200)
committerMichael Niedermayer <michaelni@gmx.at>
Sun, 7 Jul 2013 09:26:28 +0000 (11:26 +0200)
* commit '6516632967da5e6bd7d6136e8678f826669ed26e':
  tests: Only run noproxy test if networking is enabled
  fifo: K&R formatting cosmetics

Conflicts:
libavformat/Makefile
libavutil/fifo.c

Merged-by: Michael Niedermayer <michaelni@gmx.at>
1  2 
libavformat/Makefile
libavutil/fifo.c

diff --combined libavformat/Makefile
@@@ -1,5 -1,3 +1,5 @@@
 +include $(SUBDIR)../config.mak
 +
  NAME = avformat
  FFLIBS = avcodec avutil
  
@@@ -14,6 -12,7 +14,6 @@@ OBJS = allformats.o         
         format.o                   \
         id3v1.o              \
         id3v2.o              \
 -       log2_tab.o           \
         metadata.o           \
         mux.o                \
         options.o            \
@@@ -48,66 -47,47 +48,66 @@@ OBJS-$(CONFIG_RTPDEC
                                              rtpdec_xiph.o               \
                                              srtp.o
  OBJS-$(CONFIG_RTPENC_CHAIN)              += rtpenc_chain.o rtp.o
 +OBJS-$(CONFIG_SHARED)                    += log2_tab.o
  
  # muxers/demuxers
  OBJS-$(CONFIG_A64_MUXER)                 += a64.o rawenc.o
 -OBJS-$(CONFIG_AAC_DEMUXER)               += aacdec.o rawdec.o
 +OBJS-$(CONFIG_AAC_DEMUXER)               += aacdec.o apetag.o rawdec.o
  OBJS-$(CONFIG_AC3_DEMUXER)               += ac3dec.o rawdec.o
  OBJS-$(CONFIG_AC3_MUXER)                 += rawenc.o
 +OBJS-$(CONFIG_ACT_DEMUXER)               += act.o
 +OBJS-$(CONFIG_ADF_DEMUXER)               += bintext.o sauce.o
 +OBJS-$(CONFIG_ADP_DEMUXER)               += adp.o
  OBJS-$(CONFIG_ADX_DEMUXER)               += adxdec.o
  OBJS-$(CONFIG_ADX_MUXER)                 += rawenc.o
  OBJS-$(CONFIG_ADTS_MUXER)                += adtsenc.o
  OBJS-$(CONFIG_AEA_DEMUXER)               += aea.o pcm.o
 -OBJS-$(CONFIG_AIFF_DEMUXER)              += aiffdec.o pcm.o
 -OBJS-$(CONFIG_AIFF_MUXER)                += aiffenc.o
 +OBJS-$(CONFIG_AFC_DEMUXER)               += afc.o
 +OBJS-$(CONFIG_AIFF_DEMUXER)              += aiffdec.o pcm.o isom.o \
 +                                            mov_chan.o
 +OBJS-$(CONFIG_AIFF_MUXER)                += aiffenc.o isom.o id3v2enc.o
  OBJS-$(CONFIG_AMR_DEMUXER)               += amr.o
  OBJS-$(CONFIG_AMR_MUXER)                 += amr.o
  OBJS-$(CONFIG_ANM_DEMUXER)               += anm.o
  OBJS-$(CONFIG_APC_DEMUXER)               += apc.o
  OBJS-$(CONFIG_APE_DEMUXER)               += ape.o apetag.o img2.o
 +OBJS-$(CONFIG_AQTITLE_DEMUXER)           += aqtitledec.o subtitles.o
  OBJS-$(CONFIG_ASF_DEMUXER)               += asfdec.o asf.o asfcrypt.o \
                                              avlanguage.o
  OBJS-$(CONFIG_ASF_MUXER)                 += asfenc.o asf.o
 -OBJS-$(CONFIG_ASS_DEMUXER)               += assdec.o
 +OBJS-$(CONFIG_ASS_DEMUXER)               += assdec.o subtitles.o
  OBJS-$(CONFIG_ASS_MUXER)                 += assenc.o
 +OBJS-$(CONFIG_AST_DEMUXER)               += ast.o astdec.o
 +OBJS-$(CONFIG_AST_MUXER)                 += ast.o astenc.o
  OBJS-$(CONFIG_AU_DEMUXER)                += au.o pcm.o
  OBJS-$(CONFIG_AU_MUXER)                  += au.o rawenc.o
  OBJS-$(CONFIG_AVI_DEMUXER)               += avidec.o
  OBJS-$(CONFIG_AVI_MUXER)                 += avienc.o
  OBJS-$(CONFIG_AVISYNTH)                  += avisynth.o
  OBJS-$(CONFIG_AVM2_MUXER)                += swfenc.o swf.o
 +OBJS-$(CONFIG_AVR_DEMUXER)               += avr.o pcm.o
  OBJS-$(CONFIG_AVS_DEMUXER)               += avs.o vocdec.o voc.o
  OBJS-$(CONFIG_BETHSOFTVID_DEMUXER)       += bethsoftvid.o
  OBJS-$(CONFIG_BFI_DEMUXER)               += bfi.o
  OBJS-$(CONFIG_BINK_DEMUXER)              += bink.o
 +OBJS-$(CONFIG_BINTEXT_DEMUXER)           += bintext.o sauce.o
 +OBJS-$(CONFIG_BIT_DEMUXER)               += bit.o
 +OBJS-$(CONFIG_BIT_MUXER)                 += bit.o
  OBJS-$(CONFIG_BMV_DEMUXER)               += bmv.o
 +OBJS-$(CONFIG_BOA_DEMUXER)               += boadec.o
 +OBJS-$(CONFIG_BRSTM_DEMUXER)             += brstm.o
  OBJS-$(CONFIG_C93_DEMUXER)               += c93.o vocdec.o voc.o
  OBJS-$(CONFIG_CAF_DEMUXER)               += cafdec.o caf.o mov.o mov_chan.o \
                                              isom.o
 +OBJS-$(CONFIG_CAF_MUXER)                 += cafenc.o caf.o riff.o isom.o
  OBJS-$(CONFIG_CAVSVIDEO_DEMUXER)         += cavsvideodec.o rawdec.o
  OBJS-$(CONFIG_CAVSVIDEO_MUXER)           += rawenc.o
  OBJS-$(CONFIG_CDG_DEMUXER)               += cdg.o
  OBJS-$(CONFIG_CDXL_DEMUXER)              += cdxl.o
 +OBJS-$(CONFIG_CONCAT_DEMUXER)            += concatdec.o
  OBJS-$(CONFIG_CRC_MUXER)                 += crcenc.o
 +OBJS-$(CONFIG_DATA_DEMUXER)              += rawdec.o
 +OBJS-$(CONFIG_DATA_MUXER)                += rawdec.o
  OBJS-$(CONFIG_DAUD_DEMUXER)              += daud.o
  OBJS-$(CONFIG_DAUD_MUXER)                += daud.o
  OBJS-$(CONFIG_DFA_DEMUXER)               += dfa.o
@@@ -116,7 -96,6 +116,7 @@@ OBJS-$(CONFIG_DIRAC_MUXER
  OBJS-$(CONFIG_DNXHD_DEMUXER)             += dnxhddec.o rawdec.o
  OBJS-$(CONFIG_DNXHD_MUXER)               += rawenc.o
  OBJS-$(CONFIG_DSICIN_DEMUXER)            += dsicin.o
 +OBJS-$(CONFIG_DTSHD_DEMUXER)             += dtshddec.o
  OBJS-$(CONFIG_DTS_DEMUXER)               += dtsdec.o rawdec.o
  OBJS-$(CONFIG_DTS_MUXER)                 += rawenc.o
  OBJS-$(CONFIG_DV_DEMUXER)                += dv.o
@@@ -126,7 -105,6 +126,7 @@@ OBJS-$(CONFIG_EA_CDATA_DEMUXER
  OBJS-$(CONFIG_EA_DEMUXER)                += electronicarts.o
  OBJS-$(CONFIG_EAC3_DEMUXER)              += ac3dec.o rawdec.o
  OBJS-$(CONFIG_EAC3_MUXER)                += rawenc.o
 +OBJS-$(CONFIG_EPAF_DEMUXER)              += epafdec.o pcm.o
  OBJS-$(CONFIG_FFM_DEMUXER)               += ffmdec.o
  OBJS-$(CONFIG_FFM_MUXER)                 += ffmenc.o
  OBJS-$(CONFIG_FFMETADATA_DEMUXER)        += ffmetadec.o
@@@ -144,17 -122,13 +144,17 @@@ OBJS-$(CONFIG_FLV_MUXER
  OBJS-$(CONFIG_FOURXM_DEMUXER)            += 4xm.o
  OBJS-$(CONFIG_FRAMECRC_MUXER)            += framecrcenc.o framehash.o
  OBJS-$(CONFIG_FRAMEMD5_MUXER)            += md5enc.o framehash.o
 +OBJS-$(CONFIG_FRM_DEMUXER)               += frmdec.o
  OBJS-$(CONFIG_GIF_MUXER)                 += gif.o
 +OBJS-$(CONFIG_GIF_DEMUXER)               += gifdec.o
  OBJS-$(CONFIG_GSM_DEMUXER)               += gsmdec.o
  OBJS-$(CONFIG_GXF_DEMUXER)               += gxf.o
  OBJS-$(CONFIG_GXF_MUXER)                 += gxfenc.o audiointerleave.o
  OBJS-$(CONFIG_G722_DEMUXER)              += g722.o rawdec.o
  OBJS-$(CONFIG_G722_MUXER)                += rawenc.o
  OBJS-$(CONFIG_G723_1_DEMUXER)            += g723_1.o
 +OBJS-$(CONFIG_G723_1_MUXER)              += rawenc.o
 +OBJS-$(CONFIG_G729_DEMUXER)              += g729dec.o
  OBJS-$(CONFIG_H261_DEMUXER)              += h261dec.o rawdec.o
  OBJS-$(CONFIG_H261_MUXER)                += rawenc.o
  OBJS-$(CONFIG_H263_DEMUXER)              += h263dec.o rawdec.o
@@@ -163,10 -137,7 +163,10 @@@ OBJS-$(CONFIG_H264_DEMUXER
  OBJS-$(CONFIG_H264_MUXER)                += rawenc.o
  OBJS-$(CONFIG_HLS_DEMUXER)               += hls.o
  OBJS-$(CONFIG_HLS_MUXER)                 += hlsenc.o mpegtsenc.o
 +OBJS-$(CONFIG_ICO_DEMUXER)               += icodec.o
 +OBJS-$(CONFIG_ICO_MUXER)                 += icoenc.o
  OBJS-$(CONFIG_IDCIN_DEMUXER)             += idcin.o
 +OBJS-$(CONFIG_IDF_DEMUXER)               += bintext.o sauce.o
  OBJS-$(CONFIG_IFF_DEMUXER)               += iff.o
  OBJS-$(CONFIG_ILBC_DEMUXER)              += ilbc.o
  OBJS-$(CONFIG_ILBC_MUXER)                += ilbc.o
@@@ -176,20 -147,14 +176,20 @@@ OBJS-$(CONFIG_IMAGE2PIPE_DEMUXER
  OBJS-$(CONFIG_IMAGE2PIPE_MUXER)          += img2enc.o img2.o
  OBJS-$(CONFIG_INGENIENT_DEMUXER)         += ingenientdec.o rawdec.o
  OBJS-$(CONFIG_IPMOVIE_DEMUXER)           += ipmovie.o
 +OBJS-$(CONFIG_IRCAM_DEMUXER)             += ircamdec.o ircam.o pcm.o
 +OBJS-$(CONFIG_IRCAM_MUXER)               += ircamenc.o ircam.o rawenc.o
  OBJS-$(CONFIG_ISS_DEMUXER)               += iss.o
  OBJS-$(CONFIG_IV8_DEMUXER)               += iv8.o
  OBJS-$(CONFIG_IVF_DEMUXER)               += ivfdec.o
  OBJS-$(CONFIG_IVF_MUXER)                 += ivfenc.o
 +OBJS-$(CONFIG_JACOSUB_DEMUXER)           += jacosubdec.o subtitles.o
 +OBJS-$(CONFIG_JACOSUB_MUXER)             += jacosubenc.o rawenc.o
  OBJS-$(CONFIG_JV_DEMUXER)                += jvdec.o
  OBJS-$(CONFIG_LATM_DEMUXER)              += rawdec.o
 -OBJS-$(CONFIG_LATM_MUXER)                += latmenc.o
 +OBJS-$(CONFIG_LATM_MUXER)                += latmenc.o rawenc.o
  OBJS-$(CONFIG_LMLM4_DEMUXER)             += lmlm4.o
 +OBJS-$(CONFIG_LOAS_DEMUXER)              += loasdec.o rawdec.o
 +OBJS-$(CONFIG_LVF_DEMUXER)               += lvfdec.o
  OBJS-$(CONFIG_LXF_DEMUXER)               += lxfdec.o
  OBJS-$(CONFIG_M4V_DEMUXER)               += m4vdec.o rawdec.o
  OBJS-$(CONFIG_M4V_MUXER)                 += rawenc.o
@@@ -199,19 -164,16 +199,19 @@@ OBJS-$(CONFIG_MATROSKA_MUXER
                                              isom.o avc.o \
                                              flacenc_header.o avlanguage.o wv.o
  OBJS-$(CONFIG_MD5_MUXER)                 += md5enc.o
 +OBJS-$(CONFIG_MGSTS_DEMUXER)             += mgsts.o
 +OBJS-$(CONFIG_MICRODVD_DEMUXER)          += microdvddec.o subtitles.o
 +OBJS-$(CONFIG_MICRODVD_MUXER)            += microdvdenc.o
  OBJS-$(CONFIG_MJPEG_DEMUXER)             += rawdec.o
  OBJS-$(CONFIG_MJPEG_MUXER)               += rawenc.o
  OBJS-$(CONFIG_MLP_DEMUXER)               += rawdec.o
  OBJS-$(CONFIG_MLP_MUXER)                 += rawenc.o
  OBJS-$(CONFIG_MM_DEMUXER)                += mm.o
 -OBJS-$(CONFIG_MMF_DEMUXER)               += mmf.o pcm.o
 -OBJS-$(CONFIG_MMF_MUXER)                 += mmf.o
 +OBJS-$(CONFIG_MMF_DEMUXER)               += mmf.o
 +OBJS-$(CONFIG_MMF_MUXER)                 += mmf.o rawenc.o
  OBJS-$(CONFIG_MOV_DEMUXER)               += mov.o isom.o mov_chan.o
  OBJS-$(CONFIG_MOV_MUXER)                 += movenc.o isom.o avc.o \
 -                                            movenchint.o mov_chan.o
 +                                            movenchint.o mov_chan.o rtp.o
  OBJS-$(CONFIG_MP2_MUXER)                 += mp3enc.o rawenc.o id3v2enc.o
  OBJS-$(CONFIG_MP3_DEMUXER)               += mp3dec.o
  OBJS-$(CONFIG_MP3_MUXER)                 += mp3enc.o rawenc.o id3v2enc.o
@@@ -229,17 -191,13 +229,17 @@@ OBJS-$(CONFIG_MPEGTS_DEMUXER
  OBJS-$(CONFIG_MPEGTS_MUXER)              += mpegtsenc.o
  OBJS-$(CONFIG_MPEGVIDEO_DEMUXER)         += mpegvideodec.o rawdec.o
  OBJS-$(CONFIG_MPJPEG_MUXER)              += mpjpeg.o
 +OBJS-$(CONFIG_MPL2_DEMUXER)              += mpl2dec.o subtitles.o
 +OBJS-$(CONFIG_MPSUB_DEMUXER)             += mpsubdec.o subtitles.o
  OBJS-$(CONFIG_MSNWC_TCP_DEMUXER)         += msnwc_tcp.o
  OBJS-$(CONFIG_MTV_DEMUXER)               += mtv.o
  OBJS-$(CONFIG_MVI_DEMUXER)               += mvi.o
 +OBJS-$(CONFIG_MV_DEMUXER)                += mvdec.o
  OBJS-$(CONFIG_MXF_DEMUXER)               += mxfdec.o mxf.o
  OBJS-$(CONFIG_MXF_MUXER)                 += mxfenc.o mxf.o audiointerleave.o
  OBJS-$(CONFIG_MXG_DEMUXER)               += mxg.o
  OBJS-$(CONFIG_NC_DEMUXER)                += ncdec.o
 +OBJS-$(CONFIG_NISTSPHERE_DEMUXER)        += nistspheredec.o pcm.o
  OBJS-$(CONFIG_NSV_DEMUXER)               += nsvdec.o
  OBJS-$(CONFIG_NULL_MUXER)                += nullenc.o
  OBJS-$(CONFIG_NUT_DEMUXER)               += nutdec.o nut.o
@@@ -250,7 -208,6 +250,7 @@@ OBJS-$(CONFIG_OGG_DEMUXER
                                              oggparsedirac.o  \
                                              oggparseflac.o   \
                                              oggparseogm.o    \
 +                                            oggparseopus.o   \
                                              oggparseskeleton.o \
                                              oggparsespeex.o  \
                                              oggparsetheora.o \
@@@ -260,7 -217,6 +260,7 @@@ OBJS-$(CONFIG_OGG_MUXER
                                              vorbiscomment.o
  OBJS-$(CONFIG_OMA_DEMUXER)               += omadec.o pcm.o oma.o
  OBJS-$(CONFIG_OMA_MUXER)                 += omaenc.o rawenc.o oma.o id3v2enc.o
 +OBJS-$(CONFIG_PAF_DEMUXER)               += paf.o
  OBJS-$(CONFIG_PCM_ALAW_DEMUXER)          += pcmdec.o pcm.o
  OBJS-$(CONFIG_PCM_ALAW_MUXER)            += pcmenc.o rawenc.o
  OBJS-$(CONFIG_PCM_F32BE_DEMUXER)         += pcmdec.o pcm.o
@@@ -301,22 -257,17 +301,22 @@@ OBJS-$(CONFIG_PCM_U32LE_DEMUXER
  OBJS-$(CONFIG_PCM_U32LE_MUXER)           += pcmenc.o rawenc.o
  OBJS-$(CONFIG_PCM_U8_DEMUXER)            += pcmdec.o pcm.o
  OBJS-$(CONFIG_PCM_U8_MUXER)              += pcmenc.o rawenc.o
 +OBJS-$(CONFIG_PJS_DEMUXER)               += pjsdec.o subtitles.o
  OBJS-$(CONFIG_PMP_DEMUXER)               += pmpdec.o
  OBJS-$(CONFIG_PVA_DEMUXER)               += pva.o
 +OBJS-$(CONFIG_PVF_DEMUXER)               += pvfdec.o pcm.o
  OBJS-$(CONFIG_QCP_DEMUXER)               += qcp.o
  OBJS-$(CONFIG_R3D_DEMUXER)               += r3d.o
  OBJS-$(CONFIG_RAWVIDEO_DEMUXER)          += rawvideodec.o
  OBJS-$(CONFIG_RAWVIDEO_MUXER)            += rawenc.o
 +OBJS-$(CONFIG_REALTEXT_DEMUXER)          += realtextdec.o subtitles.o
 +OBJS-$(CONFIG_REDSPARK_DEMUXER)          += redspark.o
  OBJS-$(CONFIG_RL2_DEMUXER)               += rl2.o
  OBJS-$(CONFIG_RM_DEMUXER)                += rmdec.o rm.o rmsipr.o
  OBJS-$(CONFIG_RM_MUXER)                  += rmenc.o rm.o
  OBJS-$(CONFIG_ROQ_DEMUXER)               += idroqdec.o
  OBJS-$(CONFIG_ROQ_MUXER)                 += idroqenc.o rawenc.o
 +OBJS-$(CONFIG_RSD_DEMUXER)               += rsd.o
  OBJS-$(CONFIG_RSO_DEMUXER)               += rsodec.o rso.o pcm.o
  OBJS-$(CONFIG_RSO_MUXER)                 += rsoenc.o rso.o
  OBJS-$(CONFIG_RPL_DEMUXER)               += rpl.o
@@@ -337,10 -288,8 +337,10 @@@ OBJS-$(CONFIG_RTSP_DEMUXER
                                              urldecode.o
  OBJS-$(CONFIG_RTSP_MUXER)                += rtsp.o rtspenc.o httpauth.o \
                                              urldecode.o
 +OBJS-$(CONFIG_SAMI_DEMUXER)              += samidec.o subtitles.o
  OBJS-$(CONFIG_SAP_DEMUXER)               += sapdec.o
  OBJS-$(CONFIG_SAP_MUXER)                 += sapenc.o
 +OBJS-$(CONFIG_SBG_DEMUXER)               += sbgdec.o
  OBJS-$(CONFIG_SDP_DEMUXER)               += rtsp.o
  OBJS-$(CONFIG_SEGAFILM_DEMUXER)          += segafilm.o
  OBJS-$(CONFIG_SEGMENT_MUXER)             += segment.o
@@@ -350,61 -299,46 +350,61 @@@ OBJS-$(CONFIG_SMACKER_DEMUXER
  OBJS-$(CONFIG_SMJPEG_DEMUXER)            += smjpegdec.o smjpeg.o
  OBJS-$(CONFIG_SMJPEG_MUXER)              += smjpegenc.o smjpeg.o
  OBJS-$(CONFIG_SMOOTHSTREAMING_MUXER)     += smoothstreamingenc.o isom.o
 +OBJS-$(CONFIG_SMUSH_DEMUXER)             += smush.o
  OBJS-$(CONFIG_SOL_DEMUXER)               += sol.o pcm.o
  OBJS-$(CONFIG_SOX_DEMUXER)               += soxdec.o pcm.o
 -OBJS-$(CONFIG_SOX_MUXER)                 += soxenc.o
 +OBJS-$(CONFIG_SOX_MUXER)                 += soxenc.o rawenc.o
  OBJS-$(CONFIG_SPDIF_DEMUXER)             += spdif.o spdifdec.o
  OBJS-$(CONFIG_SPDIF_MUXER)               += spdif.o spdifenc.o
 -OBJS-$(CONFIG_SRT_DEMUXER)               += srtdec.o
 -OBJS-$(CONFIG_SRT_MUXER)                 += rawenc.o
 +OBJS-$(CONFIG_SRT_DEMUXER)               += srtdec.o subtitles.o
 +OBJS-$(CONFIG_SRT_MUXER)                 += srtenc.o
  OBJS-$(CONFIG_STR_DEMUXER)               += psxstr.o
 +OBJS-$(CONFIG_SUBVIEWER1_DEMUXER)        += subviewer1dec.o subtitles.o
 +OBJS-$(CONFIG_SUBVIEWER_DEMUXER)         += subviewerdec.o subtitles.o
  OBJS-$(CONFIG_SWF_DEMUXER)               += swfdec.o swf.o
  OBJS-$(CONFIG_SWF_MUXER)                 += swfenc.o swf.o
  OBJS-$(CONFIG_TAK_DEMUXER)               += takdec.o apetag.o img2.o rawdec.o
 +OBJS-$(CONFIG_TEDCAPTIONS_DEMUXER)       += tedcaptionsdec.o subtitles.o
 +OBJS-$(CONFIG_TEE_MUXER)                 += tee.o
  OBJS-$(CONFIG_THP_DEMUXER)               += thp.o
  OBJS-$(CONFIG_TIERTEXSEQ_DEMUXER)        += tiertexseq.o
 +OBJS-$(CONFIG_MKVTIMESTAMP_V2_MUXER)     += mkvtimestamp_v2.o
  OBJS-$(CONFIG_TMV_DEMUXER)               += tmv.o
  OBJS-$(CONFIG_TRUEHD_DEMUXER)            += rawdec.o
  OBJS-$(CONFIG_TRUEHD_MUXER)              += rawenc.o
 -OBJS-$(CONFIG_TTA_DEMUXER)               += tta.o
 +OBJS-$(CONFIG_TTA_DEMUXER)               += tta.o apetag.o
  OBJS-$(CONFIG_TTY_DEMUXER)               += tty.o sauce.o
  OBJS-$(CONFIG_TXD_DEMUXER)               += txd.o
  OBJS-$(CONFIG_VC1_DEMUXER)               += rawdec.o
 +OBJS-$(CONFIG_VC1_MUXER)                 += rawenc.o
  OBJS-$(CONFIG_VC1T_DEMUXER)              += vc1test.o
  OBJS-$(CONFIG_VC1T_MUXER)                += vc1testenc.o
 +OBJS-$(CONFIG_VIVO_DEMUXER)              += vivo.o
  OBJS-$(CONFIG_VMD_DEMUXER)               += sierravmd.o
 +OBJS-$(CONFIG_VOBSUB_DEMUXER)            += subtitles.o # mpeg demuxer is in the dependencies
  OBJS-$(CONFIG_VOC_DEMUXER)               += vocdec.o voc.o
  OBJS-$(CONFIG_VOC_MUXER)                 += vocenc.o voc.o
 +OBJS-$(CONFIG_VPLAYER_DEMUXER)           += vplayerdec.o subtitles.o
  OBJS-$(CONFIG_VQF_DEMUXER)               += vqf.o
 -OBJS-$(CONFIG_W64_DEMUXER)               += wavdec.o pcm.o
 +OBJS-$(CONFIG_W64_DEMUXER)               += wavdec.o w64.o pcm.o
 +OBJS-$(CONFIG_W64_MUXER)                 += wavenc.o w64.o
  OBJS-$(CONFIG_WAV_DEMUXER)               += wavdec.o pcm.o
  OBJS-$(CONFIG_WAV_MUXER)                 += wavenc.o
  OBJS-$(CONFIG_WC3_DEMUXER)               += wc3movie.o
  OBJS-$(CONFIG_WEBM_MUXER)                += matroskaenc.o matroska.o \
                                              isom.o avc.o \
                                              flacenc_header.o avlanguage.o wv.o
 +OBJS-$(CONFIG_WEBVTT_DEMUXER)            += webvttdec.o subtitles.o
 +OBJS-$(CONFIG_WEBVTT_MUXER)              += webvttenc.o
  OBJS-$(CONFIG_WSAUD_DEMUXER)             += westwood_aud.o
  OBJS-$(CONFIG_WSVQA_DEMUXER)             += westwood_vqa.o
 -OBJS-$(CONFIG_WTV_DEMUXER)               += wtv.o asfdec.o asf.o asfcrypt.o \
 +OBJS-$(CONFIG_WTV_DEMUXER)               += wtvdec.o wtv.o asfdec.o asf.o asfcrypt.o \
                                              avlanguage.o mpegts.o isom.o
 +OBJS-$(CONFIG_WTV_MUXER)                 += wtvenc.o wtv.o asf.o asfenc.o
  OBJS-$(CONFIG_WV_DEMUXER)                += wvdec.o wv.o apetag.o img2.o
  OBJS-$(CONFIG_WV_MUXER)                  += wvenc.o wv.o apetag.o
  OBJS-$(CONFIG_XA_DEMUXER)                += xa.o
 +OBJS-$(CONFIG_XBIN_DEMUXER)              += bintext.o sauce.o
  OBJS-$(CONFIG_XMV_DEMUXER)               += xmv.o
  OBJS-$(CONFIG_XWMA_DEMUXER)              += xwma.o
  OBJS-$(CONFIG_YOP_DEMUXER)               += yop.o
@@@ -412,24 -346,15 +412,24 @@@ OBJS-$(CONFIG_YUV4MPEGPIPE_MUXER
  OBJS-$(CONFIG_YUV4MPEGPIPE_DEMUXER)      += yuv4mpeg.o
  
  # external libraries
 +OBJS-$(CONFIG_LIBGME_DEMUXER)            += libgme.o
 +OBJS-$(CONFIG_LIBMODPLUG_DEMUXER)        += libmodplug.o
 +OBJS-$(CONFIG_LIBNUT_DEMUXER)            += libnut.o
 +OBJS-$(CONFIG_LIBNUT_MUXER)              += libnut.o
 +OBJS-$(CONFIG_LIBQUVI_DEMUXER)           += libquvi.o
  OBJS-$(CONFIG_LIBRTMP)                   += librtmp.o
  
  # protocols I/O
  OBJS-$(CONFIG_APPLEHTTP_PROTOCOL)        += hlsproto.o
 +OBJS-$(CONFIG_BLURAY_PROTOCOL)           += bluray.o
 +OBJS-$(CONFIG_CACHE_PROTOCOL)            += cache.o
  OBJS-$(CONFIG_CONCAT_PROTOCOL)           += concat.o
  OBJS-$(CONFIG_CRYPTO_PROTOCOL)           += crypto.o
 +OBJS-$(CONFIG_DATA_PROTOCOL)             += data_uri.o
  OBJS-$(CONFIG_FFRTMPCRYPT_PROTOCOL)      += rtmpcrypt.o rtmpdh.o
  OBJS-$(CONFIG_FFRTMPHTTP_PROTOCOL)       += rtmphttp.o
  OBJS-$(CONFIG_FILE_PROTOCOL)             += file.o
 +OBJS-$(CONFIG_FTP_PROTOCOL)              += ftp.o
  OBJS-$(CONFIG_GOPHER_PROTOCOL)           += gopher.o
  OBJS-$(CONFIG_HLS_PROTOCOL)              += hlsproto.o
  OBJS-$(CONFIG_HTTP_PROTOCOL)             += http.o httpauth.o urldecode.o
@@@ -454,13 -379,19 +454,14 @@@ OBJS-$(CONFIG_UDP_PROTOCOL
  
  SKIPHEADERS-$(CONFIG_FFRTMPCRYPT_PROTOCOL) += rtmpdh.h
  SKIPHEADERS-$(CONFIG_NETWORK)            += network.h rtsp.h
- TESTPROGS = noproxy                                                     \
-             seek                                                        \
 -
 -EXAMPLES  = metadata                                                    \
 -            output                                                      \
 -
+ TESTPROGS = seek                                                        \
              srtp                                                        \
              url                                                         \
  
+ TESTPROGS-$(CONFIG_NETWORK)              += noproxy
  TOOLS     = aviocat                                                     \
              ismindex                                                    \
              pktdumper                                                   \
              probetest                                                   \
 -
 -$(SUBDIR)output-example$(EXESUF): ELIBS = $(patsubst %,$(LD_LIB),swscale avutil)
 +            seek_print                                                  \
diff --combined libavutil/fifo.c
@@@ -3,20 -3,20 +3,20 @@@
   * Copyright (c) 2000, 2001, 2002 Fabrice Bellard
   * Copyright (c) 2006 Roman Shaposhnik
   *
 - * This file is part of Libav.
 + * This file is part of FFmpeg.
   *
 - * Libav is free software; you can redistribute it and/or
 + * FFmpeg is free software; you can redistribute it and/or
   * modify it under the terms of the GNU Lesser General Public
   * License as published by the Free Software Foundation; either
   * version 2.1 of the License, or (at your option) any later version.
   *
 - * Libav is distributed in the hope that it will be useful,
 + * FFmpeg is distributed in the hope that it will be useful,
   * but WITHOUT ANY WARRANTY; without even the implied warranty of
   * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
   * Lesser General Public License for more details.
   *
   * You should have received a copy of the GNU Lesser General Public
 - * License along with Libav; if not, write to the Free Software
 + * License along with FFmpeg; if not, write to the Free Software
   * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA
   */
  #include "common.h"
  
  AVFifoBuffer *av_fifo_alloc(unsigned int size)
  {
-     AVFifoBuffer *f= av_mallocz(sizeof(AVFifoBuffer));
+     AVFifoBuffer *f = av_mallocz(sizeof(AVFifoBuffer));
      if (!f)
          return NULL;
      f->buffer = av_malloc(size);
-     f->end = f->buffer + size;
+     f->end    = f->buffer + size;
      av_fifo_reset(f);
      if (!f->buffer)
          av_freep(&f);
@@@ -38,7 -38,7 +38,7 @@@
  void av_fifo_free(AVFifoBuffer *f)
  {
      if (f) {
 -        av_free(f->buffer);
 +        av_freep(&f->buffer);
          av_free(f);
      }
  }
@@@ -64,11 -64,11 +64,11 @@@ int av_fifo_realloc2(AVFifoBuffer *f, u
      unsigned int old_size = f->end - f->buffer;
  
      if (old_size < new_size) {
-         int len = av_fifo_size(f);
+         int len          = av_fifo_size(f);
          AVFifoBuffer *f2 = av_fifo_alloc(new_size);
  
          if (!f2)
 -            return -1;
 +            return AVERROR(ENOMEM);
          av_fifo_generic_read(f, f2->buffer, len, NULL);
          f2->wptr += len;
          f2->wndx += len;
      return 0;
  }
  
- // src must NOT be const as it can be a context for func that may need updating (like a pointer or byte counter)
- int av_fifo_generic_write(AVFifoBuffer *f, void *src, int size, int (*func)(void*, void*, int))
 +int av_fifo_grow(AVFifoBuffer *f, unsigned int size)
 +{
 +    unsigned int old_size = f->end - f->buffer;
 +    if(size + (unsigned)av_fifo_size(f) < size)
 +        return AVERROR(EINVAL);
 +
 +    size += av_fifo_size(f);
 +
 +    if (old_size < size)
 +        return av_fifo_realloc2(f, FFMAX(size, 2*size));
 +    return 0;
 +}
 +
+ /* src must NOT be const as it can be a context for func that may need
+  * updating (like a pointer or byte counter) */
+ int av_fifo_generic_write(AVFifoBuffer *f, void *src, int size,
+                           int (*func)(void *, void *, int))
  {
      int total = size;
 +    uint32_t wndx= f->wndx;
 +    uint8_t *wptr= f->wptr;
 +
      do {
 -        int len = FFMIN(f->end - f->wptr, size);
 +        int len = FFMIN(f->end - wptr, size);
          if (func) {
 -            if (func(src, f->wptr, len) <= 0)
 +            if (func(src, wptr, len) <= 0)
                  break;
          } else {
 -            memcpy(f->wptr, src, len);
 +            memcpy(wptr, src, len);
-             src = (uint8_t*)src + len;
+             src = (uint8_t *)src + len;
          }
  // Write memory barrier needed for SMP here in theory
 -        f->wptr += len;
 -        if (f->wptr >= f->end)
 -            f->wptr = f->buffer;
 -        f->wndx += len;
 +        wptr += len;
 +        if (wptr >= f->end)
 +            wptr = f->buffer;
-         wndx += len;
-         size -= len;
++        wndx    += len;
+         size    -= len;
      } while (size > 0);
 +    f->wndx= wndx;
 +    f->wptr= wptr;
      return total - size;
  }
  
int av_fifo_generic_read(AVFifoBuffer *f, void *dest, int buf_size, void (*func)(void*, void*, int))
+ int av_fifo_generic_read(AVFifoBuffer *f, void *dest, int buf_size,
                         void (*func)(void *, void *, int))
  {
  // Read memory barrier needed for SMP here in theory
      do {
          int len = FFMIN(f->end - f->rptr, buf_size);
-         if(func) func(dest, f->rptr, len);
-         else{
+         if (func)
+             func(dest, f->rptr, len);
+         else {
              memcpy(dest, f->rptr, len);
-             dest = (uint8_t*)dest + len;
+             dest = (uint8_t *)dest + len;
          }
  // memory barrier needed for SMP here in theory
          av_fifo_drain(f, len);
@@@ -160,9 -145,9 +163,9 @@@ int main(void
          av_fifo_generic_write(fifo, &i, sizeof(int), NULL);
  
      /* peek at FIFO */
-     n = av_fifo_size(fifo)/sizeof(int);
-     for (i = -n+1; i < n; i++) {
-         int *v = (int *)av_fifo_peek2(fifo, i*sizeof(int));
+     n = av_fifo_size(fifo) / sizeof(int);
+     for (i = -n + 1; i < n; i++) {
+         int *v = (int *)av_fifo_peek2(fifo, i * sizeof(int));
          printf("%d: %d\n", i, *v);
      }
      printf("\n");