]> git.sesse.net Git - ffmpeg/commitdiff
Merge remote-tracking branch 'qatar/master'
authorMichael Niedermayer <michaelni@gmx.at>
Fri, 24 Jun 2011 00:54:12 +0000 (02:54 +0200)
committerMichael Niedermayer <michaelni@gmx.at>
Fri, 24 Jun 2011 01:07:04 +0000 (03:07 +0200)
* qatar/master:
  doxygen: Consistently use '@' instead of '\' for Doxygen markup.
  Use av_printf_format to check the usage of printf style functions
  Add av_printf_format, for marking printf style format strings and their parameters
  ARM: enable thumb for Cortex-M* CPUs
  nsvdec: Propagate error values instead of returning 0 in nsv_read_header().
  build: remove SRC_PATH_BARE variable
  build: move basic rules and variables to main Makefile
  build: move special targets to end of main Makefile
  lavdev: improve feedback in case of invalid frame rate/size
  vfwcap: prefer "framerate_q" over "fps" in vfw_read_header()
  v4l2: prefer "framerate_q" over "fps" in v4l2_set_parameters()
  fbdev: prefer "framerate_q" over "fps" in device context
  bktr: prefer "framerate" over "fps" for grab_read_header()
  ALSA: implement channel layout for playback.
  alsa: support unsigned variants of already supported signed formats.
  alsa: add support for more formats.
  ARM: allow building in Thumb2 mode

Conflicts:
common.mak
doc/APIchanges
libavcodec/vdpau.h
libavdevice/alsa-audio-common.c
libavdevice/fbdev.c
libavdevice/libdc1394.c
libavutil/avutil.h

Merged-by: Michael Niedermayer <michaelni@gmx.at>
81 files changed:
1  2 
Makefile
configure
doc/APIchanges
libavcodec/acelp_pitch_delay.h
libavcodec/arm/aac.h
libavcodec/arm/ac3dsp_armv6.S
libavcodec/arm/asm.S
libavcodec/arm/dcadsp_neon.S
libavcodec/arm/dsputil_arm.S
libavcodec/arm/dsputil_armv6.S
libavcodec/arm/dsputil_neon.S
libavcodec/arm/dsputil_vfp.S
libavcodec/arm/fmtconvert_neon.S
libavcodec/arm/fmtconvert_vfp.S
libavcodec/arm/h264dsp_neon.S
libavcodec/arm/h264idct_neon.S
libavcodec/arm/mathops.h
libavcodec/arm/mdct_neon.S
libavcodec/arm/mpegvideo_armv5te_s.S
libavcodec/arm/mpegvideo_neon.S
libavcodec/arm/rdft_neon.S
libavcodec/arm/simple_idct_arm.S
libavcodec/arm/simple_idct_armv5te.S
libavcodec/arm/simple_idct_armv6.S
libavcodec/arm/simple_idct_neon.S
libavcodec/arm/synth_filter_neon.S
libavcodec/arm/vp56_arith.h
libavcodec/arm/vp8_armv6.S
libavcodec/arm/vp8dsp_neon.S
libavcodec/avcodec.h
libavcodec/celp_filters.h
libavcodec/fft.h
libavcodec/g729dec.c
libavcodec/h264_parser.c
libavcodec/lagarith.c
libavcodec/lagarithrac.h
libavcodec/lcldec.c
libavcodec/lsp.c
libavcodec/lsp.h
libavcodec/motion_est.c
libavcodec/motion_est_template.c
libavcodec/mpegvideo.h
libavcodec/nuv.c
libavcodec/qcelpdata.h
libavcodec/qcelpdec.c
libavcodec/rtjpeg.c
libavcodec/tableprint.h
libavcodec/twinvq.c
libavcodec/vaapi.c
libavcodec/vaapi.h
libavcodec/vaapi_internal.h
libavcodec/vdpau.c
libavcodec/vdpau.h
libavcodec/x86/idct_sse2_xvid.c
libavcodec/x86/idct_xvid.h
libavcodec/xsubenc.c
libavdevice/alsa-audio-common.c
libavdevice/alsa-audio.h
libavdevice/bktr.c
libavdevice/fbdev.c
libavdevice/v4l2.c
libavdevice/vfwcap.c
libavformat/asfcrypt.c
libavformat/avio.h
libavformat/gxf.c
libavformat/internal.h
libavformat/mpegts.c
libavformat/nuv.c
libavformat/rtpproto.c
libavutil/arm/intmath.h
libavutil/attributes.h
libavutil/avstring.h
libavutil/avutil.h
libavutil/common.h
libavutil/des.c
libavutil/des.h
libavutil/log.h
libavutil/lzo.c
libavutil/lzo.h
libavutil/rc4.h
subdir.mak

diff --cc Makefile
index 498a0cf248e25d916256f0ed92ec273561a897cd,f1bede83db844fcd92518183c08f47e862cef260..9eff02dbed2bf3a3e6e97343de56de3b4f0aa065
+++ b/Makefile
@@@ -1,14 -1,47 +1,50 @@@
  include config.mak
  
- SRC_DIR = $(SRC_PATH_BARE)
+ vpath %.c    $(SRC_PATH)
+ vpath %.h    $(SRC_PATH)
+ vpath %.S    $(SRC_PATH)
+ vpath %.asm  $(SRC_PATH)
+ vpath %.v    $(SRC_PATH)
+ vpath %.texi $(SRC_PATH)
+ ifndef V
+ Q      = @
+ ECHO   = printf "$(1)\t%s\n" $(2)
 -BRIEF  = CC AS YASM AR LD HOSTCC
++BRIEF  = CC AS YASM AR LD HOSTCC STRIP CP
+ SILENT = DEPCC YASMDEP RM RANLIB
+ MSG    = $@
+ M      = @$(call ECHO,$(TAG),$@);
+ $(foreach VAR,$(BRIEF), \
+     $(eval override $(VAR) = @$$(call ECHO,$(VAR),$$(MSG)); $($(VAR))))
+ $(foreach VAR,$(SILENT),$(eval override $(VAR) = @$($(VAR))))
+ $(eval INSTALL = @$(call ECHO,INSTALL,$$(^:$(SRC_PATH)/%=%)); $(INSTALL))
+ endif
+ IFLAGS     := -I. -I$(SRC_PATH)
+ CPPFLAGS   := $(IFLAGS) $(CPPFLAGS)
+ CFLAGS     += $(ECFLAGS)
+ YASMFLAGS  += $(IFLAGS) -Pconfig.asm
+ HOSTCFLAGS += $(IFLAGS)
+ %.o: %.c
+       $(CCDEP)
+       $(CC) $(CPPFLAGS) $(CFLAGS) $(CC_DEPFLAGS) -c $(CC_O) $<
+ %.o: %.S
+       $(ASDEP)
+       $(AS) $(CPPFLAGS) $(ASFLAGS) $(AS_DEPFLAGS) -c -o $@ $<
+ %.ho: %.h
+       $(CC) $(CPPFLAGS) $(CFLAGS) -Wno-unused -c -o $@ -x c $<
  
- vpath %.c   $(SRC_DIR)
- vpath %.h   $(SRC_DIR)
- vpath %.S   $(SRC_DIR)
- vpath %.asm $(SRC_DIR)
- vpath %.v   $(SRC_DIR)
- vpath %.texi $(SRC_PATH_BARE)
+ %.ver: %.v
+       $(Q)sed 's/$$MAJOR/$($(basename $(@F))_VERSION_MAJOR)/' $^ > $@
+ %.c %.h: TAG = GEN
++# Do not delete intermediate files from chains of implicit rules
++$(OBJS):
 +
  PROGS-$(CONFIG_FFMPEG)   += ffmpeg
  PROGS-$(CONFIG_FFPLAY)   += ffplay
  PROGS-$(CONFIG_FFPROBE)  += ffprobe
@@@ -49,12 -80,8 +85,12 @@@ FF_DEP_LIBS  := $(DEP_LIBS
  
  all: $(FF_DEP_LIBS) $(PROGS)
  
 +$(PROGS): %$(EXESUF): %_g$(EXESUF)
 +      $(CP) $< $@
 +      $(STRIP) $@
 +
  config.h: .config
- .config: $(wildcard $(FFLIBS:%=$(SRC_DIR)/lib%/all*.c))
+ .config: $(wildcard $(FFLIBS:%=$(SRC_PATH)/lib%/all*.c))
        @-tput bold 2>/dev/null
        @-printf '\nWARNING: $(?F) newer than config.h, rerun configure\n\n'
        @-tput sgr0 2>/dev/null
diff --cc configure
Simple merge
diff --cc doc/APIchanges
index ec76a7bb2acb66c7836bf46ef7b172dd9fd23198,65e1da7a629e99597ab8d0e7d3b1bcf71e88cf2e..2fd79b877a1287eda89291b2de7631d832a9a40a
@@@ -13,36 -13,9 +13,39 @@@ libavutil:   2011-04-1
  
  API changes, most recent first:
  
 +2011-06-19 - xxxxxxx - lavfi 2.23.0 - avfilter.h
 +  Add layout negotiation fields and helper functions.
 +
 +  In particular, add in_chlayouts and out_chlayouts to AVFilterLink,
 +  and the functions:
 +  avfilter_set_common_sample_formats()
 +  avfilter_set_common_channel_layouts()
 +  avfilter_all_channel_layouts()
 +
 +2011-06-19 - xxxxxxx - lavfi 2.22.0 - AVFilterFormats
 +  Change type of AVFilterFormats.formats from int * to int64_t *,
 +  and update formats handling API accordingly.
 +
 +  avfilter_make_format_list() still takes a int32_t array and converts
 +  it to int64_t. A new function, avfilter_make_format64_list(), that
 +  takes int64_t arrays has been added.
 +
 +2011-06-19 - xxxxxxx - lavfi 2.21.0 - vsink_buffer.h
 +  Add video sink buffer and vsink_buffer.h public header.
 +
 +2011-06-12 - xxxxxxx - lavfi 2.18.0 - avcodec.h
 +  Add avfilter_get_video_buffer_ref_from_frame() function in
 +  libavfilter/avcodec.h.
 +
 +2011-06-12 - xxxxxxx - lavfi 2.17.0 - avfiltergraph.h
 +  Add avfilter_inout_alloc() and avfilter_inout_free() functions.
 +
 +2011-06-12 - xxxxxxx - lavfi 2.16.0 - avfilter_graph_parse()
 +  Change avfilter_graph_parse() signature.
 +
+ 2011-06-xx - xxxxxxx - lavu 51.8.0 - attributes.h
+   Add av_printf_format().
  2011-06-xx - xxxxxxx - lavf 53.2.0 - avformat.h
    Add avformat_open_input and avformat_write_header().
    Deprecate av_open_input_stream, av_open_input_file,
Simple merge
Simple merge
Simple merge
Simple merge
Simple merge
Simple merge
Simple merge
Simple merge
Simple merge
Simple merge
Simple merge
Simple merge
Simple merge
Simple merge
Simple merge
Simple merge
Simple merge
Simple merge
Simple merge
Simple merge
Simple merge
Simple merge
Simple merge
Simple merge
Simple merge
Simple merge
Simple merge
Simple merge
Simple merge
Simple merge
Simple merge
Simple merge
Simple merge
Simple merge
Simple merge
Simple merge
Simple merge
Simple merge
Simple merge
Simple merge
Simple merge
Simple merge
Simple merge
Simple merge
Simple merge
Simple merge
Simple merge
Simple merge
Simple merge
index 0dc6fb850b2cb2a0850d0f9133ee1296f52cfb7e,6f1386067b31ca090853fc26eefdf88cef59ac44..f3a547184d0fc22a4943208512b3968fea58e547
@@@ -56,7 -56,7 +56,7 @@@
  #define FF_VDPAU_STATE_USED_FOR_REFERENCE 2
  
  /**
-  * \brief This structure is used as a callback between the FFmpeg
 - * @brief This structure is used as a callback between the Libav
++ * @brief This structure is used as a callback between the FFmpeg
   * decoder (vd_) and presentation (vo_) module.
   * This is used for defining a video frame containing surface,
   * picture parameter, bitstream information etc which are passed
Simple merge
Simple merge
Simple merge
index 668ca02201c74adcd791247412aafb401ff2884c,4cfc6e98647968ed25c82b632fc67270b1c035a0..8c5be3c8645d9162c7cb68cd924252b39eed2736
@@@ -29,7 -29,8 +29,8 @@@
   */
  
  #include <alsa/asoundlib.h>
 -#include "libavformat/avformat.h"
 +#include "avdevice.h"
+ #include "libavutil/avassert.h"
  
  #include "alsa-audio.h"
  
Simple merge
Simple merge
index d5ba561db86856c99205eb69abb6befd42307760,2f3e0ff9373a2499591d0ed0e4312714e790b536..a10d8c48c190f5026b3496cc10d6bd8675e8de97
@@@ -197,16 -197,12 +197,16 @@@ static int fbdev_read_packet(AVFormatCo
          fbdev->time_frame = av_gettime();
  
      /* wait based on the frame rate */
 -    curtime = av_gettime();
 -    delay = fbdev->time_frame - curtime;
 -    av_dlog(avctx,
 -            "time_frame:%"PRId64" curtime:%"PRId64" delay:%"PRId64"\n",
 -            fbdev->time_frame, curtime, delay);
 -    if (delay > 0) {
 +    while (1) {
 +        curtime = av_gettime();
 +        delay = fbdev->time_frame - curtime;
 +        av_dlog(avctx,
 +                "time_frame:%"PRId64" curtime:%"PRId64" delay:%"PRId64"\n",
 +                fbdev->time_frame, curtime, delay);
 +        if (delay <= 0) {
-             fbdev->time_frame += INT64_C(1000000) / av_q2d(fbdev->fps);
++            fbdev->time_frame += INT64_C(1000000) / av_q2d(fbdev->framerate_q);
 +            break;
 +        }
          if (avctx->flags & AVFMT_FLAG_NONBLOCK)
              return AVERROR(EAGAIN);
          ts.tv_sec  =  delay / 1000000;
index 722365489172514889a7ee2ef6919887785d44c9,072be48d407def9738ce4e909bd068fc606aea27..468c133f60e7011d64157fca25d7c57b5590abc0
@@@ -434,12 -450,12 +434,12 @@@ static void mmap_close(struct video_dat
  static int v4l2_set_parameters(AVFormatContext *s1, AVFormatParameters *ap)
  {
      struct video_data *s = s1->priv_data;
 -    struct v4l2_input input;
 -    struct v4l2_standard standard;
 -    struct v4l2_streamparm streamparm = { 0 };
 +    struct v4l2_input input = {0};
 +    struct v4l2_standard standard = {0};
 +    struct v4l2_streamparm streamparm = {0};
      struct v4l2_fract *tpf = &streamparm.parm.capture.timeperframe;
      int i, ret;
-     AVRational fps;
+     AVRational framerate_q;
  
      streamparm.type = V4L2_BUF_TYPE_VIDEO_CAPTURE;
  
Simple merge
Simple merge
index bf1ea30bb3f24b437ff329d5582b831e5b6d943d,bb2d9f85a63684975be1a6dde08aa0d3ab5f039b..ed78ffaad92cb0098a193e645c82e59faf29704d
@@@ -456,18 -458,8 +452,14 @@@ static av_always_inline int64_t avio_te
   */
  int64_t avio_size(AVIOContext *s);
  
 +/**
 + * feof() equivalent for AVIOContext.
 + * @return non zero if and only if end of file
 + */
 +int url_feof(AVIOContext *s);
 +
  /** @warning currently size is limited */
- #ifdef __GNUC__
- int avio_printf(AVIOContext *s, const char *fmt, ...) __attribute__ ((__format__ (__printf__, 2, 3)));
- #else
- int avio_printf(AVIOContext *s, const char *fmt, ...);
- #endif
+ int avio_printf(AVIOContext *s, const char *fmt, ...) av_printf_format(2, 3);
  
  void avio_flush(AVIOContext *s);
  
Simple merge
Simple merge
index 74c9ac931c8f7c4c334fda46e84c09fd5fc03599,f2ae567789db8290540c30aeb4bbbf992c5c9542..ad3cd824f40236291d0ceaa9c94762cbfb75c487
@@@ -220,23 -220,12 +220,23 @@@ static void add_pid_to_pmt(MpegTSContex
      p->pids[p->nb_pids++] = pid;
  }
  
 +static void set_pcr_pid(AVFormatContext *s, unsigned int programid, unsigned int pid)
 +{
 +    int i;
 +    for(i=0; i<s->nb_programs; i++) {
 +        if(s->programs[i]->id == programid) {
 +            s->programs[i]->pcr_pid = pid;
 +            break;
 +        }
 +    }
 +}
 +
  /**
-  * \brief discard_pid() decides if the pid is to be discarded according
+  * @brief discard_pid() decides if the pid is to be discarded according
   *                      to caller's programs selection
-  * \param ts    : - TS context
-  * \param pid   : - pid
-  * \return 1 if the pid is only comprised in programs that have .discard=AVDISCARD_ALL
+  * @param ts    : - TS context
+  * @param pid   : - pid
+  * @return 1 if the pid is only comprised in programs that have .discard=AVDISCARD_ALL
   *         0 otherwise
   */
  static int discard_pid(MpegTSContext *ts, unsigned int pid)
Simple merge
Simple merge
Simple merge
Simple merge
Simple merge
index 4d6ef66003b150fb13d06ffc708ecb5ae67e3314,d6e4668b88a3ebea84701c169664c26480f411bb..33eacc7fae04fc1734e9d0010e3fb0852b286e24
@@@ -40,8 -40,8 +40,8 @@@
  #define AV_VERSION(a, b, c) AV_VERSION_DOT(a, b, c)
  
  #define LIBAVUTIL_VERSION_MAJOR 51
- #define LIBAVUTIL_VERSION_MINOR  9
- #define LIBAVUTIL_VERSION_MICRO  1
 -#define LIBAVUTIL_VERSION_MINOR  8
++#define LIBAVUTIL_VERSION_MINOR 10
+ #define LIBAVUTIL_VERSION_MICRO  0
  
  #define LIBAVUTIL_VERSION_INT   AV_VERSION_INT(LIBAVUTIL_VERSION_MAJOR, \
                                                 LIBAVUTIL_VERSION_MINOR, \
Simple merge
diff --cc libavutil/des.c
Simple merge
diff --cc libavutil/des.h
Simple merge
diff --cc libavutil/log.h
Simple merge
diff --cc libavutil/lzo.c
Simple merge
diff --cc libavutil/lzo.h
Simple merge
diff --cc libavutil/rc4.h
Simple merge
diff --cc subdir.mak
Simple merge