comparison avformat.h @ 4570:b42c89b5b998 libavformat

AVInputFormat.reed_seek2()
author michael
date Wed, 25 Feb 2009 03:18:11 +0000
parents 0000335f1eba
children 852e796a3604
comparison
equal deleted inserted replaced
4569:0000335f1eba 4570:b42c89b5b998
331 AVFMTCTX_NOHEADER is used. */ 331 AVFMTCTX_NOHEADER is used. */
332 int (*read_packet)(struct AVFormatContext *, AVPacket *pkt); 332 int (*read_packet)(struct AVFormatContext *, AVPacket *pkt);
333 /** Close the stream. The AVFormatContext and AVStreams are not 333 /** Close the stream. The AVFormatContext and AVStreams are not
334 freed by this function */ 334 freed by this function */
335 int (*read_close)(struct AVFormatContext *); 335 int (*read_close)(struct AVFormatContext *);
336
337 #if LIBAVFORMAT_VERSION_MAJOR < 53
336 /** 338 /**
337 * Seek to a given timestamp relative to the frames in 339 * Seek to a given timestamp relative to the frames in
338 * stream component stream_index. 340 * stream component stream_index.
339 * @param stream_index must not be -1 341 * @param stream_index must not be -1
340 * @param flags selects which direction should be preferred if no exact 342 * @param flags selects which direction should be preferred if no exact
341 * match is available 343 * match is available
342 * @return >= 0 on success (but not necessarily the new offset) 344 * @return >= 0 on success (but not necessarily the new offset)
343 */ 345 */
344 int (*read_seek)(struct AVFormatContext *, 346 int (*read_seek)(struct AVFormatContext *,
345 int stream_index, int64_t timestamp, int flags); 347 int stream_index, int64_t timestamp, int flags);
348 #endif
346 /** 349 /**
347 * Gets the next timestamp in stream[stream_index].time_base units. 350 * Gets the next timestamp in stream[stream_index].time_base units.
348 * @return the timestamp or AV_NOPTS_VALUE if an error occurred 351 * @return the timestamp or AV_NOPTS_VALUE if an error occurred
349 */ 352 */
350 int64_t (*read_timestamp)(struct AVFormatContext *s, int stream_index, 353 int64_t (*read_timestamp)(struct AVFormatContext *s, int stream_index,
365 /** Pause playing - only meaningful if using a network-based format 368 /** Pause playing - only meaningful if using a network-based format
366 (RTSP). */ 369 (RTSP). */
367 int (*read_pause)(struct AVFormatContext *); 370 int (*read_pause)(struct AVFormatContext *);
368 371
369 const struct AVCodecTag * const *codec_tag; 372 const struct AVCodecTag * const *codec_tag;
373
374 /**
375 * Seek to timestamp ts.
376 * Seeking will be done so that the point from which all active streams
377 * can be presented successfully will be closest to ts and within min/max_ts.
378 * Active streams are all streams that have AVStream.discard < AVDISCARD_ALL.
379 */
380 int (*reed_seek2)(struct AVFormatContext *s, int stream_index, int64_t min_ts, int64_t ts, int64_t max_ts, int flags);
370 381
371 /* private fields */ 382 /* private fields */
372 struct AVInputFormat *next; 383 struct AVInputFormat *next;
373 } AVInputFormat; 384 } AVInputFormat;
374 385