Licences and attribution

What this page is

ShotDetect is built out of other people's work: open-source software, a map maintained by volunteers, and thousands of sound recordings that people published for anyone to use. Their licences ask to be credited, and some of them ask that the licence text travel with the software. This page is that credit.

The same page exists inside the app, under Settings → Licences and attribution, so it can be read on a phone with no connection.

It is complete rather than representative. Where a list was too long to print — the individual Freesound uploads behind the detector's everyday-sound examples — it is published in full at a link rather than summarised away. See section 04.

The maps

Map data © OpenStreetMap contributors, available under the Open Database License (ODbL) 1.0. Every street, building and place name on every map in the app comes from OpenStreetMap. The credit is drawn on the map itself, which is what the licence asks for; it is not only here.

Map images are rendered tiles served by the OpenStreetMap Foundation, under their Tile Usage Policy. These are a service the Foundation donates, not one anybody buys. The app fetches only the tiles you are looking at and never downloads areas in advance, which is what that policy permits.

Worth saying plainly, because it is a limit rather than a feature: donated tiles are appropriate for a prototype at this scale and are not appropriate for a widely installed app. Before ShotDetect reaches a meaningful number of phones the tiles have to come from somewhere licensed for that volume. The map data underneath stays OpenStreetMap's either way, and so does the credit.

Searching for a school uses Nominatim, also operated by the OpenStreetMap Foundation. It receives the name you type and your phone's IP address. It receives no sound and no detection. See the Privacy Policy for what leaves the phone and what does not.

The recordings the detector learned from

The part of ShotDetect that decides whether a sound was gunfire is a model that was fitted to recordings. It does not contain those recordings and it cannot reproduce them, but it is derived from them — so the people who published them are credited here, which is what their licences ask.

C3GD — Contactless Concealed Carry Gunshot Dataset. CC BY 4.0. Zenodo record 20274400, zenodo.org/records/20274400. 28 firearms and 16 calibres recorded on eight microphones at documented distances, three of them phones including a Pixel 7. About 4,900 usable clips from 700 shots — the largest single source of gunfire the detector has heard, and the only one where the same shot exists through both a studio microphone and a phone.

Edge-collected gunshot audio. CC BY 4.0. Zenodo record 7004819, zenodo.org/records/7004819. The first gunshot corpus this project used, and for a long time the only one: everything the detector knew about gunfire came from this single recording rig.

Gunshot recordings from Limpopo. CC BY 4.0. Zenodo record 14824927, zenodo.org/records/14824927. 331 gunshots, three weapons, recorded at 10, 50, 150 and 350 metres — the corpus that taught the detector what distance does to a gunshot.

Passive acoustic monitoring, Vietnam and Belize. CC BY 4.0. Zenodo record 13893977, zenodo.org/records/13893977. 597 gunshots captured by forest monitoring units: two further recording chains, and gunfire in the open air rather than on a range.

Gunshot recordings on iPod Touch devices. CC0 1.0 — a public domain dedication, which asks for no attribution; credited anyway. Zenodo record 3997406, zenodo.org/records/3997406. Seven firearms at 45 metres on four iPod Touch devices, 102 shots. Small, and the most deployment-like audio the project has: consumer mobile microphones at a plausible school distance.

FSD50K. Dataset and annotations CC BY 4.0; the audio is licensed clip by clip. Zenodo record 4060432, zenodo.org/records/4060432. This is where the detector's everyday sounds come from — doors, tools, traffic, applause, dropped objects — the things it is taught not to alert on. Only the CC0 and CC BY clips are used: the non-commercial and Sampling+ clips are filtered out before training, so that no non-commercial condition can attach to the model. Section 04 credits the clips individually.

ESC-50. CC BY-NC. github.com/karolpiczak/ESC-50. Never trained on. It is used only to check the false-alarm rate against audio the detector was never fitted to, and it is not redistributed. The reason it is held out is its licence: training on a non-commercial dataset could attach that condition to the model. It is named here rather than omitted because a reader is entitled to know it was used to measure the detector, and because “we did not train on this” is a claim worth being able to check.

The Freesound uploaders

The everyday sounds above are not one recording session. Each clip is an individual upload to Freesound by an individual person, licensed by that person. Of the clips ShotDetect uses, 3,418 are CC BY — which means each of their 706 uploaders is owed a credit by name — and a further 4,831 are CC0, which ask for nothing. Every one of the 3,418 is CC BY 3.0 rather than 4.0, and the list records the exact licence URL for each.

All 3,418 are listed individually, by Freesound sound id, uploader and licence, with a link to each sound's page:

The full Freesound clip list →

Why a separate file rather than this page: 3,418 rows is a document, not a section, and Creative Commons attribution may be given “by hyperlink to a resource that includes the required information” (CC BY 4.0 §3(a)(2)). Nothing is credited only as a group, and nothing has been dropped for being inconvenient.

One deliberate imprecision, stated rather than hidden. That list is the whole licence-filtered set of clips, which is a superset of the clips that reached any single training run — a run can also drop a clip for a technical reason, such as it being too short for the analysis window. Crediting the superset over-credits slightly. That is the right way round: reconstructing the exact per-run subset would make the published list correct for one build and wrong for every other one.

Open-source software

The app ships 130 third-party modules — 102 libraries, once each library's per-platform builds are counted as one. Every one of them is under the Apache License, Version 2.0.

The remainder are the AndroidX and Compose libraries underneath those, under the same licence.

Section 4 of the Apache License asks that a copy of the licence accompany the software. A link would fail the moment a phone is offline, and the licence has no offline exception, so the full text is inside the APK and is printed on the in-app version of this page. It is also here: apache.org/licenses/LICENSE-2.0.

Corrections

If you believe something here is wrong, or that you are owed a credit this page does not give you, write to contact@shotdetect.com and say what is missing. An attribution page that is quietly out of date is worse than none, because it looks like diligence.