Skip to content
This repository was archived by the owner on Dec 1, 2022. It is now read-only.
This repository was archived by the owner on Dec 1, 2022. It is now read-only.

Make Our Own Library Separation Effort #46

@generic-pers0n

Description

@generic-pers0n

We should be making an effort similar to Audacity's library separation efforts. I am not suggesting that we backport Audacity's efforts into Saucedacity's code base, but rather we should do the library separation ourselves in a similar nature to Audacity's efforts. For example, we should move Saucedacity's audio IO code into it's own library. We can also make that library available for general use, but that's for another issue.

Benefits

The benefits of separating parts of Saucedacity into several libraries helps with moving away from wxWidgets. Additionally, it can help with organizing Saucedacity's code base.

Why we should make our own efforts intstead of backporting Audacity's efforts

Before I go on: I will make it clear that **I am NOT opposed to backporting Audacity's library separation efforts. In fact, I've already done this with lib-ffmpeg-support (which currently resides in src/ffmpeg instead of being an actual library).

I believe that separating libraries in our own way will be more productive. Doing this effort ourselves can help us save time trying to figure out which pieces of the puzzle go where. This is especially considering that as time goes by, our code bases will continue to diverge from each other. As time progresses, I feel it will become virtually impossible to catch up with Audacity's separation efforts. Right now already, I believe there is already quite a bit of work required to catch up. Nevertheless, I like and even agree Audacity's idea of separating parts of their code base into different libraries.

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions