[FFmpeg-devel] [PATCH 3/8] avformat/mpegtsenc: simplify code for condition checks

Marton Balint cus at passwd.hu
Wed Jul 22 20:49:07 EEST 2020



On Wed, 22 Jul 2020, lance.lmwang at gmail.com wrote:

> From: Limin Wang <lance.lmwang at gmail.com>
>
> Signed-off-by: Limin Wang <lance.lmwang at gmail.com>
> ---
> libavformat/mpegtsenc.c | 6 ++++--
> 1 file changed, 4 insertions(+), 2 deletions(-)
>
> diff --git a/libavformat/mpegtsenc.c b/libavformat/mpegtsenc.c
> index d827ba3..2d7a8ab 100644
> --- a/libavformat/mpegtsenc.c
> +++ b/libavformat/mpegtsenc.c
> @@ -483,16 +483,18 @@ static int mpegts_write_pmt(AVFormatContext *s, MpegTSService *service)
>         /* write optional descriptors here */
>         switch (st->codecpar->codec_type) {
>         case AVMEDIA_TYPE_AUDIO:
> -            if (st->codecpar->codec_id==AV_CODEC_ID_AC3 && (ts->flags & MPEGTS_FLAG_SYSTEM_B)) {
> +            if (ts->flags & MPEGTS_FLAG_SYSTEM_B) {
> +            if (st->codecpar->codec_id==AV_CODEC_ID_AC3) {
>                 *q++=0x6a; // AC3 descriptor see A038 DVB SI
>                 *q++=1; // 1 byte, all flags sets to 0
>                 *q++=0; // omit all fields...
>             }
> -            if (st->codecpar->codec_id==AV_CODEC_ID_EAC3 && (ts->flags & MPEGTS_FLAG_SYSTEM_B)) {
> +            else if (st->codecpar->codec_id==AV_CODEC_ID_EAC3) {
>                 *q++=0x7a; // EAC3 descriptor see A038 DVB SI
>                 *q++=1; // 1 byte, all flags sets to 0
>                 *q++=0; // omit all fields...
>             }
> +            }
>             if (st->codecpar->codec_id==AV_CODEC_ID_S302M)
>                 put_registration_descriptor(&q, MKTAG('B', 'S', 'S', 'D'));
>             if (st->codecpar->codec_id==AV_CODEC_ID_OPUS) {


LGTM, thanks.

Marton


More information about the ffmpeg-devel mailing list