PifPaf.fun
Rozwiązania · ShotHUD

Czasy strzałów i splity
na Twoim filmie.

ShotHUD bierze nagranie ze strzelnicy i oś czasu z timera, po czym wypala na filmie to, co dotąd widziałeś tylko na wyświetlaczu: numer strzału, czas od sygnału startu, split i na końcu podsumowanie z hit factorem. Sam znajduje bzyczek timera w ścieżce dźwięku, sam przycina nagranie do przebiegu. Ty tylko wskazujesz plik.

Darmowy · open source (GPL v3) Windows · jeden plik .exe, bez instalacji Web · shothud.com – wkrótce
Kadr z filmu ze strzelania z nakładką ShotHUD: nazwa toru i zawodnik w rogu, zegar T+20.3 s, lista strzałów z czasami i splitami, aktywny wiersz 7/10 – 20.23 s, +3.66 s

Nakładka „lista strzałów” + zegar · kadr z wyrenderowanego filmu (DJI Osmo, 4K)

// 01  Co to jest

Wyświetlacz timera wklejony w film

Każdy, kto nagrywa swoje przebiegi, zna ten problem: na wideo widać strzelca, słychać strzały, ale czasów nie widać. Trzeba pauzować, liczyć, zaglądać do timera. ShotHUD kończy z tym raz na zawsze.

▶ HUD Heads-up display · to, co widz zobaczy na filmie
12.74
25.47+2.73
37.91+2.44
410.23+2.32
5/1012.82+2.59

ShotHUD

nakładka informacyjna na wideo ze strzelania

Program czyta oś czasu strzałów – tekst z timera albo wynik zapisany w kalkulatorze Piro – i w momencie każdego strzału pokazuje na filmie panel z jego numerem, czasem od startu i splitem. Po ostatnim strzale wjeżdża plansza podsumowania: czas bazowy, suma kar, czas końcowy i hit factor.

  • Dwa style panelu: klasyczny „Strzał 5 z 10” albo lista ostatnich strzałów, w której nowy wiersz pojawia się na dole, starsze gasną, a pierwszy strzał zostaje przypięty na górze.
  • Płynący zegar „T+x.x s”: tyka od sygnału startu z dokładnością do dziesiątych sekundy i zamarza na ostatnim strzale.
  • Nazwa toru i zawodnik: osobna nakładka, widoczna od startu do końca filmu.
  • Plansza START: wyraźny znak, kiedy padł bzyczek – widz wie, od czego liczy się czas.
// 02  Jak działa

Wskaż plik. Resztę słyszy program.

Największą robotę odwala analiza dźwięku: ShotHUD sam znajduje sygnał startu w nagraniu, więc czasy z timera trafiają na film dokładnie tam, gdzie padły strzały.

SYNCHRONIZACJA

Słyszy bzyczek timera i ustawia zero

Sygnał startu shot-timera to krótki, czysty ton. Program szuka go w ścieżce audio – rozpoznaje po tonalności i ciągłości, więc nie myli go ze strzałem ani z hałasem strzelnicy. Znaleziony bzyczek staje się punktem zero, a każdy strzał ląduje na filmie w chwili T0 + czas z timera. Gdyby automat się pomylił, klikasz na fali dźwięku i ustawiasz punkt ręcznie.

Przy okazji program przycina nagranie: kilka sekund przed startem, kilka po ostatnim strzale. Z pięciominutowego pliku z kamery zostaje sam przebieg. Wynik oglądasz od razu w podglądzie w ruchu: film odtwarza się z nakładką na żywo, a oś czasu pokazuje falę dźwięku, wykryte impulsy, punkt startu i zakres przycięcia.

Okno programu ShotHUD na Windows: po lewej panel wejścia z ID 326 i synchronizacji, po prawej podgląd nagrania ze strzelnicy z nakładką listy strzałów oraz oś czasu z falą audio, wykrytym T0 i zakresem przycięcia

Aplikacja na Windows · podgląd w ruchu, wykryty sygnał startu i oś strzałów

EKOSYSTEM PIFPAF

Timer → kalkulator → film. Bez przepisywania

Oś czasu możesz wkleić ręcznie, ale nie musisz. Jeśli przebieg zapisałeś w kalkulatorze Piro (piro-kalkulator.pifpaf.fun), wpisujesz tylko numer ID wyniku, a program pobiera czasy, nazwę toru, zawodnika, kary i hit factor.

Jeszcze wygodniej z naszym timerem (timer.pifpaf.fun): po zapisaniu sesji odtwarza on krótki sygnał tonowy z numerem ID, który nagrywa mikrofon kamery. ShotHUD odczytuje ten sygnał prosto z filmu, pobiera dane i przycina nagranie jednym kliknięciem.

Wersja webowa ShotHUD: krok 03 wykrył sygnał startu T0 = 2,10 s, krok 04 pokazuje podgląd klatki z planszą START i suwak czasu

Wersja webowa · wykrywanie startu i podgląd klatki

HURTEM

Zawody? Cała klasa jednym rzutem

Po zawodach masz na karcie kilkadziesiąt plików i tyle samo wyników w kalkulatorze. Okno „Wsadowo” przyjmuje wiele filmów naraz: każdemu przypisujesz ID, program w tle pobiera dane, znajduje bzyczek i wylicza przycięcie, a gotowe zadania trafiają do kolejki renderów, która na karcie NVIDIA renderuje kilka plików równolegle. Nazwy plików wyjściowych mogą zawierać ID sesji i nazwisko zawodnika, więc rozsyłanie klipów to formalność.

Kolejka zapisuje się na dysku. Gdy coś przerwie pracę, wznawiasz od miejsca, w którym stanęła.

Okno przetwarzania wsadowego ShotHUD: lista plików wideo z przypisanymi ID, wspólne ustawienia katalogu, sufiksu i formatu

Przetwarzanie wsadowe · wiele filmów, wspólne ustawienia

// 03  Dlaczego ShotHUD

Zrobione na strzelnicy, dla strzelnicy

Nie jest to ogólny edytor wideo z wtyczką. To narzędzie, które powstało, bo sami nagrywamy przebiegi i chcieliśmy widzieć na nich czasy.

Zero klatek ręcznie

Automatyczna synchronizacja

Żadnego przesuwania napisów klatka po klatce. Sygnał startu znajduje program, a pozycja każdego panelu wynika wprost z czasów timera.

Trening

Widzisz, gdzie tracisz czas

Split przy każdym strzale, obok obraz Twoich rąk i celu. Dobitka po przeładowaniu za wolna? Zmiana celu za długa? Na filmie z czasami widać to od razu.

Zawody i klub

Klipy dla każdego zawodnika

Tryb wsadowy i kolejka renderów pozwalają po jednych zawodach rozesłać każdemu jego przebieg z wynikiem. Dobra pamiątka i dobra reklama klubu.

Do publikacji

MP4, WebM albo GIF

Wynik od razu nadaje się na YouTube, Instagram czy do grupy klubowej. GIF bez dźwięku, gdy potrzebujesz krótkiej pętli do stories.

Twój wygląd

Kolory, pozycja, język

Skala, róg ekranu, tło, obramowanie, kolor akcentu, napisy po polsku lub angielsku. Panele przeciągasz myszą w podglądzie, a ustawienia zapisujesz jako presety.

Szybko

Jeden przebieg, GPU w cenie

Render to pojedyncze przejście FFmpeg z zachowanym dźwiękiem. Na karcie NVIDIA program używa enkodera NVENC, a do podglądu nagrań 4K sam buduje lekkie proxy 540p, więc przewijanie nie zacina się nawet na HEVC.

// 04  Przebieg

Trzy kroki do gotowego filmu

Wskaż nagranie

Otwórz plik z kamery lub telefonu. Program od razu szuka bzyczka startu i proponuje przycięcie do przebiegu.

Podaj czasy

Wklej oś czasu z timera albo wpisz ID wyniku z kalkulatora Piro. Jeśli timer nagrał sygnał ID, program odczyta go sam.

Renderuj

Sprawdź podgląd, dopasuj wygląd i kliknij „Renderuj”. Gotowy MP4 zapisuje się obok źródła, z dźwiękiem i nakładką.

// 05  Pobieranie

Skąd wziąć ShotHUD

Program jest darmowy i otwarty. Publikujemy go w oficjalnym repozytorium na GitHubie, a każda wersja ma gotowy plik dla Windows.

WINDOWS · .EXE

Najnowsze wydanie

Jeden plik wykonywalny, bez instalacji i bez dodatkowych programów. FFmpeg jest w środku. Pobierasz, uruchamiasz, wskazujesz film.

  • Plik: PiroOverlay-v0.52.1.exe – nazwa pliku nosi jeszcze roboczą nazwę projektu „Piro Overlay”; to ten sam program.
  • Wymagania: Windows 10/11 (64-bit). Karta NVIDIA przyspiesza render, ale nie jest wymagana.
  • Ten sam plik działa też z wiersza poleceń – do skryptów i automatyzacji.
KOD ŹRÓDŁOWY · GPL V3

Repozytorium

Pełny kod w Pythonie, dokumentacja, testy i skrypty budowania. Możesz uruchomić program ze źródeł na Linuksie lub macOS, zgłosić błąd albo zaproponować funkcję.

  • Repo: github.com/enclude/congenial-octo-memory
  • Licencja: GNU GPL v3 – używaj, zmieniaj, udostępniaj z zachowaniem autora i kodu.

Pracujemy nad wersją webową pod adresem shothud.com: wgrywasz film w przeglądarce, podajesz ID i pobierasz gotowy klip, bez instalowania czegokolwiek. Start wkrótce.

// 06  Konkrety

Dane techniczne

WejścieMP4, MOV, MKV, AVI – nagrania z kamer, telefonów i kamer sportowychkamery DJI: automatyczne użycie pliku proxy .LRF do analizy dźwięku
Oś czasutekst z timera w formacie 1: 2.81s | 2: 4.63s (+1.82s) | … albo ID wyniku z kalkulatora Piroodczyt ID z sygnału tonowego nagranego przez kamerę (timer.pifpaf.fun)
Synchronizacjaautomatyczne wykrywanie bzyczka timera (2000–4500 Hz) lub pierwszego strzału · korekta ręczna na fali dźwięku
Nakładkapanel strzału (klasyczny / lista) · zegar T+ · nazwa toru i zawodnik · plansza START · podsumowanie z hit factorem · PL/EN
WyjścieMP4 (H.264) · WebM (VP9) · GIF · dźwięk zachowany · tryb „bez nakładki” (samo przycięcie)
Wydajnośćrender w jednym przebiegu FFmpeg · enkoder GPU NVENC (NVIDIA) z automatycznym powrotem na CPU · kolejka (rendery równoległe na GPU) i tryb wsadowypodgląd w ruchu z nakładką na żywo; automatyczne proxy 540p dla nagrań 4K/HEVC
PlatformyWindows – gotowy .exe · Linux/macOS – ze źródeł (Python 3.10+) · wersja webowa w przygotowaniu

Aktualna wersja: 0.52.1 · autor: Jarosław Zjawiński (Zjawa.it / PifPaf.fun) · licencja GNU GPL v3.

// 07  Galeria

Nakładka w akcji

Wszystkie kadry pochodzą z jednego prawdziwego przebiegu: 10 strzałów, kamera DJI Osmo, ID pobrane z kalkulatora po odczytaniu sygnału tonowego z nagrania.

Plansza START na środku kadru w momencie sygnału timera, w rogu zegar T+0.4 s
Plansza START · moment sygnału timera
Klasyczny panel strzału: tor, zawodnik, Strzał 5 z 10, 12.82 s, split +2.59 s oraz zegar T+13.0 s
Panel klasyczny · „Strzał 5 z 10” ze splitem
Panel podsumowania po ostatnim strzale: pierwszy strzał 2.74 s, czas bazowy 30.52 s, suma kar 0.00 s, czas końcowy 30.52 s
Podsumowanie · po ostatnim strzale
Tryb edycji pozycji w aplikacji: ramki nakładek metadanych i panelu strzału do przeciągania myszą w podglądzie
Edycja pozycji · przeciągasz panele w podglądzie
Okno kolejki renderów z listą zadań i postępem
Kolejka renderów · kilka zadań równolegle
Wersja webowa ShotHUD: wykryty sygnał startu i podgląd klatki z planszą START
Wersja webowa · w przygotowaniu na shothud.com
// 08  Pytania

Najczęstsze pytania o ShotHUD

Czy ShotHUD jest darmowy?

Tak. ShotHUD jest bezpłatny i otwarty na licencji GNU GPL v3. Plik .exe dla Windows pobierasz z GitHub Releases, kod źródłowy jest publiczny.

Z jakimi timerami działa ShotHUD?

Z każdym shot-timerem, który wydaje sygnał startu słyszalny na nagraniu. Czasy strzałów wklejasz jako tekst albo pobierasz po ID z kalkulatora Piro. Z timerem timer.pifpaf.fun program odczytuje ID sesji prosto z filmu.

Jak program wie, w którym momencie filmu padł strzał?

Analizuje ścieżkę dźwięku i znajduje sygnał startu timera, czyli krótki czysty ton w paśmie 2000–4500 Hz. To punkt zero. Każdy strzał pojawia się na filmie w chwili T0 plus czas z timera. Punkt zero można też ustawić ręcznie na fali dźwięku.

Jakie formaty wideo obsługuje?

Wejście: MP4, MOV, MKV, AVI z kamer, telefonów i kamer sportowych. Wyjście: MP4 (H.264) z dźwiękiem, WebM (VP9) albo GIF bez dźwięku.

Czy trzeba instalować FFmpeg albo Pythona?

Nie. Wersja dla Windows to jeden plik .exe z wbudowanym FFmpeg. Pełny FFmpeg z systemu przydaje się tylko wtedy, gdy chcesz renderować na karcie NVIDIA (NVENC).

Czy działa na Linuksie lub macOS?

Tak, ze źródeł: potrzebny jest Python 3.10 lub nowszy. Instrukcja jest w README repozytorium na GitHubie. Gotowy plik wykonywalny publikujemy dla Windows.

Pokaż swoje splity światu

Pobierz ShotHUD i nałóż czasy na swój ostatni przebieg. A jeśli prowadzisz klub lub zawody i chcesz, żebyśmy pomogli wdrożyć timer, kalkulator i nakładkę u Ciebie, napisz do nas.

✉️ szkolenia@pifpaf.fun