Announcement

Collapse
No announcement yet.

ALAC Encoder {implemented with a third-party plug-in by thinktink}

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

  • thinktink
    replied
    Originally Posted by MrSinatra View Post
    Fantastic!

    Is this with winamps library, or your own implementation?

    Did you get in touch with Benski?
    I don't actually have a full implementation of the full ISO standard, just a basic hierarchical class handler to help me organize and construct the Moov box piece by piece. Once everything is in place, I call a single function which then triggers callbacks that outputs the data in it's proper order. All I had to do was update the class handler to support 64 bit boxes. I never did contact Benski as my preliminary research into libmp4v2 revealed that it seems to exclusively deal with files already on the drive, which doesn't work very well for a standard Winamp encoder. If memory serves, DrO described one of the encoders that ships with Winamp that just outputs dummy data to Winamp and writing the actual file contents to a temporary location and then swapping the file in once the data is finalized, I'm guessing that encoder uses the libmp4v2 library.



    Originally Posted by MrSinatra View Post

    I posted this thread to the fb winamp group.
    Very nice.

    Leave a comment:


  • MrSinatra
    replied
    Fantastic!

    Is this with winamps library, or your own implementation?

    Did you get in touch with Benski?

    I posted this thread to the fb winamp group.

    Leave a comment:


  • thinktink
    replied
    Version 1.0.1.13 now available.

    Changes:
    • Added support for very large files in the m4a encoder (Automatic switching between individual 32 and 64 bit boxes (atoms) depending on size.)



    Download.

    Leave a comment:


  • thinktink
    replied
    Originally Posted by Benski View Post
    I can help you with using libmp4v2 to encode the ALAC file to mp4/m4a if you want. just e-mail me
    Well I'll be damned, I didn't even see libmp4v2.dll. Looking at the exports I imagine it's far better than what I'm doing. Does it support in-memory reading/writting?

    Leave a comment:


  • Benski
    replied
    I can help you with using libmp4v2 to encode the ALAC file to mp4/m4a if you want. just e-mail me

    Leave a comment:


  • thinktink
    replied
    Originally Posted by MrSinatra View Post
    ...

    what is fast mode? does it relate to compression? i like max compression.

    ...
    I have no idea, I never bothered to check the source code's description. I just saw it as an option (seems like the only option) and so I put it in as it's labeled. I imagine it's a mode that allows it to use less compression so that it will compress faster, but that's just a guess. I actually didn't notice any difference while testing, though I wasn't using a stopwatch or anything.

    Leave a comment:


  • MrSinatra
    replied
    just seeing this now, its great. don't have time atm to fully test it but did install it.

    one thing, windows put up that dialog saying "this program might not have installed correctly" and i could choose to install again or say it did install ok. i said it was ok, as often windows is wrong, but just a fyi for you.

    what is fast mode? does it relate to compression? i like max compression.

    i'm very happy btw!

    Leave a comment:


  • thinktink
    replied
    Doesn't seem to be a lot of activity on this. Hope MrSinatra is happy.

    Leave a comment:


  • thinktink
    replied
    ALAC Encoder {implemented with a third-party plug-in by thinktink}

    Version 1.0.0.0 now available.

    Includes language support.

    Download from here.




    Localization files attached.
    Last edited by thinktink; 1 March 2022, 06:51.

    Leave a comment:


  • thinktink
    replied
    Just got m4a container encoding working.

    Just have to do the configuration window and then I'm done.

    Leave a comment:


  • thinktink
    replied
    From multiple sources. At the moment, some from "2835389_1302074539.pdf" that I found from a google search and an accumulation of notes from random sites that pop up from searching for specific atoms that I find. However, I keep having to look at an actual M4A file generated with (the real) ffmpeg with my hex editor for clarification and specific values that aren't being shown in the documentation.

    Leave a comment:


  • MrSinatra
    replied
    ok, so something interesting, bit of a tangent but...

    i took my CAF ALAC and tried to play it with VLC and it WORKED.

    this then reminded me of a debate i had with DrO about images (that i think spilled over into audio formats), and my memory on this is fuzzy so i might be recounting it wrong, but winamp seems to fail as a deliberate design choice if things don't match, like if an image is png but has a jpg extension, winamp will show nothing purposely, even though a web browser will display it. i think that choice also extends to audio decoding.

    i believe i said i think winamp should, to whatever degree possible, examine headers and so on in the file and try to use/decode the file (image or audio) in spite of whatever mistaken extension it may have. needless to say, i don't think i got very far with that argument.

    in any case, it may not even apply to any of this, but just thought i'd mention it.

    anyway, i don't know if my link was any use to you, but i am curious where you found links that explain the m4a file spec? i ask b/c i can't find anything that looked useful to me. where is the info showing you how to do this?

    Leave a comment:


  • thinktink
    replied
    Originally Posted by MrSinatra View Post
    ok, so the first thing i notice is that it lists CAF and m4a as 0.0.0.0 in the cd ripping and format convertor. i'm assuming thats as expected, as is that the plugin/encoder does not show up in the ctrl-p prefs, right?
    Correct but for the wrong reason. Encoder plugins don't get displayed in the Ctrl+P and I don't know of a Winamp version that ever did. The plugin is purely an encoder, no input plugin. It has it's own version spec. Since the first release is a WIP then the major and minor versions are zero.


    Originally Posted by MrSinatra View Post
    i ripped a CD track to CAF. seemed to create a file that looked right, around 12 meg.

    winamp won't play it. CAF seems to be under the nullsoft waveform decoder, do i need to adjust?
    I don't know of any native Winamp plugin that can decode ALAC except in_mp4 through the alac.w5s provider. CAF is a container format, not a codec-specific file type. CAF files can store other formats than just ALAC. Since a number of PCM and other RAW (uncompressed) audio waveform data commonly get stored in the CAF file format, the waveform plugins get the call. But since it's ALAC and not a waveform format the waveform libraries can't access it.


    Originally Posted by MrSinatra View Post
    also, can't you just put the raw ALAC into a m4a container that is already handled by winamp? i admit i don't know how it works, but i thought m4a container handling (incl creating and deciphering) was already implemented by winamp? just trying to save you from having to learn the whole m4a file spec, and instead just figure how to get the raw audio inside what winamp already does, but again i'm likely just ignorant of how it actually works.

    http://atomicparsley.sourceforge.net/mpeg-4files.html
    I don't know of any mechanism in the Winamp API for mp4/m4a enveloping. Yes, there are some encoder plugins that already encode and transport with mp4/m4a but it doesn't appear to be external to the plugin. I have to do it myself.

    Leave a comment:


  • MrSinatra
    replied
    ok, so the first thing i notice is that it lists CAF and m4a as 0.0.0.0 in the cd ripping and format convertor. i'm assuming thats as expected, as is that the plugin/encoder does not show up in the ctrl-p prefs, right?

    i ripped a CD track to CAF. seemed to create a file that looked right, around 12 meg.

    winamp won't play it. CAF seems to be under the nullsoft waveform decoder, do i need to adjust?

    also, can't you just put the raw ALAC into a m4a container that is already handled by winamp? i admit i don't know how it works, but i thought m4a container handling (incl creating and deciphering) was already implemented by winamp? just trying to save you from having to learn the whole m4a file spec, and instead just figure how to get the raw audio inside what winamp already does, but again i'm likely just ignorant of how it actually works.

    Last edited by MrSinatra; 12 December 2015, 06:45.

    Leave a comment:


  • thinktink
    replied
    Got your PM.

    At the moment I'm looking at the file spec for m4a/mp4 and it's giving me a headache.

    Leave a comment:

Working...
X
😀
🥰
🤢
😎
😡
👍
👎