Coder Social home page Coder Social logo

Support for M4A about node-taglib-sharp HOT 7 CLOSED

benrr101 avatar benrr101 commented on September 26, 2024
Support for M4A

from node-taglib-sharp.

Comments (7)

digimezzo avatar digimezzo commented on September 26, 2024 4

Hi @ion-dev and @benrr101. I'm indeed working on MPEG4 support. The implementation is actually finished and manual testing confirms it works, but I still need to write automated tests. As soon as those are done, I'll submit a pull request to this repository.

from node-taglib-sharp.

digimezzo avatar digimezzo commented on September 26, 2024 1

HI @ion-dev , @benrr101. The pull request is ready for review :)

from node-taglib-sharp.

benrr101 avatar benrr101 commented on September 26, 2024

yes! I could've sworn that M4A was covered by the AAC work I did a long time ago, but I see that it does not. Right now I'm still ... slowly ... working on matroska/webm support. However, there is a user who's been working on contributing the MPEG4 implementation. I'm not sure where @digimezzo is on it (and no pressure, it's totally volunteer work that I greatly appreciate!), but according to the latest commit messages, it seems to be progressing smoothly.

from node-taglib-sharp.

digimezzo avatar digimezzo commented on September 26, 2024

Hi @ion-dev and @benrr101. I wanted to give an update on MPEG4 support because I've been silent for a long time. Between translating the C# implementation and the writing of tests I took a long break from it. I got caught up into another project of mine. But I am now again actively working on MPEG4 support. I'm currently writing automated tests based on the tests that are in the C# project. Unit tests are done. Integration tests for M4A are also written, however some still fail. Tests for reading and writing tags are successful, but some tests reading audio properties return values that are sligtly off (e.g. ReplayGain) or just wrong (e.g. AudioSampleRate). I'm checking out why. Once that's done, I'll write the M4V integration tests. I hope to be done in a few days, but that'll depend on the difficulty to find out why some values are off.

from node-taglib-sharp.

benrr101 avatar benrr101 commented on September 26, 2024

Hi @digimezzo That's great to hear! I've been taking a break from this project to work on some other projects, lately. So excited that you're still interested in contributing :D As always, feel free to reach out if you have any questions.

The issue you mentioned with audio properties in your tests, I'm curious whether it's a difference from the .NET implementation vs the node implementation. Through my testing for other formats, I've seen instances where the .NET implementation got things wrong. So now I usually confirm whatever values they have in their tests with a couple different players that give the full details (vlc and foobar2000, usually) and make sure my code matches their output. Either way, don't get too hung up on the minutia. If you get totally stuck on something, we can log it as a known issue and we can work together to come up with a solution.

from node-taglib-sharp.

ion-dev avatar ion-dev commented on September 26, 2024

Great to hear that @digimezzo !! Really excited to test it out! Top work guys

from node-taglib-sharp.

digimezzo avatar digimezzo commented on September 26, 2024

@ion-dev , @benrr101 Glad I could help :)
It appears that all problems (ReplayGain, AudioSampleRate and others) were caused by small mistakes in my conversion to Typescript. The tests were very helpful in pinpointing those and I'm making good progress. I want to have a pull request ready before the end of this week.

Thanks for the tips @benrr101. It's good to know that the C# implementation is not flawless. I'll be sure to check what other players are giving back as values if I'm seeing explainable things.

from node-taglib-sharp.

Related Issues (20)

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.