Built a Mac player for my SDS100 recordings

Trilliumaire

Member
Premium Subscriber
Joined
Aug 14, 2025
Messages
56
Reaction score
25
Location
Evergreen, CO
Hello, it's been a while since I've posted but I thought I'd share my experience creating a player for the WAV recordings from my SDS100. (Screenshot attached so you can see the layout.)

I'm on a Mac, so my routine is to run Sentinel in a Windows VM, pull the recordings off the scanner, and drag that folder over to the Mac side. I wanted a clean, native way to browse and play those clips without jumping back into Windows, so I built a little app I'm calling UnidenPlayer.

It turns out the SDS100 tucks a lot of useful info into each recording, so instead of a wall of timestamped files, the app shows everything in a tidy list with the date and time, system, department, channel/talkgroup, and site. Click a recording and you get the full details plus playback, and there's even a little map that pins where the site is. Everything gets saved up to the cloud as I import it, and the whole library is filterable by date, agency, or favorites list, so it's easy to pull up everything from one department on a given day without worrying about losing anything to a bad SD card.

Where I'd like to take it next is AI voice transcription, so the recordings become searchable by what was actually said. I'm also planning to index both the audio and the transcripts so I can find similar calls by meaning, not just by keyword.

Since the SDS150 and SDS200 record the same way through Sentinel, this approach should work just as well for those files. It's a personal project and still a little rough, but it's been a fun way to get more out of my recordings. Happy to answer questions if anyone's curious.
 

Attachments

  • Screenshot 2026-06-16 at 11.13.42 AM.png
    Screenshot 2026-06-16 at 11.13.42 AM.png
    795.8 KB · Views: 37

J-Wrock

Member
Premium Subscriber
Joined
Aug 18, 2017
Messages
495
Reaction score
508
Location
Kansas City Area
Hello, it's been a while since I've posted but I thought I'd share my experience creating a player for the WAV recordings from my SDS100. (Screenshot attached so you can see the layout.)

I'm on a Mac, so my routine is to run Sentinel in a Windows VM, pull the recordings off the scanner, and drag that folder over to the Mac side. I wanted a clean, native way to browse and play those clips without jumping back into Windows, so I built a little app I'm calling UnidenPlayer.

It turns out the SDS100 tucks a lot of useful info into each recording, so instead of a wall of timestamped files, the app shows everything in a tidy list with the date and time, system, department, channel/talkgroup, and site. Click a recording and you get the full details plus playback, and there's even a little map that pins where the site is. Everything gets saved up to the cloud as I import it, and the whole library is filterable by date, agency, or favorites list, so it's easy to pull up everything from one department on a given day without worrying about losing anything to a bad SD card.

Where I'd like to take it next is AI voice transcription, so the recordings become searchable by what was actually said. I'm also planning to index both the audio and the transcripts so I can find similar calls by meaning, not just by keyword.

Since the SDS150 and SDS200 record the same way through Sentinel, this approach should work just as well for those files. It's a personal project and still a little rough, but it's been a fun way to get more out of my recordings. Happy to answer questions if anyone's curious.
As a fellow Mac user, I am very intrigued by this!
 

Trilliumaire

Member
Premium Subscriber
Joined
Aug 14, 2025
Messages
56
Reaction score
25
Location
Evergreen, CO
One thing that I think is cool is the whole thing can be restored from the cloud. So upload once, but use on many machines. It's all built in Mac native SwiftUI code, and backend is AWS.
 

Attachments

  • Screenshot 2026-06-16 at 11.59.19 AM.png
    Screenshot 2026-06-16 at 11.59.19 AM.png
    143.9 KB · Views: 11

Trilliumaire

Member
Premium Subscriber
Joined
Aug 14, 2025
Messages
56
Reaction score
25
Location
Evergreen, CO
OK I added the ability to auto play the files back to back. Filter on any of the metadata, including department, site, channel/TG, and of course, date range.

I have never used another scanner playback app, so not sure what features I am missing, but let me know.


Here is my current database schema and metadata from the SDS100.

{
"RecordingId": "f926be84527d2243582d385d049c14fa9a8e9eeabf407a100bf522080631d5b2",
"Channel": "Law Enforcement 1",
"Department": "Boulder County",
"DurationSeconds": 2.54,
"FavoritesList": "(4) CO P25 Mesta",
"FileName": "2026-06-16_12-16-34.wav",
"FileSize": 43320,
"GSIPartition": "REC",
"IngestedAtEpoch": 1781636942,
"Latitude": 39.68111,
"Longitude": -105.49611,
"Model": "BCDx36HP",
"Protocol": "NAC:D16h D16h",
"RecordedAtEpoch": 1781633796,
"RecordedAtISO": "2026-06-16T18:16:36Z",
"RelativePath": "user_rec/5CD0620E/2026-06-16_12-16-34.wav",
"S3Bucket": "uniden-sds100-recordings",
"S3Key": "recordings/user_rec/5CD0620E/2026-06-16_12-16-34.wav",
"SiteName": "Mestaa*ehehe",
"System": "State of Colorado DTRS",
"SystemType": "P25Standard",
"TGID": "9100",
"UnitID": "UID:399763"
}
 

Attachments

  • Screenshot 2026-06-16 at 4.43.46 PM.png
    Screenshot 2026-06-16 at 4.43.46 PM.png
    576.7 KB · Views: 6
Last edited:

snakes

Newbie
Premium Subscriber
Joined
Sep 16, 2021
Messages
1
Reaction score
0
This is super cool! Any chance of sharing the code? Would love to use this myself.
 

Trilliumaire

Member
Premium Subscriber
Joined
Aug 14, 2025
Messages
56
Reaction score
25
Location
Evergreen, CO
OK, I will add that for DMR calls to get the right time slot, and add CTCSS and DCS support. I am mostly scanning P25 now, but need to see what the WAV files from the SDS100 provide. If they are embedded in the headers, I'll try pulling them out.
 

belladog9651

Member
Joined
Feb 16, 2022
Messages
64
Reaction score
58
Location
IL
I think you're also missing 'UID name' and 'TGID name'. And possibly SiteID, as a number?
 

Trilliumaire

Member
Premium Subscriber
Joined
Aug 14, 2025
Messages
56
Reaction score
25
Location
Evergreen, CO
This is super cool! Any chance of sharing the code? Would love to use this myself.
I can't make any promises, but yes, that's the idea ... but right now I can't figure out how to generalize it. Everything is tied to AWS as the cloud provider. This is very custom software that I just created today in a few hours. And I don't have a ton of time to devote to generalizing it.
 
Top