Home of the Squeezebox™ & Transporter® network music players.
Page 1 of 2 12 LastLast
Results 1 to 10 of 13

Thread: opus

  1. #1
    Senior Member
    Join Date
    May 2008
    Location
    Canada
    Posts
    4,978

    opus

    Hi - Is there a benefit/interest/motivation to have opus supported by squeezelite?
    LMS 7.7, 7.8 and 7.9 - 5xRadio, 3xBoom, 4xDuet, 1xTouch, 1 SB2. Sonos PLAY:3, PLAY:5, Marantz NR1603, JBL OnBeat, XBoxOne, XBMC, Foobar2000, ShairPortW, JRiver 21, 2xChromecast Audio, Chromecast v1 and v2, , Pi B3, B2, Pi B+, 2xPi A+, Odroid-C1, Odroid-C2, Cubie2, Yamaha WX-010, AppleTV 4, Airport Express, GGMM E5

  2. #2
    Senior Member
    Join Date
    May 2008
    Location
    Canada
    Posts
    4,978
    Just responding to myself

    I saw that opus is already supported at least to be transcoded, so I added it in YouTube 0.90
    LMS 7.7, 7.8 and 7.9 - 5xRadio, 3xBoom, 4xDuet, 1xTouch, 1 SB2. Sonos PLAY:3, PLAY:5, Marantz NR1603, JBL OnBeat, XBoxOne, XBMC, Foobar2000, ShairPortW, JRiver 21, 2xChromecast Audio, Chromecast v1 and v2, , Pi B3, B2, Pi B+, 2xPi A+, Odroid-C1, Odroid-C2, Cubie2, Yamaha WX-010, AppleTV 4, Airport Express, GGMM E5

  3. #3
    Babelfish's Best Boy mherger's Avatar
    Join Date
    Apr 2005
    Location
    Switzerland
    Posts
    20,294

    opus

    It's a relatively recent addition (Oct '18). Just in case somebody
    complained about it not working.

    --

    Michael

  4. #4
    Senior Member
    Join Date
    May 2008
    Location
    Canada
    Posts
    4,978
    Quote Originally Posted by mherger View Post
    It's a relatively recent addition (Oct '18). Just in case somebody
    complained about it not working.

    --

    Michael
    I won't It was a pleasant surprise.

    Do you think it's difficult to add a new codec (eg 'ops') to the baseline of LMS? I think I can 'easily' add the support in squeezelite. I looked at it a bit more after my 1st post and the interface of opus seems very simple, and building/finding static and shared/dll. Opus seems to be gaining popularity
    LMS 7.7, 7.8 and 7.9 - 5xRadio, 3xBoom, 4xDuet, 1xTouch, 1 SB2. Sonos PLAY:3, PLAY:5, Marantz NR1603, JBL OnBeat, XBoxOne, XBMC, Foobar2000, ShairPortW, JRiver 21, 2xChromecast Audio, Chromecast v1 and v2, , Pi B3, B2, Pi B+, 2xPi A+, Odroid-C1, Odroid-C2, Cubie2, Yamaha WX-010, AppleTV 4, Airport Express, GGMM E5

  5. #5
    Babelfish's Best Boy mherger's Avatar
    Join Date
    Apr 2005
    Location
    Switzerland
    Posts
    20,294

    opus

    > Do you think it's difficult to add a new codec (eg 'ops') to the
    > baseline of LMS?


    What do you mean by "baseline of LMS"?

    --

    Michael

  6. #6
    Senior Member
    Join Date
    May 2008
    Location
    Canada
    Posts
    4,978
    Quote Originally Posted by mherger View Post
    > Do you think it's difficult to add a new codec (eg 'ops') to the
    > baseline of LMS?


    What do you mean by "baseline of LMS"?

    --

    Michael
    I mean not doing a plugin to add this codec support, but have LMS recognize it in the HELO message and then send opus encoded (codec u maybe) file to players in strms command (modifying the squeezebox.pm). I think I can do this part but Im less familiar with the transcoding rules and I dont know what would need to be added there.
    LMS 7.7, 7.8 and 7.9 - 5xRadio, 3xBoom, 4xDuet, 1xTouch, 1 SB2. Sonos PLAY:3, PLAY:5, Marantz NR1603, JBL OnBeat, XBoxOne, XBMC, Foobar2000, ShairPortW, JRiver 21, 2xChromecast Audio, Chromecast v1 and v2, , Pi B3, B2, Pi B+, 2xPi A+, Odroid-C1, Odroid-C2, Cubie2, Yamaha WX-010, AppleTV 4, Airport Express, GGMM E5

  7. #7
    Babelfish's Best Boy mherger's Avatar
    Join Date
    Apr 2005
    Location
    Switzerland
    Posts
    20,294

    opus

    > I mean not doing a plugin to add this codec support, but have LMS
    > recognize it in the HELO message and then send opus encoded (codec ‘u’
    > maybe) file to players in strms command (modifying the squeezebox.pm). I
    > think I can do this part but I’m less familiar with the transcoding
    > rules and I don’t know what would need to be added there.


    And you'd think I was familiar with it?... :-D

    I think the player can somehow return a list of capabilities which would
    be parsed in Slimproto.pm (line 950ff). That list can define additional
    codecs supported by the player.

    --

    Michael

  8. #8
    Senior Member
    Join Date
    May 2008
    Location
    Canada
    Posts
    4,978
    It's now working fine with nightly 07/31 using squeezelite, my bridges and the esp32 version - thanks!
    LMS 7.7, 7.8 and 7.9 - 5xRadio, 3xBoom, 4xDuet, 1xTouch, 1 SB2. Sonos PLAY:3, PLAY:5, Marantz NR1603, JBL OnBeat, XBoxOne, XBMC, Foobar2000, ShairPortW, JRiver 21, 2xChromecast Audio, Chromecast v1 and v2, , Pi B3, B2, Pi B+, 2xPi A+, Odroid-C1, Odroid-C2, Cubie2, Yamaha WX-010, AppleTV 4, Airport Express, GGMM E5

  9. #9
    Senior Member
    Join Date
    May 2008
    Location
    Canada
    Posts
    4,978
    I think there is an error in the system's convert.conf. It says

    Code:
    ops aif * *
    	[sox] -q -t opus $FILE$ -t raw -r 44100 -c 2 -2 -s $-x$ -
    
    ops pcm * *
    	[sox] -q -t opus $FILE$ -t raw -r 44100 -c 2 -2 -s -
    But the sample rate sent by LMS in the slimproto header is still 48kHz, which BTW is normally the fixed opus sample rate (according to spec, all decoded opus file should be 48k, unless overwritten by user).

    Is there a reason why the sox rules force 44100 and if there is, then we should change what LMS sends in slimproto (and I'm not sure where that change should be made)

    (note that in flac's rule there is no such sampling rate forcing)
    LMS 7.7, 7.8 and 7.9 - 5xRadio, 3xBoom, 4xDuet, 1xTouch, 1 SB2. Sonos PLAY:3, PLAY:5, Marantz NR1603, JBL OnBeat, XBoxOne, XBMC, Foobar2000, ShairPortW, JRiver 21, 2xChromecast Audio, Chromecast v1 and v2, , Pi B3, B2, Pi B+, 2xPi A+, Odroid-C1, Odroid-C2, Cubie2, Yamaha WX-010, AppleTV 4, Airport Express, GGMM E5

  10. #10
    Senior Member ralphy's Avatar
    Join Date
    Jan 2006
    Location
    Canada
    Posts
    2,202
    The opus rules in convert.conf were likely modeled after the ogg rules. This was part of PR#133

    However, slimproto will always send the original sample rate for pcm conversion rules. This is true for ogg and wma as well.
    Ralphy

    1-Touch, 5-Classics, 3-Booms, 1-UE Radio
    Squeezebox client builds donations always appreciated.

Posting Permissions

  • You may not post new threads
  • You may not post replies
  • You may not post attachments
  • You may not edit your posts
  •