Merge branch 'stable'
This commit is contained in:
commit
be282fac80
|
@ -5,6 +5,6 @@ contact_links:
|
||||||
url: https://discourse.libretime.org/
|
url: https://discourse.libretime.org/
|
||||||
about: Please find existing questions and discussions here.
|
about: Please find existing questions and discussions here.
|
||||||
|
|
||||||
- name: LibreTime Chat
|
- name: LibreTime Chat (#libretime:matrix.org)
|
||||||
url: https://chat.libretime.org/
|
url: https://matrix.to/#/#libretime:matrix.org
|
||||||
about: Discuss with the LibreTime community.
|
about: Discuss with the LibreTime community.
|
||||||
|
|
|
@ -83,8 +83,8 @@ jobs:
|
||||||
the next month.
|
the next month.
|
||||||
|
|
||||||
Please chat to us on the [forum](https://discourse.libretime.org/) or
|
Please chat to us on the [forum](https://discourse.libretime.org/) or
|
||||||
ask for help on our [chat](https://chat.libretime.org/) if you have any
|
ask for help on [#libretime:matrix.org](https://matrix.to/#/#libretime:matrix.org)
|
||||||
questions or need further support with getting this issue resolved.
|
if you have any questions or need further support with getting this issue resolved.
|
||||||
|
|
||||||
You may also label an issue as *pinned* if you would like to make sure
|
You may also label an issue as *pinned* if you would like to make sure
|
||||||
that it does not get closed by this bot.
|
that it does not get closed by this bot.
|
||||||
|
@ -93,8 +93,8 @@ jobs:
|
||||||
did not receive any further inputs.
|
did not receive any further inputs.
|
||||||
|
|
||||||
Feel free to let us know on the [forum](https://discourse.libretime.org/) or
|
Feel free to let us know on the [forum](https://discourse.libretime.org/) or
|
||||||
ask for help on our [chat](https://chat.libretime.org/) if you feel this
|
ask for help on [#libretime:matrix.org](https://matrix.to/#/#libretime:matrix.org)
|
||||||
issue should not have been closed.
|
if you feel this issue should not have been closed.
|
||||||
|
|
||||||
Thank you for your contributions.
|
Thank you for your contributions.
|
||||||
days-before-issue-stale: 150
|
days-before-issue-stale: 150
|
||||||
|
|
|
@ -26,7 +26,8 @@ we have a forum at [discourse.libretime.org](https://discourse.libretime.org).
|
||||||
We are moving towards using the forum to provide community support and reserving
|
We are moving towards using the forum to provide community support and reserving
|
||||||
the github issue queue for confirmed bugs and well-formed feature requests.
|
the github issue queue for confirmed bugs and well-formed feature requests.
|
||||||
|
|
||||||
You can also contact us through our [Mattermost instance](https://chat.libretime.org)
|
You can also contact us through [Matrix
|
||||||
|
(#libretime:matrix.org)](https://matrix.to/#/#libretime:matrix.org)
|
||||||
where you can talk with other users and developers.
|
where you can talk with other users and developers.
|
||||||
|
|
||||||
## Contributors
|
## Contributors
|
||||||
|
|
|
@ -6,7 +6,7 @@ import TarballLink from '@site/src/components/TarballLink';
|
||||||
|
|
||||||
Please report new issues and/or feature requests in [the issue tracker](https://github.com/libretime/libretime/issues).
|
Please report new issues and/or feature requests in [the issue tracker](https://github.com/libretime/libretime/issues).
|
||||||
|
|
||||||
For general discussion or if you need help, you can join the [discourse](https://discourse.libretime.org/) forum or chat on the [mattermost](https://chat.libretime.org/) server.
|
For general discussion or if you need help, you can join the [discourse](https://discourse.libretime.org/) forum or chat on [#libretime:matrix.org](https://matrix.to/#/#libretime:matrix.org).
|
||||||
|
|
||||||
:::
|
:::
|
||||||
|
|
||||||
|
|
|
@ -32,8 +32,8 @@
|
||||||
|
|
||||||
{%- elif audio.format == "aac" -%}
|
{%- elif audio.format == "aac" -%}
|
||||||
%fdkaac(
|
%fdkaac(
|
||||||
bitrate=bitrate={{ audio.bitrate }},
|
bitrate={{ audio.bitrate }},
|
||||||
aot={{ "mpeg4_he_aac_v2" if audio.bitrate <= 64 else "mpeg4_aac_lc" }},
|
aot={{ ("mpeg4_he_aac_v2" if audio.bitrate <= 64 else "mpeg4_aac_lc") | quote }},
|
||||||
afterburner={{ "false" if audio.bitrate <= 128 else "true" }},
|
afterburner={{ "false" if audio.bitrate <= 128 else "true" }},
|
||||||
sbr_mode=true
|
sbr_mode=true
|
||||||
)
|
)
|
||||||
|
|
|
@ -1,5 +1,5 @@
|
||||||
from pathlib import Path
|
from pathlib import Path
|
||||||
from subprocess import check_call
|
from subprocess import CalledProcessError, check_call, check_output
|
||||||
from unittest import mock
|
from unittest import mock
|
||||||
|
|
||||||
import pytest
|
import pytest
|
||||||
|
@ -10,7 +10,7 @@ from libretime_playout.liquidsoap.models import Info, StreamPreferences
|
||||||
from libretime_playout.liquidsoap.version import get_liquidsoap_version
|
from libretime_playout.liquidsoap.version import get_liquidsoap_version
|
||||||
|
|
||||||
from .conftest import LIQ_VERSION
|
from .conftest import LIQ_VERSION
|
||||||
from .fixtures import TEST_STREAM_CONFIGS
|
from .fixtures import TEST_STREAM_CONFIGS, make_config_with_stream
|
||||||
|
|
||||||
|
|
||||||
@pytest.mark.parametrize(
|
@pytest.mark.parametrize(
|
||||||
|
@ -73,3 +73,44 @@ def test_liquidsoap_syntax(tmp_path: Path, stream_config):
|
||||||
)
|
)
|
||||||
|
|
||||||
check_call(["liquidsoap", "--check", str(entrypoint_filepath)])
|
check_call(["liquidsoap", "--check", str(entrypoint_filepath)])
|
||||||
|
|
||||||
|
|
||||||
|
@pytest.mark.skipif(
|
||||||
|
LIQ_VERSION >= (2, 0, 0),
|
||||||
|
reason="unsupported liquidsoap >= 2.0.0",
|
||||||
|
)
|
||||||
|
def test_liquidsoap_unsupported_output_aac(tmp_path: Path):
|
||||||
|
entrypoint_filepath = tmp_path / "radio.liq"
|
||||||
|
log_filepath = tmp_path / "radio.log"
|
||||||
|
|
||||||
|
entrypoint_filepath.write_text(
|
||||||
|
generate_entrypoint(
|
||||||
|
log_filepath=log_filepath,
|
||||||
|
config=make_config_with_stream(
|
||||||
|
outputs={
|
||||||
|
"icecast": [
|
||||||
|
{
|
||||||
|
"enabled": True,
|
||||||
|
"mount": "main.aac",
|
||||||
|
"source_password": "hackme",
|
||||||
|
"audio": {"format": "aac", "bitrate": 128},
|
||||||
|
}
|
||||||
|
]
|
||||||
|
}
|
||||||
|
),
|
||||||
|
preferences=StreamPreferences(
|
||||||
|
input_fade_transition=0.0,
|
||||||
|
message_format=0,
|
||||||
|
message_offline="LibreTime - offline",
|
||||||
|
),
|
||||||
|
info=Info(
|
||||||
|
station_name="LibreTime",
|
||||||
|
),
|
||||||
|
version=get_liquidsoap_version(),
|
||||||
|
),
|
||||||
|
encoding="utf-8",
|
||||||
|
)
|
||||||
|
|
||||||
|
with pytest.raises(CalledProcessError) as exception:
|
||||||
|
check_output(["liquidsoap", "--check", str(entrypoint_filepath)])
|
||||||
|
assert b"You must be missing an optional dependency." in exception.value.stdout
|
||||||
|
|
Loading…
Reference in New Issue