Re: [FFmpeg-devel] [PATCH v3] avformat/flvdec: move read fourcc output before flv_same_video_codec
On Sat, Jul 29, 2023 at 2:26 AM Steven Liu wrote: > > read fourcc for video codec after VideoTagHeader read. > passed as parameter to flv_same_video_codec. > Add the same parameter to flv_set_video_codec, and then you can remove the entire backwards seek and just read it and adjust the size like all other parameters. - Hendrik ___ ffmpeg-devel mailing list ffmpeg-devel@ffmpeg.org https://ffmpeg.org/mailman/listinfo/ffmpeg-devel To unsubscribe, visit link above, or email ffmpeg-devel-requ...@ffmpeg.org with subject "unsubscribe".
Re: [FFmpeg-devel] [PATCH v3] avformat/flvdec: move read fourcc output before flv_same_video_codec
On Sat, 29 Jul 2023, Hendrik Leppkes wrote: On Sat, Jul 29, 2023 at 2:26 AM Steven Liu wrote: read fourcc for video codec after VideoTagHeader read. passed as parameter to flv_same_video_codec. Add the same parameter to flv_set_video_codec, and then you can remove the entire backwards seek and just read it and adjust the size like all other parameters. As far as I see flv_set_video_codec should not read a binary fourcc in the first place when it is called from amf_parse_object. Regards, 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-requ...@ffmpeg.org with subject "unsubscribe".
Re: [FFmpeg-devel] [PATCH] avfilter/qsvvpp: remove usage of deprecated fields
On Sa, 2023-07-29 at 00:35 -0300, James Almer wrote: > Added by mistake in 88b3841149b9f41d6c5ec7930dcd5c6caf28b198. > > Signed-off-by: James Almer > --- > libavfilter/qsvvpp.c | 9 +++-- > 1 file changed, 7 insertions(+), 2 deletions(-) > > diff --git a/libavfilter/qsvvpp.c b/libavfilter/qsvvpp.c > index a03de05d9c..2833703891 100644 > --- a/libavfilter/qsvvpp.c > +++ b/libavfilter/qsvvpp.c > @@ -540,14 +540,19 @@ static QSVFrame *query_frame(QSVVPPContext *s, > AVFilterLink *outlink, const AVFr > mfxExtBuffer *extbuf = s->vpp_param.ExtParam[i]; > > if (extbuf->BufferId == MFX_EXTBUFF_VPP_DEINTERLACING) { > +#if FF_API_INTERLACED_FRAME > +FF_DISABLE_DEPRECATION_WARNINGS > out_frame->frame->interlaced_frame = 0; > +FF_ENABLE_DEPRECATION_WARNINGS > +#endif > + out_frame->frame->flags &= ~AV_FRAME_FLAG_INTERLACED; > break; > } > } > > out_frame->surface.Info.PicStruct = > - !out_frame->frame->interlaced_frame ? MFX_PICSTRUCT_PROGRESSIVE : > - (out_frame->frame->top_field_first ? MFX_PICSTRUCT_FIELD_TFF : > + !(out_frame->frame->flags & AV_FRAME_FLAG_INTERLACED) ? > MFX_PICSTRUCT_PROGRESSIVE : > + ((out_frame->frame->flags & AV_FRAME_FLAG_TOP_FIELD_FIRST) ? > MFX_PICSTRUCT_FIELD_TFF : > MFX_PICSTRUCT_FIELD_BFF); > > return out_frame; LGTM, thanks for fixing this! - Haihao ___ ffmpeg-devel mailing list ffmpeg-devel@ffmpeg.org https://ffmpeg.org/mailman/listinfo/ffmpeg-devel To unsubscribe, visit link above, or email ffmpeg-devel-requ...@ffmpeg.org with subject "unsubscribe".
Re: [FFmpeg-devel] [PATCH v3] avformat/flvdec: move read fourcc output before flv_same_video_codec
On Sat, Jul 29, 2023 at 10:46 AM Marton Balint wrote: > > > > On Sat, 29 Jul 2023, Hendrik Leppkes wrote: > > > On Sat, Jul 29, 2023 at 2:26 AM Steven Liu wrote: > >> > >> read fourcc for video codec after VideoTagHeader read. > >> passed as parameter to flv_same_video_codec. > >> > > > > Add the same parameter to flv_set_video_codec, and then you can remove > > the entire backwards seek and just read it and adjust the size like > > all other parameters. > > As far as I see flv_set_video_codec should not read a binary fourcc in the > first place when it is called from amf_parse_object. Yeah probably not, so moving it to a parameter would fix that as well, and make the entire parsing flow less opaque. - Hendrik ___ ffmpeg-devel mailing list ffmpeg-devel@ffmpeg.org https://ffmpeg.org/mailman/listinfo/ffmpeg-devel To unsubscribe, visit link above, or email ffmpeg-devel-requ...@ffmpeg.org with subject "unsubscribe".
Re: [FFmpeg-devel] [PATCH v3] avformat/flvdec: move read fourcc output before flv_same_video_codec
On Sat, Jul 29, 2023 at 11:54 AM Hendrik Leppkes wrote: > > On Sat, Jul 29, 2023 at 10:46 AM Marton Balint wrote: > > > > > > > > On Sat, 29 Jul 2023, Hendrik Leppkes wrote: > > > > > On Sat, Jul 29, 2023 at 2:26 AM Steven Liu wrote: > > >> > > >> read fourcc for video codec after VideoTagHeader read. > > >> passed as parameter to flv_same_video_codec. > > >> > > > > > > Add the same parameter to flv_set_video_codec, and then you can remove > > > the entire backwards seek and just read it and adjust the size like > > > all other parameters. > > > > As far as I see flv_set_video_codec should not read a binary fourcc in the > > first place when it is called from amf_parse_object. > > Yeah probably not, so moving it to a parameter would fix that as well, > and make the entire parsing flow less opaque. > In fact the actual value will carry the FourCC then, which is not handled at all. Definitely very broken here. - Hendrik ___ ffmpeg-devel mailing list ffmpeg-devel@ffmpeg.org https://ffmpeg.org/mailman/listinfo/ffmpeg-devel To unsubscribe, visit link above, or email ffmpeg-devel-requ...@ffmpeg.org with subject "unsubscribe".
Re: [FFmpeg-devel] [PATCH v3] avformat/flvdec: move read fourcc output before flv_same_video_codec
Marton Balint 于2023年7月29日 周六16:45写道: > > > On Sat, 29 Jul 2023, Hendrik Leppkes wrote: > > > On Sat, Jul 29, 2023 at 2:26 AM Steven Liu wrote: > >> > >> read fourcc for video codec after VideoTagHeader read. > >> passed as parameter to flv_same_video_codec. > >> > > > > Add the same parameter to flv_set_video_codec, and then you can remove > > the entire backwards seek and just read it and adjust the size like > > all other parameters. > > As far as I see flv_set_video_codec should not read a binary fourcc in the > first place when it is called from amf_parse_object. yes i looked in flv_set_video_codec, it should not do the same operation, because it cannot read codeid in exheader mode. > > > Regards, > 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-requ...@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-requ...@ffmpeg.org with subject "unsubscribe".
Re: [FFmpeg-devel] [PATCH] libaformat: fix incorrect handling of incomplete AVBPrint.
> On 27 Jul 2023, at 19:44, Nicolas George wrote: > > Reimar Döffinger (12023-07-27): >> Thanks, sent a new version with that updated, plus a fix for a typo >> in the commit message. > > If it is all you have changed, then I do not think I need to look at it > again. > > I do not maintain most of the files you have changed, but I think you > can go ahead. Thanks, pushed it. ___ ffmpeg-devel mailing list ffmpeg-devel@ffmpeg.org https://ffmpeg.org/mailman/listinfo/ffmpeg-devel To unsubscribe, visit link above, or email ffmpeg-devel-requ...@ffmpeg.org with subject "unsubscribe".
Re: [FFmpeg-devel] [PATCH] hevcdsp_idct_neon.S: Avoid unnecessary mov.
> On 26 Jul 2023, at 21:15, reimar.doeffin...@gmx.de wrote: > > From: Reimar Döffinger > > ret can be given an argument instead. > This is also consistent with how other assembler code > in FFmpeg does it. Now pushed. ___ ffmpeg-devel mailing list ffmpeg-devel@ffmpeg.org https://ffmpeg.org/mailman/listinfo/ffmpeg-devel To unsubscribe, visit link above, or email ffmpeg-devel-requ...@ffmpeg.org with subject "unsubscribe".
[FFmpeg-devel] [PATCH] avformat/lrcdec: Fix declaration-after-statement warning
Happens since c0f867bf503e79eba8ee52e1ac53322f88ec2929. Signed-off-by: Andreas Rheinhardt --- Will apply this soon. libavformat/lrcdec.c | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-) diff --git a/libavformat/lrcdec.c b/libavformat/lrcdec.c index 83bb4a4b75..f43e9dccf5 100644 --- a/libavformat/lrcdec.c +++ b/libavformat/lrcdec.c @@ -170,10 +170,11 @@ static int lrc_read_header(AVFormatContext *s) av_bprint_init(&line, 0, AV_BPRINT_SIZE_UNLIMITED); while(!avio_feof(s->pb)) { -int64_t pos = read_line(&line, s->pb); +int64_t header_offset, pos = read_line(&line, s->pb); + if (!av_bprint_is_complete(&line)) goto err_nomem_out; -int64_t header_offset = find_header(line.str); +header_offset = find_header(line.str); if(header_offset >= 0) { char *comma_offset = strchr(line.str, ':'); if(comma_offset) { -- 2.34.1 ___ ffmpeg-devel mailing list ffmpeg-devel@ffmpeg.org https://ffmpeg.org/mailman/listinfo/ffmpeg-devel To unsubscribe, visit link above, or email ffmpeg-devel-requ...@ffmpeg.org with subject "unsubscribe".
[FFmpeg-devel] [PATCH] avformat/flvdec: handle exheader fourcc correctly in metadata
In metadata fourcc is carried in the AMF number, not as binary. Partially based on a patch by Steven Liu. Signed-off-by: Marton Balint --- libavformat/flvdec.c | 76 +--- 1 file changed, 30 insertions(+), 46 deletions(-) diff --git a/libavformat/flvdec.c b/libavformat/flvdec.c index 3fe21622f7..b904029ba5 100644 --- a/libavformat/flvdec.c +++ b/libavformat/flvdec.c @@ -304,30 +304,18 @@ static void flv_set_audio_codec(AVFormatContext *s, AVStream *astream, } } -static int flv_same_video_codec(AVFormatContext *s, AVCodecParameters *vpar, int flags) +static int flv_same_video_codec(AVFormatContext *s, AVCodecParameters *vpar, uint32_t flv_codecid) { -int flv_codecid = flags & FLV_VIDEO_CODECID_MASK; -FLVContext *flv = s->priv_data; - if (!vpar->codec_id && !vpar->codec_tag) return 1; -if (flv->exheader) { -uint8_t *codec_id_str = (uint8_t *)s->pb->buf_ptr; -uint32_t codec_id = codec_id_str[3] | codec_id_str[2] << 8 | codec_id_str[1] << 16 | codec_id_str[0] << 24; -switch(codec_id) { -case MKBETAG('h', 'v', 'c', '1'): -return vpar->codec_id == AV_CODEC_ID_HEVC; -case MKBETAG('a', 'v', '0', '1'): -return vpar->codec_id == AV_CODEC_ID_AV1; -case MKBETAG('v', 'p', '0', '9'): -return vpar->codec_id == AV_CODEC_ID_VP9; -default: -break; -} -} - switch (flv_codecid) { +case MKBETAG('h', 'v', 'c', '1'): +return vpar->codec_id == AV_CODEC_ID_HEVC; +case MKBETAG('a', 'v', '0', '1'): +return vpar->codec_id == AV_CODEC_ID_AV1; +case MKBETAG('v', 'p', '0', '9'): +return vpar->codec_id == AV_CODEC_ID_VP9; case FLV_CODECID_H263: return vpar->codec_id == AV_CODEC_ID_FLV1; case FLV_CODECID_SCREEN: @@ -346,36 +334,26 @@ static int flv_same_video_codec(AVFormatContext *s, AVCodecParameters *vpar, int } static int flv_set_video_codec(AVFormatContext *s, AVStream *vstream, - int flv_codecid, int read) + uint32_t flv_codecid, int read) { FFStream *const vstreami = ffstream(vstream); -FLVContext *flv = s->priv_data; int ret = 0; AVCodecParameters *par = vstream->codecpar; enum AVCodecID old_codec_id = vstream->codecpar->codec_id; -flv_codecid &= FLV_VIDEO_CODECID_MASK; - -if (flv->exheader) { -uint32_t codec_id = avio_rb32(s->pb); - -switch(codec_id) { -case MKBETAG('h', 'v', 'c', '1'): -par->codec_id = AV_CODEC_ID_HEVC; -vstreami->need_parsing = AVSTREAM_PARSE_HEADERS; -return 4; -case MKBETAG('a', 'v', '0', '1'): -par->codec_id = AV_CODEC_ID_AV1; -vstreami->need_parsing = AVSTREAM_PARSE_HEADERS; -return 4; -case MKBETAG('v', 'p', '0', '9'): -par->codec_id = AV_CODEC_ID_VP9; -vstreami->need_parsing = AVSTREAM_PARSE_HEADERS; -return 4; -default: -break; -} -} -switch (flv_codecid) { + +switch(flv_codecid) { +case MKBETAG('h', 'v', 'c', '1'): +par->codec_id = AV_CODEC_ID_HEVC; +vstreami->need_parsing = AVSTREAM_PARSE_HEADERS; +break; +case MKBETAG('a', 'v', '0', '1'): +par->codec_id = AV_CODEC_ID_AV1; +vstreami->need_parsing = AVSTREAM_PARSE_HEADERS; +break; +case MKBETAG('v', 'p', '0', '9'): +par->codec_id = AV_CODEC_ID_VP9; +vstreami->need_parsing = AVSTREAM_PARSE_HEADERS; +break; case FLV_CODECID_H263: par->codec_id = AV_CODEC_ID_FLV1; break; @@ -1065,6 +1043,7 @@ static int flv_read_packet(AVFormatContext *s, AVPacket *pkt) AVStream *st= NULL; int last = -1; int orig_size; +uint32_t video_codec_id = 0; retry: /* pkt size is repeated at end. skip it */ @@ -,12 +1090,17 @@ retry: } else if (type == FLV_TAG_TYPE_VIDEO) { stream_type = FLV_STREAM_TYPE_VIDEO; flags= avio_r8(s->pb); +video_codec_id = flags & FLV_VIDEO_CODECID_MASK; /* * Reference Enhancing FLV 2023-03-v1.0.0-B.8 * https://github.com/veovera/enhanced-rtmp/blob/main/enhanced-rtmp-v1.pdf * */ flv->exheader = (flags >> 7) & 1; size--; +if (flv->exheader) { +video_codec_id = avio_rb32(s->pb); +size -= 4; +} if ((flags & FLV_VIDEO_FRAMETYPE_MASK) == FLV_FRAME_VIDEO_INFO_CMD) goto skip; } else if (type == FLV_TAG_TYPE_META) { @@ -1174,7 +1158,7 @@ skip: break; } else if (stream_type == FLV_STREAM_TYPE_VIDEO) { if (st->codecpar->codec_type == AVMEDIA_TYPE_VIDEO && -(s->video_codec_id || flv_same_vide
[FFmpeg-devel] [PATCH] avdevice: Fix disabling audiotoolbox_outdev build on iOS
audiotoolbox.m uses CoreAudio APIs that are only available in macOS. The existing CoreAudio framework check is already enough for this case (as CoreAudio.h does not exist for the iDevices), however, it was never passed as a dependency of audiotoolbox_outdev. This caused the build system to include that output device into the targets. Signed-off-by: L. E. Segovia --- configure | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/configure b/configure index 99388e7664..ccb9d7be7a 100755 --- a/configure +++ b/configure @@ -3577,7 +3577,7 @@ alsa_outdev_deps="alsa" avfoundation_indev_deps="avfoundation corevideo coremedia pthreads" avfoundation_indev_suggest="coregraphics applicationservices" avfoundation_indev_extralibs="-framework Foundation" -audiotoolbox_outdev_deps="audiotoolbox pthreads" +audiotoolbox_outdev_deps="audiotoolbox coreaudio pthreads" audiotoolbox_outdev_extralibs="-framework AudioToolbox -framework CoreAudio" bktr_indev_deps_any="dev_bktr_ioctl_bt848_h machine_ioctl_bt848_h dev_video_bktr_ioctl_bt848_h dev_ic_bt8xx_h" caca_outdev_deps="libcaca" -- 2.41.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-requ...@ffmpeg.org with subject "unsubscribe".
[FFmpeg-devel] [PATCH v2] os_support, network: Fix build failure on Windows with BZIP2
Including winsock2.h without WIN32_LEAN_AND_MEAN causes bzlib.h to parse as nonsense, due to an instance of #define char small in rpcndr.h (included transitively from windows.h). See: https://stackoverflow.com/a/27794577 Signed-off-by: L. E. Segovia --- libavformat/network.h| 1 + libavformat/os_support.c | 6 ++ libavformat/os_support.h | 1 + 3 files changed, 4 insertions(+), 4 deletions(-) diff --git a/libavformat/network.h b/libavformat/network.h index ca214087fc..06b6117fc7 100644 --- a/libavformat/network.h +++ b/libavformat/network.h @@ -35,6 +35,7 @@ #endif #if HAVE_WINSOCK2_H +#define WIN32_LEAN_AND_MEAN #include #include diff --git a/libavformat/os_support.c b/libavformat/os_support.c index 15cea7fa5b..2de6a7c3d9 100644 --- a/libavformat/os_support.c +++ b/libavformat/os_support.c @@ -34,11 +34,9 @@ #if HAVE_SYS_TIME_H #include #endif /* HAVE_SYS_TIME_H */ -#if HAVE_WINSOCK2_H -#include -#elif HAVE_SYS_SELECT_H +#if HAVE_SYS_SELECT_H #include -#endif /* HAVE_WINSOCK2_H */ +#endif /* HAVE_SYS_SELECT_H */ #endif /* !HAVE_POLL_H */ #include "network.h" diff --git a/libavformat/os_support.h b/libavformat/os_support.h index f2ff38e23b..5bdd275d70 100644 --- a/libavformat/os_support.h +++ b/libavformat/os_support.h @@ -140,6 +140,7 @@ typedef int socklen_t; typedef unsigned long nfds_t; #if HAVE_WINSOCK2_H +#define WIN32_LEAN_AND_MEAN #include #endif #if !HAVE_STRUCT_POLLFD -- 2.41.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-requ...@ffmpeg.org with subject "unsubscribe".
Re: [FFmpeg-devel] [PATCH v4 0/4] Fix MSVC build without optimizations
Hi all, Yes, the linking step bails out with optimizations disabled under MSVC. The rest of the compilers perform DCE even at -O0, but under Windows, the /FORCE:UNRESOLVED linker flag is needed to work around this. As for the stub generation -- given the amount of places that these patches touch, and that someone would need to figure out a complete configuration to test them all, I believe it's very much infeasible. Conversely, hooking into the macro uses makes testing as simple as one run with /O2 and another with /O0 -- which we use in development as well. best, amyspark On 28/07/2023 10:21, Matt Oliver wrote: > On Fri, 28 Jul 2023 at 20:55, Nicolas George wrote: > >> Reimar Döffinger (12023-07-28): >>> I assume the issue is missing symbols during linking? >>> If you really want this, why not create a file that provides dummy >>> symbols for all that are missing, concentrating the #if mess in >>> a single place and avoiding affecting any of the regular code, and thus >>> having no impact at all when compiling with optimizations. >>> Yes, it's likely to be a good bit of maintenance effort for those who >>> want to use it, but at least anyone not caring about this feature can >>> ignore it, so at least I would not have a reason to be against it. >> >> This is an interesting idea. It would even be possible to include a tool >> that generate these stubs directly from the linker's errors, reducing >> the maintenance. >> >> Maybe even make the stubs static inline functions rather than actual >> linking symbols. >> > > The issue with dead code elimination and msvc has been raised many times > over the years and the general response has been to not support it. The > last discussion was back in 2016 ( > https://ffmpeg.org/pipermail/ffmpeg-devel/2016-December/204530.html) which > apparently was by me. > There was an attempt previously by someone to try and semi-manually add all > the missing symbols using dummy functions but it obviously didnt go > anywhere as if I remember correctly it was difficult to track them all down > for all possible configuration options and maintaining it was just too hard > and it never got completed. I dont have the link but if you crawl through > old mailing list posts it is in there somewhere. > > About a decade ago I went the auto generation route and created a tool that > generated Visual Studio projects by scanning ffmpegs make/configure files > and as part of that the tool creates dummy files with all the missing > symbols for the requested configuration options ( > https://github.com/ShiftMediaProject/FFVS-Project-Generator). Its not the > most readable code but it does work. Whats potentially more interesting is > over all the years that project has been used the number of dummy dce stubs > has decreased from what used to be there when some of those early attempts > I mentioned were made. However just checking it now shows that there are > still a good 1000 dummy functions created for avcodec alone, although > admittedly theres only about a dozen for all the other libs. So a > pre-processing tool can work nicely, the trick is to be able to get it to > work with different compilers as the command line options and output format > is slightly different and that only gives you the function name you still > need to then scan the code to work out the correct types for the functions > parameters and return types in order to make a dummy stub. > ___ > ffmpeg-devel mailing list > ffmpeg-devel@ffmpeg.org > https://ffmpeg.org/mailman/listinfo/ffmpeg-devel > > To unsubscribe, visit link above, or email > ffmpeg-devel-requ...@ffmpeg.org with subject "unsubscribe". -- amyspark 🌸 https://www.amyspark.me ___ ffmpeg-devel mailing list ffmpeg-devel@ffmpeg.org https://ffmpeg.org/mailman/listinfo/ffmpeg-devel To unsubscribe, visit link above, or email ffmpeg-devel-requ...@ffmpeg.org with subject "unsubscribe".
[FFmpeg-devel] [PATCH v2] avdevice: Fix disabling audiotoolbox_outdev build on iOS
audiotoolbox.m uses CoreAudio APIs that are only available in macOS. The existing CoreAudio framework check is already enough for this case (as CoreAudio.h does not exist for the iDevices), however, it was never passed as a dependency of audiotoolbox_outdev. This caused the build system to include that output device into the targets. Signed-off-by: L. E. Segovia --- configure | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/configure b/configure index 99388e7664..ccb9d7be7a 100755 --- a/configure +++ b/configure @@ -3577,7 +3577,7 @@ alsa_outdev_deps="alsa" avfoundation_indev_deps="avfoundation corevideo coremedia pthreads" avfoundation_indev_suggest="coregraphics applicationservices" avfoundation_indev_extralibs="-framework Foundation" -audiotoolbox_outdev_deps="audiotoolbox pthreads" +audiotoolbox_outdev_deps="audiotoolbox coreaudio pthreads" audiotoolbox_outdev_extralibs="-framework AudioToolbox -framework CoreAudio" bktr_indev_deps_any="dev_bktr_ioctl_bt848_h machine_ioctl_bt848_h dev_video_bktr_ioctl_bt848_h dev_ic_bt8xx_h" caca_outdev_deps="libcaca" -- 2.41.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-requ...@ffmpeg.org with subject "unsubscribe".
[FFmpeg-devel] [PATCH v5 0/4] Fix MSVC build without optimizations
Sending again to fix the format=flowed mishap. L. E. Segovia (4): all: Replace if (ARCH_FOO) checks by #if ARCH_FOO, part 2 all: Replace if (CONFIG_FOO) checks by #if CONFIG_FOO all: Guard if (INLINE*) checks with #if HAVE_INLINE_ASM all: Guard if (EXTERNAL*) checks with #if HAVE_X86ASM fftools/ffprobe.c | 16 +- fftools/opt_common.c | 12 +- libavcodec/x86/aacencdsp_init.c| 2 + libavcodec/x86/aacpsdsp_init.c | 2 + libavcodec/x86/ac3dsp_init.c | 4 + libavcodec/x86/audiodsp_init.c | 2 + libavcodec/x86/bswapdsp_init.c | 2 + libavcodec/x86/cavsdsp.c | 2 + libavcodec/x86/celt_pvq_init.c | 2 + libavcodec/x86/cfhddsp_init.c | 2 + libavcodec/x86/cfhdencdsp_init.c | 2 + libavcodec/x86/dcadsp_init.c | 2 + libavcodec/x86/dct_init.c | 2 + libavcodec/x86/dnxhdenc_init.c | 2 + libavcodec/x86/exrdsp_init.c | 2 + libavcodec/x86/fdctdsp_init.c | 2 + libavcodec/x86/fft_init.c | 2 + libavcodec/x86/flacdsp_init.c | 8 +- libavcodec/x86/g722dsp_init.c | 2 + libavcodec/x86/h263dsp_init.c | 2 + libavcodec/x86/h264_intrapred_init.c | 2 + libavcodec/x86/h264chroma_init.c | 2 + libavcodec/x86/hevcdsp_init.c | 549 +++-- libavcodec/x86/hpeldsp_init.c | 4 + libavcodec/x86/hpeldsp_vp3_init.c | 2 + libavcodec/x86/huffyuvdsp_init.c | 2 + libavcodec/x86/huffyuvencdsp_init.c| 2 + libavcodec/x86/idctdsp_init.c | 11 +- libavcodec/x86/jpeg2000dsp_init.c | 2 + libavcodec/x86/lossless_videodsp_init.c| 2 + libavcodec/x86/lossless_videoencdsp_init.c | 2 + libavcodec/x86/me_cmp_init.c | 2 + libavcodec/x86/mlpdsp_init.c | 6 +- libavcodec/x86/mpegvideoencdsp_init.c | 2 + libavcodec/x86/opusdsp_init.c | 2 + libavcodec/x86/pixblockdsp_init.c | 2 + libavcodec/x86/pngdsp_init.c | 2 + libavcodec/x86/proresdsp_init.c| 2 + libavcodec/x86/rv34dsp_init.c | 2 + libavcodec/x86/sbcdsp_init.c | 2 + libavcodec/x86/sbrdsp_init.c | 2 + libavcodec/x86/svq1enc_init.c | 2 + libavcodec/x86/utvideodsp_init.c | 2 + libavcodec/x86/v210enc_init.c | 6 +- libavcodec/x86/vc1dsp_init.c | 6 +- libavcodec/x86/vorbisdsp_init.c| 2 + libavcodec/x86/vp3dsp_init.c | 2 + libavcodec/x86/vp6dsp_init.c | 2 + libavfilter/x86/af_afir_init.c | 2 + libavfilter/x86/af_anlmdn_init.c | 2 + libavfilter/x86/af_volume_init.c | 2 + libavfilter/x86/avf_showcqt_init.c | 2 + libavfilter/x86/colorspacedsp_init.c | 6 +- libavfilter/x86/vf_atadenoise_init.c | 8 +- libavfilter/x86/vf_blend_init.c| 2 + libavfilter/x86/vf_bwdif_init.c| 2 + libavfilter/x86/vf_convolution_init.c | 2 +- libavfilter/x86/vf_framerate_init.c| 2 + libavfilter/x86/vf_fspp_init.c | 2 + libavfilter/x86/vf_gblur_init.c| 2 + libavfilter/x86/vf_hflip_init.c| 2 + libavfilter/x86/vf_limiter_init.c | 2 + libavfilter/x86/vf_maskedclamp_init.c | 2 + libavfilter/x86/vf_maskedmerge_init.c | 2 + libavfilter/x86/vf_overlay_init.c | 2 + libavfilter/x86/vf_pp7_init.c | 2 + libavfilter/x86/vf_psnr_init.c | 2 + libavfilter/x86/vf_removegrain_init.c | 2 + libavfilter/x86/vf_ssim_init.c | 6 +- libavfilter/x86/vf_stereo3d_init.c | 2 + libavfilter/x86/vf_threshold_init.c| 2 + libavfilter/x86/vf_tinterlace_init.c | 2 + libavfilter/x86/vf_transpose_init.c| 2 + libavfilter/x86/vf_v360_init.c | 2 + libavfilter/x86/vf_w3fdif_init.c | 6 +- libavfilter/x86/vf_yadif_init.c| 2 + libavformat/rtmpproto.c| 24 +- libavutil/x86/fixed_dsp_init.c | 2 + libavutil/x86/float_dsp_init.c | 2 + libavutil/x86/imgutils_init.c | 2 + libavutil/x86/lls_init.c | 2 + libavutil/x86/pixelutils_init.c| 2 + libswresample/x86/audio_convert_init.c | 2 + libswresample/x86/resample_init.c | 6 + libswscale/x86/rgb2rgb.c | 2 + libswscale/x86/swscale.c | 2 + 86 files changed, 517 insertions(+), 301 deletions(-) -- 2.41.0 ___ ffmpeg-devel mailing list ffmpeg-devel@ffmpeg.org https://ffmpeg.org/mailman/lis
[FFmpeg-devel] [PATCH v5 1/4] all: Replace if (ARCH_FOO) checks by #if ARCH_FOO, part 2
Continuation of 40e6575aa3eed64cd32bf28c00ae57edc5acb25a Co-authored-by: Nirbheek Chauhan Signed-off-by: L. E. Segovia --- libavcodec/x86/fdctdsp_init.c| 2 + libavcodec/x86/flacdsp_init.c| 8 +- libavcodec/x86/hevcdsp_init.c| 547 ++- libavcodec/x86/idctdsp_init.c| 9 +- libavcodec/x86/mlpdsp_init.c | 6 +- libavcodec/x86/vc1dsp_init.c | 6 +- libavfilter/x86/colorspacedsp_init.c | 4 +- libavfilter/x86/vf_atadenoise_init.c | 6 +- libavfilter/x86/vf_ssim_init.c | 4 +- libavfilter/x86/vf_w3fdif_init.c | 4 +- 10 files changed, 311 insertions(+), 285 deletions(-) diff --git a/libavcodec/x86/fdctdsp_init.c b/libavcodec/x86/fdctdsp_init.c index 92a842433d..4a874a640d 100644 --- a/libavcodec/x86/fdctdsp_init.c +++ b/libavcodec/x86/fdctdsp_init.c @@ -31,8 +31,10 @@ av_cold void ff_fdctdsp_init_x86(FDCTDSPContext *c, AVCodecContext *avctx, if (!high_bit_depth) { if ((dct_algo == FF_DCT_AUTO || dct_algo == FF_DCT_MMX)) { +#if HAVE_INLINE_SSE2 if (INLINE_SSE2(cpu_flags)) c->fdct = ff_fdct_sse2; +#endif } } } diff --git a/libavcodec/x86/flacdsp_init.c b/libavcodec/x86/flacdsp_init.c index 87daed7005..49e67ee2b0 100644 --- a/libavcodec/x86/flacdsp_init.c +++ b/libavcodec/x86/flacdsp_init.c @@ -97,15 +97,19 @@ av_cold void ff_flacdsp_init_x86(FLACDSPContext *c, enum AVSampleFormat fmt, int } if (EXTERNAL_AVX(cpu_flags)) { if (fmt == AV_SAMPLE_FMT_S16) { -if (ARCH_X86_64 && channels == 8) +#if ARCH_X86_64 +if (channels == 8) c->decorrelate[0] = ff_flac_decorrelate_indep8_16_avx; +#endif } else if (fmt == AV_SAMPLE_FMT_S32) { if (channels == 4) c->decorrelate[0] = ff_flac_decorrelate_indep4_32_avx; else if (channels == 6) c->decorrelate[0] = ff_flac_decorrelate_indep6_32_avx; -else if (ARCH_X86_64 && channels == 8) +#if ARCH_X86_64 +else if (channels == 8) c->decorrelate[0] = ff_flac_decorrelate_indep8_32_avx; +#endif } } if (EXTERNAL_XOP(cpu_flags)) { diff --git a/libavcodec/x86/hevcdsp_init.c b/libavcodec/x86/hevcdsp_init.c index 6f45e5e0db..c7060085a2 100644 --- a/libavcodec/x86/hevcdsp_init.c +++ b/libavcodec/x86/hevcdsp_init.c @@ -710,13 +710,13 @@ void ff_hevc_dsp_init_x86(HEVCDSPContext *c, const int bit_depth) if (EXTERNAL_SSE2(cpu_flags)) { c->hevc_v_loop_filter_chroma = ff_hevc_v_loop_filter_chroma_8_sse2; c->hevc_h_loop_filter_chroma = ff_hevc_h_loop_filter_chroma_8_sse2; -if (ARCH_X86_64) { -c->hevc_v_loop_filter_luma = ff_hevc_v_loop_filter_luma_8_sse2; -c->hevc_h_loop_filter_luma = ff_hevc_h_loop_filter_luma_8_sse2; +#if ARCH_X86_64 +c->hevc_v_loop_filter_luma = ff_hevc_v_loop_filter_luma_8_sse2; +c->hevc_h_loop_filter_luma = ff_hevc_h_loop_filter_luma_8_sse2; -c->idct[2] = ff_hevc_idct_16x16_8_sse2; -c->idct[3] = ff_hevc_idct_32x32_8_sse2; -} +c->idct[2] = ff_hevc_idct_16x16_8_sse2; +c->idct[3] = ff_hevc_idct_32x32_8_sse2; +#endif SAO_BAND_INIT(8, sse2); c->idct_dc[1] = ff_hevc_idct_8x8_dc_8_sse2; @@ -731,14 +731,14 @@ void ff_hevc_dsp_init_x86(HEVCDSPContext *c, const int bit_depth) c->add_residual[3] = ff_hevc_add_residual_32_8_sse2; } if (EXTERNAL_SSSE3(cpu_flags)) { -if(ARCH_X86_64) { -c->hevc_v_loop_filter_luma = ff_hevc_v_loop_filter_luma_8_ssse3; -c->hevc_h_loop_filter_luma = ff_hevc_h_loop_filter_luma_8_ssse3; -} +#if ARCH_X86_64 +c->hevc_v_loop_filter_luma = ff_hevc_v_loop_filter_luma_8_ssse3; +c->hevc_h_loop_filter_luma = ff_hevc_h_loop_filter_luma_8_ssse3; +#endif SAO_EDGE_INIT(8, ssse3); } -if (EXTERNAL_SSE4(cpu_flags) && ARCH_X86_64) { - +#if ARCH_X86_64 +if (EXTERNAL_SSE4(cpu_flags)) { EPEL_LINKS(c->put_hevc_epel, 0, 0, pel_pixels, 8, sse4); EPEL_LINKS(c->put_hevc_epel, 0, 1, epel_h, 8, sse4); EPEL_LINKS(c->put_hevc_epel, 1, 0, epel_v, 8, sse4); @@ -749,16 +749,17 @@ void ff_hevc_dsp_init_x86(HEVCDSPContext *c, const int bit_depth) QPEL_LINKS(c->put_hevc_qpel, 1, 0, qpel_v, 8, sse4); QPEL_LINKS(c->put_hevc_qpel, 1, 1, qpel_hv,8, sse4); } +#endif if (EXTERNAL_AVX(cpu_flags)) { c->hevc_v_loop_filter_chroma = ff_hevc_v_loop_filter_chroma_8_avx; c->hevc_h_loop_filter_chroma = ff_hevc_h_loop_filter_chroma_8_avx; -if (ARCH_X86_64) { -c->hevc_v_loop_filter_luma = ff_hevc_v_loop_filter_luma_8_avx; -c->hevc_h_loop_filter_luma = f
[FFmpeg-devel] [PATCH v5 2/4] all: Replace if (CONFIG_FOO) checks by #if CONFIG_FOO
Continuation of e42aaaf92a4b0c88d60acc12df64c81d0887c26f Signed-off-by: L. E. Segovia --- fftools/ffprobe.c | 16 +++- fftools/opt_common.c| 12 ++-- libavformat/rtmpproto.c | 24 ++-- 3 files changed, 39 insertions(+), 13 deletions(-) diff --git a/fftools/ffprobe.c b/fftools/ffprobe.c index a39185f6fe..c3e90a9409 100644 --- a/fftools/ffprobe.c +++ b/fftools/ffprobe.c @@ -3572,9 +3572,9 @@ static void ffprobe_show_program_version(WriterContext *w) av_bprint_finalize(&pbuf, NULL); } -#define SHOW_LIB_VERSION(libname, LIBNAME) \ -do {\ -if (CONFIG_##LIBNAME) { \ +#define SHOW_LIB_VERSION_0(libname, LIBNAME) +#define SHOW_LIB_VERSION_1(libname, LIBNAME)\ +{ \ unsigned int version = libname##_version(); \ writer_print_section_header(w, SECTION_ID_LIBRARY_VERSION); \ print_str("name","lib" #libname); \ @@ -3584,8 +3584,14 @@ static void ffprobe_show_program_version(WriterContext *w) print_int("version", version); \ print_str("ident", LIB##LIBNAME##_IDENT); \ writer_print_section_footer(w); \ -} \ -} while (0) +} + +#define SHOW_LIB_VERSION_2(cfg, libname, LIBNAME) \ +SHOW_LIB_VERSION_ ## cfg(libname, LIBNAME) +#define SHOW_LIB_VERSION_3(cfg, libname, LIBNAME) \ +SHOW_LIB_VERSION_2(cfg, libname, LIBNAME) +#define SHOW_LIB_VERSION(libname, LIBNAME) \ +SHOW_LIB_VERSION_3(CONFIG_ ## LIBNAME, libname, LIBNAME) static void ffprobe_show_library_versions(WriterContext *w) { diff --git a/fftools/opt_common.c b/fftools/opt_common.c index 7c996f140d..5729d656e9 100644 --- a/fftools/opt_common.c +++ b/fftools/opt_common.c @@ -153,8 +153,9 @@ static int warned_cfg = 0; #define SHOW_CONFIG 4 #define SHOW_COPYRIGHT 8 -#define PRINT_LIB_INFO(libname, LIBNAME, flags, level) \ -if (CONFIG_##LIBNAME) { \ +#define PRINT_LIB_INFO_0(libname, LIBNAME, flags, level) +#define PRINT_LIB_INFO_1(libname, LIBNAME, flags, level)\ +{ \ const char *indent = flags & INDENT? " " : ""; \ if (flags & SHOW_VERSION) { \ unsigned int version = libname##_version(); \ @@ -182,6 +183,13 @@ static int warned_cfg = 0; } \ } \ +#define PRINT_LIB_INFO_2(cfg, libname, LIBNAME, flags, level) \ +PRINT_LIB_INFO_ ## cfg(libname, LIBNAME, flags, level) +#define PRINT_LIB_INFO_3(cfg, libname, LIBNAME, flags, level) \ +PRINT_LIB_INFO_2(cfg, libname, LIBNAME, flags, level) +#define PRINT_LIB_INFO(libname, LIBNAME, flags, level) \ +PRINT_LIB_INFO_3(CONFIG_ ## LIBNAME, libname, LIBNAME, flags, level) + static void print_all_libs_info(int flags, int level) { PRINT_LIB_INFO(avutil, AVUTIL, flags, level); diff --git a/libavformat/rtmpproto.c b/libavformat/rtmpproto.c index f0ef223f05..6d84fcf34f 100644 --- a/libavformat/rtmpproto.c +++ b/libavformat/rtmpproto.c @@ -1222,7 +1222,8 @@ static int rtmp_handshake(URLContext *s, RTMPContext *rt) for (i = 9; i <= RTMP_HANDSHAKE_PACKET_SIZE; i++) tosend[i] = av_lfg_get(&rnd) >> 24; -if (CONFIG_FFRTMPCRYPT_PROTOCOL && rt->encrypted) { +#if CONFIG_FFRTMPCRYPT_PROTOCOL +if (rt->encrypted) { /* When the client wants to use RTMPE, we have to change the command * byte to 0x06 which means to use encrypted data and we have to set * the flash version to at least 9.0.115.0. */ @@ -1237,6 +1238,7 @@ static int rtmp_handshake(URLContext *s, RTMPContext *rt) if ((ret = ff_rtmpe_gen_pub_key(rt->stream, tosend + 1)) < 0) return ret; } +#endif client_pos = rtmp_handshake_imprint_with_digest(tosend + 1, rt->encrypted); if (client_pos < 0) @@ -1300,7 +1302,8 @@ static int rtmp_handshake(URLContext *s, RTMPContext *rt) if (ret < 0) return ret; -if (CONFIG_FFRTMPCRYPT_PROTOCOL && rt->encrypted) { +#if CONFIG_FFRTMPCRYPT_PROTOCOL +if (rt->encrypted) { /* Compute the shared secret key sent by the server and initialize * the RC4 encryption. */ if ((ret = ff_rtmpe_com
[FFmpeg-devel] [PATCH v5 3/4] all: Guard if (INLINE*) checks with #if HAVE_INLINE_ASM
Continuation of 40e6575aa3eed64cd32bf28c00ae57edc5acb25a Signed-off-by: L. E. Segovia --- libavcodec/x86/hpeldsp_init.c | 2 ++ libavcodec/x86/vc1dsp_init.c | 2 +- 2 files changed, 3 insertions(+), 1 deletion(-) diff --git a/libavcodec/x86/hpeldsp_init.c b/libavcodec/x86/hpeldsp_init.c index 09c48c341e..6bde5a3893 100644 --- a/libavcodec/x86/hpeldsp_init.c +++ b/libavcodec/x86/hpeldsp_init.c @@ -224,8 +224,10 @@ av_cold void ff_hpeldsp_init_x86(HpelDSPContext *c, int flags) { int cpu_flags = av_get_cpu_flags(); +#if HAVE_INLINE_ASM if (INLINE_MMX(cpu_flags)) hpeldsp_init_mmx(c, flags); +#endif if (EXTERNAL_MMXEXT(cpu_flags)) hpeldsp_init_mmxext(c, flags); diff --git a/libavcodec/x86/vc1dsp_init.c b/libavcodec/x86/vc1dsp_init.c index bc63933e83..65fc28ea35 100644 --- a/libavcodec/x86/vc1dsp_init.c +++ b/libavcodec/x86/vc1dsp_init.c @@ -102,7 +102,7 @@ av_cold void ff_vc1dsp_init_x86(VC1DSPContext *dsp) { int cpu_flags = av_get_cpu_flags(); -#if HAVE_6REGS +#if HAVE_6REGS && HAVE_INLINE_ASM if (INLINE_MMX(cpu_flags)) if (EXTERNAL_MMX(cpu_flags)) ff_vc1dsp_init_mmx(dsp); -- 2.41.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-requ...@ffmpeg.org with subject "unsubscribe".
[FFmpeg-devel] [PATCH v5 4/4] all: Guard if (EXTERNAL*) checks with #if HAVE_X86ASM
Continuation of 40e6575aa3eed64cd32bf28c00ae57edc5acb25a Signed-off-by: L. E. Segovia --- libavcodec/x86/aacencdsp_init.c| 2 ++ libavcodec/x86/aacpsdsp_init.c | 2 ++ libavcodec/x86/ac3dsp_init.c | 4 libavcodec/x86/audiodsp_init.c | 2 ++ libavcodec/x86/bswapdsp_init.c | 2 ++ libavcodec/x86/cavsdsp.c | 2 ++ libavcodec/x86/celt_pvq_init.c | 2 ++ libavcodec/x86/cfhddsp_init.c | 2 ++ libavcodec/x86/cfhdencdsp_init.c | 2 ++ libavcodec/x86/dcadsp_init.c | 2 ++ libavcodec/x86/dct_init.c | 2 ++ libavcodec/x86/dnxhdenc_init.c | 2 ++ libavcodec/x86/exrdsp_init.c | 2 ++ libavcodec/x86/fft_init.c | 2 ++ libavcodec/x86/g722dsp_init.c | 2 ++ libavcodec/x86/h263dsp_init.c | 2 ++ libavcodec/x86/h264_intrapred_init.c | 2 ++ libavcodec/x86/h264chroma_init.c | 2 ++ libavcodec/x86/hevcdsp_init.c | 2 ++ libavcodec/x86/hpeldsp_init.c | 2 ++ libavcodec/x86/hpeldsp_vp3_init.c | 2 ++ libavcodec/x86/huffyuvdsp_init.c | 2 ++ libavcodec/x86/huffyuvencdsp_init.c| 2 ++ libavcodec/x86/idctdsp_init.c | 2 ++ libavcodec/x86/jpeg2000dsp_init.c | 2 ++ libavcodec/x86/lossless_videodsp_init.c| 2 ++ libavcodec/x86/lossless_videoencdsp_init.c | 2 ++ libavcodec/x86/me_cmp_init.c | 2 ++ libavcodec/x86/mlpdsp_init.c | 2 +- libavcodec/x86/mpegvideoencdsp_init.c | 2 ++ libavcodec/x86/opusdsp_init.c | 2 ++ libavcodec/x86/pixblockdsp_init.c | 2 ++ libavcodec/x86/pngdsp_init.c | 2 ++ libavcodec/x86/proresdsp_init.c| 2 ++ libavcodec/x86/rv34dsp_init.c | 2 ++ libavcodec/x86/sbcdsp_init.c | 2 ++ libavcodec/x86/sbrdsp_init.c | 2 ++ libavcodec/x86/svq1enc_init.c | 2 ++ libavcodec/x86/utvideodsp_init.c | 2 ++ libavcodec/x86/v210enc_init.c | 6 -- libavcodec/x86/vc1dsp_init.c | 2 +- libavcodec/x86/vorbisdsp_init.c| 2 ++ libavcodec/x86/vp3dsp_init.c | 2 ++ libavcodec/x86/vp6dsp_init.c | 2 ++ libavfilter/x86/af_afir_init.c | 2 ++ libavfilter/x86/af_anlmdn_init.c | 2 ++ libavfilter/x86/af_volume_init.c | 2 ++ libavfilter/x86/avf_showcqt_init.c | 2 ++ libavfilter/x86/colorspacedsp_init.c | 2 ++ libavfilter/x86/vf_atadenoise_init.c | 2 ++ libavfilter/x86/vf_blend_init.c| 2 ++ libavfilter/x86/vf_bwdif_init.c| 2 ++ libavfilter/x86/vf_convolution_init.c | 2 +- libavfilter/x86/vf_framerate_init.c| 2 ++ libavfilter/x86/vf_fspp_init.c | 2 ++ libavfilter/x86/vf_gblur_init.c| 2 ++ libavfilter/x86/vf_hflip_init.c| 2 ++ libavfilter/x86/vf_limiter_init.c | 2 ++ libavfilter/x86/vf_maskedclamp_init.c | 2 ++ libavfilter/x86/vf_maskedmerge_init.c | 2 ++ libavfilter/x86/vf_overlay_init.c | 2 ++ libavfilter/x86/vf_pp7_init.c | 2 ++ libavfilter/x86/vf_psnr_init.c | 2 ++ libavfilter/x86/vf_removegrain_init.c | 2 ++ libavfilter/x86/vf_ssim_init.c | 2 ++ libavfilter/x86/vf_stereo3d_init.c | 2 ++ libavfilter/x86/vf_threshold_init.c| 2 ++ libavfilter/x86/vf_tinterlace_init.c | 2 ++ libavfilter/x86/vf_transpose_init.c| 2 ++ libavfilter/x86/vf_v360_init.c | 2 ++ libavfilter/x86/vf_w3fdif_init.c | 2 ++ libavfilter/x86/vf_yadif_init.c| 2 ++ libavutil/x86/fixed_dsp_init.c | 2 ++ libavutil/x86/float_dsp_init.c | 2 ++ libavutil/x86/imgutils_init.c | 2 ++ libavutil/x86/lls_init.c | 2 ++ libavutil/x86/pixelutils_init.c| 2 ++ libswresample/x86/audio_convert_init.c | 2 ++ libswresample/x86/resample_init.c | 6 ++ libswscale/x86/rgb2rgb.c | 2 ++ libswscale/x86/swscale.c | 2 ++ 81 files changed, 167 insertions(+), 5 deletions(-) diff --git a/libavcodec/x86/aacencdsp_init.c b/libavcodec/x86/aacencdsp_init.c index 049a2417d9..7dca1d481b 100644 --- a/libavcodec/x86/aacencdsp_init.c +++ b/libavcodec/x86/aacencdsp_init.c @@ -34,6 +34,7 @@ void ff_aac_quantize_bands_sse2(int *out, const float *in, const float *scaled, av_cold void ff_aac_dsp_init_x86(AACEncContext *s) { +#if HAVE_X86ASM int cpu_flags = av_get_cpu_flags(); if (EXTERNAL_SSE(cpu_flags)) @@ -41,4 +42,5 @@ av_cold void ff_aac_dsp_init_x86(AACEncContext *s) if (EXTERNAL_SSE2(cpu_flags)) s->quant_bands = ff_aac_quantize_bands_sse2; +#endif /* HAVE_X86ASM */ } diff --git a/libavcodec/x86/aacpsdsp_init.c b/libavcodec/x86/aacpsdsp_init.c index
[FFmpeg-devel] Cease and Desist for AVRadio and SDR spam on this mailing list
Dear FFmpeg developers, contributors, reviewers and maintainers: This mail serves as notice to you to immediately cease and desist all harassing activities against and towards me, including but not limited to sending SDR and/or AVRadio related patches to this mailing list and/or threatening to push SDR code directly into FFmpeg code and its flagship libraries. Your actions are unwanted, embarrassing, annoying, aggressive and threatening, and have become unbearable to me. Your actions also infringe upon my right to remain free from harassment. As a result of your harassment, I have suffered serious mental breakdown. If you do not cease and desist the harassment, I will be forced to take appropriate critical action against this behavior including but not limited to leaving project and will seek all available damages and remedies. Sincerely, Paul B Mahol, FFmpeg developer and FFmpeg code maintainer ___ ffmpeg-devel mailing list ffmpeg-devel@ffmpeg.org https://ffmpeg.org/mailman/listinfo/ffmpeg-devel To unsubscribe, visit link above, or email ffmpeg-devel-requ...@ffmpeg.org with subject "unsubscribe".