Начните вводить название — например, MoreHead, Sodium или PEAK

NAudioLame — иконка
Обложка Lethal CompanyМод для Lethal Company

NAudioLame

от qwbarch

Wrapper для libmp3lame.dll добавит поддержку кодирования MP3 в NAudio.

  • Редкий
  • 1 млн скачиваний
  • Версия 2.1.1
  • Обновлён 17 июля 2024
  • Не обновлялся больше года
  • Библиотека
  • Звук

О моде NAudioLame

NAudioLame — мод для Lethal Company (Летал Компани) от автора qwbarch. Wrapper для libmp3lame.dll добавит поддержку кодирования MP3 в NAudio.

Его скачали 1 млн раз: это 206-е место среди модов Lethal Company в нашем каталоге, редкость — «редкий» (топ-50% по скачиваниям). Мод давно не обновлялся — проверьте совместимость с текущей версией игры, актуальная версия — 2.1.1.

Для работы ему нужны: NAudio.

Полное описание NAudioLame

Автоматический перевод текста автора

Наудио. Хромой

Примечание: Это не моя библиотека. Это загрузка, содержащая двоичные файлы, чтобы модифицировать ее как зависимость.

В настоящее время содержит мой форк: https://github.com/qwbarch/NAudio.Lame

Описание

Wrapper для libmp3lame.dll добавит поддержку кодирования MP3 в NAudio 2.0 в Windows.

ВАЖНО: Поскольку это обертывает нативные DLL Windows, это не будет работать ни на одной другой операционной системе. Он может работать с уровнями эмуляции Windows, но я никогда не тестировал его.

Включает как 32-разрядную, так и 64-разрядную версии Windows native libmp3lame.dll (названные libmp3lame.32.dll и libmp3lame.64.dll соответственно), обе из которых будут скопированы в папку вывода на сборке. Если вы компилируете для конкретной цели процессора - x86 или x64 - то вам нужно только распространять соответствующую версию.

Проект LameDLLWrap является интерфейсом как для 32-битной, так и для 64-битной версии собственных DLL, и компилируется для обеих целей. Обе версии собраны в ресурсы в NAudio. Lame.dll. Во время выполнения версия для текущего процесса шириной бита загружается из ресурсов, которые затем ссылаются на соответствующую нативную библиотеку.

Обратите внимание, что нативная загрузка библиотеки потерпит неудачу, если по какой-либо причине двоичный путь приложения не находится в текущем пути поиска. Это произойдет, например, в проектах ASP.NET.

Использование

Класс LameMP3FileWriter реализует поток, который кодирует данные, записанные на него, записывая закодированные данные MP3 в файл или поток, который вы предоставляете.

Образцовый код

Вот очень простой класс кодеков для преобразования файла WAV в MP3 и из него:

использование System.IO, NAudio. Волна; использование NAudio. Хромой;

public static class Codec { // Преобразовать WAV в MP3 с помощью библиотеки libmp3lame public static void WaveToMP3 (string waveFileName, string mp3FileName, int bitRate = 128) { с использованием (var reader = new AudioFileReader (waveFileName)) с использованием (var writer = new LameMP3FileWriter (mp3FileName, reader.WaveFormat, bitRate)) reader.CopyTo (writer); }

// Преобразование MP3-файла в WAV с использованием классов NAudio только публичной статической пустоты MP3ToWave(string mp3FileName, string waveFileName) { с использованием (var reader = new Mp3FileReader(mp3FileName)) с использованием (var writer = new WaveFileWriter(waveFileName, reader). WaveFormat)) Reader. CopyTo (писатель); }

Родной DLL Loading

Новый Наудио. Хромой. Метод LameDLL.LoadNativeDLL(...) в v1.1.3 позволяет задать набор корневых папок для поиска нативных DLL и загрузить правильную версию для текущей архитектуры. Это полезно в ASP.NET и ASP.NET. Ядро для решения родного DLL в путях за пределами текущего каталога и системы PATH.

Для ASP.NET (Рамочная версия):

публичная статическая пустота LoadLameDLL() { LameDLL.LoadNativeDLL(Path.Combine(AppDomain.CurrentDomain.BaseDirectory, "bin")); }

Для ASP.NET Core от PageModel или контроллера:

public class IndexModel : PageModel { public IndexModel(IWebHostEnvironment hostEnvironment) { LameDLL.LoadNativeDLL(hostEnvironment.ContentRootPath); } }

Когда нативный DLL загружается таким образом, рукоятка сохраняется, и повторные вызовы к методу возвращаются истинными, не пытаясь загрузить DLL снова.

Метод называется во время сборки LameDLLWrap методом, который использует NAudio. Неудачные занятия называются. На ASP.NET (Framework или Core) важно загрузить собственный DLL, прежде чем он понадобится.

Поддержка ID3 Tag

Класс LameMP3FileWriter теперь принимает параметр ID3TagData, что позволяет вам предоставлять некоторую информацию, которая будет установлена как тег ID3 в файле MP3.

Класс ID3TagData в настоящее время довольно прост, с базовой информационной поддержкой. Есть много других битов информации, которые потенциально могут храниться в теге ID3, с различными интересными способами кодирования данных. Придется еще поиграть с ним.

И да, вы можете добавить изображение обложки в формате JPG, PNG или GIF. LAME не может напрямую поддерживать теги ID3v2 размером более 32 КБ из-за внутренних ограничений размера буфера, это позволяет вам писать свои собственные теги ID3. Решение проблемы заключается в том, чтобы писать теги ID3 напрямую, если они слишком велики для обработки LAME. Это хорошая идея, чтобы сохранить размер разумным.

Образцовый код

используя Naudio. Волна; использование NAudio. Отстой; использование системы;

class Program { static void Main(string[] args) { ID3TagData tag = new ID3TagData { Title = "A Test File", Artist = "Microsoft", Album = "Windows 7", Year = "2009", Comment = "Test only.", Genre = LameMP3FileWriter.Genres[1], Subtitle = "From the Calligraphy theme" };

использование (var reader = new AudioFileReader(@"test.wav")) использование (var writer = new LameMP3FileWriter(@"test.mp3", reader). WaveFormat, 128, tag)) { reader.CopyTo(writer); } } }

События прогресса

По состоянию на v1.0.4 сейчас происходит событие (MP3FileWriter). OnProgress), который вы можете использовать для получения информации о прогрессе в процессе кодирования. После каждого вызова кодера LAME количество байтов, входящих и выходящих, отправляется в любой обработчик событий, который вы прикрепили. В конце процесса, когда кодер закрывается, он отправляет окончательные номера вместе с флагом, чтобы указать, что кодировка завершена.

Поскольку блоки кодируются очень часто, я добавил очень простой предел скорости

Описание длинное — здесь его начало. Читать целиком на странице автора

Нужно для работы

В r2modman ставится автоматически

Моды, которым нужен NAudioLame

1 в каталоге

SyncedSkinwalkers — иконка

SyncedSkinwalkers

Настройка для Mirage, которая не изменяет ванильное поведение врагов в Маски и позволяет другим монстрам имитировать голоса игроков.

Обычный333,6 тыс.Tweaks & Quality Of Life

Как установить NAudioLame

Файл скачивается с официального сервера Thunderstore, без перезаливов и сторонних установщиков

Подробная инструкция для Lethal Company
  1. Скачайте менеджер модов r2modman (или Gale) и выберите в нём игру Lethal Company.
  2. Создайте профиль — так моды не смешаются с чистой версией игры.
  3. Найдите «NAudioLame» во вкладке Online и нажмите Download — BepInEx и все зависимости подтянутся сами.
  4. Нажмите «Start modded» — игра запустится с модами.
  5. Для мультиплеера всем игрокам нужен одинаковый набор модов: в r2modman профиль можно экспортировать кодом и отправить друзьям.
Вы автор мода? Поставьте ссылку на русское описание

Вставьте значок в описание на Thunderstore, в README или в Discord — русскоязычные игроки сразу попадут на страницу с переводом и инструкцией.

Описание на русском — Модка
Markdown[![Описание на русском — Модка](https://modka.app/badge.png)](https://modka.app/lethal-company/qwbarch-naudiolame/)
HTML<a href="https://modka.app/lethal-company/qwbarch-naudiolame/"><img src="https://modka.app/badge.png" alt="Описание на русском — Модка" height="44"></a>
Steam (BBCode)[url=https://modka.app/lethal-company/qwbarch-naudiolame/]Описание на русском — Модка[/url]

Частые вопросы о NAudioLame

Как установить NAudioLame?

Скачайте менеджер модов r2modman (или Gale) и выберите в нём игру Lethal Company. Создайте профиль — так моды не смешаются с чистой версией игры. Найдите «NAudioLame» во вкладке Online и нажмите Download — BepInEx и все зависимости подтянутся сами. Нажмите «Start modded» — игра запустится с модами. Для мультиплеера всем игрокам нужен одинаковый набор модов: в r2modman профиль можно экспортировать кодом и отправить друзьям.

Безопасен ли NAudioLame?

Файл скачивается с официального сервера Thunderstore, куда его загрузил qwbarch. Мы не перезаливаем и не изменяем моды.

Нужно ли друзьям ставить NAudioLame?

Автор не указал, клиентский это мод или серверный. Безопаснее, чтобы одинаковый набор модов был у всех игроков в лобби: проще всего поделиться профилем r2modman.

Что нужно для работы NAudioLame?

Установите вместе с ним: NAudio. В менеджере модов зависимости подтягиваются автоматически.

Когда NAudioLame обновлялся последний раз?

17 июля 2024, актуальная версия — 2.1.1. Это больше года назад: перед установкой проверьте, работает ли мод на текущей версии игры.

Concentus — иконка

Concentus

Портативная C# реализация кодека сжатия аудио Opus

Редкий2,1 млнБиблиотека

YourOwnPersonalBoombox — иконка

YourOwnPersonalBoombox

Заказ в вашем собственном бумбоксе с вашими собственными песнями отдельно от игрового бумбокса

Обычный316,1 тыс.Предметы

More Suits — иконка

More Suits

Добавляет новые костюмы на выбор и работает как библиотека для загрузки ваших собственных костюмов.

Легендарный17,5 млнБиблиотека

YippeeMod — иконка

YippeeMod

Заменяет стрекот Hoarding Bug на звук yippee-tbh.

Легендарный9,1 млнBepInEx

Mirage — иконка

Mirage

Имитация голосов, при которой все игроки слышат один и тот же голос, с упором на Masked-врагов. Альтернатива Skinwalkers и MaskedEnemyOverhaul.

Эпический6,5 млнЗвук

Boombox Controller — иконка

Boombox Controller

Позволяет легко загрузить трек в бумбокс, просто указав ссылку.

Эпический4,5 млнBepInEx