* qatar/master:
ARM: ac3: update ff_ac3_extract_exponents_neon per
8b7b2d6
ARM: NEON optimised vector_clip_int32()
swscale: disable full_chroma_int when converting to non-24/32bpp RGB.
suggest to use av_get_bytes_per_sample() in av_get_bits_per_sample_format() doxy
ffmpeg: use av_get_bytes_per_sample() in place of av_get_bits_per_sample_fmt()
put_bits: remove ALT_BITSTREAM_WRITER
put_bits: always use intreadwrite.h macros
libavformat: Add an example how to use the metadata API
doxygen: Prefer member groups over grouping into modules
doxygen: be more permissive when searching for API examples
avformat: doxify the Metadata API
lavf: restore old behavior for custom AVIOContex with an AVFMT_NOFILE format.
lavf: use the correct pointer in av_open_input_stream().
avidec: infer absolute vs relative index from first packet
Conflicts:
libavformat/Makefile
libavformat/avidec.c
Merged-by: Michael Niedermayer <michaelni@gmx.at>
typedef struct {
AVCodecContext *avctx; ///< parent context
GetBitContext gbc; ///< bitstream reader
- uint8_t *input_buffer; ///< temp buffer to prevent overread
- ///@defgroup bsi bit stream information
+ ///@name Bit stream information
///@{
int frame_type; ///< frame type (strmtyp)
int substreamid; ///< substream identification
OBJS-$(CONFIG_UDP_PROTOCOL) += udp.o
# libavdevice dependencies
+OBJS-$(CONFIG_ALSA_INDEV) += timefilter.o
OBJS-$(CONFIG_JACK_INDEV) += timefilter.o
-EXAMPLES = metadata output
++EXAMPLES = metadata
TESTPROGS = timefilter
include $(SRC_PATH)/subdir.mak
struct AVFormatContext;
- /*
- * Public Metadata API.
+ /**
+ * @defgroup metadata_api Public Metadata API
+ * @{
* The metadata API allows libavformat to export metadata tags to a client
- * application using a sequence of key/value pairs. Like all strings in Libav,
+ * application using a sequence of key/value pairs. Like all strings in FFmpeg,
* metadata must be stored as UTF-8 encoded Unicode. Note that metadata
* exported by demuxers isn't checked to be valid UTF-8 in most cases.
* Important concepts to keep in mind:
st = s->streams[index];
ast = st->priv_data;
- #if defined(DEBUG_SEEK)
- av_log(s, AV_LOG_DEBUG, "%d cum_len=%"PRId64"\n", len, ast->cum_len);
- #endif
+ if(first_packet && first_packet_pos && len) {
+ data_offset = first_packet_pos - pos;
+ first_packet = 0;
+ }
+ pos += data_offset;
+
+ av_dlog(s, "%d cum_len=%"PRId64"\n", len, ast->cum_len);
+
- if(pb->eof_reached)
+ if(url_feof(pb))
return -1;
if(last_pos == pos)