Re: [FFmpeg-devel] [PATCH] avformat/concat: Fix wrong wrapped timestamp

2017-12-14 Thread 吴志强
I see pts_wrap_bits must be modified in this function.   I re-submit  the
new patch, only replace avpriv_set_pts_info st->pts_wrap_bits   =
source_st->pts_wrap_bits by avpriv_set_pts_info.

Liu Steven  于 2017年12月15日周五 上午6:30写道:

>
> > 在 2017年12月15日,上午12:04,Michael Niedermayer  写道:
> >
> > On Thu, Dec 14, 2017 at 03:00:50AM -0500, mymoey...@gmail.com wrote:
> >> From: wu zhiqiang 
> >>
> >> When using concat protocal, start from middle of file will generate
> non-zero wrap reference. If seek to time less than the wrap reference, wrap
> control will be triggered and generate wrong wrapped timestamp.
> >> Copy wrap related stream properties when reading header can fix this
> problem.
> >>
> >> Signed-off-by: wu zhiqiang 
> >> ---
> >> libavformat/concatdec.c | 5 +
> >> 1 file changed, 5 insertions(+)
> >>
> >> diff --git a/libavformat/concatdec.c b/libavformat/concatdec.c
> >> index 0e189012ad..e933888661 100644
> >> --- a/libavformat/concatdec.c
> >> +++ b/libavformat/concatdec.c
> >> @@ -188,6 +188,11 @@ static int copy_stream_props(AVStream *st,
> AVStream *source_st)
> >> st->time_base   = source_st->time_base;
> >> st->sample_aspect_ratio = source_st->sample_aspect_ratio;
> >>
> >> +/* Fix wrap control problem */
> >> +st->pts_wrap_bits   = source_st->pts_wrap_bits;
> >> +st->pts_wrap_behavior   = source_st->pts_wrap_behavior;
> >> +st->pts_wrap_reference  = source_st->pts_wrap_reference;
> >
> > why does this not use avpriv_set_pts_info() ?
>
> Add st->pts_wrap_behavior   = source_st->pts_wrap_behavior; and
> st->pts_wrap_reference  = source_st->pts_wrap_reference; into
> avpriv_set_pts_info?
> or only replace avpriv_set_pts_info st->pts_wrap_bits   =
> source_st->pts_wrap_bits; here?
>
> Thanks
>
> Steven
> >
> >
> > [...]
> > --
> > Michael GnuPG fingerprint: 9FF2128B147EF6730BADF133611EC787040B0FAB
> >
> > There will always be a question for which you do not know the correct
> answer.
> > ___
> > ffmpeg-devel mailing list
> > ffmpeg-devel@ffmpeg.org
> > http://ffmpeg.org/mailman/listinfo/ffmpeg-devel
>
>
>
> ___
> ffmpeg-devel mailing list
> ffmpeg-devel@ffmpeg.org
> http://ffmpeg.org/mailman/listinfo/ffmpeg-devel
>
___
ffmpeg-devel mailing list
ffmpeg-devel@ffmpeg.org
http://ffmpeg.org/mailman/listinfo/ffmpeg-devel


Re: [FFmpeg-devel] [PATCH] avformat/concat: Fix wrong wrapped timestamp

2017-12-14 Thread Liu Steven

> 在 2017年12月15日,上午12:04,Michael Niedermayer  写道:
> 
> On Thu, Dec 14, 2017 at 03:00:50AM -0500, mymoey...@gmail.com wrote:
>> From: wu zhiqiang 
>> 
>> When using concat protocal, start from middle of file will generate non-zero 
>> wrap reference. If seek to time less than the wrap reference, wrap control 
>> will be triggered and generate wrong wrapped timestamp.
>> Copy wrap related stream properties when reading header can fix this problem.
>> 
>> Signed-off-by: wu zhiqiang 
>> ---
>> libavformat/concatdec.c | 5 +
>> 1 file changed, 5 insertions(+)
>> 
>> diff --git a/libavformat/concatdec.c b/libavformat/concatdec.c
>> index 0e189012ad..e933888661 100644
>> --- a/libavformat/concatdec.c
>> +++ b/libavformat/concatdec.c
>> @@ -188,6 +188,11 @@ static int copy_stream_props(AVStream *st, AVStream 
>> *source_st)
>> st->time_base   = source_st->time_base;
>> st->sample_aspect_ratio = source_st->sample_aspect_ratio;
>> 
>> +/* Fix wrap control problem */
>> +st->pts_wrap_bits   = source_st->pts_wrap_bits;
>> +st->pts_wrap_behavior   = source_st->pts_wrap_behavior;
>> +st->pts_wrap_reference  = source_st->pts_wrap_reference;
> 
> why does this not use avpriv_set_pts_info() ?

Add st->pts_wrap_behavior   = source_st->pts_wrap_behavior; and 
st->pts_wrap_reference  = source_st->pts_wrap_reference; into 
avpriv_set_pts_info?
or only replace avpriv_set_pts_info st->pts_wrap_bits   = 
source_st->pts_wrap_bits; here?

Thanks

Steven
> 
> 
> [...]
> -- 
> Michael GnuPG fingerprint: 9FF2128B147EF6730BADF133611EC787040B0FAB
> 
> There will always be a question for which you do not know the correct answer.
> ___
> ffmpeg-devel mailing list
> ffmpeg-devel@ffmpeg.org
> http://ffmpeg.org/mailman/listinfo/ffmpeg-devel



___
ffmpeg-devel mailing list
ffmpeg-devel@ffmpeg.org
http://ffmpeg.org/mailman/listinfo/ffmpeg-devel


Re: [FFmpeg-devel] [PATCH] avformat/concat: Fix wrong wrapped timestamp

2017-12-14 Thread Michael Niedermayer
On Thu, Dec 14, 2017 at 03:00:50AM -0500, mymoey...@gmail.com wrote:
> From: wu zhiqiang 
> 
> When using concat protocal, start from middle of file will generate non-zero 
> wrap reference. If seek to time less than the wrap reference, wrap control 
> will be triggered and generate wrong wrapped timestamp.
> Copy wrap related stream properties when reading header can fix this problem.
> 
> Signed-off-by: wu zhiqiang 
> ---
>  libavformat/concatdec.c | 5 +
>  1 file changed, 5 insertions(+)
> 
> diff --git a/libavformat/concatdec.c b/libavformat/concatdec.c
> index 0e189012ad..e933888661 100644
> --- a/libavformat/concatdec.c
> +++ b/libavformat/concatdec.c
> @@ -188,6 +188,11 @@ static int copy_stream_props(AVStream *st, AVStream 
> *source_st)
>  st->time_base   = source_st->time_base;
>  st->sample_aspect_ratio = source_st->sample_aspect_ratio;
>  
> +/* Fix wrap control problem */
> +st->pts_wrap_bits   = source_st->pts_wrap_bits;
> +st->pts_wrap_behavior   = source_st->pts_wrap_behavior;
> +st->pts_wrap_reference  = source_st->pts_wrap_reference;

why does this not use avpriv_set_pts_info() ?


[...]
-- 
Michael GnuPG fingerprint: 9FF2128B147EF6730BADF133611EC787040B0FAB

There will always be a question for which you do not know the correct answer.


signature.asc
Description: Digital signature
___
ffmpeg-devel mailing list
ffmpeg-devel@ffmpeg.org
http://ffmpeg.org/mailman/listinfo/ffmpeg-devel


Re: [FFmpeg-devel] [PATCH] avformat/concat: Fix wrong wrapped timestamp

2017-12-14 Thread Steven Liu
2017-12-14 16:00 GMT+08:00  :
> From: wu zhiqiang 
>
> When using concat protocal, start from middle of file will generate non-zero 
> wrap reference. If seek to time less than the wrap reference, wrap control 
> will be triggered and generate wrong wrapped timestamp.
> Copy wrap related stream properties when reading header can fix this problem.
>
> Signed-off-by: wu zhiqiang 
> ---
>  libavformat/concatdec.c | 5 +
>  1 file changed, 5 insertions(+)
>
> diff --git a/libavformat/concatdec.c b/libavformat/concatdec.c
> index 0e189012ad..e933888661 100644
> --- a/libavformat/concatdec.c
> +++ b/libavformat/concatdec.c
> @@ -188,6 +188,11 @@ static int copy_stream_props(AVStream *st, AVStream 
> *source_st)
>  st->time_base   = source_st->time_base;
>  st->sample_aspect_ratio = source_st->sample_aspect_ratio;
>
> +/* Fix wrap control problem */
> +st->pts_wrap_bits   = source_st->pts_wrap_bits;
> +st->pts_wrap_behavior   = source_st->pts_wrap_behavior;
> +st->pts_wrap_reference  = source_st->pts_wrap_reference;
> +
>  av_dict_copy(>metadata, source_st->metadata, 0);
>  return 0;
>  }
> --
> 2.15.0
>
> ___
> ffmpeg-devel mailing list
> ffmpeg-devel@ffmpeg.org
> http://ffmpeg.org/mailman/listinfo/ffmpeg-devel


LGTM


Thanks

Steven
___
ffmpeg-devel mailing list
ffmpeg-devel@ffmpeg.org
http://ffmpeg.org/mailman/listinfo/ffmpeg-devel