<html><head><meta http-equiv="content-type" content="text/html; charset=utf-8"></head><body dir="auto"><div>Accidentally replied off-list first, here again my reply on-list. Sorry for the confusion.</div><div><br></div><div><div dir="ltr">Hi, see my replies inline:<br></div><blockquote type="cite"><div dir="ltr"><div dir="ltr"><br><blockquote type="cite">On 25. Aug 2022, at 13:48, Patrick.Schneider1@swisscom.com wrote:<br><br></blockquote></div><blockquote type="cite"><div dir="ltr"><div class="WordSection1"><p class="MsoNormal"><span lang="EN-US" style="font-size: 10pt; font-family: "Trebuchet MS", sans-serif; color: rgb(68, 84, 106);">Dear Roman<br><br>Thank you for your answer.<br><br>We as Swisscom Switzerland are in a difficult situation. We have around 1'000 Live / Replay TV Channels and 500 Radio Channels on our Platform.<br>For Live TV we could manage the Loudness in the Transcoder/Encoding Settings. We were able to measure and align all Loudness differences and adjust to -23dB.<br>Zapping from one TV Channel to another makes no audible difference anymore.<br><br>The Problem is the change from Live TV to Radio on our Android Set-Top-Box.<br>We are looking for a solution to align the Radio Loudness over the 500 Radio Channels.<br><br>So you don't see any possibility to send an ExoPlayer message (like a Metadata) to the Player?<br></span></p></div></div></blockquote><div><br></div></div></blockquote><div dir="ltr"><div>So if I understand correctly you want to send over a loudness adjustment parameter over for a specific radio station on start of playback?</div><br></div><blockquote type="cite"><div dir="ltr"><blockquote type="cite"><div dir="ltr"><div class="WordSection1"><p class="MsoNormal"><span lang="EN-US" style="font-size: 10pt; font-family: "Trebuchet MS", sans-serif; color: rgb(68, 84, 106);"><br>We saw that the following commands are coming from the Backend IceCast Proxy to the Android STB:<o:p></o:p></span></p><p class="MsoNormal"><span lang="EN-US" style="font-size: 10pt; font-family: "Trebuchet MS", sans-serif; color: rgb(68, 84, 106);"> </span></p></div></div></blockquote><div><br></div></div></blockquote><div dir="ltr"><div>(Please note the correct spelling is Icecast)</div><br></div><blockquote type="cite"><div dir="ltr"><blockquote type="cite"><div dir="ltr"><div class="WordSection1"><p class="MsoNormal"><span lang="EN-US" style="font-size: 10pt; font-family: "Trebuchet MS", sans-serif; color: rgb(68, 84, 106);">tvlib.ExoRadioPlayer: onPlaybackStateChanged(state=Idle)<o:p></o:p></span></p><p class="MsoNormal"><span lang="EN-US" style="font-size: 10pt; font-family: "Trebuchet MS", sans-serif; color: rgb(68, 84, 106);">tvlib.ExoRadioPlayer: onIsLoadingChanged(isLoading=false)<o:p></o:p></span></p><p class="MsoNormal" style="margin-bottom: 12pt;"><span lang="EN-US" style="font-size: 10pt; font-family: "Trebuchet MS", sans-serif; color: rgb(68, 84, 106); background-color: yellow;">tvlib.ExoRadioPlayer: onPlaybackStateChanged(state=Buffering)</span><span lang="EN-US" style="font-size: 10pt; font-family: "Trebuchet MS", sans-serif;"><o:p></o:p></span></p><p class="MsoNormal"><span lang="EN-US" style="font-size: 10pt; font-family: "Trebuchet MS", sans-serif; color: rgb(68, 84, 106);">Why not adding a ExoPlayer Volume Parameter within the Radio Channel start<br>For example …<br></span><span lang="EN-US" style="font-size: 10pt; font-family: "Courier New";">exoPlayer.sendMessage(audioRenderer, MediaCodecAudioTrackRenderer.MSG_SET_VOLUME, <span style="background-color: yellow;">0</span><span style="background-color: yellow;">.9f</span>);</span><span lang="EN-US" style="font-size: 10pt; font-family: "Trebuchet MS", sans-serif; color: rgb(68, 84, 106);"><br><br><o:p></o:p></span></p><p class="MsoNormal"><span lang="EN-US" style="font-size: 10pt; font-family: "Trebuchet MS", sans-serif; color: rgb(68, 84, 106);"><br></span></p></div></div></blockquote><div><br></div></div></blockquote><div dir="ltr"><div>Icecast does not send any explicit messages over to the player, it just provides a HTTP stream.</div><div><br></div></div><div dir="ltr"><div>One option would be to include a special HTTP header in Icecasts response, and make ExoPlayer use that (not sure if it provides necessary API for that though).</div><br></div><blockquote type="cite"><div dir="ltr"><blockquote type="cite"><div dir="ltr"><div class="WordSection1"><p class="MsoNormal"><span lang="EN-US" style="font-size: 10pt; font-family: "Trebuchet MS", sans-serif; color: rgb(68, 84, 106);">A static setting on the ExoPlayer in the client is not an option, because the Player is also used by other applications.<br>Changing Volume in Set-top-box will affect all applications. <br><br></span></p></div></div></blockquote><div><br></div></div></blockquote><div dir="ltr"><div>So you are not even invoking ExoPlayer programmatically in a way where you can set such settings? Then even the approach I suggested above might not be feasible.</div></div><div dir="ltr"><div><br></div></div><div dir="ltr"><div>However if you want someone to look further into the matter, this might be beyond what volunteers on this list can do, especially as it is not really about solely Icecast but your specific integration/client software.</div><br></div><blockquote type="cite" style="color: rgb(0, 0, 0);"><div dir="ltr"><blockquote type="cite"><div dir="ltr"><div class="WordSection1"><p class="MsoNormal"><span lang="EN-US" style="font-size: 10pt; font-family: "Trebuchet MS", sans-serif; color: rgb(68, 84, 106);">Sincerely,<br>Patrick<br><br><o:p></o:p></span></p><p class="MsoNormal"><span lang="EN-US" style="font-size: 10pt; font-family: "Trebuchet MS", sans-serif; color: rgb(68, 84, 106);"><o:p></o:p></span></p><p class="MsoNormal"><span lang="EN-US"> </span></p><div><div style="border-style: solid none none; border-top-width: 1pt; border-top-color: rgb(225, 225, 225); padding: 3pt 0cm 0cm;"><p class="MsoNormal"><b><span lang="DE">Von:</span></b><span lang="DE"> Roman Gorshunov <paye600@gmail.com> <br><b>Gesendet:</b> Mittwoch, 24. August 2022 19:18<br><b>An:</b> Schneider Patrick, B2C-TSP-ITE <Patrick.Schneider1@swisscom.com><br><b>Cc:</b> icecast-dev@xiph.org<br><b>Betreff:</b> Re: [Icecast-dev] Radio Loudness<o:p></o:p></span></p></div></div><p class="MsoNormal"><o:p> </o:p></p><div><p class="MsoNormal">Hello Patrick,<o:p></o:p></p></div><div><p class="MsoNormal"><o:p> </o:p></p></div><div><p class="MsoNormal">It’s not really a media streaming server’s (Icecast) job to alter the volume. Volume is set either by the media source or in player.<o:p></o:p></p></div><div><p class="MsoNormal">In addition to that, media streaming server does not allow clients (players) to control media source (e.g. change volume or skip tracks).<o:p></o:p></p></div><div><p class="MsoNormal"><o:p> </o:p></p></div><div><p class="MsoNormal">I might misunderstood your question though.<o:p></o:p></p></div><div><p class="MsoNormal"><o:p> </o:p></p></div><div><p class="MsoNormal">Best regards,<o:p></o:p></p></div><div><p class="MsoNormal">Roman Gorshunov<o:p></o:p></p></div><div><p class="MsoNormal"><br><br><o:p></o:p></p><blockquote style="margin-top: 5pt; margin-bottom: 5pt;"><p class="MsoNormal" style="margin-bottom: 12pt;">On 24 Aug 2022, at 11:11, <a href="mailto:Patrick.Schneider1@swisscom.com">Patrick.Schneider1@swisscom.com</a> wrote:<o:p></o:p></p></blockquote></div><blockquote style="margin-top: 5pt; margin-bottom: 5pt;"><p class="MsoNormal"> <o:p></o:p></p><p class="MsoNormal"><span lang="EN-US">Dear All<br><br>We are looking for a solution to send a volume parameter to our ExoPlayer during the icecast streaming initialization phase.<br>Something like this …<br></span><span lang="EN-US" style="font-size: 10pt; font-family: "Trebuchet MS", sans-serif;"><br></span><span lang="EN-US" style="font-size: 10pt; font-family: "Courier New";">Volume example:<br>        exoPlayer.sendMessage(audioRenderer, MediaCodecAudioTrackRenderer.MSG_SET_VOLUME, <span style="background-color: yellow;">0</span><span style="background-color: yellow;">.9f</span>);</span><o:p></o:p></p><p class="MsoNormal" style="margin-bottom: 12pt;"><span lang="EN-US" style="font-size: 10pt; font-family: "Trebuchet MS", sans-serif;"><br>Is there a way to set the icecast egress streaming with an ExoPlayer default Volume?<br><br>Sincerely,<br>Patrick<br><br><br></span><o:p></o:p></p><p class="MsoNormal" style="margin-bottom: 12pt;"><span lang="EN-US" style="font-size: 10pt; font-family: "Trebuchet MS", sans-serif; color: rgb(68, 84, 106);"> </span><o:p></o:p></p><p class="MsoNormal">_______________________________________________<br>Icecast-dev mailing list<br><a href="mailto:Icecast-dev@xiph.org">Icecast-dev@xiph.org</a><br><a href="http://lists.xiph.org/mailman/listinfo/icecast-dev">http://lists.xiph.org/mailman/listinfo/icecast-dev</a><o:p></o:p></p></blockquote></div>_______________________________________________<br>Icecast-dev mailing list<br>Icecast-dev@xiph.org<br>http://lists.xiph.org/mailman/listinfo/icecast-dev</div></blockquote></div></blockquote></div><style>@font-face { font-family: "Cambria Math"; }
@font-face { font-family: Calibri; }
@font-face { font-family: "Trebuchet MS"; }
p.MsoNormal, li.MsoNormal, div.MsoNormal { margin: 0cm; font-size: 11pt; font-family: Calibri, sans-serif; }
a:link, span.MsoHyperlink { color: rgb(5, 99, 193); text-decoration: underline; }
.MsoChpDefault { font-size: 10pt; }
@page WordSection1 { size: 612pt 792pt; margin: 70.85pt 70.85pt 2cm; }
div.WordSection1 { page: WordSection1; }</style></body></html>