Hi,

On Sun, 21 Feb 2021 at 13:58, Petteri Hintsanen <[email protected]> wrote:

> Hi,
>
> Thanks, this is very useful information.
>
> > 1. emms-info-taglib trims trailing white space in strings but
> > emms-info-native does not.
>
> Is this problematic?  It is easy to add trimming if needed.  Maybe even
> a defcustom.
>

My personal take is that trimming the whitespace is a good idea, if only
because other info sources do it.

> 3. emms-info-native--decode-info-fields is now returning nil for the 75
> > files for which it raised "id3v2 tag or frame size 3832965 is invalid"
> > errors last week.
> >
> > For definiteness, this is emms-info-native from the info-native branch at
> > commit 0fe6100
>
> This is surprising given that you got no errors one revision earlier.
>

Surprising but that is what I get ;-)


> Now that there are no memory reservations made based on decoded sizes I
> think we can remove these tag/frame size checks altogether.
>
> I’ll push a new version into savannah git soon.
>

Excellent.  One other factoid from my tests: I raced emms-info-native with
emms-info-taglib:

(benchmark-run
    (dolist (track (map-values emms-cache-db))
      (emms-info-native track)))

and similarly for emms-info-taglib.  The native took 200 seconds and taglib
300 for the 14000 or so files!  Looks like not shelling out 14000 times
trumps the speed of C++ (at least on my setup where I suspect a lot of the
time is spent reading the mp3's from the ntfs filesystem they live on).

---Fran

Reply via email to