Pytanie:
Jakiego protokołu lub interfejsu API używa WebSDR do strumieniowego przesyłania dźwięku?
hotpaw2
2014-10-28 03:04:09 UTC
view on stackexchange narkive permalink

Jakiego udokumentowanego protokołu lub interfejsu API używa WebSDR do strumieniowego przesyłania dźwięku przez Internet?

Jestem zainteresowany przechwytywaniem strumienia audio WebSDR za pomocą małego urządzenia wbudowanego, które ma wiele możliwości audio DSP, dobry dostęp do Internetu (gniazda sieciowe TCP / UDP, surowy http itp.), ale nie ( HTML / JS) lub środowisko wykonawcze Java / JVM.

Dlaczego nie zapytać grzecznie autora? http://www.websdr.org/background.html
Gdzie to się kiedykolwiek skończyło? Zamierzałem osadzić klienta w WebSDR w mojej aplikacji RadioWorld na iPhone'a, ale otrzymałem również negatywną odpowiedź od autora oprogramowania. Jego wizja jest taka, że ​​wszyscy używają jego strasznego interfejsu użytkownika z nieznanego powodu. Celowe otwarcie serwera SDR za pośrednictwem oficjalnego interfejsu API naprawdę zrobiłoby cuda dla społeczności.
Zdecydowałem się na bardziej otwarte rozwiązanie, wykorzystując rtl_tcp do przesyłania strumieniowego danych IQ i demodulacji danych po stronie klienta (na urządzeniu z systemem iOS). Ten protokół wydaje się być popularny, dobrze udokumentowany i łatwy do wdrożenia (nawet w Swift 3).
Dwa odpowiedzi:
Kevin Reid AG6YO
2014-10-28 22:56:53 UTC
view on stackexchange narkive permalink

Interfejs audio kompatybilny z HTML5 (bez apletów Java) dla WebSDR wykorzystuje próbki audio przesyłane strumieniowo przez połączenie WebSocket - można to zobaczyć w pobieranych plikach klienta JS.

Jednak autor WebSDR zaznaczył, że nie życzy sobie używania oprogramowania w inny sposób niż za pośrednictwem dostarczonego klienta internetowego (w ich FAQ, a nawet w komentarzu w tym samym pliku JS, o którym mówię z!), więc radzę nie realizować tego projektu bez pytania autora, ponieważ może on uznać, że połączenie z alternatywnym klientem byłoby nadużyciem ich usług.

chcesz tylko zdalnego odbiornika radiowego, a nie specjalnie do korzystania ze sprzętu istniejących instalacji WebSDR, istnieje kilka możliwości open source. Jeśli jesteś zainteresowany tą opcją, proponuję zadać to jako osobne pytanie.

Część „Inżynieria wsteczna jest niedozwolona bez mojej wyraźnej uprzedniej zgody” nie podlega wykonaniu. W przeciwnym razie nie mielibyśmy [klonów komputerów PC z systemem BIOS zgodnym z IBM] (https://en.wikipedia.org/wiki/IBM_PC_compatible) przez ostatnie 34 lata ... Żadne interfejsy API nie podlegają prawom autorskim w Stanach Zjednoczonych, zgodnie z orzeczeniem w [niedawnym werdykcie jury Oracle kontra Google] (http://m.theregister.co.uk/2016/05/26/google_wins_latest_round_in_oracle_copyright_battle/).
@on4aa Oznacza to po prostu, że nie można za to zostać pozwanym. Jeśli to zrobisz, nadal mogą (próbować) uniemożliwić Ci korzystanie z usługi, powiedzieć innym, że jesteś niegrzeczny itp.
To absolutna prawda!
Tony Hoyle
2014-11-01 16:44:39 UTC
view on stackexchange narkive permalink

Często zadawane pytania nie wspominają o klientach innych firm, a plik JS zawiera jedynie standardowy schemat dotyczący możliwości rozpowszechniania tego pliku bez modyfikacji.

Istnieją już klienci dla innych platform (np. glsdr, isdr)

Mówię do OP, idź do dzieła .. Protokół jest bardzo prosty, kontrolowany z podstawowego HTTP GET polecenia. 5 minut na tcpdump powinno zapewnić Ci wszystko, czego potrzebujesz.

glSDR nie jest klientem WebSDR - jest to klient ghpsdr i protokoły są różne.


To pytanie i odpowiedź zostało automatycznie przetłumaczone z języka angielskiego.Oryginalna treść jest dostępna na stackexchange, za co dziękujemy za licencję cc by-sa 3.0, w ramach której jest rozpowszechniana.
Loading...