From 62ffb676f97b4dc021f86642800f5717f147a61f Mon Sep 17 00:00:00 2001 From: asepharyana Date: Fri, 7 Aug 2026 13:41:12 +0700 Subject: [PATCH] feat(media): default music volume 30% instead of 100% MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Volume play music terlalu besar buat user — default sekarang 0.3 (30%) di semua layer: player gateway (musicVolume=0.3), backend state/schema (default 0.3), dan UI slider (fallback 0.3). User tetap bisa naikin manual via slider volume di dashboard. --- services/backend/src/modules/media/media.schema.ts | 2 +- services/backend/src/modules/media/media.service.ts | 4 ++-- .../discord-gateway/src/modules/voice-recording/player.ts | 2 +- services/frontend/src/components/media/music-player.tsx | 4 ++-- services/frontend/src/lib/hooks/use-media-player.tsx | 2 +- 5 files changed, 7 insertions(+), 7 deletions(-) diff --git a/services/backend/src/modules/media/media.schema.ts b/services/backend/src/modules/media/media.schema.ts index 1d2634e..dbb2a42 100644 --- a/services/backend/src/modules/media/media.schema.ts +++ b/services/backend/src/modules/media/media.schema.ts @@ -6,7 +6,7 @@ export const mediaQueueSchema = z.object({ }); export const mediaVolumeSchema = z.object({ - volume: z.number().min(0).max(1).default(1.0), + volume: z.number().min(0).max(1).default(0.3), }); export type MediaQueueInput = z.infer; diff --git a/services/backend/src/modules/media/media.service.ts b/services/backend/src/modules/media/media.service.ts index 5af2989..6760f48 100644 --- a/services/backend/src/modules/media/media.service.ts +++ b/services/backend/src/modules/media/media.service.ts @@ -44,7 +44,7 @@ const DEFAULT_COMMAND_TIMEOUT_MS = 5000; const DEFAULT_STATE: MediaState = { playing: false, activeMode: null, - musicVolume: 1.0, + musicVolume: 0.3, current: null, queue: [], }; @@ -65,7 +65,7 @@ function normalizeMediaState(raw: Record): MediaState { return { playing, activeMode, - musicVolume: Number(raw.musicVolume ?? 1.0), + musicVolume: Number(raw.musicVolume ?? 0.3), current: (raw.current as MediaItem | null) ?? null, queue: (raw.queue as MediaItem[]) ?? [], }; diff --git a/services/discord-gateway/src/modules/voice-recording/player.ts b/services/discord-gateway/src/modules/voice-recording/player.ts index d30df59..25472fe 100644 --- a/services/discord-gateway/src/modules/voice-recording/player.ts +++ b/services/discord-gateway/src/modules/voice-recording/player.ts @@ -18,7 +18,7 @@ export class DiscordPlayer { private connection: VoiceConnection | null = null; private owner: DiscordPlayerOwner = "none"; private resource: AudioResource | null = null; - private musicVolume = 1; + private musicVolume = 0.3; private idleCallback: (() => void) | null = null; /** Set before manual stop() calls to distinguish from natural track end. */ private manualStop = false; diff --git a/services/frontend/src/components/media/music-player.tsx b/services/frontend/src/components/media/music-player.tsx index 64bd83f..55a5646 100644 --- a/services/frontend/src/components/media/music-player.tsx +++ b/services/frontend/src/components/media/music-player.tsx @@ -147,8 +147,8 @@ export function MusicPlayer({ ws, initialData }: MusicPlayerProps) { ({ playing: false, - musicVolume: 0.5, + musicVolume: 0.3, current: null, queue: [], });