[FFmpeg-cvslog] changelog: update for 7.0

2024-04-04 Thread Jean-Baptiste Kempf
ffmpeg | branch: release/7.0 | Jean-Baptiste Kempf  | Wed 
Apr  3 23:12:54 2024 +0200| [3b6732bcb30783daaf5998207bf79061f4733ff5] | 
committer: James Almer

changelog: update for 7.0

Signed-off-by: James Almer 
(cherry picked from commit 486a2b964ba4e496ecd821e189d495ad06585abe)

> http://git.videolan.org/gitweb.cgi/ffmpeg.git/?a=commit;h=3b6732bcb30783daaf5998207bf79061f4733ff5
---

 Changelog | 11 ++-
 1 file changed, 10 insertions(+), 1 deletion(-)

diff --git a/Changelog b/Changelog
index e83a00e35c..456af3ff59 100644
--- a/Changelog
+++ b/Changelog
@@ -17,7 +17,7 @@ version 7.0:
 - qrencode filter and qrencodesrc source
 - quirc filter
 - lavu/eval: introduce randomi() function in expressions
-- VVC decoder
+- VVC decoder (experimental)
 - fsync filter
 - Raw Captions with Time (RCWT) closed caption muxer
 - ffmpeg CLI -bsf option may now be used for input as well as output
@@ -38,6 +38,15 @@ version 7.0:
 - ffplay with hwaccel decoding support (depends on vulkan renderer via 
libplacebo)
 - dnn filter libtorch backend
 - Android content URIs protocol
+- AOMedia Film Grain Synthesis 1 (AFGS1)
+- RISC-V optimizations for AAC, FLAC, JPEG-2000,LPC, RV4.0, SVQ, VC1, VP8 and 
more
+- Loongarch optimizations for HEVC decoding
+- Important AArch64 optimizations for HEVC
+- IAMF support inside MP4/ISOBMFF
+- Support for HEIF/AVIF still images and tiled still images
+- Dolby Vision profile 10 support in AV1
+- Support for Ambient Viewing Environment metadata in MP4/ISOBMFF
+- HDR10 metadata passthrough when encoding with libx264, libx265 and libsvtav1
 
 
 version 6.1:

___
ffmpeg-cvslog mailing list
ffmpeg-cvslog@ffmpeg.org
https://ffmpeg.org/mailman/listinfo/ffmpeg-cvslog

To unsubscribe, visit link above, or email
ffmpeg-cvslog-requ...@ffmpeg.org with subject "unsubscribe".


[FFmpeg-cvslog] changelog: update for 7.0

2024-04-04 Thread Jean-Baptiste Kempf
ffmpeg | branch: master | Jean-Baptiste Kempf  | Wed Apr  3 
23:12:54 2024 +0200| [486a2b964ba4e496ecd821e189d495ad06585abe] | committer: 
James Almer

changelog: update for 7.0

Signed-off-by: James Almer 

> http://git.videolan.org/gitweb.cgi/ffmpeg.git/?a=commit;h=486a2b964ba4e496ecd821e189d495ad06585abe
---

 Changelog | 11 ++-
 1 file changed, 10 insertions(+), 1 deletion(-)

diff --git a/Changelog b/Changelog
index fcc9f7cfba..a65c8ceee5 100644
--- a/Changelog
+++ b/Changelog
@@ -21,7 +21,7 @@ version 7.0:
 - qrencode filter and qrencodesrc source
 - quirc filter
 - lavu/eval: introduce randomi() function in expressions
-- VVC decoder
+- VVC decoder (experimental)
 - fsync filter
 - Raw Captions with Time (RCWT) closed caption muxer
 - ffmpeg CLI -bsf option may now be used for input as well as output
@@ -42,6 +42,15 @@ version 7.0:
 - ffplay with hwaccel decoding support (depends on vulkan renderer via 
libplacebo)
 - dnn filter libtorch backend
 - Android content URIs protocol
+- AOMedia Film Grain Synthesis 1 (AFGS1)
+- RISC-V optimizations for AAC, FLAC, JPEG-2000,LPC, RV4.0, SVQ, VC1, VP8 and 
more
+- Loongarch optimizations for HEVC decoding
+- Important AArch64 optimizations for HEVC
+- IAMF support inside MP4/ISOBMFF
+- Support for HEIF/AVIF still images and tiled still images
+- Dolby Vision profile 10 support in AV1
+- Support for Ambient Viewing Environment metadata in MP4/ISOBMFF
+- HDR10 metadata passthrough when encoding with libx264, libx265 and libsvtav1
 
 
 version 6.1:

___
ffmpeg-cvslog mailing list
ffmpeg-cvslog@ffmpeg.org
https://ffmpeg.org/mailman/listinfo/ffmpeg-cvslog

To unsubscribe, visit link above, or email
ffmpeg-cvslog-requ...@ffmpeg.org with subject "unsubscribe".


[FFmpeg-cvslog] doc/developer: require asm for RISC-V

2023-12-05 Thread Jean-Baptiste Kempf
ffmpeg | branch: master | Jean-Baptiste Kempf  | Tue Dec  5 
10:56:55 2023 +0100| [6e26a5a64e123535026e2266ae039baed72f35d6] | committer: J. 
Dekker

doc/developer: require asm for RISC-V

Explicitly document our usage of assembly, following suit with other
architectures.

Signed-off-by: J. Dekker 

> http://git.videolan.org/gitweb.cgi/ffmpeg.git/?a=commit;h=6e26a5a64e123535026e2266ae039baed72f35d6
---

 doc/developer.texi | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/doc/developer.texi b/doc/developer.texi
index 26dc5b9749..eed0ee4915 100644
--- a/doc/developer.texi
+++ b/doc/developer.texi
@@ -99,7 +99,7 @@ The specific syntax used for writing assembly is:
 NASM on x86;
 
 @item
-GAS on ARM.
+GAS on ARM and RISC-V.
 @end itemize
 
 A unit testing framework for assembly called @code{checkasm} lives under

___
ffmpeg-cvslog mailing list
ffmpeg-cvslog@ffmpeg.org
https://ffmpeg.org/mailman/listinfo/ffmpeg-cvslog

To unsubscribe, visit link above, or email
ffmpeg-cvslog-requ...@ffmpeg.org with subject "unsubscribe".


[FFmpeg-cvslog] Doc: Tech Resolution Process

2021-03-11 Thread Jean-Baptiste Kempf
ffmpeg | branch: master | Jean-Baptiste Kempf  | Wed Mar 10 
21:40:22 2021 +0100| [b7bf631f9131b78fc6535c7ecc5ad0c76f532d70] | committer: 
Anton Khirnov

Doc: Tech Resolution Process

> http://git.videolan.org/gitweb.cgi/ffmpeg.git/?a=commit;h=b7bf631f9131b78fc6535c7ecc5ad0c76f532d70
---

 doc/dev_community/community.md  |  2 +-
 doc/dev_community/resolution_process.md | 91 +
 2 files changed, 92 insertions(+), 1 deletion(-)

diff --git a/doc/dev_community/community.md b/doc/dev_community/community.md
index 49d7f899aa..21e08e20e3 100644
--- a/doc/dev_community/community.md
+++ b/doc/dev_community/community.md
@@ -53,7 +53,7 @@ can trigger a new election of the TC.
 The members of the TC can be elected from outside of the GA.
 Candidates for election can either be suggested or self-nominated.
 
-The conflict resolution process is detailed in the [resolution process] 
document.
+The conflict resolution process is detailed in the [resolution 
process](resolution_process.md) document.
 
 ## Community committee
 
diff --git a/doc/dev_community/resolution_process.md 
b/doc/dev_community/resolution_process.md
new file mode 100644
index 00..4ed0b63c43
--- /dev/null
+++ b/doc/dev_community/resolution_process.md
@@ -0,0 +1,91 @@
+# Technical Committee
+
+_This document only makes sense with the rules from [the community 
document](community)_.
+
+The Technical Committee (**TC**) is here to arbitrate and make decisions when
+technical conflicts occur in the project.
+
+The TC main role is to resolve technical conflicts.
+It is therefore not a technical steering committee, but it is understood that
+some decisions might impact the future of the project.
+
+# Process
+
+## Seizing
+
+The TC can take possession of any technical matter that it sees fit.
+
+To involve the TC in a matter, email tc@ or CC them on an ongoing discussion.
+
+As members of TC are developers, they also can email tc@ to raise an issue.
+
+## Announcement
+
+The TC, once seized, must announce itself on the main mailing list, with a 
_[TC]_ tag.
+
+The TC has 2 modes of operation: a RFC one and an internal one.
+
+If the TC thinks it needs the input from the larger community, the TC can call
+for a RFC. Else, it can decide by itself.
+
+If the disagreement involves a member of the TC, that member should recuse
+themselves from the decision.
+
+The decision to use a RFC process or an internal discussion is a discretionary
+decision of the TC.
+
+The TC can also reject a seizure for a few reasons such as:
+the matter was not discussed enough previously; it lacks expertise to reach a
+beneficial decision on the matter; or the matter is too trivial.
+
+### RFC call
+
+In the RFC mode, one person from the TC posts on the mailing list the
+technical question and will request input from the community.
+
+The mail will have the following specification:
+* a precise title
+* a specific tag [TC RFC]
+* a top-level email
+* contain a precise question that does not exceed 100 words and that is 
answerable by developers
+* may have an extra description, or a link to a previous discussion, if deemed 
necessary,
+* contain a precise end date for the answers.
+
+The answers from the community must be on the main mailing list and must have
+the following specification:
+* keep the tag and the title unchanged
+* limited to 400 words
+* a first-level, answering directly to the main email
+* answering to the question.
+
+Further replies to answers are permitted, as long as they conform to the
+community standards of politeness, they are limited to 100 words, and are not
+nested more than once. (max-depth=2)
+
+After the end-date, mails on the thread will be ignored.
+
+Violations of those rules will be escalated through the Community Committee.
+
+After all the emails are in, the TC has 96 hours to give its final decision.
+Exceptionally, the TC can request an extra delay, that will be notified on the
+mailing list.
+
+### Within TC
+
+In the internal case, the TC has 96 hours to give its final decision.
+Exceptionally, the TC can request an extra delay.
+
+
+## Decisions
+
+The decisions from the TC will be sent on the mailing list, with the _[TC]_ 
tag.
+
+Internally, the TC should take decisions with a majority, or using
+ranked-choice voting.
+
+The decision from the TC should be published with a summary of the reasons that
+lead to this decision.
+
+The decisions from the TC are final, until the matters are reopened after
+no less than one year.
+

___
ffmpeg-cvslog mailing list
ffmpeg-cvslog@ffmpeg.org
https://ffmpeg.org/mailman/listinfo/ffmpeg-cvslog

To unsubscribe, visit link above, or email
ffmpeg-cvslog-requ...@ffmpeg.org with subject "unsubscribe".

[FFmpeg-cvslog] avcodec: add SpeedHQ encoder

2020-11-24 Thread Jean-Baptiste Kempf
ffmpeg | branch: master | Jean-Baptiste Kempf  | Mon Nov  9 
12:25:02 2020 +0100| [052a5993adfc749b4283aac4ca0dec3087b7091a] | committer: 
Paul B Mahol

avcodec: add SpeedHQ encoder

> http://git.videolan.org/gitweb.cgi/ffmpeg.git/?a=commit;h=052a5993adfc749b4283aac4ca0dec3087b7091a
---

 Changelog  |   1 +
 doc/general_contents.texi  |   2 +-
 libavcodec/Makefile|   1 +
 libavcodec/allcodecs.c |   1 +
 libavcodec/mpegutils.h |   1 +
 libavcodec/mpegvideo.h |   3 +
 libavcodec/mpegvideo_enc.c |  53 +++-
 libavcodec/speedhq.c   |   8 +-
 libavcodec/speedhqenc.c| 316 +
 libavcodec/speedhqenc.h|  48 +++
 libavcodec/version.h   |   4 +-
 11 files changed, 428 insertions(+), 10 deletions(-)

diff --git a/Changelog b/Changelog
index fcdabce2f2..8b2e17378c 100644
--- a/Changelog
+++ b/Changelog
@@ -46,6 +46,7 @@ version :
 - NVDEC AV1 hwaccel
 - DXVA2/D3D11VA hardware accelerated AV1 decoding
 - speechnorm filter
+- SpeedHQ encoder
 
 
 version 4.3:
diff --git a/doc/general_contents.texi b/doc/general_contents.texi
index 7033816b5a..1be6f9b683 100644
--- a/doc/general_contents.texi
+++ b/doc/general_contents.texi
@@ -972,7 +972,7 @@ following image formats are supported:
 @item MPEG-4 part 2 Microsoft variant version 1  @tab @tab  X
 @item MPEG-4 part 2 Microsoft variant version 2  @tab  X  @tab  X
 @item MPEG-4 part 2 Microsoft variant version 3  @tab  X  @tab  X
-@item Newtek SpeedHQ   @tab @tab  X
+@item Newtek SpeedHQ   @tab  X  @tab  X
 @item Nintendo Gamecube THP video  @tab @tab  X
 @item NotchLC@tab @tab  X
 @item NuppelVideo/RTjpeg @tab @tab  X
diff --git a/libavcodec/Makefile b/libavcodec/Makefile
index b4777be4d4..a6435c9e85 100644
--- a/libavcodec/Makefile
+++ b/libavcodec/Makefile
@@ -625,6 +625,7 @@ OBJS-$(CONFIG_SONIC_DECODER)   += sonic.o
 OBJS-$(CONFIG_SONIC_ENCODER)   += sonic.o
 OBJS-$(CONFIG_SONIC_LS_ENCODER)+= sonic.o
 OBJS-$(CONFIG_SPEEDHQ_DECODER) += speedhq.o mpeg12.o mpeg12data.o 
simple_idct.o
+OBJS-$(CONFIG_SPEEDHQ_ENCODER) += speedhq.o mpeg12data.o speedhqenc.o
 OBJS-$(CONFIG_SP5X_DECODER)+= sp5xdec.o
 OBJS-$(CONFIG_SRGC_DECODER)+= mscc.o
 OBJS-$(CONFIG_SRT_DECODER) += srtdec.o ass.o htmlsubtitles.o
diff --git a/libavcodec/allcodecs.c b/libavcodec/allcodecs.c
index 8bdc0d6bf7..774d5670bf 100644
--- a/libavcodec/allcodecs.c
+++ b/libavcodec/allcodecs.c
@@ -297,6 +297,7 @@ extern AVCodec ff_snow_encoder;
 extern AVCodec ff_snow_decoder;
 extern AVCodec ff_sp5x_decoder;
 extern AVCodec ff_speedhq_decoder;
+extern AVCodec ff_speedhq_encoder;
 extern AVCodec ff_srgc_decoder;
 extern AVCodec ff_sunrast_encoder;
 extern AVCodec ff_sunrast_decoder;
diff --git a/libavcodec/mpegutils.h b/libavcodec/mpegutils.h
index 1ed21c19be..81f0b73bb1 100644
--- a/libavcodec/mpegutils.h
+++ b/libavcodec/mpegutils.h
@@ -125,6 +125,7 @@ enum OutputFormat {
 FMT_H261,
 FMT_H263,
 FMT_MJPEG,
+FMT_SPEEDHQ,
 };
 
 
diff --git a/libavcodec/mpegvideo.h b/libavcodec/mpegvideo.h
index 29e692f245..974c71b6bd 100644
--- a/libavcodec/mpegvideo.h
+++ b/libavcodec/mpegvideo.h
@@ -444,6 +444,9 @@ typedef struct MpegEncContext {
 int inter_intra_pred;
 int mspel;
 
+/* SpeedHQ specific */
+int slice_start;
+
 /* decompression specific */
 GetBitContext gb;
 
diff --git a/libavcodec/mpegvideo_enc.c b/libavcodec/mpegvideo_enc.c
index f16b26c9f2..7afc789ec0 100644
--- a/libavcodec/mpegvideo_enc.c
+++ b/libavcodec/mpegvideo_enc.c
@@ -51,6 +51,7 @@
 #include "mathops.h"
 #include "mpegutils.h"
 #include "mjpegenc.h"
+#include "speedhqenc.h"
 #include "msmpeg4.h"
 #include "pixblockdsp.h"
 #include "qpeldsp.h"
@@ -326,6 +327,15 @@ av_cold int ff_mpv_encode_init(AVCodecContext *avctx)
 return AVERROR(EINVAL);
 }
 break;
+case AV_CODEC_ID_SPEEDHQ:
+if (avctx->pix_fmt != AV_PIX_FMT_YUV420P &&
+avctx->pix_fmt != AV_PIX_FMT_YUV422P &&
+avctx->pix_fmt != AV_PIX_FMT_YUV444P) {
+av_log(avctx, AV_LOG_ERROR,
+   "only YUV420/YUV422/YUV444 are supported (no alpha support 
yet)\n");
+return AVERROR(EINVAL);
+}
+break;
 default:
 if (avctx->pix_fmt != AV_PIX_FMT_YUV420P) {
 av_log(avctx, AV_LOG_ERROR, "only YUV420 is supported\n");
@@ -732,7 +742,7 @@ FF_ENABLE_DEPRECATION_WARNINGS
 //return -1;
 }
 
-if (s->mpeg_quant || s->codec_id == AV_CODEC_ID_MPEG1VIDEO || s->codec_id 
== AV_CODEC_ID_MPEG2VIDEO || s->codec_id == AV_CODEC_ID_MJPEG || 
s->codec_id==AV_CODEC_ID_AMV) {
+if (s->mpeg_quant || s->codec_id == AV_CODEC_ID_MPEG1VIDEO || s->codec_id 
== AV_CODEC_ID_

[FFmpeg-cvslog] Speedhq: Decode field 2 correctly

2020-07-06 Thread Jean-Baptiste Kempf
ffmpeg | branch: master | Jean-Baptiste Kempf  | Sun May 10 
18:09:51 2020 +0200| [fc3f5cd149326b0a478c9a4a34acc22cf757ef02] | committer: 
Kieran Kunhya

Speedhq: Decode field 2 correctly

This is similar to field 1 (effd2e72)

> http://git.videolan.org/gitweb.cgi/ffmpeg.git/?a=commit;h=fc3f5cd149326b0a478c9a4a34acc22cf757ef02
---

 libavcodec/speedhq.c | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/libavcodec/speedhq.c b/libavcodec/speedhq.c
index 890b8253cd..b834b79f28 100644
--- a/libavcodec/speedhq.c
+++ b/libavcodec/speedhq.c
@@ -447,7 +447,7 @@ static int speedhq_decode_frame(AVCodecContext *avctx,
 }
 frame->key_frame = 1;
 
-if (second_field_offset == 4) {
+if (second_field_offset == 4 || second_field_offset == (buf_size-4)) {
 /*
  * Overlapping first and second fields is used to signal
  * encoding only a single field. In this case, "height"

___
ffmpeg-cvslog mailing list
ffmpeg-cvslog@ffmpeg.org
https://ffmpeg.org/mailman/listinfo/ffmpeg-cvslog

To unsubscribe, visit link above, or email
ffmpeg-cvslog-requ...@ffmpeg.org with subject "unsubscribe".

Re: [FFmpeg-cvslog] avcodec: Add NVENC encoder

2014-12-10 Thread Jean-Baptiste Kempf
On 11 Dec, Timo Rothenpieler wrote :
 +#if defined(_WIN32)  !defined(__CYGWIN__)
 +#include windows.h
 +#else
 +#include dlfcn.h
 +#endif
 +
 +/* NVENC API is stdcall in cygwin, as it's still Windows */
 +#if defined(__CYGWIN__)  !defined(_WIN32)
 +#define _WIN32
 +#define TEMP_WIN32
 +#endif
 +
 +#include nvEncodeAPI.h
 +
 +#if defined(TEMP_WIN32)
 +#undef _WIN32
 +#endif

How can you commit such things?
Defining symbols starting with _ + uppercase ? This is a violation of the C
standards.

Cygwin is very able to use windows.h functions. If not, it's their mess,
but this has nothing to do here.

With my kindest regards,

-- 
Jean-Baptiste Kempf
http://www.jbkempf.com/ - +33 672 704 734
Sent from my Electronic Device
___
ffmpeg-cvslog mailing list
ffmpeg-cvslog@ffmpeg.org
http://ffmpeg.org/mailman/listinfo/ffmpeg-cvslog