Announcement

Collapse
No announcement yet.

Compile SqueezeOS for "Baby" - missing babydsp.so (BB/Poky recipe - Private_SVN)

Collapse
X
 
  • Filter
  • Time
  • Show
Clear All
new posts

    Compile SqueezeOS for "Baby" - missing babydsp.so (BB/Poky recipe - Private_SVN)

    > I've managed to workaround the missing private babydsp sources to
    > successfully build the radio firmware.


    Let me start by saying you're crazy.

    What's the motivation to build your own firmware? You're obviously aware
    of the missing features (AAC/WMA)...

    --

    Michael

    #2
    Compile SqueezeOS for "Baby" - missing babydsp.so (BB/Poky recipe - Private_SVN)

    Hello Developers,

    coming from http://forums.slimdevices.com/showth...ages-available I am trying to compile SqueezeOS for "baby" (Squeezebox Radio). I checked out http://svn.slimdevices.com/repos/jive/7.8/trunk/ and follwed the instructions at http://wiki.slimdevices.com/index.ph...d_Instructions as well as http://wiki.slimdevices.com/index.ph...ezeos_Building (using the scripts in the parabuild subdirectory).

    I selected MACHINE=baby to build for the Squeezebox Radio and figured out some minor problems like the missing fakeroot 1.9.4. I am now stuck at the stage were squeezeplay is compiled. At some point it looks like bitbake tries to "bake" squeezeos-dsp-src_svn.bb, which can not succeed as I did not set "SQUEEZEOS_PRIVATE_SVN".

    I would be very thankful for some advice! (or an baby-UBI-firmware-image)

    Best regards
    Robert

    Comment


      #3
      I've managed to workaround the missing private babydsp sources to successfully build the radio firmware.

      Copy /usr/lib/alsa-lib/libasound_module_pcm_babydsp.so from a radio to your poky build system and rename it using scp.

      Code:
      $ scp -p [email protected]:/usr/lib/alsa-lib/libasound_module_pcm_babydsp.so libasound_module_pcm_babydsp.so.0.0.0
      
      libasound_module_pcm_babydsp.so      100%   33KB  33.5KB/s   00:00
      Create a tar file which contains the renamed babydsp module in the correct folder structure. I included the firmware version of the radio where the shared library came from in the filename.

      Code:
      $ tar -tzvf babydsp-7.7.3r16676.tar.gz
      
      drwxr-xr-x ralphy/ralphy     0 2020-02-05 16:31 squeezeos_dsp/
      drwxr-xr-x ralphy/ralphy     0 2020-02-05 16:10 squeezeos_dsp/.libs/
      -rw-r--r-- ralphy/ralphy 34271 1969-12-31 19:00 squeezeos_dsp/.libs/libasound_module_pcm_babydsp.so.0.0.0
      Create an md5 checksum file

      Code:
      md5sum babydsp-7.7.3r16676.tar.gz > babydsp-7.7.3r16676.tar.gz.md5
      Put both files in the poky/sources folder

      Update squeezeos-dsp-src_svn.bb. We only want bitbake to perform the install step. File attached.

      I used a url to a local apache server running on my build VM in the SRC_URI to host the files, but bitbake won't try to download them as long as the tar and md5 files are already in poky/sources.


      Code:
      DESCRIPTION = "SqueezeOS DSP - Private code"
      LICENSE = "Confidential"
      
      PV = "${DISTRO_VERSION}+svnr${SRCREV}"
      PR = "r3"
      
      PROVIDES = "squeezeos-dsp"
      
      DEPENDS += "alsa-lib"
      
      # no thumb here thanks!
      ARM_INSTRUCTION_SET = "arm"
      
      # SRC_URI="${SQUEEZEOS_PRIVATE_SVN};module=squeezeos_dsp"
      SRC_URI="http://poky/babydsp-7.7.3r16676.tar.gz;module=squeezeos_dsp"
      
      S = "${WORKDIR}/squeezeos_dsp"
      
      #inherit autotools
      
      #do_configure_prepend() {
      #	cd ${S}/openmax
      #	tar -xzf openmax-arm-98665.tgz
      #	cd ${S}
      #}
      
      do_install() {
      	mkdir -p ${D}/${libdir}/alsa-lib
      	pwd
      	install -m 0644 .libs/libasound_module_pcm_babydsp.so.0.0.0 ${D}/${libdir}/alsa-lib/libasound_module_pcm_babydsp.so
      }
      
      PACKAGES = "squeezeos-dsp squeezeos-dsp-dbg"
      
      FILES_squeezeos-dsp = "${libdir}/alsa-lib"
      FILES_squeezeos-dsp-dbg = "${libdir}/alsa-lib/.debug"

      Set MACHINE ?= "baby" in poky/build/conf/local.conf

      Setup your bitbake environment variables and run bitbake.
      Attached Files
      Last edited by ralphy; 2020-02-06, 15:06.
      Ralphy

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

      Comment


        #4
        Originally posted by mherger View Post
        What's the motivation to build your own firmware? You're obviously aware
        of the missing features (AAC/WMA)...
        Perhaps, to quote (or misquote) George Mallory, "Because it's there".

        In my case, motivation is/was to explore ways to ameliorate a "Bass amp problem".

        Comment


          #5
          Originally posted by mherger View Post
          > I've managed to workaround the missing private babydsp sources to
          > successfully build the radio firmware.


          Let me start by saying you're crazy.

          What's the motivation to build your own firmware? You're obviously aware
          of the missing features (AAC/WMA)...

          --

          Michael
          LOL. That's twice now you've called me crazy for attempting this!

          I already have squeezelite running on the radio so the missing decoders, spotify and other private music services support don't matter.
          Ralphy

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

          Comment

          Working...
          X