Cabin Announcements is a desktop feature that plays airline-style PA audio during a tracked flight. FlyHub watches your active flight, simulator telemetry, selected aircraft, airline code, operation type, GSX state when available, and your announcement settings to choose what to play next. The feature is built for local audio packs. You can use the bundled default pack, point FlyHub at a custom announcements folder, or create packs for specific airlines, cargo operations, VIP operations, aircraft families, airports, and times of day. FlyHub’s custom pack system is inspired by the folder and event-name style described in the Fenix Cabin Announcements Guide, but FlyHub has its own pack selection rules, operation folders, supported file types, tags, and automatic triggers. Use the Fenix guide as a reference for the generalDocumentation Index
Fetch the complete documentation index at: https://docs.flyhub.app/llms.txt
Use this file to discover all available pages before exploring further.
Announcements folder idea, then follow the FlyHub rules below when building or adapting a pack.
Requirements
Cabin Announcements requires:- FlyHub Desktop.
- An active tracked flight in the Active Flight page.
- Cabin Announcements enabled from the Active Flight sidebar.
- A readable announcements folder containing supported audio files.
- Simulator telemetry from MSFS through SimConnect or X-Plane through the FlyHub plugin.
| Format | Notes |
|---|---|
.ogg | Recommended for packs. Must be a real Ogg/Vorbis file, not a renamed file. |
.wav | Supported. Larger files use more disk space. |
.mp3 | Supported by the desktop audio player. |
Enable Announcements
First, make sure Cabin Announcements is enabled in the app settings.
- Open FlyHub Desktop.
- Start or open an active flight.
- Open the right sidebar on the Active Flight page.
- Open the Cabin Announcements panel.

- Enable Cabin Announcements.

- Open the Files tab and select your announcements root folder if you are using a custom pack.
- Open the Audio tab and choose the output device and volume.
Overlay Use
Cabin Announcements can be managed from the Active Flight sidebar while you fly. The desktop simulator overlay also provides quick in-sim controls for Play Next, Skip, pause/resume, manual triggers, mute, and volume. Use the sidebar for setup, sound pack selection, file scanning, device selection, and detailed tweaks. Recommended workflow:- Start the active flight in FlyHub Desktop.
- Open the simulator overlay if you use it for in-sim status.
- Keep Cabin Announcements enabled in the Active Flight sidebar.
- Use the sidebar to change packs, force phases, preview files, or stop playback.
- Use the overlay for passive monitoring during the flight.


How Playback Works
FlyHub keeps an announcement session for the current active flight. During the flight it checks:- Current flight phase.
- Whether the aircraft is on the ground or airborne.
- Altitude above ground level.
- Ground speed and takeoff or landing detection.
- Engine, parking brake, beacon, landing light, strobe, seatbelt, and camera/view state when available.
- SimBrief flight plan details, including airline, flight number, aircraft ICAO, origin, and destination.
- Operation type: passenger, cargo, or VIP.
- GSX boarding and deboarding state when the MSFS integration is enabled.
- The enabled or skipped state of each announcement in your settings.
| Stage | Typical announcements |
|---|---|
| Boarding | BoardingWelcome, BoardingWelcomePilot, BoardingMusic, DepartureDelayed, BoardingComplete |
| Door and safety | ArmDoors, PreSafetyBriefing, SafetyBriefing |
| Takeoff | CabinDimTakeoff, CrewSeatsTakeoff, CallCabinSecureTakeoff |
| Climb and cruise | AfterTakeoff, TopOfClimbPilot, FastenSeatbelt, CruiseElapsed |
| Descent and approach | TopOfDescentPilot, DescentSeatbelts, CrewSeatsLanding, CallCabinSecureLanding |
| Landing and arrival | AfterLanding, AfterLandingMusic, DisarmDoors, DisembarkStarted |
GSX Behavior
GSX support is for MSFS. When GSX integration is enabled:| GSX state | FlyHub behavior |
|---|---|
Boarding state 5 | Treats boarding as started or in progress and can trigger BoardingWelcome. |
Boarding state 6 | Treats boarding as complete and can trigger BoardingComplete. |
Deboarding state 4 or 5 | Can start the disembark flow after arrival. |
Deboarding state 6 | Treats deboarding as complete and clears the arrival session state. |
X-Plane Behavior
X-Plane does not have a GSX equivalent. Some aircraft do not expose reliable light or cabin-specific datarefs. If automatic boarding does not start in X-Plane, use the manual controls in the Cabin Announcements sidebar.Active Flight Sidebar
Open the Active Flight page and use the Cabin Announcements panel in the right sidebar.Status Tab
Use Status to see and control the current announcement session.| Control | What it does |
|---|---|
| Enable Cabin Announcements | Turns the feature on or off for desktop playback. |
| Play Next | Plays the next eligible announcement immediately. |
| Skip | Skips the next eligible announcement for the current session. |
| Stop / Resume | Stops current playback or resumes paused playback. |
| Manual Playback | Lets you choose a specific announcement and play it on demand. |
| Phase buttons | Forces the announcement session into a phase such as Boarding, Cruise, Descent, or Postflight. |
| Metrics | Shows connection state, phase, playing state, next announcement, aircraft, airline, operation, and selected sound pack. |
| Waiting For | Shows why the next automatic announcement has not fired yet. |
| Upcoming | Shows upcoming announcements and skipped items. |
Audio Tab
Use Audio to control where announcements play and how loud they are.| Setting | What it does |
|---|---|
| Audio Device | Selects the speaker, headset, virtual cable, or system default output. |
| Refresh | Re-scans available output devices. |
| Add Device | Opens the operating system output-device picker when supported by the desktop runtime. |
| Announcement Volume | Master volume for spoken announcements. |
| Music Volume | Separate volume for boarding and after-landing music. |
| Mute | Mutes announcement playback without disabling the feature. |
| Only When Focused | Plays announcements only while FlyHub Desktop is focused. |
| Camera Volume | Changes playback volume based on cockpit, cabin, or external camera state when the simulator exposes that data. |
| Internal View Volume | Volume used for cockpit or internal views when Camera Volume is enabled. |
| External View Volume | Volume used for external views when Camera Volume is enabled. |
| Resume Music | Resumes paused boarding or arrival music after a spoken announcement finishes. |
Files Tab
Use Files to select and inspect the sound pack folder.| Control | What it does |
|---|---|
| Root folder | Shows the announcements folder FlyHub is scanning. |
| Select Folder | Opens a folder picker for your custom announcements root. |
| Rescan | Re-scans the selected folder for valid audio files. |
| Sound pack list | Shows detected pack folders and the selected pack. |
| File list | Shows valid announcement files FlyHub found. |
| Preview | Plays a file directly so you can test the audio. |
PAX, Cargo, VIP, AAL, or UAE_Cargo, or it can directly contain announcement files.
If you are adapting a Fenix-style downloaded pack, the useful folder is usually the Announcements folder inside the download. Fenix-style packs commonly use this shape:
Announcements. For your own custom packs, select whichever folder contains the packs or files you want FlyHub to use.
Announcements Tab
Use Announcements to choose which announcement events are allowed to play.| Setting | What it does |
|---|---|
| Sound Pack | Manually selects a detected pack instead of using automatic airline or operation matching. |
| Use operation default if selected pack files are missing | Allows FlyHub to fall back to the matching operation default pack, such as PAX, Cargo, or VIP, when the selected airline-operation or manual pack does not contain a matching file. Cargo and VIP automatic fallback stays inside Cargo/VIP defaults so passenger cabin audio is not borrowed by accident. |
| Announcement toggles | Enables or disables individual events such as SafetyBriefing, AfterLanding, or DisembarkStarted. |
Tweaks Tab
Use Tweaks when your simulator, aircraft, or add-on exposes signals differently.| Setting | What it changes |
|---|---|
| Boarding Repeat | How often boarding welcome or boarding music logic can repeat while boarding is still in progress. |
| Takeoff Detection AGL | Altitude above ground used to detect that takeoff has happened. |
| Descent Detection AGL | Altitude above ground used for descent-related announcements. |
| Crew Seats Landing AGL | Altitude above ground for the crew-seats-for-landing call. |
| Departure Delay Threshold | Minutes after scheduled departure before DepartureDelayed can play during boarding. |
| After Landing Delay | Delay after landing before arrival announcements can play. |
| Skip First BoardingWelcome | Skips the first boarding welcome call in the session. |
| Auto Arm Doors | Automatically plays ArmDoors after boarding completes if normal aircraft movement or engine signals are missing. |
| Landing Lights for Takeoff | Uses landing lights instead of strobe lights for the crew-seats-takeoff trigger. |
| Ignore Incompatible Aircraft Lights | Allows light-based triggers even when the current aircraft is not known to expose compatible light states. |
Integrations Tab
Use Integrations for simulator add-ons.| Setting | What it does |
|---|---|
| GSX Integration | Enables GSX boarding and deboarding signals for MSFS. |
| Current GSX state | Shows current boarding and deboarding states when FlyHub can read them. |
Settings Persistence
FlyHub stores Cabin Announcements settings in the desktop app data folder. The selected announcements root folder is stored separately from the audio, announcement, tweak, and integration settings. Saved settings include:- Selected audio device.
- Volume and mute settings.
- Camera-volume behavior.
- Resume music behavior.
- Enabled and disabled announcements.
- Selected or automatic sound pack mode.
- Operation-default fallback.
- Tweak values.
- GSX integration state.
- Custom announcements root folder.
Sound Pack Folder Layout
A sound pack root is the folder FlyHub scans. Pick a folder that is easy to manage, then put one or more pack folders inside it. The root folder can have any name. This wiki usesAnnouncements in examples because many community announcement packs use that name. The important part is that FlyHub is pointed at the folder that contains your pack folders or audio files.
What To Select
Select the folder that contains the packs you want FlyHub to scan. Good selections:Any folder name/Announcements/AIRLINE, select the Announcements folder.
Do not select a folder that is one level too high unless FlyHub should scan everything below it.
Recommended Layout
| Folder | Use |
|---|---|
PAX | Generic passenger flights. |
Cargo | Generic cargo flights. |
VIP | Generic VIP or private flights. |
| Folder name | Use |
|---|---|
Airline ICAO or code, such as AAL, DAL, UAE | Airline-specific pack. |
PAX | Generic passenger-operation pack. |
Cargo | Generic cargo-operation pack. |
VIP | Generic VIP/private-operation pack. |
Default | Optional generic pack that can be selected manually or used when the selected root folder itself is a direct pack. |
<Airline>_PAX | Airline-specific passenger pack. |
<Airline>_Cargo | Airline-specific cargo pack. |
<Airline>_VIP | Airline-specific VIP/private pack. |
Pack Selection Priority
When automatic pack selection is enabled, FlyHub checks the flight context and looks for matching audio in this order:- Manual sound pack override from the sidebar, if one is selected.
- Direct selected-root pack folder, if the selected root itself contains announcement files.
- Airline plus operation folder, such as
UAE_Cargo. - Airline folder, such as
UAE, for passenger flights only. - Operation folder, such as
PAX,Cargo, orVIP, if operation fallback is enabled.
UAE_PAX, UAE, and PAX installed uses UAE_PAX first, then UAE, then PAX.
Example: a cargo Emirates flight with UAE_Cargo, UAE, PAX, and Cargo installed uses UAE_Cargo first, then Cargo. It does not automatically use UAE or PAX, because those packs are assumed to contain passenger cabin language. If you really want that audio for the flight, select the pack manually.
Flight Context Sources
FlyHub builds announcement context from the active booking first, then uses simulator telemetry where live data is needed or where the booking does not have enough detail.| Context | Source priority |
|---|---|
| Airline folder | Callsign ICAO prefix if it differs from SimBrief airline, then SimBrief general.icao_airline, then booking schedule airline_icao, then a three-letter tail-number prefix, then Default. |
| Operation type | VIP booking = VIP; booking schedule airline type = cargo means Cargo; booking schedule airline type = pax/cargo is treated as ambiguous and defaults to PAX until the user picks a passenger or cargo pack; all other scheduled flights use PAX. |
| Aircraft type | Booking selected/effective aircraft type, then telemetry ATC TYPE, model, or aircraft title parsing. |
| Origin/destination | SimBrief route airport when available, then booking schedule origin/destination. |
| Time of day | Simulator local time when available, then announcement context local time, then the system clock. |
| Cruise altitude | SimBrief general.initial_altitude, then SimBrief navlog cruise altitude. |
| Flight number variant seed | Callsign, flight seed, or booking ID. This makes numbered variants deterministic per flight instead of random every tick. |
UAE) where the airline record is pax/cargo, FlyHub does not guess cargo from the airline alone. Auto mode starts from the passenger operation, shows both passenger and cargo pack choices when available, and applies cargo operation rules if you select an airline-cargo or Cargo pack. This avoids making every Emirates passenger flight sound like SkyCargo while still letting an Emirates cargo booking use UAE_Cargo or Cargo.
File Naming Rules
Every file must start with a known FlyHub announcement name. Optional tags go in square brackets after the name. Files with unknown base names are ignored. Basic files:BoardingWelcome.ogg.mp3.
FlyHub accepts .ogg, .wav, and .mp3, but .ogg is recommended for pack portability.
Adapting Fenix-Style Packs
Fenix-style packs are a useful starting point because they already organize audio by anAnnouncements folder and event names. FlyHub can use that general shape, but there are differences:
| Topic | FlyHub behavior |
|---|---|
| Folder selection | Select the folder FlyHub should scan. For Fenix-style packs, this is usually Announcements. |
| Airline matching | Use airline folders such as AAL, DAL, or UAE. |
| Operation matching | FlyHub also understands PAX, Cargo, VIP, and airline-operation folders such as UAE_Cargo. |
| Audio formats | FlyHub supports .ogg, .wav, and .mp3. |
| Required files | You can provide only the announcement files you want. Missing files are skipped or resolved through fallback packs. |
| Triggers | FlyHub uses its own active-flight state, SimConnect or X-Plane plugin telemetry, GSX state, and sidebar settings. |
Announcement Files
Use these exact base names.| File base name | Trigger or use |
|---|---|
BoardingWelcome | First cabin welcome when boarding starts manually or through GSX. |
BoardingWelcomePilot | Pilot welcome after boarding has started. |
BoardingMusic | Boarding music loop while boarding is in progress. |
DepartureDelayed | Delay announcement when boarding exceeds the configured delay threshold. |
BoardingComplete | Boarding complete call. |
ArmDoors | Door arming call after boarding completes or before taxi. |
PreSafetyBriefing | Lead-in before the safety briefing. |
SafetyBriefing | Safety demonstration or safety briefing. |
CabinDimTakeoff | Cabin dimming or preparation call before takeoff. |
CrewSeatsTakeoff | Crew take seats for takeoff. |
CallCabinSecureTakeoff | Cabin secure confirmation around takeoff. |
AfterTakeoff | Post-takeoff announcement. |
TopOfClimbPilot | Pilot announcement near cruise. |
FastenSeatbelt | Seatbelt sign or turbulence-related announcement after takeoff. |
CruiseElapsed | Cruise progress announcement. Use percent suffixes for timing variants. |
TopOfDescentPilot | Pilot announcement at top of descent. |
DescentSeatbelts | Seatbelt or cabin preparation call during descent. |
CrewSeatsLanding | Crew take seats for landing. |
CallCabinSecureLanding | Cabin secure confirmation for landing. |
AfterLanding | Arrival announcement after landing. |
AfterLandingMusic | Arrival or taxi-in music loop. |
DisarmDoors | Door disarming call after arrival. |
DisembarkStarted | Disembark or farewell announcement. |
Operation Defaults
FlyHub uses the same event logic for passenger, cargo, and VIP flights, but bundled operation packs can mute events that do not fit the operation.| Operation | Bundled default behavior |
|---|---|
PAX | Full passenger cabin flow, including boarding music, safety, climb/cruise/descent, landing, arrival, and disembark calls. |
Cargo | Cargo-safe subset. Passenger cabin music and most passenger cabin calls are muted. TopOfClimbPilot and TopOfDescentPilot do not trigger for cargo operations. |
VIP | VIP-safe subset. Pilot climb/descent calls can trigger if enabled, but music and many passenger cabin crew calls are muted. |
TopOfClimbPilot and TopOfDescentPilot are disabled by default. They can be enabled for passenger and VIP flights, but cargo flights always skip them.
Tags
Tags let one folder contain multiple versions of the same announcement.Aircraft Tags
Use an aircraft family or aircraft ICAO tag:A35K flight can match [A35K] and [350]; a B738 flight can match [B738] and [737].
Time Tags
Use time-of-day variants:| Tag | Time window |
|---|---|
[Morning] | 06:00 to 11:59 |
[Afternoon] | 12:00 to 17:59 |
[Evening] | 18:00 to 23:59 |
[Night] | 00:00 to 05:59 |
Airport Tags
Use an airport ICAO code when a file is specific to an origin or destination:[DEP] or [ARR] when you want to force the tag to mean departure or arrival. Wildcards are supported with * or #, for example KJ*.
Variant Tags
Use numeric tags for multiple versions:Mute Tags
Use[mute] when a pack should intentionally silence an event:
How Tagged Files Are Picked
FlyHub first chooses the best folder using the pack priority rules, then chooses the best file inside that folder. All non-numeric tags on a file must match the current flight. Unknown tags make the file ineligible.[mute], [arr], [dep], and numeric tags are special control tags.
When multiple files are eligible in the same folder, FlyHub scores them in this order:
| Match | Score priority |
|---|---|
[Refueling] while GSX refueling is active | Highest |
| Numeric tag matching the flight number | Very high |
Exact aircraft tag, such as [A320] or [B738] | High |
Aircraft family tag, such as [320] or [737] | Medium-high |
Airport tag, such as [KJFK] or [EGLL] | Medium |
Time tag, such as [Evening] | Lower |
| Any numeric variant | Tie-breaker |
| Non-muted file | Tie-breaker |
Flight State Transition Table
This table describes the automatic state machine used by FlyHub. Manual overlay/sidebar triggers can still play an enabled file directly, but automatic flow follows these gates.| File to play | Things FlyHub checks | Timing logic |
|---|---|---|
BoardingWelcome | MSFS with GSX enabled: on ground, beacon off, GSX boarding state 5. Otherwise manual boarding start. | Plays once when GSX boarding starts or is already active. Can repeat every configured boarding repeat interval until BoardingComplete. |
BoardingWelcomePilot | Enabled, BoardingWelcome completed, still boarding before BoardingComplete. | Plays once 20 seconds after the first BoardingWelcome. |
BoardingMusic | BoardingWelcome completed, optional pilot welcome is complete or disabled, BoardingComplete not played. | Loops until BoardingComplete or another PA announcement interrupts it. |
DepartureDelayed | Scheduled pushback/departure time exists, boarding has started, BoardingComplete not played, threshold exceeded. | Plays once per boarding session. It can interrupt boarding music; music resumes if resume is enabled. |
BoardingComplete | On ground and beacon on, or GSX boarding complete. BoardingWelcome must be complete and no non-loop PA may be playing. | Plays once when the gate condition is met. |
ArmDoors | On ground and engines running or ground speed above 1 kt, or Auto ArmDoors tweak enabled after BoardingComplete. | Auto ArmDoors tweak waits 30 seconds after BoardingComplete. |
PreSafetyBriefing | ArmDoors completed and engines running. | Plays after ArmDoors. |
SafetyBriefing | PreSafetyBriefing completed. | Plays after PreSafetyBriefing. |
CabinDimTakeoff | Enabled, playable file exists, SafetyBriefing completed, simulator time is dark. | Waits 10 seconds after SafetyBriefing. Daylight checks are cached for 60 seconds and stop after the takeoff window passes. |
CrewSeatsTakeoff | On ground, engines running, takeoff light is on. | Uses landing lights by default, or strobe lights if configured. |
CallCabinSecureTakeoff | CrewSeatsTakeoff completed and still on ground. | Waits 5 seconds after CrewSeatsTakeoff. |
AfterTakeoff | Aircraft is airborne and above configured takeoff AGL threshold. | Waits 2 minutes after takeoff is detected. Default threshold is 3,000 ft AGL. |
TopOfClimbPilot | Enabled, playable, not cargo, AfterTakeoff already played, near cruise. | With cruise altitude: altitude at least cruise altitude minus 1,500 ft and vertical speed within +/-1,500 fpm. Without cruise altitude: at least 18,000 ft AGL and vertical speed within +/-700 fpm. |
FastenSeatbelt | AfterTakeoff played, seatbelt sign transitions off to on. | Repeatable with a 2-minute cooldown. Manual playback is allowed in any phase and does not reseed the state machine. |
CruiseElapsed | Cruise entered, matching CruiseElapsedXXPercent file exists, not on ground or landing/postflight. | Checks at most every 30 seconds, plays each percent file once, then stops polling when no elapsed files remain. |
TopOfDescentPilot | Enabled, not cargo, cruise entered for more than 2 minutes, more than 50 percent progress, descending below cruise. | Requires altitude below cruise altitude minus 500 ft and vertical speed at or below -500 fpm. |
DescentSeatbelts | Landing lights just turned on, or below configured descent AGL while descending. | Sustained descent check waits 10 seconds; cooldown is 5 minutes. |
CrewSeatsLanding | AGL below configured crew landing threshold, vertical speed below -300 fpm, landing lights on. | Default threshold is 3,000 ft AGL. |
CallCabinSecureLanding | CrewSeatsLanding completed and AGL below crew threshold plus 2,000 ft. | Waits 10 seconds after CrewSeatsLanding. |
AfterLanding | On ground, aircraft was airborne, landing sequence reached, ground speed below 15 kt. | Optional after-landing delay tweak applies before playback. |
AfterLandingMusic | AfterLanding completed and DisembarkStarted not yet played. | Loops after arrival. Missing optional music is marked complete once and does not block postflight flow. |
DisarmDoors | Engines off, parking brake set, AfterLanding completed. | Can interrupt/resume arrival music. |
DisembarkStarted | DisarmDoors completed and beacon off or current GSX deboarding state is 4 or 5. | Plays once. GSX deboarding complete state 6 resets the session for the next flight. |
Manual Phase Options
Manual phase selection marks earlier announcements complete so the next automatic trigger starts from a useful point.| Manual phase | Announcements marked as played | Next automatic gate |
|---|---|---|
Preflight | None | BoardingWelcome |
Taxi | BoardingWelcome, BoardingMusic, BoardingComplete | ArmDoors |
Takeoff | Boarding through CabinDimTakeoff | CrewSeatsTakeoff |
Climb | Boarding through CallCabinSecureTakeoff | AfterTakeoff |
Cruise | Boarding through AfterTakeoff | FastenSeatbelt, cruise/descent gates |
Descent | Boarding through AfterTakeoff | DescentSeatbelts |
Approach | Boarding through DescentSeatbelts | CrewSeatsLanding |
Landing | Boarding through CallCabinSecureLanding | AfterLanding |
Postflight | Boarding through AfterLanding | DisarmDoors |
Done | All announcements | No further announcements |
Creating a Pack
- Create or choose a root folder.
Announcementsis common, but the folder can have any name. - Inside it, create a folder for your pack, such as
PAX,Cargo,VIP,AAL,UAE_PAX, orUAE_Cargo. - Add files using the exact announcement names from the table above.
- Use
.ogg,.wav, or.mp3. - Keep each file below 50 MB.
- Open Active Flight > Cabin Announcements > Files.
- Select the root folder that contains your pack folders.
- Click Rescan.
- Use Preview to test files.
- Choose the pack in the Announcements tab or leave automatic selection enabled.
Troubleshooting
| Problem | What to check |
|---|---|
| No audio devices appear | Click Refresh. If the device still does not appear, click Add Device, select it from the OS picker, then choose it in FlyHub. |
| Audio plays from the wrong device | Select the device in the Audio tab. Use System default if Windows should route it. |
| Rescan finds no files | Make sure the selected folder contains pack folders or announcement audio files. For Fenix-style downloads, this is often the Announcements folder inside the downloaded package. |
| File appears to be ignored | Check the file extension, size, and base name. The file must start with a known announcement name. |
MEDIA_ELEMENT_ERROR: Format error | The browser audio engine could not decode the file. Confirm it is a real .ogg, .wav, or .mp3, not a renamed file or unsupported codec. |
| Boarding does not auto-start | Use manual Boarding phase or Play Next. For MSFS, enable GSX integration if you rely on GSX boarding. For X-Plane, your aircraft may not expose a reliable boarding signal. |
| Wrong airline pack plays | Check the SimBrief airline code and the pack selection priority. Use a manual sound pack override if needed. |
| Operation default file plays instead of airline file | Add the missing file to the airline pack or disable operation fallback. |
| Music does not resume | Enable Resume Music in the Audio tab. |
| External view is silent | Check Camera Volume and External View Volume. |
Best Practices
- Keep
PAX,Cargo, andVIPfolders for operation-level fallbacks. - Use
Defaultonly when you want a manually selectable generic pack or a direct selected-root pack. - Use generic airline folders for passenger cabin identity. Use airline-operation folders such as
DAL_CargoorDAL_VIPwhen cargo or VIP flights need their own wording. - Put aircraft-specific safety briefings in tagged files, not separate folders.
- Use airport tags only for announcements that truly mention the airport.
- Preview every file after rescanning.
- Keep file names simple and exact.
- Prefer
.oggfiles encoded as real Ogg/Vorbis audio. - Use
[mute]intentionally when a cargo or VIP pack should suppress an event that would sound unrealistic in that operation.