Re: [FFmpeg-devel] [PATCH] avformat/mpegts: make sure mpegts_read_header always stops at the first pmt

2020-11-19 Thread Ross Nicholson
On Wed, 18 Nov 2020 at 20:11, Marton Balint  wrote:

>
>
> On Sun, 15 Nov 2020, Ross Nicholson wrote:
>
> > On Sat, 14 Nov 2020 at 23:40, Marton Balint  wrote:
> >
> >> mpegts_read_header stops parsing the file at the first PMT. However the
> >> check
> >> that ensured this was wrong because streams can also be added before the
> >> first
> >> PMT is received (e.g. EIT).
> >>
> >> So let's make sure we are in the header reading phase by checking if
> >> ts->pkt is
> >> unset instead of checking if the number of streams found so far is 0.
> >>
> >> Signed-off-by: Marton Balint 
> >> ---
> >>  libavformat/mpegts.c | 2 +-
> >>  1 file changed, 1 insertion(+), 1 deletion(-)
> >>
> >> diff --git a/libavformat/mpegts.c b/libavformat/mpegts.c
> >> index 80d010db6c..a2003c6632 100644
> >> --- a/libavformat/mpegts.c
> >> +++ b/libavformat/mpegts.c
> >> @@ -2355,7 +2355,7 @@ static void pmt_cb(MpegTSFilter *filter, const
> >> uint8_t *section, int section_len
> >>  goto out;
> >>
> >>  // stop parsing after pmt, we found header
> >> -if (!ts->stream->nb_streams)
> >> +if (!ts->pkt)
> >>  ts->stop_parse = 2;
> >>
> >>  set_pmt_found(ts, h->id);
> >> --
> >> 2.26.2
> >>
> >> ___
> >> ffmpeg-devel mailing list
> >> ffmpeg-devel@ffmpeg.org
> >> https://ffmpeg.org/mailman/listinfo/ffmpeg-devel
> >>
> >> To unsubscribe, visit link above, or email
> >> ffmpeg-devel-requ...@ffmpeg.org with subject "unsubscribe".
> >
> >
> > Thanks for this. With this fix streams with embedded EIT data open in
> > approx 1-1.5 seconds as opposed to 10-15 seconds without the fix. If
> > possible also having this fix in the 4.3 branch as well as master would
> be
> > great.
>
> Ok, will apply and backport.
>
> Regards,
> Marton
> ___
> ffmpeg-devel mailing list
> ffmpeg-devel@ffmpeg.org
> https://ffmpeg.org/mailman/listinfo/ffmpeg-devel
>
> To unsubscribe, visit link above, or email
> ffmpeg-devel-requ...@ffmpeg.org with subject "unsubscribe".



Thanks!
___
ffmpeg-devel mailing list
ffmpeg-devel@ffmpeg.org
https://ffmpeg.org/mailman/listinfo/ffmpeg-devel

To unsubscribe, visit link above, or email
ffmpeg-devel-requ...@ffmpeg.org with subject "unsubscribe".

Re: [FFmpeg-devel] [PATCH] avformat/mpegts: make sure mpegts_read_header always stops at the first pmt

2020-11-18 Thread Marton Balint



On Sun, 15 Nov 2020, Ross Nicholson wrote:


On Sat, 14 Nov 2020 at 23:40, Marton Balint  wrote:


mpegts_read_header stops parsing the file at the first PMT. However the
check
that ensured this was wrong because streams can also be added before the
first
PMT is received (e.g. EIT).

So let's make sure we are in the header reading phase by checking if
ts->pkt is
unset instead of checking if the number of streams found so far is 0.

Signed-off-by: Marton Balint 
---
 libavformat/mpegts.c | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/libavformat/mpegts.c b/libavformat/mpegts.c
index 80d010db6c..a2003c6632 100644
--- a/libavformat/mpegts.c
+++ b/libavformat/mpegts.c
@@ -2355,7 +2355,7 @@ static void pmt_cb(MpegTSFilter *filter, const
uint8_t *section, int section_len
 goto out;

 // stop parsing after pmt, we found header
-if (!ts->stream->nb_streams)
+if (!ts->pkt)
 ts->stop_parse = 2;

 set_pmt_found(ts, h->id);
--
2.26.2

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

To unsubscribe, visit link above, or email
ffmpeg-devel-requ...@ffmpeg.org with subject "unsubscribe".



Thanks for this. With this fix streams with embedded EIT data open in
approx 1-1.5 seconds as opposed to 10-15 seconds without the fix. If
possible also having this fix in the 4.3 branch as well as master would be
great.


Ok, will apply and backport.

Regards,
Marton
___
ffmpeg-devel mailing list
ffmpeg-devel@ffmpeg.org
https://ffmpeg.org/mailman/listinfo/ffmpeg-devel

To unsubscribe, visit link above, or email
ffmpeg-devel-requ...@ffmpeg.org with subject "unsubscribe".

Re: [FFmpeg-devel] [PATCH] avformat/mpegts: make sure mpegts_read_header always stops at the first pmt

2020-11-15 Thread Ross Nicholson
On Sat, 14 Nov 2020 at 23:40, Marton Balint  wrote:

> mpegts_read_header stops parsing the file at the first PMT. However the
> check
> that ensured this was wrong because streams can also be added before the
> first
> PMT is received (e.g. EIT).
>
> So let's make sure we are in the header reading phase by checking if
> ts->pkt is
> unset instead of checking if the number of streams found so far is 0.
>
> Signed-off-by: Marton Balint 
> ---
>  libavformat/mpegts.c | 2 +-
>  1 file changed, 1 insertion(+), 1 deletion(-)
>
> diff --git a/libavformat/mpegts.c b/libavformat/mpegts.c
> index 80d010db6c..a2003c6632 100644
> --- a/libavformat/mpegts.c
> +++ b/libavformat/mpegts.c
> @@ -2355,7 +2355,7 @@ static void pmt_cb(MpegTSFilter *filter, const
> uint8_t *section, int section_len
>  goto out;
>
>  // stop parsing after pmt, we found header
> -if (!ts->stream->nb_streams)
> +if (!ts->pkt)
>  ts->stop_parse = 2;
>
>  set_pmt_found(ts, h->id);
> --
> 2.26.2
>
> ___
> ffmpeg-devel mailing list
> ffmpeg-devel@ffmpeg.org
> https://ffmpeg.org/mailman/listinfo/ffmpeg-devel
>
> To unsubscribe, visit link above, or email
> ffmpeg-devel-requ...@ffmpeg.org with subject "unsubscribe".


Thanks for this. With this fix streams with embedded EIT data open in
approx 1-1.5 seconds as opposed to 10-15 seconds without the fix. If
possible also having this fix in the 4.3 branch as well as master would be
great.
___
ffmpeg-devel mailing list
ffmpeg-devel@ffmpeg.org
https://ffmpeg.org/mailman/listinfo/ffmpeg-devel

To unsubscribe, visit link above, or email
ffmpeg-devel-requ...@ffmpeg.org with subject "unsubscribe".

[FFmpeg-devel] [PATCH] avformat/mpegts: make sure mpegts_read_header always stops at the first pmt

2020-11-14 Thread Marton Balint
mpegts_read_header stops parsing the file at the first PMT. However the check
that ensured this was wrong because streams can also be added before the first
PMT is received (e.g. EIT).

So let's make sure we are in the header reading phase by checking if ts->pkt is
unset instead of checking if the number of streams found so far is 0.

Signed-off-by: Marton Balint 
---
 libavformat/mpegts.c | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/libavformat/mpegts.c b/libavformat/mpegts.c
index 80d010db6c..a2003c6632 100644
--- a/libavformat/mpegts.c
+++ b/libavformat/mpegts.c
@@ -2355,7 +2355,7 @@ static void pmt_cb(MpegTSFilter *filter, const uint8_t 
*section, int section_len
 goto out;
 
 // stop parsing after pmt, we found header
-if (!ts->stream->nb_streams)
+if (!ts->pkt)
 ts->stop_parse = 2;
 
 set_pmt_found(ts, h->id);
-- 
2.26.2

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

To unsubscribe, visit link above, or email
ffmpeg-devel-requ...@ffmpeg.org with subject "unsubscribe".