|
|
@ -523,3 +523,168 @@
|
|
|
|
+
|
|
|
|
+
|
|
|
|
+
|
|
|
|
+
|
|
|
|
+#endif /* AVCODEC_HEVC_HEVC_H */
|
|
|
|
+#endif /* AVCODEC_HEVC_HEVC_H */
|
|
|
|
|
|
|
|
--- /dev/null 2024-11-22 07:51:33.845958571 +0100
|
|
|
|
|
|
|
|
+++ chromium-131.0.6778.85/third_party/ffmpeg/libavutil/aarch64/intreadwrite.h 2024-11-19 23:48:50.697394400 +0100
|
|
|
|
|
|
|
|
@@ -0,0 +1,42 @@
|
|
|
|
|
|
|
|
+/*
|
|
|
|
|
|
|
|
+ * This file is part of FFmpeg.
|
|
|
|
|
|
|
|
+ *
|
|
|
|
|
|
|
|
+ * FFmpeg is free software; you can redistribute it and/or
|
|
|
|
|
|
|
|
+ * modify it under the terms of the GNU Lesser General Public
|
|
|
|
|
|
|
|
+ * License as published by the Free Software Foundation; either
|
|
|
|
|
|
|
|
+ * version 2.1 of the License, or (at your option) any later version.
|
|
|
|
|
|
|
|
+ *
|
|
|
|
|
|
|
|
+ * FFmpeg is distributed in the hope that it will be useful,
|
|
|
|
|
|
|
|
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
|
|
|
|
|
|
|
|
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
|
|
|
|
|
|
|
|
+ * Lesser General Public License for more details.
|
|
|
|
|
|
|
|
+ *
|
|
|
|
|
|
|
|
+ * You should have received a copy of the GNU Lesser General Public
|
|
|
|
|
|
|
|
+ * License along with FFmpeg; if not, write to the Free Software
|
|
|
|
|
|
|
|
+ * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA
|
|
|
|
|
|
|
|
+ */
|
|
|
|
|
|
|
|
+
|
|
|
|
|
|
|
|
+#ifndef AVUTIL_AARCH64_INTREADWRITE_H
|
|
|
|
|
|
|
|
+#define AVUTIL_AARCH64_INTREADWRITE_H
|
|
|
|
|
|
|
|
+
|
|
|
|
|
|
|
|
+#if HAVE_INTRINSICS_NEON
|
|
|
|
|
|
|
|
+
|
|
|
|
|
|
|
|
+#include <arm_neon.h>
|
|
|
|
|
|
|
|
+
|
|
|
|
|
|
|
|
+#define AV_COPY128 AV_COPY128
|
|
|
|
|
|
|
|
+static av_always_inline void AV_COPY128(void *d, const void *s)
|
|
|
|
|
|
|
|
+{
|
|
|
|
|
|
|
|
+ uint8x16_t tmp = vld1q_u8((const uint8_t *)s);
|
|
|
|
|
|
|
|
+ vst1q_u8((uint8_t *)d, tmp);
|
|
|
|
|
|
|
|
+}
|
|
|
|
|
|
|
|
+
|
|
|
|
|
|
|
|
+#define AV_ZERO128 AV_ZERO128
|
|
|
|
|
|
|
|
+static av_always_inline void AV_ZERO128(void *d)
|
|
|
|
|
|
|
|
+{
|
|
|
|
|
|
|
|
+ uint8x16_t zero = vdupq_n_u8(0);
|
|
|
|
|
|
|
|
+ vst1q_u8((uint8_t *)d, zero);
|
|
|
|
|
|
|
|
+}
|
|
|
|
|
|
|
|
+
|
|
|
|
|
|
|
|
+#endif /* HAVE_INTRINSICS_NEON */
|
|
|
|
|
|
|
|
+
|
|
|
|
|
|
|
|
+#endif /* AVUTIL_AARCH64_INTREADWRITE_H */
|
|
|
|
|
|
|
|
--- /dev/null 2024-11-22 07:51:33.845958571 +0100
|
|
|
|
|
|
|
|
+++ chromium-131.0.6778.85/third_party/ffmpeg/libavcodec/opus/enc.h 2024-11-19 23:48:49.631320000 +0100
|
|
|
|
|
|
|
|
@@ -0,0 +1,55 @@
|
|
|
|
|
|
|
|
+/*
|
|
|
|
|
|
|
|
+ * Opus encoder
|
|
|
|
|
|
|
|
+ * Copyright (c) 2017 Rostislav Pehlivanov <atomnuker@gmail.com>
|
|
|
|
|
|
|
|
+ *
|
|
|
|
|
|
|
|
+ * This file is part of FFmpeg.
|
|
|
|
|
|
|
|
+ *
|
|
|
|
|
|
|
|
+ * FFmpeg is free software; you can redistribute it and/or
|
|
|
|
|
|
|
|
+ * modify it under the terms of the GNU Lesser General Public
|
|
|
|
|
|
|
|
+ * License as published by the Free Software Foundation; either
|
|
|
|
|
|
|
|
+ * version 2.1 of the License, or (at your option) any later version.
|
|
|
|
|
|
|
|
+ *
|
|
|
|
|
|
|
|
+ * FFmpeg is distributed in the hope that it will be useful,
|
|
|
|
|
|
|
|
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
|
|
|
|
|
|
|
|
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
|
|
|
|
|
|
|
|
+ * Lesser General Public License for more details.
|
|
|
|
|
|
|
|
+ *
|
|
|
|
|
|
|
|
+ * You should have received a copy of the GNU Lesser General Public
|
|
|
|
|
|
|
|
+ * License along with FFmpeg; if not, write to the Free Software
|
|
|
|
|
|
|
|
+ * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA
|
|
|
|
|
|
|
|
+ */
|
|
|
|
|
|
|
|
+
|
|
|
|
|
|
|
|
+#ifndef AVCODEC_OPUS_ENC_H
|
|
|
|
|
|
|
|
+#define AVCODEC_OPUS_ENC_H
|
|
|
|
|
|
|
|
+
|
|
|
|
|
|
|
|
+#include "libavutil/intmath.h"
|
|
|
|
|
|
|
|
+#include "opus.h"
|
|
|
|
|
|
|
|
+
|
|
|
|
|
|
|
|
+/* Determines the maximum delay the psychoacoustic system will use for lookahead */
|
|
|
|
|
|
|
|
+#define FF_BUFQUEUE_SIZE 145
|
|
|
|
|
|
|
|
+#include "libavfilter/bufferqueue.h"
|
|
|
|
|
|
|
|
+
|
|
|
|
|
|
|
|
+#define OPUS_MAX_LOOKAHEAD ((FF_BUFQUEUE_SIZE - 1)*2.5f)
|
|
|
|
|
|
|
|
+
|
|
|
|
|
|
|
|
+#define OPUS_MAX_CHANNELS 2
|
|
|
|
|
|
|
|
+
|
|
|
|
|
|
|
|
+/* 120 ms / 2.5 ms = 48 frames (extremely improbable, but the encoder'll work) */
|
|
|
|
|
|
|
|
+#define OPUS_MAX_FRAMES_PER_PACKET 48
|
|
|
|
|
|
|
|
+
|
|
|
|
|
|
|
|
+#define OPUS_BLOCK_SIZE(x) (2 * 15 * (1 << ((x) + 2)))
|
|
|
|
|
|
|
|
+
|
|
|
|
|
|
|
|
+#define OPUS_SAMPLES_TO_BLOCK_SIZE(x) (ff_log2((x) / (2 * 15)) - 2)
|
|
|
|
|
|
|
|
+
|
|
|
|
|
|
|
|
+typedef struct OpusEncOptions {
|
|
|
|
|
|
|
|
+ float max_delay_ms;
|
|
|
|
|
|
|
|
+ int apply_phase_inv;
|
|
|
|
|
|
|
|
+} OpusEncOptions;
|
|
|
|
|
|
|
|
+
|
|
|
|
|
|
|
|
+typedef struct OpusPacketInfo {
|
|
|
|
|
|
|
|
+ enum OpusMode mode;
|
|
|
|
|
|
|
|
+ enum OpusBandwidth bandwidth;
|
|
|
|
|
|
|
|
+ int framesize;
|
|
|
|
|
|
|
|
+ int frames;
|
|
|
|
|
|
|
|
+} OpusPacketInfo;
|
|
|
|
|
|
|
|
+
|
|
|
|
|
|
|
|
+#endif /* AVCODEC_OPUS_ENC_H */
|
|
|
|
|
|
|
|
--- /dev/null 2024-11-22 07:51:33.845958571 +0100
|
|
|
|
|
|
|
|
+++ chromium-131.0.6778.85/third_party/ffmpeg/libavcodec/opus/opus.h 2024-11-19 23:48:49.631320000 +0100
|
|
|
|
|
|
|
|
@@ -0,0 +1,59 @@
|
|
|
|
|
|
|
|
+/*
|
|
|
|
|
|
|
|
+ * Opus common header
|
|
|
|
|
|
|
|
+ * Copyright (c) 2012 Andrew D'Addesio
|
|
|
|
|
|
|
|
+ * Copyright (c) 2013-2014 Mozilla Corporation
|
|
|
|
|
|
|
|
+ *
|
|
|
|
|
|
|
|
+ * This file is part of FFmpeg.
|
|
|
|
|
|
|
|
+ *
|
|
|
|
|
|
|
|
+ * FFmpeg is free software; you can redistribute it and/or
|
|
|
|
|
|
|
|
+ * modify it under the terms of the GNU Lesser General Public
|
|
|
|
|
|
|
|
+ * License as published by the Free Software Foundation; either
|
|
|
|
|
|
|
|
+ * version 2.1 of the License, or (at your option) any later version.
|
|
|
|
|
|
|
|
+ *
|
|
|
|
|
|
|
|
+ * FFmpeg is distributed in the hope that it will be useful,
|
|
|
|
|
|
|
|
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
|
|
|
|
|
|
|
|
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
|
|
|
|
|
|
|
|
+ * Lesser General Public License for more details.
|
|
|
|
|
|
|
|
+ *
|
|
|
|
|
|
|
|
+ * You should have received a copy of the GNU Lesser General Public
|
|
|
|
|
|
|
|
+ * License along with FFmpeg; if not, write to the Free Software
|
|
|
|
|
|
|
|
+ * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA
|
|
|
|
|
|
|
|
+ */
|
|
|
|
|
|
|
|
+
|
|
|
|
|
|
|
|
+#ifndef AVCODEC_OPUS_OPUS_H
|
|
|
|
|
|
|
|
+#define AVCODEC_OPUS_OPUS_H
|
|
|
|
|
|
|
|
+
|
|
|
|
|
|
|
|
+#include <stdint.h>
|
|
|
|
|
|
|
|
+
|
|
|
|
|
|
|
|
+#define OPUS_MAX_FRAME_SIZE 1275
|
|
|
|
|
|
|
|
+#define OPUS_MAX_FRAMES 48
|
|
|
|
|
|
|
|
+#define OPUS_MAX_PACKET_DUR 5760
|
|
|
|
|
|
|
|
+
|
|
|
|
|
|
|
|
+#define OPUS_TS_HEADER 0x7FE0 // 0x3ff (11 bits)
|
|
|
|
|
|
|
|
+#define OPUS_TS_MASK 0xFFE0 // top 11 bits
|
|
|
|
|
|
|
|
+
|
|
|
|
|
|
|
|
+static const uint8_t opus_default_extradata[30] = {
|
|
|
|
|
|
|
|
+ 'O', 'p', 'u', 's', 'H', 'e', 'a', 'd',
|
|
|
|
|
|
|
|
+ 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
|
|
|
|
|
|
|
|
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
|
|
|
|
|
|
|
|
+};
|
|
|
|
|
|
|
|
+
|
|
|
|
|
|
|
|
+enum OpusMode {
|
|
|
|
|
|
|
|
+ OPUS_MODE_SILK,
|
|
|
|
|
|
|
|
+ OPUS_MODE_HYBRID,
|
|
|
|
|
|
|
|
+ OPUS_MODE_CELT,
|
|
|
|
|
|
|
|
+
|
|
|
|
|
|
|
|
+ OPUS_MODE_NB
|
|
|
|
|
|
|
|
+};
|
|
|
|
|
|
|
|
+
|
|
|
|
|
|
|
|
+enum OpusBandwidth {
|
|
|
|
|
|
|
|
+ OPUS_BANDWIDTH_NARROWBAND,
|
|
|
|
|
|
|
|
+ OPUS_BANDWIDTH_MEDIUMBAND,
|
|
|
|
|
|
|
|
+ OPUS_BANDWIDTH_WIDEBAND,
|
|
|
|
|
|
|
|
+ OPUS_BANDWIDTH_SUPERWIDEBAND,
|
|
|
|
|
|
|
|
+ OPUS_BANDWIDTH_FULLBAND,
|
|
|
|
|
|
|
|
+
|
|
|
|
|
|
|
|
+ OPUS_BANDWITH_NB
|
|
|
|
|
|
|
|
+};
|
|
|
|
|
|
|
|
+
|
|
|
|
|
|
|
|
+#endif /* AVCODEC_OPUS_OPUS_H */
|
|
|
|