Post Reply 
 
Thread Rating:
  • 0 Vote(s) - 0 Average
  • 1
  • 2
  • 3
  • 4
  • 5
Oppo 103D Streaming DSP/Transcoding
07-11-2023, 03:28
Post: #1
Oppo 103D Streaming DSP/Transcoding
Hi Simon,
Came back to Minimserver after many years going back to basics. I have to say the sound through Minimserver has been outstanding better than other Upnp I have tried and really want to build all my system around it.
I managed to install Minimserver/Minimstreamer on a Ubuntu 22.04 server sending music files and streaming radio to my Oppo 103D player.
My end aim is to allow DSP from any music source. Works fine for music files (via transcoding). However, for streaming radios, transcoding does not work. Strangely, DSP/Trancoding works fine from my Laptop's Windows (as a Upnp player). So the issue is definitely the Oppo player. I have tried aac;L16, aac:mp3, aac:L16/wav24/- , *:L16/wav24/- and with or without StreamSize=2GB all with no success. Same issue if I try to stream an mp3 radio stream source.
Any suggestion how I can DSP streaming services
thx
Dave
Find all posts by this user
Quote this message in a reply
07-11-2023, 09:57
Post: #2
RE: Oppo 103D Streaming DSP/Transcoding
When this fails, are there any error messages in the MinimServer log? For example, are there any messages about byte-range requests?
Find all posts by this user
Quote this message in a reply
08-11-2023, 04:47 (This post was last modified: 08-11-2023 04:50 by Devgcl.)
Post: #3
RE: Oppo 103D Streaming DSP/Transcoding
Yes indeed - as below.
MinimStreamer: transcode setting is
Code:
[code]'flac:wav24;44,wav:wav24;44,mp3:wav24,aac:L16,*:wav24'
NetworkSource: byte-range request could not be satisfied
[/code]
Any pointer what I can do. Thanks
Find all posts by this user
Quote this message in a reply
08-11-2023, 11:07 (This post was last modified: 08-11-2023 11:07 by simoncn.)
Post: #4
RE: Oppo 103D Streaming DSP/Transcoding
Most renderers (players) play a file or network stream in sequence from beginning to end. Some renderers don't do this but request the file from the server as a sequence of smaller chunks. These smaller chunks are byte-range requests.

There is no problem with byte-range requests from a local file but they don't work when playing a network stream because it is not possible to go back to an earlier point in the stream or jump ahead to a later point.

Some renderers use byte-range requests for certain stream types and not for other stream types. If your renderer is able to play a radio stream without transcoding but not with transcoding, this is the reason why. From what you have said, it sounds like your renderer plays aac streams without byte-range requests but uses byte-range requests for other stream types such as WAV, L16 and MP3.

This would mean there is a possible solution by using FFmpeg to transcode network streams to aac instead of to WAV, L16 or MP3. You can apply a DSP effect as part of this transcoding. You can configure this by setting the stream.transcode property to '*:aac,aac:aac'. This setting should not affect your local music files.

I haven't tried this myself. Although it should work technically, sound quality will be compromised because of the limitations of the aac format and I don't know whether the result will sound better or worse than using untranscoded aac streams.
Find all posts by this user
Quote this message in a reply
09-11-2023, 04:29
Post: #5
RE: Oppo 103D Streaming DSP/Transcoding
(08-11-2023 11:07)simoncn Wrote:  setting the stream.transcode property to '*:aac,aac:aac'.

Thanks for the detailed explanation. The solution provided works!! In terms of quality, no noticeable deterioration except just a tad bit lower volume.
Last piece of my puzzle is the mp3 streaming decoding/dsp. I have a large number of tracks in this format.
mp3:wav24 works nicely for local music files but not for mp3 streaming radio stations (same byte size message).
mp3:mp3 works for streaming radio but does not work for local music files.
Any workaround for mp3 please? Thanks
Find all posts by this user
Quote this message in a reply
09-11-2023, 10:01
Post: #6
RE: Oppo 103D Streaming DSP/Transcoding
Please post examples of your .m3u entries (#EXTINF line and URL) for one AAC radio station and one MP3 radio station.
Find all posts by this user
Quote this message in a reply
10-11-2023, 00:03
Post: #7
RE: Oppo 103D Streaming DSP/Transcoding
(09-11-2023 10:01)simoncn Wrote:  Please post examples of your .m3u entries (#EXTINF line and URL) for one AAC radio station and one MP3 radio station.

acc:
#EXTINF:-1, [MBCNRJ;aac] MBC NRJ
https://radio.mbconline.xyz/hls/musicfm.m3u8


mp3:
#EXTINF:-1, [RadioPlusHits;mp3] RadioPlus Hits
https://s3.radio.co/s1769ca1ac/listen

Thank you
Find all posts by this user
Quote this message in a reply
13-11-2023, 21:16
Post: #8
RE: Oppo 103D Streaming DSP/Transcoding
Thanks for this. To get the results you want, you need to install MinimServer 2.0.12 (released today) and set the stream.transcode property to the following:

aac(-):wav24, mp3(-):wav24, aac:aac, mp3:mp3

The (-) is a match-all filter, newly introduced in MinimStreamer 2.0.12. It is used to match all .aac and .mp3 local files, which are transcoded to 24-bit WAV. The filter does not match network streams, so AAC and MP3 network streams are passed through FFmpeg (enabling DSP effects to be configured) without changing the stream format.
Find all posts by this user
Quote this message in a reply
15-11-2023, 05:52 (This post was last modified: 15-11-2023 05:55 by Devgcl.)
Post: #9
RE: Oppo 103D Streaming DSP/Transcoding
Hi Simon,
That works brilliantly!!!! Thanks heaps.
I was about to get the licence irrespective but that's just icing on the cake.
One last question, I know Minimserver does not cater for Streaming services (e.g Spotify). Is there a way I can send Spotify streams from say Spotifyd or updating the Alsa config file using alsaloop piping the http into Minimstreamer?
Thanks again
Find all posts by this user
Quote this message in a reply
15-11-2023, 11:09
Post: #10
RE: Oppo 103D Streaming DSP/Transcoding
MinimStreamer reads from local files and http/https URLs only.

To do what you want, you would need to create a local HTTP server that makes the piped output from spotifyd available as an HTTP stream.
Find all posts by this user
Quote this message in a reply
Post Reply 


Forum Jump:


User(s) browsing this thread: 1 Guest(s)