Pull to refresh
14
Денис@popkovden

KMP-разработчик в команде Black Bricks

10
Subscribers
Send message

Почему кассеты с Dolby звучат то лучше, то хуже: проверяем Dolby B и Dolby C на реальной деке

Level of difficultyEasy
Reading time5 min
Reach and readers13K

Я много раз слышал мнение, что Dolby «убивает верх» и делает кассеты мутными. Но Dolby — это не эквалайзер и не простой шумодав. Это система, которая должна работать парой: кодирование при записи и декодирование при воспроизведении. Я решил проверить, что будет, если записать один и тот же материал с Dolby B, с Dolby C, а потом намеренно перепутать режимы на воспроизведении.

В сравнении Type I–IV мы уже гоняли один альбом через Kenwood KX-1100G и смотрели физику ленты — MOL/SOL, self-erasure, crosstalk, head gap, wow/flutter, bias, azimuth. Там Dolby был выключен, чтобы оценить «честный» шум носителя. В статье про CassetteMaster — как готовить цифровой мастер к записи. Сегодня — третий угол: насколько результат зависит не от типа ленты, а от того, совпали ли режим и уровень Dolby.

Читать далее

Пиратская кассета vs перезапись с мастерингом

Level of difficultyEasy
Reading time4 min
Reach and readers10K

В прошлой статье мы сравнивали четыре типа лент на Kenwood KX-1100G. Сегодня — другой угол: две оцифровки одной и той же физической стороны, но с разным содержимым.

Читать далее

Автоматический DSP-премастеринг для аудиокассет на C++

Level of difficultyMedium
Reading time6 min
Reach and readers15K

Помните мою прошлую статью, где мы гоняли один и тот же современный альбом на четырёх типах лент через трёхголовочную Kenwood KX-1100G? Тот эксперимент показал: аналоговый звук жив, но характер цифрового мастера и точность калибровки деки часто влияют на результат сильнее, чем разница между Type I и Type IV.

За кадром осталась другая проблема. Современный стриминговый релиз — это −8…−10 LUFS integrated, True Peak на 0 dBFS и выше, плотный верх, широкий стереобас и brickwall-лимитирование. Записать такой файл на ленту «как есть» — получить грязный верх, нестабильный уровень, клиппинг на записи и бас, который «гуляет» между каналами из‑за crosstalk.

Читать далее

Сравнение Type I, Type II, Type III и Type IV — с кассетной декой Kenwood KX-1100G

Level of difficultyEasy
Reading time12 min
Reach and readers12K

Несмотря на то что эпоха кассет давно закончилась, интерес к аналоговому звуку продолжает расти. В 2026 году кассетный ренессанс перешел из фазы ностальгического увлечения хипстеров в стадию серьезного аудиофильского дискурса. Индустрия видит рост продаж физических носителей, а вместе с этим регулярно возникают и обостряются технические споры: действительно ли разные типы магнитных лент звучат по-разному, или же большинство заявленных в спецификациях различий существует только на бумаге и в маркетинговых брошюрах ушедшей эпохи?

Читать далее

We Are Rewind: обзор плеера

Level of difficultyEasy
Reading time17 min
Reach and readers11K

Я — Денис, и в последнее время мне интересна тема кассет и винила. Хочу в этой статье рассказать про один из самых удачных, по моему мнению, плееров среди новоделов в индустрии ретро-девайсов.

Читать далее

Проигрывание GIF в KMP Desktop

Level of difficultyEasy
Reading time2 min
Reach and readers891

Я — Денис, Middle Android-разработчик в «Black Bricks». Недавно в нашем KMP проекте возникла необходимость добавить рекламный баннер с GIF. В этом кейсе я расскажу, с какими трудностями мы столкнулись и как удалось реализовать этот функционал.

Читать далее

Firebase Analytics в KMP: Android, iOS, Desktop (MacOS, Windows)

Level of difficultyEasy
Reading time3 min
Reach and readers3.5K

Я — Денис, Middle Android-разработчик в «Black Bricks». В этой статье я расскажу о том как я подключил Firebase Analytics в KMP проект для Android, iOS, Desktop (MacOS, Windows).

Читать далее

Как я курсовую писал на gRPC+REST в связке с клиентом на Android+Jetpack Compose

Level of difficultyEasy
Reading time10 min
Reach and readers5.2K

В этой статье я расскажу о том как написал курсовую работу и успешно сдал её с первой попытки без защиты на «отлично». Чего у меня и моих одногруппников ранее никогда не удавалось.

Читать далее

Современный способ организации зависимостей в Android. Version catalog и Gradle convention plugin

Level of difficultyMedium
Reading time18 min
Reach and readers18K

Я — Денис, Middle Android-разработчик в «Лайв Тайпинге». В этой статье я расскажу о современном подходе организации зависимостей в Android. Вы узнаете как использовать version catalog и convention plugin в вашем проекте.

Читать далее

Drag and Drop в Jetpack Compose

Level of difficultyEasy
Reading time5 min
Reach and readers7K

В январе 2024, крупное обновление Jetpack Compose добавило два новых модификатора: dragAndDropSource и dragAndDropTarget. В этой статье я расскажу как реализовать эффект Drag and Drop в Jetpack Compose.

Читать далее

Как увеличить шрифт так, чтобы контейнер не поехал? Адаптация UI/UX для людей с проблемами зрения в XML и Compose

Level of difficultyEasy
Reading time12 min
Reach and readers4.3K

Я — Денис, Android-разработчик в «Лайв Тайпинге». В этой статье я продолжу рассказывать о современных подходах разработки адаптивного UI /UX для людей с ограниченными возможностями, разных национальностей и особенностями развития. В этой статьей я расскажу про разработку интерфейсов в XML и Compose для варьирующего размера шрифта. А также покажу почему атрибут contentDescription так важен.

Читать далее

Двигай рукой справа налево: адаптация интерфейса в Android приложении под RTL в XML и Jetpack Compose

Level of difficultyEasy
Reading time9 min
Reach and readers3.5K

В общении важно уважать привычки и культурный контекст людей. Это относится и к мобильным приложениям. В статье рассказываю о культурном аспекте — чтении.

Рассмотрим как адаптировать интерфейс под RTL в XML и Jetpack Compose.

Читать далее

Как реализовать App shortcuts в Android

Level of difficultyEasy
Reading time6 min
Reach and readers3.9K

Я — Денис, Android-разработчик в «Лайв Тайпинге». В этой статье я расскажу о том как добавить поддержку App shortcuts в Jetpack Compose. Я поделюсь опытом создания шорткатов на примере мобильного приложения — мессенджера.

Читать далее

Массивы в Kotlin

Level of difficultyEasy
Reading time17 min
Reach and readers20K

Я - Денис, Android-разработчик в «Лайв Тайпинге». В этой статье расскажу о массивах. Вы узнаете: как они устроены в памяти компьютера, особенности реализации в разных ЯП, оптимизациях, а также частых вопросах на собеседованиях.

Даже, если у вас большой опыт в разработки с Kotlin, думаю вы найдете что-то новое для себя в этой статье.

Погнали!

Как я построил процесс образовательных митингов в отделе и заработал на этом денег

Reading time8 min
Reach and readers5.8K

Я — Денис, Android-разработчик в «Лайв Тайпинге». В этой статье расскажу о своём опыте внедрения нового процесса в отделе. Мы поговорим о важности образовательных митингов, а также найдем решения проблем, с которыми можно столкнутся во время его внедрения. У этой истории нетипичная концовка: я поделюсь тем, как митинги помогли мне выпустить собственную книгу. Так что в качестве бонуса — несколько советов о том, как опубликовать книгу на «ЛитРес: Самиздат».

Поехали!

Information

Rating
Does not participate
Location
Омск, Омская обл., Россия
Date of birth
Registered
Activity

Specialization

Разработчик мобильных приложений
Средний
From 200,000 ₽
Git
Английский язык
XML
Kotlin
Разработка под Android
Android SDK
MVVM
RxJava 2
Coroutines
Retrofit