Monthly Status Update - July 2022

August 1, 2022

Hello, welcome to this month's status update post. Here I will be sharing what's been going on with AnimeThemes.moe, where we are heading, how to help, and inviting feedback.

Funding

The listing of last month's account balances and posted transactions can be found here.

Our operational expenses increased by about ~$75 from last month and our rolling balance decreased by about ~$80.

As stated last month, We did anticipate an increase in traffic for the new season of premieres. With our curent level of funding, this level of traffic isn't sustainable. If we do sustain this level of traffic going forward, we will begin considering reaching out to services producing heavier load.

Please consider supporting us on Patreon or Ko-fi if you have the ability to. Thank you to everyone who has supported the project thus far!

If you want another way to support us, we were given a referral link on our DO account. We get kickback if new users sign up and spend $25 USD (You get a $100 credit that expires in 60 days). If anyone was thinking of using this platform for their own hosting needs, please use our link:

https://www.digitalocean.com/?refcode=38c90f0c46e8

AnimeThemes.moe Development - The Audio-only Mode Release

This month we focused on pushing initial changes for the backend of the design to hand off to the frontend through a new staging environment.

https://beta.animethemes.moe/wiki

This is the location of our new staging environment. We chose to rename it since there seemed to be some confusion about the purpose of the previous environment and thought a less technical name would help.

At the time of writing, this environment supports audio-only changes in the admin panel, API and streaming.

https://beta.animethemes.moe/audio/MadeInAbyssS2-OP2.ogg

For this initial seed, we have chosen to extract the audio tracks from our WebMs to a supported container.

We have also chosen to minimize our storage needs and redundancy by deriving a "source video" for a given video instead of creating a new audio for every video. Source videos are chosen by a simple scoring system that considers the source type (BD, DVD, WEB, etc), overlapping, hardsubbing and theme sequencing. You might not necessarily open an audio stream by modifying the URL of a video stream.

We will be working on adding support for audio streams to the client. This may entail introducing breaking changes to the backend, including the API.

For clarity, this beta environment is primarily for development efforts and community validation. We encourage you to poke around and provide us feedback. We discourage you from using this environment for your development needs at this time since we do not consider these changes stable yet.

animethemes-server

This month we focused on post-deployment bugs, facilitating data backfilling efforts & drafting initial changes. The full set of changes can be reviewed here

Additions

  • Added Audio Model.
  • Added relation between Audio & Video.
  • Add Audio filesystem.
  • Add Audio repositories & reconciliation.
  • Add Audio API resource & endpoints.
  • Add Audio streaming through internal nginx redirect.
  • Add backfill action for video to derive source video, extract audio if needed and set the relation.
  • Make audio and video disks configurable. S3 and Local disks are now supported. This is useful for local environments where we may have a local archive of audio and video.
  • Add Audio table to database dumps.
  • Add Audio streaming feature flag.
  • Add Audio nova resource.
  • Add nova lenses for gaps in Audio & Video relation.

Fixes

  • Add missing reconciliation columns to prevent extraneous embed fields on update for discord messages.
  • Format date values for discord embed fields.
  • Use canonical domain for ANN resource formatting.
  • Add missing initialization of embed fields on update events & test coverage.
  • Add missing lens field configuration and actions.
  • Removed resource polling.

Maintenance

  • Refactor repositoriy reconciliation from trait to action.
  • Refactor nova actions & lenses to be more extensible.
  • Refactor repositories to be more extensible.
  • Bump Dependencies
  • Cleanup

animethemes-web

This month we entirely focused on migrating the client project to TypeScript. With this effort done, we can now find a lot of issues before even pushing an update.

Next month we will focus on adding support for audio mode and other small improvements.

animethemes-api-docs

  • Add Audio Resource
  • Add relation between Audio & Video
  • Add Audio Feature Flag
  • Migration from VuePress 1.X to VitePress

There were some issues with the new VitePress migration being served from a base path, so we are hosting the new docs here:

https://api-docs.beta.animethemes.moe/

animethemes-db-dump

Will continue to be updated every Monday

Backfilling Efforts

We have begun in earnest the backfilling of missing data introduced by the wiki release.

For example, the audio-only mode seed required backfilling video source data to ensure deriving source videos worked as expected. This was para's primary backfilling effort in July.

We have also been working on backfilling resources and anison data. If you are interested in helping us with these efforts, please reach out. These are time-consuming efforts and we can benefit from having more volunteers here.

Project KuroPon

From recent discussions on adjusting our encoding standards, the backlog of our existing repository becomes more and more of a problem. We would need to potentially replace thousands of videos for any change, and that also means hunting down obscure sources over and over again. An idea was brought up that we are hoping to slowly adopt going forward.

We will begin maintaining an archive of source files and encoding scripts that can be used to generate encoded videos for our repositories. That way, if we decide to tweak our encoding standards or if we want to reproduce our encoded file with, say, a new major version of libvpx, we can trigger execution of these scripts against the source files to produce new WebMs.

To start things out, contributions to KuroPon will be voluntary. Aside from the encoded WebM, the contribution should have:

  1. The name of the source file if publicly accessible, or a copy of the source file if not
  2. A file containing the list of FFmpeg commands or the executable script.
  3. Required software if you used anything other than FFmpeg.

We hope this project can help better future proof AnimeThemes and allow us to continue improving the quality of our work.

For those wondering, the name comes from the openings.moe contributor who was working on a similar mass encoding project for that site.

Misc

Mod applications are still open. Now more than ever with our efforts widening and less of our team being active, we need some help delegating tasks out.

The backup torrent was updated 2022-07-01. The link can be found in the discord and in the one obvious place you should be able to find. The next update will be on 2022-10-01. Seeding is appreciated.

Please consider helping out with our Encoding efforts. We can always use more help there.

We are still looking to staff at least 25 editors to help us backfill and build out our database. If you are interested in helping out, please reach out to para here or on the discord. We have a detailed description of the role in our #help_wanted channel on the discord.

Next Month Priorities

Audio-only Mode Release

Wrap-up

Please feel free to discuss anything related to these items or anything else related to the project with us in accompanying social media posts, especially anything we may have forgotten. Feedback on the structure of these posts is welcomed too. Thanks again, everyone!

Back to overview