diff mbox series

[FFmpeg-devel,1/2] avformat/mpegtsenc: fix muxing pcm-bluray

Message ID 20220226193143.715424-1-onemda@gmail.com
State New
Headers show
Series [FFmpeg-devel,1/2] avformat/mpegtsenc: fix muxing pcm-bluray | expand

Commit Message

Paul B Mahol Feb. 26, 2022, 7:31 p.m. UTC
Signed-off-by: Paul B Mahol <onemda@gmail.com>
---
 libavformat/mpegtsenc.c | 4 ++++
 1 file changed, 4 insertions(+)

Comments

Marton Balint Feb. 27, 2022, 5:47 p.m. UTC | #1
On Sat, 26 Feb 2022, Paul B Mahol wrote:

> Signed-off-by: Paul B Mahol <onemda@gmail.com>
> ---
> libavformat/mpegtsenc.c | 4 ++++
> 1 file changed, 4 insertions(+)
>
> diff --git a/libavformat/mpegtsenc.c b/libavformat/mpegtsenc.c
> index 971b3f55d8..48cd54c770 100644
> --- a/libavformat/mpegtsenc.c
> +++ b/libavformat/mpegtsenc.c
> @@ -2097,6 +2097,10 @@ static int mpegts_write_packet_internal(AVFormatContext *s, AVPacket *pkt)
>             ts_st->dvb_ac3_desc = dvb_ac3_desc;
>         }
>         av_free(hdr);
> +    } else if (st->codecpar->codec_id == AV_CODEC_ID_PCM_BLURAY) {
> +        mpegts_write_pes(s, st, buf, size, pts, dts,
> +                         pkt->flags & AV_PKT_FLAG_KEY, stream_id);
> +        return 0;
>     }

This fixes what exactly?

Thanks,
Marton

>
>     if (ts_st->payload_size && (ts_st->payload_size + size > ts->pes_payload_size ||
> -- 
> 2.33.0
>
> _______________________________________________
> ffmpeg-devel mailing list
> ffmpeg-devel@ffmpeg.org
> https://ffmpeg.org/mailman/listinfo/ffmpeg-devel
>
> To unsubscribe, visit link above, or email
> ffmpeg-devel-request@ffmpeg.org with subject "unsubscribe".
>
Paul B Mahol Feb. 27, 2022, 5:51 p.m. UTC | #2
On Sun, Feb 27, 2022 at 6:47 PM Marton Balint <cus@passwd.hu> wrote:

>
>
> On Sat, 26 Feb 2022, Paul B Mahol wrote:
>
> > Signed-off-by: Paul B Mahol <onemda@gmail.com>
> > ---
> > libavformat/mpegtsenc.c | 4 ++++
> > 1 file changed, 4 insertions(+)
> >
> > diff --git a/libavformat/mpegtsenc.c b/libavformat/mpegtsenc.c
> > index 971b3f55d8..48cd54c770 100644
> > --- a/libavformat/mpegtsenc.c
> > +++ b/libavformat/mpegtsenc.c
> > @@ -2097,6 +2097,10 @@ static int
> mpegts_write_packet_internal(AVFormatContext *s, AVPacket *pkt)
> >             ts_st->dvb_ac3_desc = dvb_ac3_desc;
> >         }
> >         av_free(hdr);
> > +    } else if (st->codecpar->codec_id == AV_CODEC_ID_PCM_BLURAY) {
> > +        mpegts_write_pes(s, st, buf, size, pts, dts,
> > +                         pkt->flags & AV_PKT_FLAG_KEY, stream_id);
> > +        return 0;
> >     }
>
> This fixes what exactly?
>

-c copy for .m2ts file that have pcm_bluray audio codec.


> Thanks,
> Marton
>
> >
> >     if (ts_st->payload_size && (ts_st->payload_size + size >
> ts->pes_payload_size ||
> > --
> > 2.33.0
> >
> > _______________________________________________
> > ffmpeg-devel mailing list
> > ffmpeg-devel@ffmpeg.org
> > https://ffmpeg.org/mailman/listinfo/ffmpeg-devel
> >
> > To unsubscribe, visit link above, or email
> > ffmpeg-devel-request@ffmpeg.org with subject "unsubscribe".
> >
> _______________________________________________
> ffmpeg-devel mailing list
> ffmpeg-devel@ffmpeg.org
> https://ffmpeg.org/mailman/listinfo/ffmpeg-devel
>
> To unsubscribe, visit link above, or email
> ffmpeg-devel-request@ffmpeg.org with subject "unsubscribe".
>
Marton Balint Feb. 27, 2022, 5:55 p.m. UTC | #3
On Sun, 27 Feb 2022, Paul B Mahol wrote:

> On Sun, Feb 27, 2022 at 6:47 PM Marton Balint <cus@passwd.hu> wrote:
>
>>
>>
>> On Sat, 26 Feb 2022, Paul B Mahol wrote:
>>
>>> Signed-off-by: Paul B Mahol <onemda@gmail.com>
>>> ---
>>> libavformat/mpegtsenc.c | 4 ++++
>>> 1 file changed, 4 insertions(+)
>>>
>>> diff --git a/libavformat/mpegtsenc.c b/libavformat/mpegtsenc.c
>>> index 971b3f55d8..48cd54c770 100644
>>> --- a/libavformat/mpegtsenc.c
>>> +++ b/libavformat/mpegtsenc.c
>>> @@ -2097,6 +2097,10 @@ static int
>> mpegts_write_packet_internal(AVFormatContext *s, AVPacket *pkt)
>>>             ts_st->dvb_ac3_desc = dvb_ac3_desc;
>>>         }
>>>         av_free(hdr);
>>> +    } else if (st->codecpar->codec_id == AV_CODEC_ID_PCM_BLURAY) {
>>> +        mpegts_write_pes(s, st, buf, size, pts, dts,
>>> +                         pkt->flags & AV_PKT_FLAG_KEY, stream_id);
>>> +        return 0;
>>>     }
>>
>> This fixes what exactly?
>>
>
> -c copy for .m2ts file that have pcm_bluray audio codec.

Ok, but what happens without the patch?

Thanks,
Marton
Paul B Mahol Feb. 27, 2022, 8:45 p.m. UTC | #4
On Sun, Feb 27, 2022 at 6:56 PM Marton Balint <cus@passwd.hu> wrote:

>
>
> On Sun, 27 Feb 2022, Paul B Mahol wrote:
>
> > On Sun, Feb 27, 2022 at 6:47 PM Marton Balint <cus@passwd.hu> wrote:
> >
> >>
> >>
> >> On Sat, 26 Feb 2022, Paul B Mahol wrote:
> >>
> >>> Signed-off-by: Paul B Mahol <onemda@gmail.com>
> >>> ---
> >>> libavformat/mpegtsenc.c | 4 ++++
> >>> 1 file changed, 4 insertions(+)
> >>>
> >>> diff --git a/libavformat/mpegtsenc.c b/libavformat/mpegtsenc.c
> >>> index 971b3f55d8..48cd54c770 100644
> >>> --- a/libavformat/mpegtsenc.c
> >>> +++ b/libavformat/mpegtsenc.c
> >>> @@ -2097,6 +2097,10 @@ static int
> >> mpegts_write_packet_internal(AVFormatContext *s, AVPacket *pkt)
> >>>             ts_st->dvb_ac3_desc = dvb_ac3_desc;
> >>>         }
> >>>         av_free(hdr);
> >>> +    } else if (st->codecpar->codec_id == AV_CODEC_ID_PCM_BLURAY) {
> >>> +        mpegts_write_pes(s, st, buf, size, pts, dts,
> >>> +                         pkt->flags & AV_PKT_FLAG_KEY, stream_id);
> >>> +        return 0;
> >>>     }
> >>
> >> This fixes what exactly?
> >>
> >
> > -c copy for .m2ts file that have pcm_bluray audio codec.
>
> Ok, but what happens without the patch?
>
>
All pcm_bluray  frames are concatenated together in one big payload, I
thought at first that it may need own parser...


Thanks,
> 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-request@ffmpeg.org with subject "unsubscribe".
>
diff mbox series

Patch

diff --git a/libavformat/mpegtsenc.c b/libavformat/mpegtsenc.c
index 971b3f55d8..48cd54c770 100644
--- a/libavformat/mpegtsenc.c
+++ b/libavformat/mpegtsenc.c
@@ -2097,6 +2097,10 @@  static int mpegts_write_packet_internal(AVFormatContext *s, AVPacket *pkt)
             ts_st->dvb_ac3_desc = dvb_ac3_desc;
         }
         av_free(hdr);
+    } else if (st->codecpar->codec_id == AV_CODEC_ID_PCM_BLURAY) {
+        mpegts_write_pes(s, st, buf, size, pts, dts,
+                         pkt->flags & AV_PKT_FLAG_KEY, stream_id);
+        return 0;
     }
 
     if (ts_st->payload_size && (ts_st->payload_size + size > ts->pes_payload_size ||