On Sun, Nov 8, 2015 at 7:54 PM, Anton Khirnov <[email protected]> wrote:
> Also, extend the documentation about setting timestamps.
> ---
>  libavformat/avformat.h | 29 +++++++++++++++++++++--------
>  1 file changed, 21 insertions(+), 8 deletions(-)
>
> diff --git a/libavformat/avformat.h b/libavformat/avformat.h
> index e441486..57fcbf5 100644
> --- a/libavformat/avformat.h
> +++ b/libavformat/avformat.h
> @@ -1629,10 +1629,17 @@ int avformat_write_header(AVFormatContext *s, 
> AVDictionary **options);
>   *            <br>
>   *            Packet's @ref AVPacket.stream_index "stream_index" field must 
> be
>   *            set to the index of the corresponding stream in @ref
> - *            AVFormatContext.streams "s->streams". It is very strongly
> - *            recommended that timing information (@ref AVPacket.pts "pts", 
> @ref
> - *            AVPacket.dts "dts", @ref AVPacket.duration "duration") is set 
> to
> - *            correct values.
> + *            AVFormatContext.streams "s->streams".
> + *            <br>
> + *            The timestamps (@ref AVPacket.pts "pts", @ref AVPacket.dts 
> "dts")
> + *            must be set to correct values in the stream's timebase (unless 
> the
> + *            output format is flagged with the AVFMT_NOTIMESTAMPS flag, then
> + *            they can be set to AV_NOPTS_VALUE).
> + *            The dts for subsequent packets passed to this function must be 
> strictly
> + *            increasing when compared in their respective timebases (unless 
> the
> + *            output format is flagged with the AVFMT_TS_NONSTRICT, then they
> + *            merely have to be nondecreasing).  @ref AVPacket.duration
> + *            "duration") should also be set if known.
>   * @return < 0 on error, = 0 if OK, 1 if flushed and there is no more data 
> to flush
>   *
>   * @see av_interleaved_write_frame()
> @@ -1662,10 +1669,16 @@ int av_write_frame(AVFormatContext *s, AVPacket *pkt);
>   *            <br>
>   *            Packet's @ref AVPacket.stream_index "stream_index" field must 
> be
>   *            set to the index of the corresponding stream in @ref
> - *            AVFormatContext.streams "s->streams". It is very strongly
> - *            recommended that timing information (@ref AVPacket.pts "pts", 
> @ref
> - *            AVPacket.dts "dts", @ref AVPacket.duration "duration") is set 
> to
> - *            correct values.
> + *            AVFormatContext.streams "s->streams".
> + *            <br>
> + *            The timestamps (@ref AVPacket.pts "pts", @ref AVPacket.dts 
> "dts")
> + *            must be set to correct values in the stream's timebase (unless 
> the
> + *            output format is flagged with the AVFMT_NOTIMESTAMPS flag, then
> + *            they can be set to AV_NOPTS_VALUE).
> + *            The dts for subsequent packets in one stream must be strictly
> + *            increasing (unless the output format is flagged with the
> + *            AVFMT_TS_NONSTRICT, then they merely have to be nondecreasing).
> + *            @ref AVPacket.duration "duration") should also be set if known.
>   *
>   * @return 0 on success, a negative AVERROR on error. Libavformat will always
>   *         take care of freeing the packet, even if this function fails.
> --
> 2.0.0

lgtm
-- 
Vittorio
_______________________________________________
libav-devel mailing list
[email protected]
https://lists.libav.org/mailman/listinfo/libav-devel

Reply via email to