Xiph.Org issueshttps://gitlab.xiph.org/groups/xiph/-/issues2022-03-16T01:33:34Zhttps://gitlab.xiph.org/xiph/icecast-server/-/issues/1655OggFLAC metadata not supported in Icecast2022-03-16T01:33:34ZJim CollinsonOggFLAC metadata not supported in IcecastAs a business we would really like to start streaming in lossless OggFLAC, but Icecast does not support metadata from OggFLAC. So this is a no-go for us at the moment.
FLAC uses Vorbis comments, so surly this wouldn't be difficult to ac...As a business we would really like to start streaming in lossless OggFLAC, but Icecast does not support metadata from OggFLAC. So this is a no-go for us at the moment.
FLAC uses Vorbis comments, so surly this wouldn't be difficult to achieve?Philipp SchafftPhilipp Schaffthttps://gitlab.xiph.org/xiph/icecast-server/-/issues/2430The Playlist does not display the time the song was played.2022-03-15T15:11:37ZPhilipp SchafftThe Playlist does not display the time the song was played.The playlist currently adheres XSPF fully, so there are no timestamps. However it might be useful. It may be added using extentions (likely using a `<meta>` element).
See also parent ticket #2428.The playlist currently adheres XSPF fully, so there are no timestamps. However it might be useful. It may be added using extentions (likely using a `<meta>` element).
See also parent ticket #2428.https://gitlab.xiph.org/xiph/icecast-server/-/issues/1914Port wildcard mounts to trunk2022-03-15T11:05:26ZcatoPort wildcard mounts to trunkIn the [kh-branch](https://trac.xiph.org/browser/icecast/branches/kh/icecast/src/cfgfile.c#L1203) is a feature which allows you to specify wildcard mounts like
```
<mount>
<mount-name>/foo-*.mp3</mount-name>
</mount>
```
to set options f...In the [kh-branch](https://trac.xiph.org/browser/icecast/branches/kh/icecast/src/cfgfile.c#L1203) is a feature which allows you to specify wildcard mounts like
```
<mount>
<mount-name>/foo-*.mp3</mount-name>
</mount>
```
to set options for an unknown set of mount points. Please port this to the [mainstream icecast](https://trac.xiph.org/browser/icecast/trunk/icecast/src/cfgfile.c#L1126) as well.
Thomas B. RückerThomas B. Rückerhttps://gitlab.xiph.org/xiph/icecast-server/-/issues/2429/admin/version.xsl is not installed2022-03-15T10:23:11ZPhilipp Schafft/admin/version.xsl is not installed`/admin/version.xsl` is not installed. (Missing in `nobase_dist_admin_DATA`.)`/admin/version.xsl` is not installed. (Missing in `nobase_dist_admin_DATA`.)Philipp SchafftPhilipp Schaffthttps://gitlab.xiph.org/xiph/speexdsp/-/issues/7"Fluttery" audio stream2022-03-12T08:50:17Zcrunchysteve"Fluttery" audio streamhttps://gitlab.xiph.org/xiph/icecast-server/-/issues/2360Document and define query string and POST parameters2022-03-11T12:47:10ZPhilipp SchafftDocument and define query string and POST parametersThe currently existing parameters should be documented.
Also it should be one or more or a prefix for custom parameters be defined for user specific data.
* The value(s) should be send to logging,
* the value(s) should be send to auth,
...The currently existing parameters should be documented.
Also it should be one or more or a prefix for custom parameters be defined for user specific data.
* The value(s) should be send to logging,
* the value(s) should be send to auth,
* the value(s) may be send to (fast)events.
A single value like 'token' or 'etoken' (e ➔ external) would be easy and secure to implement. However a user that needs multiple values must encode them into a single value themselfs in that case.
On the other paw a prefix could be defined (such as 'e-', e ➔ external) that is considered 'safe' (as in not used by Icecast or any future version) even if not used. This would allow future extension at some point.
currently the following parameters are universal:
* omode
* mount
The admin/-interface uses more parameters.Philipp SchafftPhilipp Schaffthttps://gitlab.xiph.org/xiph/icecast-server/-/issues/2383Oversized EBML headers for WebM live stream2022-03-09T19:32:39ZWolne WilnoOversized EBML headers for WebM live streamFrom version ffmpeg 4.1 or above, when trying to stream WebM video Icecast produce error: `EBML Header too large, failing`
Solution is to increase EBML Header in `format_ebml.c` from 131072 bytes (0.125 MiB) to bytes 524288 (0.5 Mib)
C...From version ffmpeg 4.1 or above, when trying to stream WebM video Icecast produce error: `EBML Header too large, failing`
Solution is to increase EBML Header in `format_ebml.c` from 131072 bytes (0.125 MiB) to bytes 524288 (0.5 Mib)
Change in https://gitlab.xiph.org/xiph/icecast-server/-/blob/master/src/format_ebml.c from `#define EBML_HEADER_MAX_SIZE 131072` to `#define EBML_HEADER_MAX_SIZE 524288`https://gitlab.xiph.org/xiph/opus/-/issues/2353Encoding silence as VOIP results in low-level noise in output of decoder2022-03-08T12:28:21ZFrancis QuiersEncoding silence as VOIP results in low-level noise in output of decoderIn a scenario where speech is followed by pure silence (for example in a VoIP application where the user might mute their microphone), and DTX is disabled, it seems that the Opus (SILK) decoder generates very low-level noise (around -56d...In a scenario where speech is followed by pure silence (for example in a VoIP application where the user might mute their microphone), and DTX is disabled, it seems that the Opus (SILK) decoder generates very low-level noise (around -56dB). I am not sure whether this is a known, and potentially expected/desired behaviour, but I thought I would report it anyway. It feels that it would be nice if the transcoded output in this case could still be pure silence. This is the case if changing the application type from "voip" to "audio". Could you please comment? Many thanks.
Steps to reproduce (environment: Linux Ubuntu 18.04 64-bit, Opus 1.3.1):
```
./autogen.sh
./configure --enable-fixed-point --disable-doc --with-pic
./opus_demo voip 16000 1 64000 speech_and_silence.raw speech_and_silence_output.raw
```
[speech_and_silence.raw](/uploads/14ca8c17d68b6b0322300f53e5d3bdf9/speech_and_silence.raw)
[speech_and_silence_output.raw](/uploads/3caa5cfed4ce43ef1b94e29f6b729d22/speech_and_silence_output.raw)https://gitlab.xiph.org/xiph/icecast-server/-/issues/2099Review how Icecast binds to sockets (IPv6/IPv4)2022-03-07T10:07:56ZThomas B. RückerReview how Icecast binds to sockets (IPv6/IPv4)The current behaviour, as introduced after considerable research and discussion neeeds to be reviewed.
Either we should bind to *both* if no IP nor protocol is specified or we MUST document this better and change the default config to e...The current behaviour, as introduced after considerable research and discussion neeeds to be reviewed.
Either we should bind to *both* if no IP nor protocol is specified or we MUST document this better and change the default config to explicitly bind to both.Icecast 2.5.0Thomas B. RückerThomas B. Rückerhttps://gitlab.xiph.org/xiph/speexdsp/-/issues/6libspeexdsp.def is missing definitions2022-03-01T12:38:06ZPierre Ferranlibspeexdsp.def is missing definitionslibspeexdsp.def is missing definitions, particularly jitter_buffer_ctl and jitter_buffer_remaining_span, cause the build to not contain all necessary functions on Win32. This issue does not occur on _nix.
See https://github.com/microsof...libspeexdsp.def is missing definitions, particularly jitter_buffer_ctl and jitter_buffer_remaining_span, cause the build to not contain all necessary functions on Win32. This issue does not occur on _nix.
See https://github.com/microsoft/vcpkg/pull/23296https://gitlab.xiph.org/xiph/icecast-server/-/issues/2409The <no-mount> flag should be visible at the status page2022-02-28T11:17:41ZPhilipp SchafftThe <no-mount> flag should be visible at the status pageThe `<no-mount>` flag should be visible at the status page. At least the player and the playlist links should be removed.The `<no-mount>` flag should be visible at the status page. At least the player and the playlist links should be removed.Philipp SchafftPhilipp Schaffthttps://gitlab.xiph.org/xiph/icecast-server/-/issues/2408Rename <no-mount>2022-02-28T10:58:49ZPhilipp SchafftRename <no-mount>The config option `<no-mount>` should be renamed to have some better name.
One of the suggestions was `<allow-direct-access>` (which has inverted logic).The config option `<no-mount>` should be renamed to have some better name.
One of the suggestions was `<allow-direct-access>` (which has inverted logic).Philipp SchafftPhilipp Schaffthttps://gitlab.xiph.org/xiph/icecast-server/-/issues/2378There should be a stats value indicating how if a stream is in a stable state2022-02-27T20:06:54ZPhilipp SchafftThere should be a stats value indicating how if a stream is in a stable stateThere should be a stats value that indicates if a stream has been proven stable. That is at least connected for a given minimum amount of time and sending data. This could be used by the fallback logic to avoid switching 'back' to a flap...There should be a stats value that indicates if a stream has been proven stable. That is at least connected for a given minimum amount of time and sending data. This could be used by the fallback logic to avoid switching 'back' to a flapping stream.Philipp SchafftPhilipp Schaffthttps://gitlab.xiph.org/xiph/icecast-server/-/issues/2401Allow `icy-metadata` and `icy-metaint` in default CORS configuration2022-02-26T18:35:51ZEthan HalsallAllow `icy-metadata` and `icy-metaint` in default CORS configurationI noticed that many of the public streams I've encountered have a wide-open Access-Control-Allow-Origin policy, but do not allow access to request the `Icy-Metadata` header nor allow access to read the `Icy-MetaInt` header in the respons...I noticed that many of the public streams I've encountered have a wide-open Access-Control-Allow-Origin policy, but do not allow access to request the `Icy-Metadata` header nor allow access to read the `Icy-MetaInt` header in the response. This prevents any clients that honor CORS (i.e. browsers) from requesting or reading icy metadata.
This patch is to allow cross-origin access to the `Icy-MetaData` and `Icy-MetaInt` headers by default. Also, this patch inserts the `Access-Control-Allow-Headers` and `Access-Control-Expose-Headers` into the default XML configuration so that icy metadata works by default. Users can opt-out of it like they can with `Access-Control-Allow-Origin: *`.
The main use-case is to enable browsers to read icy metadata via a cross-origin request. I'm building a client side library that does that here: [icecast-metadata-js](https://github.com/eshaz/icecast-metadata-js). The inline metadata offers immediate metadata updates with no noticeable latency, which is really valuable in certain contexts, like for broadcasting police / fire scanner metadata, or ad insertions, etc.
[0001-feat-add-icy-metadata-support-for-cors.patch](/uploads/fb696baa19b3dfe8419021d66d52e2a3/0001-feat-add-icy-metadata-support-for-cors.patch)https://gitlab.xiph.org/xiph/icecast-server/-/issues/2417After working days without problem Icecast 2.4.4 not trying to update relays ...2022-02-19T09:59:17ZdanielsoheilAfter working days without problem Icecast 2.4.4 not trying to update relays from master serverthis my icecast.xml config:
```
<icecast>
<location>Iran</location>
<admin>info@myts3.ir</admin>
<limits>
<clients>50000</clients>
<sources>1000</sources>
<queue-size>307200</queue-size>
<...this my icecast.xml config:
```
<icecast>
<location>Iran</location>
<admin>info@myts3.ir</admin>
<limits>
<clients>50000</clients>
<sources>1000</sources>
<queue-size>307200</queue-size>
<client-timeout>30</client-timeout>
<header-timeout>600</header-timeout>
<source-timeout>600</source-timeout>
<burst-on-connect>1</burst-on-connect>
<burst-size>196608</burst-size>
</limits>
<authentication>
<source-password>removed</source-password>
<relay-password>removed</relay-password>
<admin-user>admin</admin-user>
<admin-password>removed</admin-password>
</authentication>
<hostname>radio.myts3.ir</hostname>
<listen-socket>
<port>18000</port>
</listen-socket>
<http-headers>
<header name="Access-Control-Allow-Origin" value="*" />
</http-headers>
<master-server>192.168.100.53</master-server>
<master-server-port>8000</master-server-port>
<master-update-interval>30</master-update-interval>
<master-password>removed</master-password>
<relays-on-demand>0</relays-on-demand>
<fileserve>1</fileserve>
<paths>
<basedir>/usr/share/icecast</basedir>
<logdir>/var/log/icecast</logdir>
<webroot>/usr/share/icecast/web</webroot>
<adminroot>/usr/share/icecast/admin</adminroot>
<alias source="/" destination="/status-json.xsl"/>
</paths>
<logging>
<accesslog>access.log</accesslog>
<errorlog>error.log</errorlog>
<loglevel>4</loglevel>
<logsize>100000</logsize>
</logging>
<security>
<chroot>0</chroot>
</security>
</icecast>
```
i have logs too, its 66mB i can't send it here.https://gitlab.xiph.org/xiph/vorbis/-/issues/2345Please give a example of how to use RTP vorbis2022-02-18T07:12:32Zyi xinPlease give a example of how to use RTP vorbishttps://gitlab.xiph.org/xiph/vorbis-tools/-/issues/2328MR: fix memleak with -c option2022-01-26T18:11:04Ztaz 007MR: fix memleak with -c optionHello, please merge this patch : https://gitlab.com/taz007/vorbis-tools/-/commit/70604b38f62fcabb37bc1b57dbb9e261c775e067
I can't make a proper MR as I don't have access to fork functionality.Hello, please merge this patch : https://gitlab.com/taz007/vorbis-tools/-/commit/70604b38f62fcabb37bc1b57dbb9e261c775e067
I can't make a proper MR as I don't have access to fork functionality.https://gitlab.xiph.org/xiph/squishyball/-/issues/1squishyball fails to build against ncurses-6.3: `error: 'TERMINAL' {aka 'stru...2022-01-25T23:08:20ZSergei Trofimovichsquishyball fails to build against ncurses-6.3: `error: 'TERMINAL' {aka 'struct term'} has no member named 'Nttyb'`It's an upstream report of downstream build failure of `squishyball`: https://github.com/NixOS/nixpkgs/pull/146685#issuecomment-1019808697
`ncurses-6.3` removed from public API `Nttyb` and friends in https://github.com/mirror/ncurses/co...It's an upstream report of downstream build failure of `squishyball`: https://github.com/NixOS/nixpkgs/pull/146685#issuecomment-1019808697
`ncurses-6.3` removed from public API `Nttyb` and friends in https://github.com/mirror/ncurses/commit/493e2f7b3fc309879f561a094fdfc15e5304b3d6 effectively breaking the workaround of https://gitlab.xiph.org/xiph/squishyball/-/commit/ce3fabffc3906a23bec09f02db8fdf141f1d4068.
Full build log: https://hydra.nixos.org/log/8myp7pwz36lg93vkzphq2jm0xk4fq4mr-squishyball-19580.drv
Relevant bit:
```
mincurses.c: In function 'setup_term_customize':
mincurses.c:345:20: error: 'TERMINAL' {aka 'struct term'} has no member named 'Nttyb'
345 | term = cur_term->Nttyb;
| ^~
```https://gitlab.xiph.org/xiph/opus-tools/-/issues/2317Compiler warnings with comparing singed and unsigned ints2022-01-23T06:23:55ZAnders JenboCompiler warnings with comparing singed and unsigned intsThese are now the only compiler warnings left when building DevilutionX, would be great if we can handle them so we can start checking for compiler warnings in the CI :)
```
In file included from speex_resampler/resample.c:100:
speex_re...These are now the only compiler warnings left when building DevilutionX, would be great if we can handle them so we can start checking for compiler warnings in the CI :)
```
In file included from speex_resampler/resample.c:100:
speex_resampler/resample_sse.h:45:14: warning: comparison of integers of different signs: 'int' and 'unsigned int' [-Wsign-compare]
for (i=0;i<len;i+=8)
~^~~~
speex_resampler/resample_sse.h:62:12: warning: comparison of integers of different signs: 'int' and 'unsigned int' [-Wsign-compare]
for(i=0;i<len;i+=2)
~^~~~
speex_resampler/resample_sse.h:84:14: warning: comparison of integers of different signs: 'int' and 'unsigned int' [-Wsign-compare]
for (i=0;i<len;i+=8)
~^~~~
speex_resampler/resample_sse.h:110:12: warning: comparison of integers of different signs: 'int' and 'unsigned int' [-Wsign-compare]
for(i=0;i<len;i+=2)
~^~~~
speex_resampler/resample.c:674:20: warning: comparison of integers of different signs: 'int' and 'unsigned int' [-Wsign-compare]
for (j=0;j<st->filt_len;j++)
~^~~~~~~~~~~~~
speex_resampler/resample.c:946:21: warning: comparison of integers of different signs: 'int' and 'unsigned int' [-Wsign-compare]
for(j=0;j<ichunk;++j)
~^~~~~~~
speex_resampler/resample.c:949:20: warning: comparison of integers of different signs: 'int' and 'unsigned int' [-Wsign-compare]
for(j=0;j<ichunk;++j)
~^~~~~~~
speex_resampler/resample.c:1001:19: warning: comparison of integers of different signs: 'int' and 'unsigned int' [-Wsign-compare]
for(j=0;j<ichunk;++j)
~^~~~~~~
speex_resampler/resample.c:1008:19: warning: comparison of integers of different signs: 'int' and 'unsigned int' [-Wsign-compare]
for(j=0;j<ichunk;++j)
~^~~~~~~
speex_resampler/resample.c:1018:16: warning: comparison of integers of different signs: 'int' and 'unsigned int' [-Wsign-compare]
for (j=0;j<ochunk+omagic;++j)
~^~~~~~~~~~~~~~
```https://gitlab.xiph.org/xiph/speexdsp/-/issues/4Compiler warnings with comparing singed and unsigned ints2022-01-23T06:22:59ZAnders JenboCompiler warnings with comparing singed and unsigned intsThese are now the only compiler warnings left when building DevilutionX, would be great if we can handle them so we can start checking for compiler warnings in the CI :)
```
In file included from speex_resampler/resample.c:100:
speex_re...These are now the only compiler warnings left when building DevilutionX, would be great if we can handle them so we can start checking for compiler warnings in the CI :)
```
In file included from speex_resampler/resample.c:100:
speex_resampler/resample_sse.h:45:14: warning: comparison of integers of different signs: 'int' and 'unsigned int' [-Wsign-compare]
for (i=0;i<len;i+=8)
~^~~~
speex_resampler/resample_sse.h:62:12: warning: comparison of integers of different signs: 'int' and 'unsigned int' [-Wsign-compare]
for(i=0;i<len;i+=2)
~^~~~
speex_resampler/resample_sse.h:84:14: warning: comparison of integers of different signs: 'int' and 'unsigned int' [-Wsign-compare]
for (i=0;i<len;i+=8)
~^~~~
speex_resampler/resample_sse.h:110:12: warning: comparison of integers of different signs: 'int' and 'unsigned int' [-Wsign-compare]
for(i=0;i<len;i+=2)
~^~~~
speex_resampler/resample.c:674:20: warning: comparison of integers of different signs: 'int' and 'unsigned int' [-Wsign-compare]
for (j=0;j<st->filt_len;j++)
~^~~~~~~~~~~~~
speex_resampler/resample.c:946:21: warning: comparison of integers of different signs: 'int' and 'unsigned int' [-Wsign-compare]
for(j=0;j<ichunk;++j)
~^~~~~~~
speex_resampler/resample.c:949:20: warning: comparison of integers of different signs: 'int' and 'unsigned int' [-Wsign-compare]
for(j=0;j<ichunk;++j)
~^~~~~~~
speex_resampler/resample.c:1001:19: warning: comparison of integers of different signs: 'int' and 'unsigned int' [-Wsign-compare]
for(j=0;j<ichunk;++j)
~^~~~~~~
speex_resampler/resample.c:1008:19: warning: comparison of integers of different signs: 'int' and 'unsigned int' [-Wsign-compare]
for(j=0;j<ichunk;++j)
~^~~~~~~
speex_resampler/resample.c:1018:16: warning: comparison of integers of different signs: 'int' and 'unsigned int' [-Wsign-compare]
for (j=0;j<ochunk+omagic;++j)
~^~~~~~~~~~~~~~
```