<html>
  <head>
    <meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
  </head>
  <body>
    FYI, after testing [mp3write~] from 'unauthorized' library in my
    projects, this object is not a real MP3 encoder/recorder. It's
    'manipulating' in fact Ogg Vorbis coder and modifying the file
    header.<br>
    <br>
    Thus, the Audio players recognize or not the files as:<br>
    - Ogg/Vorbis stream for Celluloid,<br>
    - Can read for Audacity,<br>
    - Can't read at all for VLC, and<br>
    - Error reading metadata for Audacious.<br>
    <br>
    [mp3write~] is a real false good idea for recording MP3 file under
    Purr Data.<br>
    <br>
    <div class="moz-signature">Joseph<br>
      - - - - - - - - - - - - - - - - - - - -<br>
    </div>
    <div class="moz-cite-prefix">Le 20/09/2020 à 13:20, Linux ROUEN
      Normandie a écrit :<br>
    </div>
    <blockquote type="cite"
      cite="mid:d27741e8-3075-f07b-938f-f60c01ccfc3e@free.fr">
      <meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
      Jonathan, Ico and Albert,<br>
      Thanks for your analysis and suggestions.<br>
      <br>
      My original question was: "Any ideas - suggestions about an
      available and working [MP3 file Reader/Player] object?".<br>
      The answer is: NO.<br>
      <br>
      What is available but not tested yet by me is: the [mp3write~]
      object - an MP3 file Recorder.<br>
      But it's missing its Reader/Player counterpart. Using an external
      application for doing so is the current workaround to avoid format
      conversion.<br>
      <br>
      As of today, we can only and mainly use the OGG (Vorbis), WAV
      (Microsoft) and AIFF (Apple) Recorders/Players out of the box
      within a project. It's what I'm already doing.<br>
      <br>
      For now, I'll integrate [mp3write~] into my projects and ask the
      users to use an external PC application for reading/verifying
      their recorded MP3 files under Purr Data.<br>
      <div class="moz-signature">- - - - - - - - - - - - - - - - - - - -<br>
        Best, Joseph<br>
        - - - - - - - - - - - - - - - - - - - -<br>
      </div>
      <div class="moz-cite-prefix"><br>
        Le 18/09/2020 à 19:48, Albert Graef a écrit :<br>
      </div>
      <blockquote type="cite"
cite="mid:CA+rUic2YchoYUpj7R4=8PZ_TktuH9fb3dL5fpY-5KtSZ7zmrsA@mail.gmail.com">
        <meta http-equiv="content-type" content="text/html;
          charset=UTF-8">
        <div dir="ltr">
          <div>tabread4~ does interpolation, but no on-the-fly
            resampling. soundfiler and readsf~ do this (IIRC), but they
            only support a (very small) handful of uncompressed file
            formats, one of which is dead already, but still seems to
            get some use in the computer music community for historical
            reasons.</div>
          <div><br>
          </div>
          <div> I always thought that we had an object in the library
            somewhere that interfaces to libsndfile. Probably it's Tim
            Blechman's sndfiler~, but it doesn't seem to be built right
            now, although we include the sources. So I think that we
            should try to get this working, if only because libsndfile
            is the queen of reading and writing sound files in FLOSS
            land, and supports an abundance of audio file formats. Alas,
            there's one notable exception -- it doesn't support mp3 at
            present either. But at least there's an open ticket for it (<a
              href="https://github.com/erikd/libsndfile/issues/258"
              moz-do-not-send="true">https://github.com/erikd/libsndfile/issues/258</a>)
            and there seems to be some work going on, so there's a faint
            chance that we might get it eventually.</div>
          <div><br>
          </div>
          <div>Sorry, Joseph, I wish I had better news for you, but I
            think that the best solution that you can offer right now is
            to point your customers to some mp3 => ogg conversion
            tool. FLOSS developers just don't care much about mp3, even
            though the patent expired, as we have ogg which was free
            from the get-go (and many say that it's superior anyway). If
            your users want to take advantage of open source, they
            should be aware of these sentiments and willing to
            accommodate.<br>
          </div>
          <div><br>
          </div>
          <div>Best,</div>
          <div>Albert</div>
          <div><br>
          </div>
          <div><br>
          </div>
          <div>It looks to me<br>
          </div>
        </div>
        <br>
        <div class="gmail_quote">
          <div dir="ltr" class="gmail_attr">On Fri, Sep 18, 2020 at 5:28
            PM Ivica Ico Bukvic <<a href="mailto:ico@vt.edu"
              moz-do-not-send="true">ico@vt.edu</a>> wrote:<br>
          </div>
          <blockquote class="gmail_quote" style="margin:0px 0px 0px
            0.8ex;border-left:1px solid
            rgb(204,204,204);padding-left:1ex"><br>
            On 9/18/2020 11:08 AM, Jonathan Wilkes wrote:<br>
            > On Fri, Sep 18, 2020 at 11:00 AM Ivica Ico Bukvic <<a
              href="mailto:ico@vt.edu" target="_blank"
              moz-do-not-send="true">ico@vt.edu</a>> wrote:<br>
            >><br>
            >> On 9/18/2020 10:55 AM, Jonathan Wilkes wrote:<br>
            >>> On Fri, Sep 18, 2020 at 10:12 AM Ivica Ico
            Bukvic <<a href="mailto:ico@vt.edu" target="_blank"
              moz-do-not-send="true">ico@vt.edu</a>> wrote:<br>
            >>>> Based on the help file this object needs a
            lot of love to be truly usable. See the transposing part on
            anything other than the 3 apparently hardcoded sampling
            rates...<br>
            >>> So it can't play back vbr mp3s?<br>
            >> Well, as of right now it can't do anything since it
            does not work :-).<br>
            >> However, even if it did, it appears that vbr is not
            supported.<br>
            >><br>
            >>   From the help file:<br>
            >><br>
            >> "The player supports mono and stereo MPEG Layer III
            files. Any bitrate<br>
            >> is supported - but we have tested 128Kb/s and 32
            Kb/s only.<br>
            >><br>
            >> The sample rate of the output depends on the system
            sample rate of pd:<br>
            >><br>
            >> If the sample rate of pd is set to 44100, files
            having the sample rates<br>
            >> of 44100, 22050 and 11025 are correctly played,
            other files will be<br>
            >> transposed."<br>
            > How do `[tabplay~]` and `[readsf~]` handle this?<br>
            <br>
            I can only think off top my head how tabread4~ does it,
            which is via <br>
            4-point interpolation. Basically, if we can import the mp3
            into array, <br>
            all our problems will be solved. This would therefore limit
            our need to <br>
            support the conversion/exporting part only, instead of also
            usability of <br>
            yet another object that recreates much of the functionality.
            The would <br>
            only leave the streaming part as a separate object that
            could <br>
            potentially in-part piggy-back on the conversion thingy...<br>
            <br>
            ><br>
            > -Jonathan<br>
            ><br>
            >>> -Jonathan<br>
            >>><br>
            >>>> That said, it would be great to be able to
            support mp3 file manipulation. What would be even better if
            you could simply load it into an array natively and export
            from it, then all the problems this object already has would
            become moot.<br>
            >>>><br>
            >>>> On 9/16/2020 7:06 PM, Linux ROUEN Normandie
            wrote:<br>
            >>>><br>
            >>>> Le 17/09/2020 à 00:01, Jonathan Wilkes a
            écrit :<br>
            >>>><br>
            >>>> On Wed, Sep 16, 2020 at 4:49 PM Linux ROUEN
            Normandie<br>
            >>>> <<a href="mailto:linux.rouen@free.fr"
              target="_blank" moz-do-not-send="true">linux.rouen@free.fr</a>>
            wrote:<br>
            >>>><br>
            >>>> Thanks Jonathan,<br>
            >>>> But that means it's not usable by a
            standard project user.<br>
            >>>><br>
            >>>> What means that?<br>
            >>>><br>
            >>>> Well, translation from a poor French man
            speaking poor English (LOL):<br>
            >>>> What I meant is that if you are not a guy
            who builds patchs/subpatchs using available objects but only
            a one who is using a ready-to-go project (assembly of
            patchs) built by someone else, you will never do what have
            been suggested. Not everybody is a developer-programmer,
            even I. So, what about a standard user of Purr Data / Pd
            Vanilla!<br>
            >>>><br>
            >>>> You have to<br>
            >>>> put your hands under the hood and then into
            the dirty engine.<br>
            >>>> I just checked [mp3play~] with 'iemlib'
            r.1.17 properly installed and<br>
            >>>> declared under Pd Vanilla v.0.50.2 and it's
            the same bad behavior than<br>
            >>>> under Purr Data v.2.13.0. Even more, here
            'mp3play~-help.pd' is not<br>
            >>>> present at all.<br>
            >>>><br>
            >>>> Do you know where the source code is for
            the version of mp3play~<br>
            >>>> available through Vanilla?<br>
            >>>><br>
            >>>> As I wrote it, it's not available under Pd
            Vanilla 0.5.2 / iemlib 1.17 but only under Purr Data, as far
            as my little experience.<br>
            >>>> I attach to this email what I guess could
            be the main source file (mp3play~.c), but with no guarantee
            at all, awa its help file (mp3play~-help.pd).<br>
            >>>> This 'C' file seems to have been
            tested/working only on: 'debugged for windows 013-03-2003'
            (line 13 of the file).<br>
            >>>> These 2 files and few others can be found
            on your Git repository at:
            '/purr-data/externals/iemlib/iem_mp3/' (accordingly to the
            copy I have on my GNU/Linux PC).<br>
            >>>><br>
            >>>> - Joseph<br>
            >>>><br>
            >>>> -Jonathan<br>
            >>>><br>
            >>>> -Joseph<br>
            >>>> - - - - - - - - - - - - - - - - - - - -<br>
            >>>> Le 16/09/2020 à 21:13, Jonathan Wilkes a
            écrit :<br>
            >>>><br>
            >>>> On Wed, Sep 16, 2020 at 2:37 PM Linux ROUEN
            Normandie<br>
            >>>> <<a href="mailto:linux.rouen@free.fr"
              target="_blank" moz-do-not-send="true">linux.rouen@free.fr</a>>
            wrote:<br>
            >>>><br>
            >>>> Hello Folks,<br>
            >>>><br>
            >>>> I'm looking for some advises regarding
            Recording and Playing MP3 files -directly- inside Purr Data
            v2.13.0+ under GNU/Linux and Windows.<br>
            >>>><br>
            >>>> In my MIDI/Audio projects under Purr Data
            I'm already using successfully:<br>
            >>>> - [oggwrite~] / [oggread~] for .ogg
            (Vorbis) files (with lossy audio compression), and<br>
            >>>> - [writesf~] / [readsf~] for  .wav, .aif,
            .au and .snd files (with uncompressed linear pulse-code
            modulation).<br>
            >>>><br>
            >>>> But some users are requesting, among other
            demands, the possibility to handle also MP3 (with lossy
            data-compression) for extending the number of compatible
            Audio equipment (like TVs) able to read them.<br>
            >>>><br>
            >>>> After analysis I found only 2 objects -not
            tested yet- from the 'unauthorized' library being able to
            deal with MP3:<br>
            >>>> - [mp3write~] an MP3 file recorder v.0.4,
            and<br>
            >>>> - [mp3cast~] an MP3 streamer v.0.5.<br>
            >>>> But there is nothing about an MP3 file
            reader/player.<br>
            >>>><br>
            >>>> Despite the many libraries installed by
            default, Purr Data could not create any of the following
            objects (see towards the end of the link - FR):<br>
            >>>> - [mp3amp~],<br>
            >>>> - [graphic-mp3amp~],<br>
            >>>> - [mp3live~],<br>
            >>>> - [mp3streamout~],<br>
            >>>> - [mp3streamin~],<br>
            >>>> - [mp3fileout~], and<br>
            >>>> - [mp3play~] from 'iemlib library'.<br>
            >>>><br>
            >>>> * [mp3play~] should be in the 'iemlib'
            library but it's not there when its help file is well
            present in
            '/opt/purr-data/lib/pd-l2ork/extra/iemlib/mp3play~-help.pd'.<br>
            >>>> One strange thing is that the 'mp3play~.c'
            file is well present on the Git copy I made from Jonathan's
            repo for my French translations in:<br>
            >>>> -
            '/home/joe/GitLab/purr-data/externals/build/src/mp3play~.c'
            (47 bytes), and<br>
            >>>> -
            '/home/joe/GitLab/purr-data/externals/iemlib/iem_mp3/src/'
            (107 kB).<br>
            >>>><br>
            >>>> mp3play~ is not currently getting built
            (and wasn't in Pd-extended, either).<br>
            >>>><br>
            >>>> What a weirdo class structure! After
            compiling it, you must first create this:<br>
            >>>><br>
            >>>> [iem_mp3]<br>
            >>>><br>
            >>>> Which will then go in and trigger the setup
            routine for mp3play~, so<br>
            >>>> that you can then do this:<br>
            >>>><br>
            >>>> [mp3play~]<br>
            >>>><br>
            >>>> Both will create properly. I was able to
            play the test file and it<br>
            >>>> seemed to output something, though couldn't
            get my headphones to work<br>
            >>>> so I don't know if it sounded right.<br>
            >>>><br>
            >>>> It appears there are no dependencies for
            this object, so if we add it<br>
            >>>> then it will work in the web app, too!<br>
            >>>><br>
            >>>> I guess the first thing to do is look in Pd
            Vanilla and see if anyone<br>
            >>>> has done work on this object since 2003.<br>
            >>>><br>
            >>>> -Jonathan<br>
            >>>><br>
            >>>> Any ideas - suggestions about an available
            and working [MP3 file reader/player] object?<br>
            >>>> Thank you.<br>
            >>>> - - - - - - - - - - - - - - - - - - - -<br>
            >>>> Best,<br>
            >>>> Joseph Gastelais<br>
            >>>> LINUX ♥ ROUEN ♥ Normandie<br>
            >>>> - - - - - - - - - - - - - - - - - - - -<br>
            >>>>
            _______________________________________________<br>
            >>>> L2Ork-dev mailing list<br>
            >>>> <a
              href="mailto:L2Ork-dev@disis.music.vt.edu" target="_blank"
              moz-do-not-send="true">L2Ork-dev@disis.music.vt.edu</a><br>
            >>>> <a
              href="https://disis.music.vt.edu/listinfo/l2ork-dev"
              rel="noreferrer" target="_blank" moz-do-not-send="true">https://disis.music.vt.edu/listinfo/l2ork-dev</a><br>
            >>>><br>
            >>>>
            _______________________________________________<br>
            >>>> L2Ork-dev mailing list<br>
            >>>> <a
              href="mailto:L2Ork-dev@disis.music.vt.edu" target="_blank"
              moz-do-not-send="true">L2Ork-dev@disis.music.vt.edu</a><br>
            >>>> <a
              href="https://disis.music.vt.edu/listinfo/l2ork-dev"
              rel="noreferrer" target="_blank" moz-do-not-send="true">https://disis.music.vt.edu/listinfo/l2ork-dev</a><br>
            >>>><br>
            >>>>
            _______________________________________________<br>
            >>>> L2Ork-dev mailing list<br>
            >>>> <a
              href="mailto:L2Ork-dev@disis.music.vt.edu" target="_blank"
              moz-do-not-send="true">L2Ork-dev@disis.music.vt.edu</a><br>
            >>>> <a
              href="https://disis.music.vt.edu/listinfo/l2ork-dev"
              rel="noreferrer" target="_blank" moz-do-not-send="true">https://disis.music.vt.edu/listinfo/l2ork-dev</a><br>
            >>>><br>
            >>>>
            _______________________________________________<br>
            >>>> L2Ork-dev mailing list<br>
            >>>> <a
              href="mailto:L2Ork-dev@disis.music.vt.edu" target="_blank"
              moz-do-not-send="true">L2Ork-dev@disis.music.vt.edu</a><br>
            >>>> <a
              href="https://disis.music.vt.edu/listinfo/l2ork-dev"
              rel="noreferrer" target="_blank" moz-do-not-send="true">https://disis.music.vt.edu/listinfo/l2ork-dev</a><br>
            >>>><br>
            >>>><br>
            >>>>
            _______________________________________________<br>
            >>>> L2Ork-dev mailing list<br>
            >>>> <a
              href="mailto:L2Ork-dev@disis.music.vt.edu" target="_blank"
              moz-do-not-send="true">L2Ork-dev@disis.music.vt.edu</a><br>
            >>>> <a
              href="https://disis.music.vt.edu/listinfo/l2ork-dev"
              rel="noreferrer" target="_blank" moz-do-not-send="true">https://disis.music.vt.edu/listinfo/l2ork-dev</a><br>
            >>>><br>
            >>>> --<br>
            >>>> Ivica Ico Bukvic, D.M.A.<br>
            >>>> Director, Creativity + Innovation<br>
            >>>> Co-Director, Human Centered Design iPhD<br>
            >>>> Institute for Creativity, Arts, and
            Technology<br>
            >>>><br>
            >>>> Virginia Tech<br>
            >>>> Creative Technologies in Music<br>
            >>>> School of Performing Arts – 0141<br>
            >>>> Blacksburg, VA 24061<br>
            >>>> (540) 231-6139<br>
            >>>> <a href="mailto:ico@vt.edu"
              target="_blank" moz-do-not-send="true">ico@vt.edu</a><br>
            >>>><br>
            >>>> <a href="http://www.icat.vt.edu"
              rel="noreferrer" target="_blank" moz-do-not-send="true">www.icat.vt.edu</a><br>
            >>>> <a href="http://www.performingarts.vt.edu"
              rel="noreferrer" target="_blank" moz-do-not-send="true">www.performingarts.vt.edu</a><br>
            >>>> <a href="http://l2ork.icat.vt.edu"
              rel="noreferrer" target="_blank" moz-do-not-send="true">l2ork.icat.vt.edu</a><br>
            >>>> <a href="http://ico.bukvic.net"
              rel="noreferrer" target="_blank" moz-do-not-send="true">ico.bukvic.net</a><br>
            >>>><br>
            >>>>
            _______________________________________________<br>
            >>>> L2Ork-dev mailing list<br>
            >>>> <a
              href="mailto:L2Ork-dev@disis.music.vt.edu" target="_blank"
              moz-do-not-send="true">L2Ork-dev@disis.music.vt.edu</a><br>
            >>>> <a
              href="https://disis.music.vt.edu/listinfo/l2ork-dev"
              rel="noreferrer" target="_blank" moz-do-not-send="true">https://disis.music.vt.edu/listinfo/l2ork-dev</a><br>
            >>> _______________________________________________<br>
            >>> L2Ork-dev mailing list<br>
            >>> <a href="mailto:L2Ork-dev@disis.music.vt.edu"
              target="_blank" moz-do-not-send="true">L2Ork-dev@disis.music.vt.edu</a><br>
            >>> <a
              href="https://disis.music.vt.edu/listinfo/l2ork-dev"
              rel="noreferrer" target="_blank" moz-do-not-send="true">https://disis.music.vt.edu/listinfo/l2ork-dev</a><br>
            >> --<br>
            >> Ivica Ico Bukvic, D.M.A.<br>
            >> Director, Creativity + Innovation<br>
            >> Co-Director, Human Centered Design iPhD<br>
            >> Institute for Creativity, Arts, and Technology<br>
            >><br>
            >> Virginia Tech<br>
            >> Creative Technologies in Music<br>
            >> School of Performing Arts – 0141<br>
            >> Blacksburg, VA 24061<br>
            >> (540) 231-6139<br>
            >> <a href="mailto:ico@vt.edu" target="_blank"
              moz-do-not-send="true">ico@vt.edu</a><br>
            >><br>
            >> <a href="http://www.icat.vt.edu" rel="noreferrer"
              target="_blank" moz-do-not-send="true">www.icat.vt.edu</a><br>
            >> <a href="http://www.performingarts.vt.edu"
              rel="noreferrer" target="_blank" moz-do-not-send="true">www.performingarts.vt.edu</a><br>
            >> <a href="http://l2ork.icat.vt.edu"
              rel="noreferrer" target="_blank" moz-do-not-send="true">l2ork.icat.vt.edu</a><br>
            >> <a href="http://ico.bukvic.net" rel="noreferrer"
              target="_blank" moz-do-not-send="true">ico.bukvic.net</a><br>
            >><br>
            >> _______________________________________________<br>
            >> L2Ork-dev mailing list<br>
            >> <a href="mailto:L2Ork-dev@disis.music.vt.edu"
              target="_blank" moz-do-not-send="true">L2Ork-dev@disis.music.vt.edu</a><br>
            >> <a
              href="https://disis.music.vt.edu/listinfo/l2ork-dev"
              rel="noreferrer" target="_blank" moz-do-not-send="true">https://disis.music.vt.edu/listinfo/l2ork-dev</a><br>
            > _______________________________________________<br>
            > L2Ork-dev mailing list<br>
            > <a href="mailto:L2Ork-dev@disis.music.vt.edu"
              target="_blank" moz-do-not-send="true">L2Ork-dev@disis.music.vt.edu</a><br>
            > <a
              href="https://disis.music.vt.edu/listinfo/l2ork-dev"
              rel="noreferrer" target="_blank" moz-do-not-send="true">https://disis.music.vt.edu/listinfo/l2ork-dev</a><br>
            <br>
            -- <br>
            Ivica Ico Bukvic, D.M.A.<br>
            Director, Creativity + Innovation<br>
            Co-Director, Human Centered Design iPhD<br>
            Institute for Creativity, Arts, and Technology<br>
            <br>
            Virginia Tech<br>
            Creative Technologies in Music<br>
            School of Performing Arts – 0141<br>
            Blacksburg, VA 24061<br>
            (540) 231-6139<br>
            <a href="mailto:ico@vt.edu" target="_blank"
              moz-do-not-send="true">ico@vt.edu</a><br>
            <br>
            <a href="http://www.icat.vt.edu" rel="noreferrer"
              target="_blank" moz-do-not-send="true">www.icat.vt.edu</a><br>
            <a href="http://www.performingarts.vt.edu" rel="noreferrer"
              target="_blank" moz-do-not-send="true">www.performingarts.vt.edu</a><br>
            <a href="http://l2ork.icat.vt.edu" rel="noreferrer"
              target="_blank" moz-do-not-send="true">l2ork.icat.vt.edu</a><br>
            <a href="http://ico.bukvic.net" rel="noreferrer"
              target="_blank" moz-do-not-send="true">ico.bukvic.net</a><br>
            <br>
            _______________________________________________<br>
            L2Ork-dev mailing list<br>
            <a href="mailto:L2Ork-dev@disis.music.vt.edu"
              target="_blank" moz-do-not-send="true">L2Ork-dev@disis.music.vt.edu</a><br>
            <a href="https://disis.music.vt.edu/listinfo/l2ork-dev"
              rel="noreferrer" target="_blank" moz-do-not-send="true">https://disis.music.vt.edu/listinfo/l2ork-dev</a></blockquote>
        </div>
        <br clear="all">
        <br>
        -- <br>
        <div dir="ltr" class="gmail_signature">
          <div dir="ltr">
            <div>
              <div dir="ltr">
                <div>
                  <div dir="ltr">Dr. Albert Gr"af<br>
                    Computer Music Research Group, JGU Mainz, Germany<br>
                    Email: <a href="mailto:aggraef@gmail.com"
                      target="_blank" moz-do-not-send="true">aggraef@gmail.com</a>,
                    web: <a href="https://agraef.github.io/"
                      target="_blank" moz-do-not-send="true">https://agraef.github.io/</a></div>
                </div>
              </div>
            </div>
          </div>
        </div>
        <br>
        <fieldset class="mimeAttachmentHeader"></fieldset>
        <pre class="moz-quote-pre" wrap="">_______________________________________________
L2Ork-dev mailing list
<a class="moz-txt-link-abbreviated" href="mailto:L2Ork-dev@disis.music.vt.edu" moz-do-not-send="true">L2Ork-dev@disis.music.vt.edu</a>
<a class="moz-txt-link-freetext" href="https://disis.music.vt.edu/listinfo/l2ork-dev" moz-do-not-send="true">https://disis.music.vt.edu/listinfo/l2ork-dev</a></pre>
      </blockquote>
      <br>
    </blockquote>
    <br>
  </body>
</html>