Re: [FFmpeg-devel] [PATCH] fftools/ffmpeg_enc: Prevent duplicate A53 Closed Captions at frame rate up-conversion

2023-06-09 Thread Devin Heitmueller
here any good reason we couldn't rework the "-r" command line argument to invoke the fps filter (like we do with scaling) rather than re-implementing the same functionality inside of the ffmpeg program itself? It always seemed strange to me that it didn't work that way from the

Re: [FFmpeg-devel] [External Sender] Re: [PATCH] fftools/ffmpeg_enc: Prevent duplicate A53 Closed Captions at frame rate up-conversion

2023-06-13 Thread Devin Heitmueller
Although this does raise the issues that Anton raised regarding dropped/duplicated frames. My inclination would be to tell people "Don't use '-r' if you care about captions being properly preserved. Use '-vf fps' instead." But I recognize that there are plenty o

Re: [FFmpeg-devel] [PATCH] fftools/ffmpeg_enc: Prevent duplicate A53 Closed Captions at frame rate up-conversion

2023-06-13 Thread Devin Heitmueller
you specify "-r" on the command-line. Adding to the confusion is the fact that "-r" and "-vf fps" behave differently in terms of how the status is shown to the user (even though from a user's standpoint they are doing the same thing). Devin -- Devin Heitmu

Re: [FFmpeg-devel] [PATCH 0/7] Misc AFD improvements and support for Bar Data

2023-06-15 Thread Devin Heitmueller
On Wed, Jun 7, 2023 at 3:24 PM Devin Heitmueller wrote: > > This patch series includes some misc changes related to AFD, as well > as adding support for S2016-1 bar data. > > The current focus of this series for bar data is getting the basic > support in place within the raw d

Re: [FFmpeg-devel] [PATCH 0/7] Misc AFD improvements and support for Bar Data

2023-06-15 Thread Devin Heitmueller
aving to regenerate the entire patch series (assuming there are no other issues/comments). None of the other patches in the series depend on the drawtext patch, but the drawtext patch depends on other patches in the series. Devin -- Devin Heitmueller, Senior Software Engineer LTN Global Communications o:

[FFmpeg-devel] [PATCH 0/5] Add passthrough support for SCTE-35

2023-06-16 Thread Devin Heitmueller
Properly set up the MPEG-TS mux and recalculate the pts_adjust field in SCTE_35 packets, such that a user can transparently pass through SCTE-35 streams when both the input and output are MPEG-TS. Devin Heitmueller (5): avcodec: Add new side data type to contain original PTS value mpegts

[FFmpeg-devel] [PATCH 1/5] avcodec: Add new side data type to contain original PTS value

2023-06-16 Thread Devin Heitmueller
. Signed-off-by: Devin Heitmueller --- libavcodec/packet.h | 10 ++ 1 file changed, 10 insertions(+) diff --git a/libavcodec/packet.h b/libavcodec/packet.h index f28e7e7..a86a550 100644 --- a/libavcodec/packet.h +++ b/libavcodec/packet.h @@ -300,6 +300,16 @@ enum AVPacketSideDataType

[FFmpeg-devel] [PATCH 2/5] mpegts: Stash original PTS for SCTE-35 sections for processing later

2023-06-16 Thread Devin Heitmueller
We need the original PTS value in order to do subsequent processing, so set it as packet side data. Signed-off-by: Devin Heitmueller --- libavformat/mpegts.c | 9 - 1 file changed, 8 insertions(+), 1 deletion(-) diff --git a/libavformat/mpegts.c b/libavformat/mpegts.c index 385d78b

[FFmpeg-devel] [PATCH 3/5] mpegtsenc: Add support for output of SCTE-35 streams over TS

2023-06-16 Thread Devin Heitmueller
recompute the PTS values. Signed-off-by: Devin Heitmueller --- libavformat/mpegts.h| 1 + libavformat/mpegtsenc.c | 74 ++--- libavformat/mux.c | 6 ++-- 3 files changed, 75 insertions(+), 6 deletions(-) diff --git a/libavformat/mpegts.h b

[FFmpeg-devel] [PATCH 4/5] bsf: Add new bitstream filter to set pts_adjustment when reclocking

2023-06-16 Thread Devin Heitmueller
n the stream. See SCTE-35 2019 Sec 9.6 for information about the use of the pts_adjust field. This filter also tweaks the mpegtsenc mux to automatically add it so the user doesn't have to include it manually. Signed-off-by: Devin Heitmueller --- libavcodec/Makefile | 1 +

[FFmpeg-devel] [PATCH 5/5] mpegtsenc: Don't periodically announce PCR on SCTE-35 streams

2023-06-16 Thread Devin Heitmueller
right" fix should be for this, but for now just disable all periodic sending of PCR-only packets on SCTE-35 streams. Signed-off-by: Devin Heitmueller --- libavformat/mpegtsenc.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/libavformat/mpegtsenc.c b/libavformat/mpegtse

Re: [FFmpeg-devel] [PATCH 1/5] avcodec: Add new side data type to contain original PTS value

2023-06-19 Thread Devin Heitmueller
adata field rather than a new side data type (as that won't necessarily lock us into a new side data type that we would have to support), and the functionality is really specific to one use case. However I figured side data might be better since it avoids the conversion of the PTS to a

Re: [FFmpeg-devel] [PATCH 4/5] bsf: Add new bitstream filter to set pts_adjustment when reclocking

2023-06-19 Thread Devin Heitmueller
On Fri, Jun 16, 2023 at 5:58 PM Andreas Rheinhardt wrote: > > Devin Heitmueller: > > Because SCTE-35 messages are represented in TS streams as sections > > rather than PES packets, we cannot rely on ffmpeg's standard > > mechanisms to adjust PTS values if reclockin

Re: [FFmpeg-devel] [PATCH 1/5] avcodec: Add new side data type to contain original PTS value

2023-06-19 Thread Devin Heitmueller
inal input timestamp on arrival, and not something that has been transformed, and I worry that "transport" might be a bit vague as it isn't clear whether this was on input, output, or somewhere else in the workflow. That said, pick a name that will be considered acceptable to be merged

Re: [FFmpeg-devel] [PATCH 1/3] closed caption decoder: accept and decode a new codec type of 'raw 608 byte pairs'

2023-06-20 Thread Devin Heitmueller
de-note, it's probably worth noting that using a three-byte payload predates CEA-708. The prefix byte was present in earlier standards such as use in DVD GOPs, although the actual structure of the prefix byte differs in various standards. While the format for the ffmpeg codec does match what&#x

Re: [FFmpeg-devel] [PATCH 0/7] Misc AFD improvements and support for Bar Data

2023-06-22 Thread Devin Heitmueller
Does anyone else have any comments on this series that would prevent it from being merged upstream? If not, I can rebase the drawtext patch so there are no conflicts. Devin -- Devin Heitmueller, Senior Software Engineer LTN Global Communications o: +1 (301) 363-1001 w: https://ltnglobal.com e

Re: [FFmpeg-devel] [PATCH v2 4/4] decklink_enc: add support for SMPTE 2038 VANC packet output

2023-06-22 Thread Devin Heitmueller
On Tue, Jun 6, 2023 at 2:56 PM Devin Heitmueller wrote: > You indicated in patch 0/4 that you had some additional > feedback/comments on this patch series. Could you please provide > them? I've got other data formats I'm working on support for (i.e. > SCTE-104) whic

[FFmpeg-devel] [PATCH v3 1/2] decklink: move queue_size to an argument for ff_decklink_packet_queue_init

2023-06-30 Thread Devin Heitmueller
r. This patch makes no functional change to the behavior. It is being made to accommodate Marton Balin's request to split out the queue size for the new VANC queue being introduced in a later patch. Signed-off-by: Devin Heitmueller --- libavdevice/decklink_common.cpp | 4 ++--

[FFmpeg-devel] [PATCH v3 2/2] decklink_enc: add support for SMPTE 2038 VANC packet output

2023-06-30 Thread Devin Heitmueller
abstraction for data streams in general as opposed to just SMPTE 2038 packets. This is because subsequent patches will introduce support for other data codecs. Thanks to Marton Balint for review/feedback. Signed-off-by: Devin Heitmueller --- doc/outdevs.texi| 5 +++ libavdevice

[FFmpeg-devel] [PATCH v2 0/7] Misc AFD improvements and support for Bar Data

2023-06-30 Thread Devin Heitmueller
This patch series is essentially exactly the same as the one sent on June 7, but the vf_drawtext patch has been rebased against master to resolve a conflict, per Paul Mahol's request. Devin Heitmueller (7): libavcodec: Preserve AFD side data when going from AVPacket to AVFrame vf_dra

[FFmpeg-devel] [PATCH v2 1/7] libavcodec: Preserve AFD side data when going from AVPacket to AVFrame

2023-06-30 Thread Devin Heitmueller
This is needed to ensure that AFD data continues to work when capturing V210 video with the Decklink libavdevice input. Signed-off-by: Devin Heitmueller --- libavcodec/decode.c | 1 + 1 file changed, 1 insertion(+) diff --git a/libavcodec/decode.c b/libavcodec/decode.c index a7c1302..6ee2c85

[FFmpeg-devel] [PATCH v2 2/7] vf_drawtext: Add ability to show AFD value

2023-06-30 Thread Devin Heitmueller
ot;:fontsize=32:x=10:y=50:fontcolor=blue burnin.ts Signed-off-by: Devin Heitmueller Conflicts: libavfilter/vf_drawtext.c --- doc/filters.texi | 5 + libavfilter/vf_drawtext.c | 20 +++- 2 files changed, 24 insertions(+), 1 deletion(-) diff --git a/do

[FFmpeg-devel] [PATCH v2 3/7] avcodec/avframe: add new side data types for Bar Data

2023-06-30 Thread Devin Heitmueller
Add new side data types for both AVPacket and AVFrame to support "bar data" as defined in SMPTE 2016-1, ATSC A/53, and SCTE 128-1. Signed-off-by: Devin Heitmueller --- libavcodec/decode.c | 1 + libavcodec/defs.h | 12 libavcodec/packet.h | 6 ++ libavutil/fram

[FFmpeg-devel] [PATCH v2 4/7] libavfilter: Add filter to insert AFD/bar data

2023-06-30 Thread Devin Heitmueller
Introduce a new filter which allows the user to manually set the AFD or bar data side data on AVFrames. Signed-off-by: Devin Heitmueller --- doc/filters.texi | 52 ++ libavfilter/Makefile | 1 + libavfilter/allfilters.c | 1 + libavfilter/vf_afd.c | 133

[FFmpeg-devel] [PATCH v2 5/7] libavutil: Provide a side data description for newly introduced bar data

2023-06-30 Thread Devin Heitmueller
Add a new description for bar data, so that the presence of bar data can be seen through ffprobe. Signed-off-by: Devin Heitmueller --- libavutil/frame.c | 1 + 1 file changed, 1 insertion(+) diff --git a/libavutil/frame.c b/libavutil/frame.c index b6cee2d..03d1b31 100644 --- a/libavutil

[FFmpeg-devel] [PATCH v2 6/7] v210enc: Pass through bar data

2023-06-30 Thread Devin Heitmueller
When encoding to V210, make sure the bar side data makes it through in the resulting AVPacket. This is needed so the decklink output module can put out bar data as VANC when in 10-bit mode. Signed-off-by: Devin Heitmueller --- libavcodec/v210enc.c | 8 1 file changed, 8 insertions

[FFmpeg-devel] [PATCH v2 7/7] avdevice/decklink_enc: Add support for output of bar data as VANC

2023-06-30 Thread Devin Heitmueller
SMPTE ST2016-3 supports both AFD and bar data within the VANC message. Extend the existing support to pass through both. Example usage: ffmpeg -i input.ts -vf setafd=afd=1:code=0x00:bardata=1:top=100:bottom=120 -f decklink -vcodec v210 'DeckLink Duo (4)' Signed-off-by: Devin H

Re: [FFmpeg-devel] [PATCH v2 6/7] v210enc: Pass through bar data

2023-06-30 Thread Devin Heitmueller
Hi Kieran, On Fri, Jun 30, 2023 at 6:41 PM Kieran Kunhya wrote: > > On Fri, 30 Jun 2023 at 21:42, Devin Heitmueller > wrote: >> >> When encoding to V210, make sure the bar side data makes it through >> in the resulting AVPacket. This is needed so the decklink outpu

Re: [FFmpeg-devel] [PATCH v2 3/7] avcodec/avframe: add new side data types for Bar Data

2023-07-03 Thread Devin Heitmueller
ould make it a generic > bound0, bound1 or a union instead. It was only an extra eight bytes per video frame, so I wasn't particularly worried about the size. That said, perhaps a union would make it more clear that you can't set both simultaneously. Devin -- Devin Heitm

Re: [FFmpeg-devel] [PATCH v2 0/7] Misc AFD improvements and support for Bar Data

2023-07-03 Thread Devin Heitmueller
EVC stuff is submitted it makes sense to generate a short sample for FATE usage. Devin -- Devin Heitmueller, Senior Software Engineer LTN Global Communications o: +1 (301) 363-1001 w: https://ltnglobal.com e: devin.heitmuel...@ltnglobal.com ___ ffmpeg-

[FFmpeg-devel] [PATCH v2 2/5] mpegts: Stash original PTS for SCTE-35 sections for processing later

2023-07-03 Thread Devin Heitmueller
We need the original PTS value in order to do subsequent processing, so set it as packet side data. Signed-off-by: Devin Heitmueller --- libavformat/mpegts.c | 11 ++- 1 file changed, 10 insertions(+), 1 deletion(-) diff --git a/libavformat/mpegts.c b/libavformat/mpegts.c index 0b3edda

[FFmpeg-devel] [PATCH v2 0/5] Add passthrough support for SCTE-35

2023-07-03 Thread Devin Heitmueller
improvements suggested by Andreas Rheinhardt to the BSF filter. Devin Heitmueller (5): avcodec: Add new side data type to contain original PTS value mpegts: Stash original PTS for SCTE-35 sections for processing later mpegtsenc: Add support for output of SCTE-35 streams over TS mpegtsenc

[FFmpeg-devel] [PATCH v2 1/5] avcodec: Add new side data type to contain original PTS value

2023-07-03 Thread Devin Heitmueller
. Signed-off-by: Devin Heitmueller --- libavcodec/defs.h | 12 libavcodec/packet.h | 11 +++ 2 files changed, 23 insertions(+) diff --git a/libavcodec/defs.h b/libavcodec/defs.h index deadfe7..173020f 100644 --- a/libavcodec/defs.h +++ b/libavcodec/defs.h @@ -28,6 +28,7

[FFmpeg-devel] [PATCH v2 3/5] mpegtsenc: Add support for output of SCTE-35 streams over TS

2023-07-03 Thread Devin Heitmueller
recompute the PTS values. Signed-off-by: Devin Heitmueller --- libavformat/mpegts.h| 1 + libavformat/mpegtsenc.c | 74 ++--- libavformat/mux.c | 6 ++-- 3 files changed, 75 insertions(+), 6 deletions(-) diff --git a/libavformat/mpegts.h b

[FFmpeg-devel] [PATCH v2 4/5] mpegtsenc: Don't periodically announce PCR on SCTE-35 streams

2023-07-03 Thread Devin Heitmueller
right" fix should be for this, but for now just disable all periodic sending of PCR-only packets on SCTE-35 streams. Signed-off-by: Devin Heitmueller --- libavformat/mpegtsenc.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/libavformat/mpegtsenc.c b/libavformat/mpegtse

[FFmpeg-devel] [PATCH v2 5/5] bsf: Add new bitstream filter to set pts_adjustment when reclocking

2023-07-03 Thread Devin Heitmueller
h. Signed-off-by: Devin Heitmueller --- doc/bitstream_filters.texi | 9 libavcodec/Makefile | 1 + libavcodec/bitstream_filters.c | 1 + libavcodec/scte35ptsadjust_bsf.c | 103 +++ libavformat/mpegtsenc.c | 2 + 5 fil

Re: [FFmpeg-devel] [PATCH v2 4/5] mpegtsenc: Don't periodically announce PCR on SCTE-35 streams

2023-07-05 Thread Devin Heitmueller
tter document the behavior I am seeing and update the patch description so it's more clear why it is needed. Regards, Devin -- Devin Heitmueller, Senior Software Engineer LTN Global Communications o: +1 (301) 363-1001 w: https://ltnglobal.com e: devin.heitmuel...@ltnglobal.com __

Re: [FFmpeg-devel] [PATCH 1/7] lavu: add ecinfo sidedata

2023-07-21 Thread Devin Heitmueller
ERSION_MINOR 14 > +#define LIBAVUTIL_VERSION_MINOR 15 > #define LIBAVUTIL_VERSION_MICRO 100 > > #define LIBAVUTIL_VERSION_INT AV_VERSION_INT(LIBAVUTIL_VERSION_MAJOR, \ > -- > 2.41.0 > > ___ > ffmpeg-devel mailing list > f

[FFmpeg-devel] [PATCH v3 0/4] Add passthrough support for SCTE-35

2023-07-21 Thread Devin Heitmueller
been dropped as the behavior is no longer reproducible in master. Devin Heitmueller (4): avcodec: Add new side data type to contain original PTS value mpegts: Stash original PTS for SCTE-35 sections for processing later mpegtsenc: Add support for output of SCTE-35 streams over TS bsf: Add

[FFmpeg-devel] [PATCH v3 2/4] mpegts: Stash original PTS for SCTE-35 sections for processing later

2023-07-21 Thread Devin Heitmueller
We need the original PTS value in order to do subsequent processing, so set it as packet side data. Signed-off-by: Devin Heitmueller --- libavformat/mpegts.c | 11 ++- 1 file changed, 10 insertions(+), 1 deletion(-) diff --git a/libavformat/mpegts.c b/libavformat/mpegts.c index 0b3edda

[FFmpeg-devel] [PATCH v3 1/4] avcodec: Add new side data type to contain original PTS value

2023-07-21 Thread Devin Heitmueller
. Signed-off-by: Devin Heitmueller --- libavcodec/defs.h | 12 libavcodec/packet.h | 11 +++ 2 files changed, 23 insertions(+) diff --git a/libavcodec/defs.h b/libavcodec/defs.h index fbe3254..ff50d25 100644 --- a/libavcodec/defs.h +++ b/libavcodec/defs.h @@ -28,6 +28,7

[FFmpeg-devel] [PATCH v3 3/4] mpegtsenc: Add support for output of SCTE-35 streams over TS

2023-07-21 Thread Devin Heitmueller
recompute the PTS values. Signed-off-by: Devin Heitmueller --- libavformat/mpegts.h| 1 + libavformat/mpegtsenc.c | 74 ++--- libavformat/mux.c | 6 ++-- 3 files changed, 75 insertions(+), 6 deletions(-) diff --git a/libavformat/mpegts.h b

[FFmpeg-devel] [PATCH v3 4/4] bsf: Add new bitstream filter to set SCTE-35 pts_adjustment when reclocking

2023-07-21 Thread Devin Heitmueller
h. Signed-off-by: Devin Heitmueller --- doc/bitstream_filters.texi | 9 libavcodec/Makefile | 1 + libavcodec/bitstream_filters.c | 1 + libavcodec/scte35ptsadjust_bsf.c | 103 +++ libavformat/mpegtsenc.c | 2 + 5 fil

[FFmpeg-devel] [RFC][PATCH 0/3] Add support for decklink HDR metadata output

2023-07-21 Thread Devin Heitmueller
This patch series includes support for output of HDR metadata, as well as a change to the v210 encoder to ensure it is passed through to the decklink libavdevice. Comments/feedback are welcome. Devin Heitmueller (3): v210enc: Refactor side data passthrough v210enc: Add HDR metadata

[FFmpeg-devel] [RFC][PATCH 1/3] v210enc: Refactor side data passthrough

2023-07-21 Thread Devin Heitmueller
As the number of side-data items we pass through increases, refactor the values into a table in the same manner as done in decode.c. In the future it might make sense to make this a shared function which can be reused by other encoders. But for now keep it local. Signed-off-by: Devin

[FFmpeg-devel] [RFC][PATCH 2/3] v210enc: Add HDR metadata passthrough

2023-07-21 Thread Devin Heitmueller
In order to implement HDR output for decklink we need to expose the side data containing the mastering and light level info. Add the two additional types of side table to those which are passed through. Signed-off-by: Devin Heitmueller --- libavcodec/v210enc.c | 2 ++ 1 file changed, 2

[FFmpeg-devel] [RFC][PATCH 3/3] decklink: Add support for output of HDR metadata

2023-07-21 Thread Devin Heitmueller
in-house content as well as samples from 4kmedia.org. Testing was done with the Decklink 8K Pro and the Duo2 with 12.5.1 firmware, as well as with the Duo2 with 10.11.2 (before it supported HDR) to ensure there are no regressions. Signed-off-by: Devin Heitmueller --- libavdevice

Re: [FFmpeg-devel] [PATCH v3 0/4] Add passthrough support for SCTE-35

2023-07-27 Thread Devin Heitmueller
On Fri, Jul 21, 2023 at 4:38 PM Devin Heitmueller wrote: > > Properly set up the MPEG-TS mux and recalculate the pts_adjust field > in SCTE_35 packets, such that a user can transparently pass through > SCTE-35 streams when both the input and output are MPEG-TS. > > This pa

[FFmpeg-devel] [PATCH v4 0/4] Add passthrough support for SCTE-35

2023-07-31 Thread Devin Heitmueller
Properly set up the MPEG-TS mux and recalculate the pts_adjust field in SCTE_35 packets, such that a user can transparently pass through SCTE-35 streams when both the input and output are MPEG-TS. This patch series updated to reflect feedback from James Almer. Devin Heitmueller (4): avcodec

[FFmpeg-devel] [PATCH v4 1/4] avcodec: Add new side data type to contain original PTS value

2023-07-31 Thread Devin Heitmueller
. Signed-off-by: Devin Heitmueller --- libavcodec/defs.h | 12 libavcodec/packet.h | 11 +++ 2 files changed, 23 insertions(+) diff --git a/libavcodec/defs.h b/libavcodec/defs.h index fbe3254..ff50d25 100644 --- a/libavcodec/defs.h +++ b/libavcodec/defs.h @@ -28,6 +28,7

[FFmpeg-devel] [PATCH v4 2/4] mpegts: Stash original PTS for SCTE-35 sections for processing later

2023-07-31 Thread Devin Heitmueller
We need the original PTS value in order to do subsequent processing, so set it as packet side data. Signed-off-by: Devin Heitmueller --- libavformat/mpegts.c | 11 ++- 1 file changed, 10 insertions(+), 1 deletion(-) diff --git a/libavformat/mpegts.c b/libavformat/mpegts.c index 0b3edda

[FFmpeg-devel] [PATCH v4 3/4] mpegtsenc: Add support for output of SCTE-35 streams over TS

2023-07-31 Thread Devin Heitmueller
recompute the PTS values. Signed-off-by: Devin Heitmueller --- libavformat/mpegts.h| 1 + libavformat/mpegtsenc.c | 74 ++--- libavformat/mux.c | 6 ++-- 3 files changed, 75 insertions(+), 6 deletions(-) diff --git a/libavformat/mpegts.h b

[FFmpeg-devel] [PATCH v4 4/4] bsf: Add new bitstream filter to set SCTE-35 pts_adjustment when reclocking

2023-07-31 Thread Devin Heitmueller
roving the patch. Signed-off-by: Devin Heitmueller --- doc/bitstream_filters.texi | 9 libavcodec/Makefile | 1 + libavcodec/bitstream_filters.c | 1 + libavcodec/scte35ptsadjust_bsf.c | 100 +++ libavformat/mpegtsenc.c

Re: [FFmpeg-devel] Live Transcoding: SCTE35 passthrough

2022-07-19 Thread Devin Heitmueller
table recompiling from source, you can incorporate a variant of these patches into your local tree. Devin -- Devin Heitmueller, Senior Software Engineer LTN Global Communications o: +1 (301) 363-1001 w: https://ltnglobal.com e: devin.heitmuel...@ltnglobal.com __

Re: [FFmpeg-devel] Hardware purchase request Apple M2

2023-02-07 Thread Devin Heitmueller
are acceleration then there may still be benefits in running the tests on both platforms. Devin -- Devin Heitmueller, Senior Software Engineer LTN Global Communications o: +1 (301) 363-1001 w: https://ltnglobal.com e: devin.heitmuel...@ltnglobal.com

Re: [FFmpeg-devel] Request for assistance with adding new pixel format (NV12_8L128) in FFmpeg

2023-02-08 Thread Devin Heitmueller
ecode in the native format and then hand off those buffers to other hardware blocks like encoders, colorspace conversion, etc. Devin -- Devin Heitmueller, Senior Software Engineer LTN Global Communications o: +1 (301) 363-1001 w: https://ltnglobal.com e: devin.heitmuel...@ltngl

Re: [FFmpeg-devel] [PATCH 2/2] fftools/ffmpeg: add an option for writing pre-muxing stats

2023-02-08 Thread Devin Heitmueller
ples played out in last second. - SRT output - various SRT related statistics (lost packets, retransmits, connection RTT, etc) - HLS output - counters for various HTTP recoverable events (HTTP redirects, resends, etc), packets written Devin -- Devin Heitmueller, Senior Software Engineer

Re: [FFmpeg-devel] Request for assistance with adding new pixel format (NV12_8L128) in FFmpeg

2023-02-08 Thread Devin Heitmueller
ecific formats outside of the avutil pixel format list, in any > case. I can't really offer an opinion on the implementation detail regarding the avutil pixel format list. I suspect the OP is open to alternative approaches as long as the original requirement is met. Devin -- Devin Heitmuell

Re: [FFmpeg-devel] How to implement pcap ffmpeg format?

2023-02-22 Thread Devin Heitmueller
ed on, and rewriting UDP checksums if the NIC is doing hardware offloading. As a result I typically have to preprocess my pcap files (using tcprewrite) prior to playing them back out. Devin -- Devin Heitmueller, Senior Software Engineer LTN Global Communications o: +1 (301) 363-10

[FFmpeg-devel] [PATCH 0/3] Minor decklink output fixes

2023-02-23 Thread Devin Heitmueller
The following patch series contains several small fixes to the decklink output support. Devin Heitmueller (3): decklink: Don't take for granted that first frame to decklink output will be PTS 0 decklink: Fix setting of last_pts to only be set for video decklink: Fix unused var

[FFmpeg-devel] [PATCH 1/3] decklink: Don't take for granted that first frame to decklink output will be PTS 0

2023-02-23 Thread Devin Heitmueller
ll. Issue can be reproduced with the following command-line: ./ffmpeg -copyts -i foo.ts -f decklink -vcodec v210 -ac 2 'DeckLink Duo (4)' Keep track of the PTS of the first frame received, so that when we enable start playback we can provide that value to the decklink driver.

[FFmpeg-devel] [PATCH 2/3] decklink: Fix setting of last_pts to only be set for video

2023-02-23 Thread Devin Heitmueller
stop routine if the last packet received contained audio. Move the setting of last_pts to just be for the video stream. Signed-off-by: Devin Heitmueller --- libavdevice/decklink_enc.cpp | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/libavdevice/decklink_enc.cpp b/libavd

[FFmpeg-devel] [PATCH 3/3] decklink: Fix unused variable compiler warnings

2023-02-23 Thread Devin Heitmueller
Due to refactoring, the ctx/cctx variables are never actually used in ff_decklink_write_packet(), so just remove them. Signed-off-by: Devin Heitmueller --- libavdevice/decklink_enc.cpp | 2 -- 1 file changed, 2 deletions(-) diff --git a/libavdevice/decklink_enc.cpp b/libavdevice

Re: [FFmpeg-devel] [PATCH 1/3] decklink: Don't take for granted that first frame to decklink output will be PTS 0

2023-03-01 Thread Devin Heitmueller
iced that, but noticing that the first frame got dropped is probably not something that would have been immediately obvious. In any case, I prefer your approach and will resubmit. Thanks for the feedback, Devin -- Devin Heitmueller, Senior Software Engineer LTN Global Communications o: +1 (3

[FFmpeg-devel] [PATCH v2 1/3] decklink: Don't take for granted that first frame to decklink output will be PTS 0

2023-03-03 Thread Devin Heitmueller
to Marton Balint for review and suggestion to use AV_NOPTS_VALUE rather than zero for the initial value. Signed-off-by: Devin Heitmueller --- libavdevice/decklink_common.h | 1 + libavdevice/decklink_enc.cpp | 8 ++-- 2 files changed, 7 insertions(+), 2 deletions(-) diff --git a/libavdevice

[FFmpeg-devel] [PATCH v2 2/3] decklink: Fix setting of last_pts to only be set for video

2023-03-03 Thread Devin Heitmueller
stop routine if the last packet received contained audio. Move the setting of last_pts to just be for the video stream. Signed-off-by: Devin Heitmueller --- libavdevice/decklink_enc.cpp | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/libavdevice/decklink_enc.cpp b/libavd

[FFmpeg-devel] [PATCH v2 3/3] decklink: Fix unused variable compiler warnings

2023-03-03 Thread Devin Heitmueller
Due to refactoring, the ctx/cctx variables are never actually used in ff_decklink_write_packet(), so just remove them. Signed-off-by: Devin Heitmueller --- libavdevice/decklink_enc.cpp | 2 -- 1 file changed, 2 deletions(-) diff --git a/libavdevice/decklink_enc.cpp b/libavdevice

[FFmpeg-devel] RFC: Preserving original demux timestamps in AVPackets

2023-03-03 Thread Devin Heitmueller
stream? Thanks, Devin -- Devin Heitmueller, Senior Software Engineer LTN Global Communications o: +1 (301) 363-1001 w: https://ltnglobal.com e: devin.heitmuel...@ltnglobal.com ___ ffmpeg-devel mailing list ffmpeg-devel@ffmpeg.org https://ffmpeg.org/m

[FFmpeg-devel] [PATCH] decklink: Add support for compressed AC-3 output over SDI

2023-03-09 Thread Devin Heitmueller
ltraStudio Mini Monitor' Note that the default behavior continues to be to do PCM output, which means without specifying the copy codec a stream containing AC-3 will be decoded and downmixed to stereo audio before output. Signed-off-by: Devin Heitmueller --- libavdevice/d

[FFmpeg-devel] [PATCH 1/2] mpegtsenc: Restrict "async" behavior to KLV async packets

2023-03-09 Thread Devin Heitmueller
the if() statement to ensure it only gets applied if the codec actually is KLV. Signed-off-by: Devin Heitmueller --- libavformat/mpegtsenc.c | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/libavformat/mpegtsenc.c b/libavformat/mpegtsenc.c index ceed089587..3f201cce1d 100644

[FFmpeg-devel] [PATCH 2/2] Add support for preserving SMPTE 2038 when transcoding MPEG-TS streams

2023-03-09 Thread Devin Heitmueller
VANC over decklink SDI. Signed-off-by: Devin Heitmueller --- libavcodec/codec_desc.c | 6 ++ libavcodec/codec_id.h | 1 + libavformat/mpegts.c| 1 + libavformat/mpegtsenc.c | 5 + libavformat/mux.c | 6 -- 5 files changed, 17 insertions(+), 2 deletions(-) diff --git a

Re: [FFmpeg-devel] [PATCH] decklink: Add support for compressed AC-3 output over SDI

2023-03-10 Thread Devin Heitmueller
ave a second use case prior to refactoring the code. Regards, Devin -- Devin Heitmueller, Senior Software Engineer LTN Global Communications o: +1 (301) 363-1001 w: https://ltnglobal.com e: devin.heitmuel...@ltnglobal.com ___ ffmpeg-devel mailing li

[FFmpeg-devel] [PATCH v3 0/5] Add support for Closed Caption FIFO

2023-04-21 Thread Devin Heitmueller
This updated patch series addresses all issues reported to date. Specifically, the latest round includes a memory leak spotted by Lance Wang and the functions have been renamed to be prefixed with ff_ per James Almer's suggestion. Thanks, Devin Devin Heitmueller (5): ccfifo: Properly h

[FFmpeg-devel] [PATCH v3 1/5] ccfifo: Properly handle CEA-708 captions through framerate conversion

2023-04-21 Thread Devin Heitmueller
rate. Signed-off-by: Devin Heitmueller --- libavfilter/Makefile | 1 + libavfilter/ccfifo.c | 191 +++ libavfilter/ccfifo.h | 85 +++ 3 files changed, 277 insertions(+) create mode 100644 libavfilter/ccfifo.c create mode 1

[FFmpeg-devel] [PATCH v3 2/5] vf_fps: properly preserve CEA-708 captions

2023-04-21 Thread Devin Heitmueller
1080i59 to 720p59 and vice-versa). Make use of the new ccfifo mechanism to ensure that caption data is properly preserved. Signed-off-by: Devin Heitmueller --- libavfilter/vf_fps.c | 9 - 1 file changed, 8 insertions(+), 1 deletion(-) diff --git a/libavfilter/vf_fps.c b/libavfilter/vf_fps.c

[FFmpeg-devel] [PATCH v3 3/5] yadif: Properly preserve CEA-708 closed captions

2023-04-21 Thread Devin Heitmueller
A-708 data is properly preserved through this filter. Signed-off-by: Devin Heitmueller --- libavfilter/vf_bwdif.c | 7 +++ libavfilter/vf_yadif.c | 6 ++ libavfilter/vf_yadif_cuda.c | 8 libavfilter/yadif.h | 2 ++ libavfilter/yadif_common.c | 5 + 5 files ch

[FFmpeg-devel] [PATCH v3 4/5] tinterlace: Properly preserve CEA-708 closed captions

2023-04-21 Thread Devin Heitmueller
noticing a couple of missed codepaths for injection on output. Thanks to Lance Wang for pointing out a memory leak. Signed-off-by: Devin Heitmueller --- libavfilter/tinterlace.h| 2 ++ libavfilter/vf_tinterlace.c | 9 + 2 files changed, 11 insertions(+) diff --git a/libavfilter

[FFmpeg-devel] [PATCH v3 5/5] vf_ccrepack: Add new filter to repack CEA-708 side data

2023-04-21 Thread Devin Heitmueller
ensuring the 608 tuples are at the front of the payload. Signed-off-by: Devin Heitmueller --- doc/filters.texi | 10 + libavfilter/Makefile | 1 + libavfilter/allfilters.c | 1 + libavfilter/vf_ccrepack.c | 100 ++ 4 files changed

[FFmpeg-devel] [PATCH 1/2] decklink: Move AVPacketQueue into decklink_common

2023-04-21 Thread Devin Heitmueller
Move the AVPacketQueue functionality that is currently only used for the decklink decode module into decklink_common, so it can be shared by the decklink encoder (i.e. for VANC insertion when we receive data packets separate from video). Signed-off-by: Devin Heitmueller --- libavdevice

[FFmpeg-devel] [PATCH 2/2] decklink_enc: add support for SMPTE 2038 VANC packet output

2023-04-21 Thread Devin Heitmueller
abstraction for data streams in general as opposed to just SMPTE 2038 packets. This is because subsequent patches will introduce support for other data codecs. Signed-off-by: Devin Heitmueller --- libavdevice/decklink_common.cpp | 16 +++ libavdevice/decklink_common.h | 4 ++ libavdevice

[FFmpeg-devel] [PATCH 0/2] Implement SMPTE 2038 output support over Decklink SDI

2023-04-21 Thread Devin Heitmueller
. Devin Devin Heitmueller (2): decklink: Move AVPacketQueue into decklink_common decklink_enc: add support for SMPTE 2038 VANC packet output libavdevice/decklink_common.cpp | 131 libavdevice/decklink_common.h | 11 libavdevice/decklink_dec.cpp

[FFmpeg-devel] [RFC/PATCH] decklink_enc: Add support for playout of EIA-608 caption codec

2023-04-21 Thread Devin Heitmueller
f gets moved to libavutil then the routine here can be simplified. Signed-off-by: Devin Heitmueller --- libavdevice/decklink_common.h | 2 + libavdevice/decklink_enc.cpp | 94 ++- libavdevice/decklink_enc_c.c | 2 +- 3 files changed, 95 insertions(

Re: [FFmpeg-devel] [PATCH 0/2] Implement SMPTE 2038 output support over Decklink SDI

2023-04-24 Thread Devin Heitmueller
ket_list functions since thread-safeness isn't really a requirement for this particular case. It's probably worth noting though that I extended the avpacket_queue method to allow me to peek at the first packet in the queue (which avpriv_packet_list doesn't support today). Hence conv

Re: [FFmpeg-devel] [PATCH v3 1/5] ccfifo: Properly handle CEA-708 captions through framerate conversion

2023-04-26 Thread Devin Heitmueller
; + > > + > > +/** > > + * Read a frame into a CC Fifo > > > > It's not clear I think. I don't love the "inject/extract" naming, but I couldn't think of a better name (I've actually renamed those functions a couple of times over the yea

Re: [FFmpeg-devel] [PATCH 0/2] Implement SMPTE 2038 output support over Decklink SDI

2023-04-26 Thread Devin Heitmueller
think it changes anything about the fundamental design, and it doesn't eliminate the need for stashing the data packets until the corresponding video is to be sent out. Devin -- Devin Heitmueller, Senior Software Engineer LTN Global Communications o: +1 (301) 363-1001 w: https

Re: [FFmpeg-devel] [PATCH 0/2] Implement SMPTE 2038 output support over Decklink SDI

2023-04-26 Thread Devin Heitmueller
you > factorize it to a non-static function, then it should be > ff_decklink_packet_queue_xxx. I never really liked the naming either, and agree that it implies the functionality is public rather than private to decklink. I can submit a patch renaming the functions. Devin -- Devin Heit

[FFmpeg-devel] [PATCH v4 0/6] Add support for Closed Caption FIFO

2023-04-28 Thread Devin Heitmueller
This updated series includes fixes for feedback by Lance Wang, as well as a second set of inject/extract functions that let you pass the raw CC bytes as opposed to an AVFrame. This is used by the last patch in the series to playout e608 packets with the decklink output. Devin Heitmueller (6

[FFmpeg-devel] [PATCH v4 1/6] ccfifo: Properly handle CEA-708 captions through framerate conversion

2023-04-28 Thread Devin Heitmueller
rate. Thanks for Lance Wang for providing review/feedback. Signed-off-by: Devin Heitmueller --- libavfilter/Makefile | 1 + libavfilter/ccfifo.c | 240 +++ libavfilter/ccfifo.h | 94 3 files changed, 335 insertions(+) create

[FFmpeg-devel] [PATCH v4 2/6] vf_fps: properly preserve CEA-708 captions

2023-04-28 Thread Devin Heitmueller
1080i59 to 720p59 and vice-versa). Make use of the new ccfifo mechanism to ensure that caption data is properly preserved. Signed-off-by: Devin Heitmueller --- libavfilter/vf_fps.c | 9 - 1 file changed, 8 insertions(+), 1 deletion(-) diff --git a/libavfilter/vf_fps.c b/libavfilter/vf_fps.c

[FFmpeg-devel] [PATCH v4 3/6] yadif: Properly preserve CEA-708 closed captions

2023-04-28 Thread Devin Heitmueller
A-708 data is properly preserved through this filter. Signed-off-by: Devin Heitmueller --- libavfilter/vf_bwdif.c | 7 +++ libavfilter/vf_yadif.c | 6 ++ libavfilter/vf_yadif_cuda.c | 8 libavfilter/yadif.h | 2 ++ libavfilter/yadif_common.c | 5 + 5 files ch

[FFmpeg-devel] [PATCH v4 4/6] tinterlace: Properly preserve CEA-708 closed captions

2023-04-28 Thread Devin Heitmueller
noticing a couple of missed codepaths for injection on output. Thanks to Lance Wang for pointing out a memory leak. Signed-off-by: Devin Heitmueller --- libavfilter/tinterlace.h| 2 ++ libavfilter/vf_tinterlace.c | 9 + 2 files changed, 11 insertions(+) diff --git a/libavfilter

[FFmpeg-devel] [PATCH v4 5/6] vf_ccrepack: Add new filter to repack CEA-708 side data

2023-04-28 Thread Devin Heitmueller
ensuring the 608 tuples are at the front of the payload. Signed-off-by: Devin Heitmueller --- doc/filters.texi | 10 + libavfilter/Makefile | 1 + libavfilter/allfilters.c | 1 + libavfilter/vf_ccrepack.c | 100 ++ 4 files changed

[FFmpeg-devel] [PATCH v4 6/6] decklink_enc: add support for playout of 608 captions in MOV files

2023-04-28 Thread Devin Heitmueller
h used for log2_tab.c. Signed-off-by: Devin Heitmueller --- libavdevice/Makefile | 1 + libavdevice/ccfifo.c | 24 libavdevice/decklink_common.h | 3 ++ libavdevice/decklink_enc.cpp | 66 +++ libavdevice/decklink_enc

[FFmpeg-devel] [PATCH v2 0/4] Implement SMPTE 2038 output support over Decklink SDI

2023-04-28 Thread Devin Heitmueller
patch series includes some refactoring for the decklink queue requested by Marton Balint. Devin Devin Heitmueller (4): decklink: Move AVPacketQueue into decklink_common decklink: rename AVPacketQueue to DecklinkPacketQueue decklink: Convert to using avpriv_packet_list functions decklink_enc

[FFmpeg-devel] [PATCH v2 1/4] decklink: Move AVPacketQueue into decklink_common

2023-04-28 Thread Devin Heitmueller
Move the AVPacketQueue functionality that is currently only used for the decklink decode module into decklink_common, so it can be shared by the decklink encoder (i.e. for VANC insertion when we receive data packets separate from video). Signed-off-by: Devin Heitmueller --- libavdevice

[FFmpeg-devel] [PATCH v2 2/4] decklink: rename AVPacketQueue to DecklinkPacketQueue

2023-04-28 Thread Devin Heitmueller
Signed-off-by: Devin Heitmueller --- libavdevice/decklink_common.cpp | 18 +- libavdevice/decklink_common.h | 18 +- libavdevice/decklink_dec.cpp| 16 3 files changed, 26 insertions(+), 26 deletions(-) diff --git a/libavdevice/deckli

[FFmpeg-devel] [PATCH v2 3/4] decklink: Convert to using avpriv_packet_list functions

2023-04-28 Thread Devin Heitmueller
The existing DecklinkQueue implementation was using the PacketList structure but wasn't using the standard avpriv_packet_list_get and avpriv_packet_list_put functions. Convert to using them so we eliminate the duplicate logic, per Marton Balint's suggestion. Signed-off-by: Devin H

[FFmpeg-devel] [PATCH v2 4/4] decklink_enc: add support for SMPTE 2038 VANC packet output

2023-04-28 Thread Devin Heitmueller
abstraction for data streams in general as opposed to just SMPTE 2038 packets. This is because subsequent patches will introduce support for other data codecs. Signed-off-by: Devin Heitmueller --- libavdevice/decklink_common.cpp | 16 +++ libavdevice/decklink_common.h | 4 ++ libavdevice

Re: [FFmpeg-devel] [PATCH v4 5/6] vf_ccrepack: Add new filter to repack CEA-708 side data

2023-05-02 Thread Devin Heitmueller
Hi Lance, On Sun, Apr 30, 2023 at 6:42 PM Lance Wang wrote: > > On Fri, Apr 28, 2023 at 11:43 PM Devin Heitmueller < > devin.heitmuel...@ltnglobal.com> wrote: > > > THis filter can correct certain issues seen from upstream sources > > where the cc_count is not prop

Re: [FFmpeg-devel] [PATCH v4 6/6] decklink_enc: add support for playout of 608 captions in MOV files

2023-05-02 Thread Devin Heitmueller
in having multiple AvCCFifo instances in the pipeline. In other words, if you added a feature to the MOV demuxer, it wouldn't prevent us from running the packets through an AvCCFifo instance on the output side. The patch proposed doesn't preclude you adding such a feature on the demux side

<    1   2   3   4   >