diff options
| author | salmonik <raisersoft@proton.me> | 2026-04-19 17:41:05 +0200 |
|---|---|---|
| committer | salmonik <raisersoft@proton.me> | 2026-04-19 17:41:05 +0200 |
| commit | 920d4b18e253f5642b895a1205d9826d54570db8 (patch) | |
| tree | 8539d6e633bee7e2a2f74e5bd725d6a49e7268d1 /cogs/vclogs.py | |
| parent | readd main.py (diff) | |
| download | senator-sperma-920d4b18e253f5642b895a1205d9826d54570db8.tar.gz senator-sperma-920d4b18e253f5642b895a1205d9826d54570db8.zip | |
feat: add external URL playback support, fix vclogs audio handling
Diffstat (limited to 'cogs/vclogs.py')
| -rw-r--r-- | cogs/vclogs.py | 14 |
1 files changed, 11 insertions, 3 deletions
diff --git a/cogs/vclogs.py b/cogs/vclogs.py index 85d19bc..fb0a2e0 100644 --- a/cogs/vclogs.py +++ b/cogs/vclogs.py | |||
| @@ -102,12 +102,20 @@ class VcLogs(commands.Cog): | |||
| 102 | volume = get_volume() | 102 | volume = get_volume() |
| 103 | logger.info(f"connected: {voice_client}") | 103 | logger.info(f"connected: {voice_client}") |
| 104 | 104 | ||
| 105 | if voice_client and not is_playing: | 105 | if voice_client: |
| 106 | if is_playing: | ||
| 107 | logger.info("voice already playing, stopping current audio") | ||
| 108 | voice_client.stop() | ||
| 109 | await asyncio.sleep(0.1) | ||
| 110 | |||
| 106 | logger.info("preparing to play audio") | 111 | logger.info("preparing to play audio") |
| 107 | audio_source = discord.FFmpegPCMAudio(tts_file, options=f'-filter:a "volume={volume}"') | 112 | audio_source = discord.FFmpegPCMAudio(tts_file) |
| 113 | if volume != 1.0: | ||
| 114 | audio_source = discord.PCMVolumeTransformer(audio_source) | ||
| 115 | audio_source.volume = volume | ||
| 108 | voice_client.play(audio_source) | 116 | voice_client.play(audio_source) |
| 109 | while voice_client.is_playing(): | 117 | while voice_client.is_playing(): |
| 110 | await asyncio.sleep(0.5) | 118 | await asyncio.sleep(0.1) |
| 111 | except Exception as e: | 119 | except Exception as e: |
| 112 | logger.error(f"TTS playback error: {e}") | 120 | logger.error(f"TTS playback error: {e}") |
| 113 | finally: | 121 | finally: |
