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
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
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
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
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:
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
.
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
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
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
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 +
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
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
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
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
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
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
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
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 ++--
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
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
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
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
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
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
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
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
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
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
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
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-
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
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
.
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
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
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
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
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
__
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
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
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
.
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
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
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
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
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
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
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
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
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
.
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
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
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
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
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
__
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
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
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
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
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
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
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.
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
.
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
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(
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
; +
> > +
> > +/**
> > + * 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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
201 - 300 of 329 matches
Mail list logo