17
0
mirror of https://github.com/MaSzyna-EU07/maszyna.git synced 2026-11-05 07:34:27 +01:00

Broadcast radio receiver in the cab

Plays internet radio streams (http, mp3) through a positional emitter in the cab, with analog tuning, inter-station noise and two speaker profiles. Stations are listed in fmradio.txt, cab controls are defined with fmradio entries in the .mmd file.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
This commit is contained in:
IwanXXI
2026-10-10 21:22:39 +02:00
committed by Jano211
parent c7f9796387
commit b4b1e6c32f
17 changed files with 7509 additions and 0 deletions

View File

@@ -10,6 +10,7 @@ http://mozilla.org/MPL/2.0/.
#pragma once
#include "audio/audio.h"
#include "audio/fmradio.h"
#include "model/ResourceManager.h"
#include "application/uitranscripts.h"
@@ -121,6 +122,8 @@ public:
void erase( sound_source const *Controller );
void update( double const Deltatime );
// provides access to the broadcast radio receiver
audio::fm_radio &fmradio() { return m_fmradio; }
glm::dvec3 cached_camerapos;
@@ -142,6 +145,7 @@ private:
buffer_manager m_buffers;
source_list m_sources;
source_sequence m_sourcespares;
audio::fm_radio m_fmradio; // streamed sound, maintained separately from regular emitters
// OpenAL Soft extension entry points, resolved at runtime via al(c)GetProcAddress
LPALDEFERUPDATESSOFT m_alDeferUpdatesSOFT { nullptr };