I hope you’ve all been well as can be over the last week. I took a bit of ‘me’ time during this week so not as much was done but sometimes you need to have a bit of a break.
Anyway, we’re almost at a months worth of these updates and like before, development is a rolling process, you may want to check out last week’s update as some this week’s work is a continuation of it and even the prior week.
The following things were worked on (in no particular order as taken from my internal development progress changelog):
- Got a lot further with the JTFE queue handling changes though it’s still not 100% complete
- This involved a lot of re-validation and re-working of the existing code (i.e. most of the week’s working time was done on this) to make things work more in-sync with using the direct main playlist data structures
- There’s more that needs to be done but at least it’s not crashing even if some of the queued states and queued positions are showing the wrong value - Re-checked a number of the live patches that weren’t working as expected
- This was a side-effect of trying to force the original winamp.exe to have ASLR enabled but it caused some of the patches to fail due to the re-location of some aspects in memory that hadn’t been noticed when first making the patches - Improved the replacement transcoding plug-in to deal with some enc_*.dll plug-in loading failures
- This is just one of those normal things in testing and refining code over time - Finished off a replacement MP3 encoder plug-in (enc_mp3.dll) to replace the native plug-in (enc_lame.dll)
- This was started on back when I wasn’t doing the blog updates and finally was able to finish it off.
- This replacement tries to act similarly to the native plug-in (i.e. you get the same config options due to the LAME interfaces used) but it resolves some quirks that the native encoder plug-in seems to have had for some. - A few other small plug-in tweaks in standardising code style & code usage
That’s it for this week’s update post which isn’t a lot but sometimes a lot of work is done which cannot really be all singing, all dancing and just a few lines is all that can be done to summarise many hours.
Until next week, happy Winamping!
-dro
Hey Darren, glad to see you doing the blog updates again! I enjoy reading your progress. :)
Mention of the new enc_mp3.dll raised a question for me however, is it still based on LAME?
Thanks!
-Chris
Glad you’re liking them :) Yup it’s still based on using LAME (that’s the defacto library to use imho) & with the removal of MP3 licensing, I don’t have to mess around with how it’s handled compared to how the native encoder plug-in it replaces. There’s a few aspects of the replacement encoder I still need to look at but it’s at a comparable state to the original enc_lame that it replaces (I changed the name of my replacement to better fit with the naming style of the other encoder plug-ins e.g. enc_opus, enc_vorbis, etc).