diff --git a/libavcodec/libopusencc.c b/libavcodec/libopusencc.c
index 2a97811d18..40ee7b8fec 100644
--- a/libavcodec/libopusenc.c
+++ b/libavcodec/libopusenc.c
@@ -33,6 +33,7 @@
typedef struct LibopusEncOpts {
int vbr;
int application;
+ int enable_fec;
int packet_loss;
int complexity;
float frame_duration;
@@ -143,6 +144,13 @@
"Unable to set constrained VBR: %s\n", opus_strerror(ret));
ret = opus_multistream_encoder_ctl(enc,
+ OPUS_SET_INBAND_FEC(opts->enable_fec));
+ if (ret != OPUS_OK)
+ av_log(avctx, AV_LOG_WARNING,
+ "Unable to set enable FEC flag percentage: %s\n",
+ opus_strerror(ret));
+
+ ret = opus_multistream_encoder_ctl(enc,
OPUS_SET_PACKET_LOSS_PERC(opts->packet_loss));
if (ret != OPUS_OK)
av_log(avctx, AV_LOG_WARNING,
@@ -452,6 +460,15 @@
int ret;
int discard_padding;
+ // Reload packet loss setting
+ ret = opus_multistream_encoder_ctl(opus->enc,
+ OPUS_SET_PACKET_LOSS_PERC(opus->opts.packet_loss));
+ if (ret != OPUS_OK)
+ av_log(avctx, AV_LOG_WARNING,
+ "Unable to set expected packet loss percentage: %s\n",
+ opus_strerror(ret));
+
+
if (frame) {
ret = ff_af_queue_add(&opus->afq, frame);
if (ret < 0)
@@ -543,6 +560,7 @@
{ "audio", "Favor faithfulness to the input", 0, AV_OPT_TYPE_CONST, { .i64 = OPUS_APPLICATION_AUDIO }, 0, 0, FLAGS, "application" },
{ "lowdelay", "Restrict to only the lowest delay modes", 0, AV_OPT_TYPE_CONST, { .i64 = OPUS_APPLICATION_RESTRICTED_LOWDELAY }, 0, 0, FLAGS, "application" },
{ "frame_duration", "Duration of a frame in milliseconds", OFFSET(frame_duration), AV_OPT_TYPE_FLOAT, { .dbl = 20.0 }, 2.5, 120.0, FLAGS },
+ { "enable_fec", "Enable forward error correction", OFFSET(enable_fec), AV_OPT_TYPE_BOOL, { .i64 = 0 }, 0, 1, FLAGS },
{ "packet_loss", "Expected packet loss percentage", OFFSET(packet_loss), AV_OPT_TYPE_INT, { .i64 = 0 }, 0, 100, FLAGS },
{ "vbr", "Variable bit rate mode", OFFSET(vbr), AV_OPT_TYPE_INT, { .i64 = 1 }, 0, 2, FLAGS, "vbr" },
{ "off", "Use constant bit rate", 0, AV_OPT_TYPE_CONST, { .i64 = 0 }, 0, 0, FLAGS, "vbr" },
096b12a444b81718c3873281484bf61&showmsg=1'>Expand)
Author |
2024-03-11 | etc: systemd services: switch to "journal" for output and error logging....The "syslog" method has been deprecated for years, and issues a warning:
Standard output type syslog is obsolete, automatically updating to
journal. Please update your unit file, and consider removing the setting
altogether.
Fixes: #48323
* etc/guix-daemon.service.in (StandardOutput): Use "journal"
(StandardError): Likewise.
* etc/guix-publish.service.in (StandardOutput): Likewise.
(StandardError): Likewise.
| Vagrant Cascadian |
2022-10-23 | etc: systemd services shouldn't ‘RemainAfterExit’....* etc/guix-daemon.service.in (RemainAfterExit): Don't.
* etc/guix-publish.service.in (RemainAfterExit): Likewise don't.
| Tobias Geerinckx-Rice |
2022-10-23 | etc: Add ‘Restart=always’ to both systemd services....* etc/guix-daemon.service.in (Restart): ‘Always’ do.
* etc/guix-publish.service.in (Restart): Likewise.
| Tobias Geerinckx-Rice |
2022-10-23 | etc: Add ‘OOMPolicy=continue’ to guix-daemon.service....* etc/guix-daemon.service.in (OOMPolicy): Continue.
| Tobias Geerinckx-Rice |
2021-07-07 | guix-install.sh: Prompt for configuring substitutes discovery....Also ensure prompt_yes_no always print the message with a trailing space,
which is more pleasing to the eye.
* etc/guix-daemon.conf.in <--discover=no>: New guix-daemon option.
* etc/guix-daemon.service.in: Likewise.
* etc/init.d/guix-daemon.in: Likewise.
* etc/openrc/guix-daemon.in: Likewise.
* etc/guix-install.sh (configure_substitute_discovery): New procedure.
(sys_enable_guix_daemon): Ask the user whether automatic substitute discovery
should be enabled. Set the '--discover' argument accordingly.
(prompt_yes_no): Add a trailing space to the message.
(sys_authorize_build_farms): Remove trailing space from the message argument.
* NEWS (Distribution): Add news.
| Maxim Cournoyer |
2019-06-05 | etc: guix-daemon.service.in: Fix GUIX_LOCPATH quoting....Fixes <https://bugs.gnu.org/36074>.
* etc/guix-daemon.service.in: Move the GUIX_LOCPATH environment variable name
inside the quotes.
Signed-off-by: Ricardo Wurmus <rekado@elephly.net>
| Jack Hill |
2019-05-13 | Set 'LC_ALL=en_US.utf8' in systemd '.service' files....Fixes <https://bugs.gnu.org/35671>.
* etc/guix-daemon.service.in (Environment): Quote the 'GUIX_LOCPATH'
value; add 'LC_ALL'.
* etc/guix-publish.service.in (Environment): Likewise.
| Ludovic Courtès |