diff mbox series

[FFmpeg-devel] avformat/mpegtsenc: use av_log_once for data stream warning

Message ID 20200422112608.1538-1-ffmpeg@gyani.pro
State Accepted
Commit fc8a239e9d0a0eeadcd4f5e93a3de56bd68ac8ed
Headers show
Series [FFmpeg-devel] avformat/mpegtsenc: use av_log_once for data stream warning | expand

Checks

Context Check Description
andriy/default pending
andriy/make success Make finished
andriy/make_fate success Make fate finished

Commit Message

Gyan Doshi April 22, 2020, 11:26 a.m. UTC
---
 libavformat/mpegtsenc.c | 15 +++++++++++----
 1 file changed, 11 insertions(+), 4 deletions(-)

Comments

Marton Balint April 22, 2020, 8:03 p.m. UTC | #1
On Wed, 22 Apr 2020, Gyan Doshi wrote:

> ---
> libavformat/mpegtsenc.c | 15 +++++++++++----
> 1 file changed, 11 insertions(+), 4 deletions(-)
>
> diff --git a/libavformat/mpegtsenc.c b/libavformat/mpegtsenc.c
> index 4fe3d84c59..f2be6c6632 100644
> --- a/libavformat/mpegtsenc.c
> +++ b/libavformat/mpegtsenc.c
> @@ -238,6 +238,7 @@ typedef struct MpegTSWriteStream {
>     int payload_flags;
>     uint8_t *payload;
>     AVFormatContext *amux;
> +    int data_st_warning;
>
>     int64_t pcr_period; /* PCR period in PCR time base */
>     int64_t last_pcr;
> @@ -285,6 +286,7 @@ static void put_registration_descriptor(uint8_t **q_ptr, uint32_t tag)
> static int get_dvb_stream_type(AVFormatContext *s, AVStream *st)
> {
>     MpegTSWrite *ts = s->priv_data;
> +    MpegTSWriteStream *ts_st = st->priv_data;
>     int stream_type;
>
>     switch (st->codecpar->codec_id) {
> @@ -354,8 +356,10 @@ static int get_dvb_stream_type(AVFormatContext *s, AVStream *st)
>         stream_type = STREAM_TYPE_PRIVATE_DATA;
>         break;
>     default:
> -        av_log(s, AV_LOG_WARNING, "Stream %d, codec %s, is muxed as a private data stream "
> -               "and may not be recognized upon reading.\n", st->index, avcodec_get_name(st->codecpar->codec_id));
> +        av_log_once(s, AV_LOG_WARNING, AV_LOG_DEBUG, &ts_st->data_st_warning,
> +                    "Stream %d, codec %s, is muxed as a private data stream "
> +                    "and may not be recognized upon reading.\n", st->index,
> +                    avcodec_get_name(st->codecpar->codec_id));
>         stream_type = STREAM_TYPE_PRIVATE_DATA;
>         break;
>     }
> @@ -366,6 +370,7 @@ static int get_dvb_stream_type(AVFormatContext *s, AVStream *st)
> static int get_m2ts_stream_type(AVFormatContext *s, AVStream *st)
> {
>     int stream_type;
> +    MpegTSWriteStream *ts_st = st->priv_data;
>
>     switch (st->codecpar->codec_id) {
>     case AV_CODEC_ID_MPEG2VIDEO:
> @@ -402,8 +407,10 @@ static int get_m2ts_stream_type(AVFormatContext *s, AVStream *st)
>         stream_type = 0x92;
>         break;
>     default:
> -        av_log(s, AV_LOG_WARNING, "Stream %d, codec %s, is muxed as a private data stream "
> -               "and may not be recognized upon reading.\n", st->index, avcodec_get_name(st->codecpar->codec_id));
> +        av_log_once(s, AV_LOG_WARNING, AV_LOG_DEBUG, &ts_st->data_st_warning,
> +                    "Stream %d, codec %s, is muxed as a private data stream "
> +                    "and may not be recognized upon reading.\n", st->index,
> +                    avcodec_get_name(st->codecpar->codec_id));
>         stream_type = STREAM_TYPE_PRIVATE_DATA;
>         break;
>     }

LGTM, thanks.

Marton
Gyan Doshi April 23, 2020, 6:04 a.m. UTC | #2
On 23-04-2020 01:33 am, Marton Balint wrote:
>
>
> On Wed, 22 Apr 2020, Gyan Doshi wrote:
>
>> ---
>> libavformat/mpegtsenc.c | 15 +++++++++++----
>> 1 file changed, 11 insertions(+), 4 deletions(-)
>>
>> diff --git a/libavformat/mpegtsenc.c b/libavformat/mpegtsenc.c
>> index 4fe3d84c59..f2be6c6632 100644
>> --- a/libavformat/mpegtsenc.c
>> +++ b/libavformat/mpegtsenc.c
>> @@ -238,6 +238,7 @@ typedef struct MpegTSWriteStream {
>>     int payload_flags;
>>     uint8_t *payload;
>>     AVFormatContext *amux;
>> +    int data_st_warning;
>>
>>     int64_t pcr_period; /* PCR period in PCR time base */
>>     int64_t last_pcr;
>> @@ -285,6 +286,7 @@ static void put_registration_descriptor(uint8_t 
>> **q_ptr, uint32_t tag)
>> static int get_dvb_stream_type(AVFormatContext *s, AVStream *st)
>> {
>>     MpegTSWrite *ts = s->priv_data;
>> +    MpegTSWriteStream *ts_st = st->priv_data;
>>     int stream_type;
>>
>>     switch (st->codecpar->codec_id) {
>> @@ -354,8 +356,10 @@ static int get_dvb_stream_type(AVFormatContext 
>> *s, AVStream *st)
>>         stream_type = STREAM_TYPE_PRIVATE_DATA;
>>         break;
>>     default:
>> -        av_log(s, AV_LOG_WARNING, "Stream %d, codec %s, is muxed as 
>> a private data stream "
>> -               "and may not be recognized upon reading.\n", 
>> st->index, avcodec_get_name(st->codecpar->codec_id));
>> +        av_log_once(s, AV_LOG_WARNING, AV_LOG_DEBUG, 
>> &ts_st->data_st_warning,
>> +                    "Stream %d, codec %s, is muxed as a private data 
>> stream "
>> +                    "and may not be recognized upon reading.\n", 
>> st->index,
>> + avcodec_get_name(st->codecpar->codec_id));
>>         stream_type = STREAM_TYPE_PRIVATE_DATA;
>>         break;
>>     }
>> @@ -366,6 +370,7 @@ static int get_dvb_stream_type(AVFormatContext 
>> *s, AVStream *st)
>> static int get_m2ts_stream_type(AVFormatContext *s, AVStream *st)
>> {
>>     int stream_type;
>> +    MpegTSWriteStream *ts_st = st->priv_data;
>>
>>     switch (st->codecpar->codec_id) {
>>     case AV_CODEC_ID_MPEG2VIDEO:
>> @@ -402,8 +407,10 @@ static int get_m2ts_stream_type(AVFormatContext 
>> *s, AVStream *st)
>>         stream_type = 0x92;
>>         break;
>>     default:
>> -        av_log(s, AV_LOG_WARNING, "Stream %d, codec %s, is muxed as 
>> a private data stream "
>> -               "and may not be recognized upon reading.\n", 
>> st->index, avcodec_get_name(st->codecpar->codec_id));
>> +        av_log_once(s, AV_LOG_WARNING, AV_LOG_DEBUG, 
>> &ts_st->data_st_warning,
>> +                    "Stream %d, codec %s, is muxed as a private data 
>> stream "
>> +                    "and may not be recognized upon reading.\n", 
>> st->index,
>> + avcodec_get_name(st->codecpar->codec_id));
>>         stream_type = STREAM_TYPE_PRIVATE_DATA;
>>         break;
>>     }
>
> LGTM, thanks.

Thanks. Pushed as fc8a239e9d0a0eeadcd4f5e93a3de56bd68ac8ed

Gyan
diff mbox series

Patch

diff --git a/libavformat/mpegtsenc.c b/libavformat/mpegtsenc.c
index 4fe3d84c59..f2be6c6632 100644
--- a/libavformat/mpegtsenc.c
+++ b/libavformat/mpegtsenc.c
@@ -238,6 +238,7 @@  typedef struct MpegTSWriteStream {
     int payload_flags;
     uint8_t *payload;
     AVFormatContext *amux;
+    int data_st_warning;
 
     int64_t pcr_period; /* PCR period in PCR time base */
     int64_t last_pcr;
@@ -285,6 +286,7 @@  static void put_registration_descriptor(uint8_t **q_ptr, uint32_t tag)
 static int get_dvb_stream_type(AVFormatContext *s, AVStream *st)
 {
     MpegTSWrite *ts = s->priv_data;
+    MpegTSWriteStream *ts_st = st->priv_data;
     int stream_type;
 
     switch (st->codecpar->codec_id) {
@@ -354,8 +356,10 @@  static int get_dvb_stream_type(AVFormatContext *s, AVStream *st)
         stream_type = STREAM_TYPE_PRIVATE_DATA;
         break;
     default:
-        av_log(s, AV_LOG_WARNING, "Stream %d, codec %s, is muxed as a private data stream "
-               "and may not be recognized upon reading.\n", st->index, avcodec_get_name(st->codecpar->codec_id));
+        av_log_once(s, AV_LOG_WARNING, AV_LOG_DEBUG, &ts_st->data_st_warning,
+                    "Stream %d, codec %s, is muxed as a private data stream "
+                    "and may not be recognized upon reading.\n", st->index,
+                    avcodec_get_name(st->codecpar->codec_id));
         stream_type = STREAM_TYPE_PRIVATE_DATA;
         break;
     }
@@ -366,6 +370,7 @@  static int get_dvb_stream_type(AVFormatContext *s, AVStream *st)
 static int get_m2ts_stream_type(AVFormatContext *s, AVStream *st)
 {
     int stream_type;
+    MpegTSWriteStream *ts_st = st->priv_data;
 
     switch (st->codecpar->codec_id) {
     case AV_CODEC_ID_MPEG2VIDEO:
@@ -402,8 +407,10 @@  static int get_m2ts_stream_type(AVFormatContext *s, AVStream *st)
         stream_type = 0x92;
         break;
     default:
-        av_log(s, AV_LOG_WARNING, "Stream %d, codec %s, is muxed as a private data stream "
-               "and may not be recognized upon reading.\n", st->index, avcodec_get_name(st->codecpar->codec_id));
+        av_log_once(s, AV_LOG_WARNING, AV_LOG_DEBUG, &ts_st->data_st_warning,
+                    "Stream %d, codec %s, is muxed as a private data stream "
+                    "and may not be recognized upon reading.\n", st->index,
+                    avcodec_get_name(st->codecpar->codec_id));
         stream_type = STREAM_TYPE_PRIVATE_DATA;
         break;
     }