tbtorrent9
v0.11.0
Published
TB Torrent dla TizenBrew z ręcznym wyborem filmu, napisami ASS/SRT, AVPlay i czyszczeniem cache.
Downloads
321
Readme
TB Torrent for TizenBrew
Eksperymentalny odtwarzacz torrent/magnet dla Samsung Tizen TV. Telewizor uruchamia klienta BitTorrent w usłudze Node.js, udostępnia ręcznie wybrany plik przez lokalny strumień HTTP Range i przekazuje go do Samsung AVPlay. Telefon w tej samej sieci działa jako panel sterowania.
Projekt jest przeznaczony wyłącznie do materiałów, do których użytkownik ma prawa lub zgodę na pobieranie i rozpowszechnianie.
Wersja 0.11.0
- po pobraniu metadanych żaden film nie uruchamia się automatycznie,
- panel pokazuje listę plików wideo i czeka na wybór użytkownika,
- największy plik wideo jest jedynie podpowiadany jako domyślny wybór,
- parser ASS/SSA respektuje sekcję
[Events]i ignoruje linieFormatz sekcji stylów, - parser napisów ma test regresji obejmujący style ASS, przerwy między napisami oraz setne sekundy,
- napisy są domyślnie wyświetlane wyżej i można przesuwać je w górę lub w dół z telefonu,
- po wznowieniu filmu pojawia się krótka ikona
▶, - panel telefonu blokuje wielokrotne kliknięcia operacji destrukcyjnych i stosuje timeouty żądań,
- powtarzające się polecenia
close-streamishow-qrsą deduplikowane, - reset silnika jest serializowany, aby równoczesne kliknięcia nie wyłączały usługi,
- przycisk czyszczenia sprawdza wszystkie znane lokalizacje cache używane przez poprzednie wersje,
- cache bieżącej sesji nadal jest usuwany po zatrzymaniu, zamknięciu aplikacji i utracie heartbeat TV,
- zachowana jest warstwa zgodności sandboxu TizenBrew dla Node.js 12.
Znane lokalizacje czyszczone przez aplikację
$HOME/.tbtorrent-cache$HOME/tbtorrent-cache$HOME/.cache/tbtorrent-cache$HOME/.tb-torrent-cache- katalogi
tbtorrent-cacheitb-torrent-cachew katalogu tymczasowym systemu /tmp/tbtorrent-cache/tmp/tb-torrent-cache
Aplikacja nie usuwa arbitralnych katalogów spoza tej listy.
Budowanie i testy
npm install
npm run build
npm run check
npm run test:subtitles
npm run test:panel
npm run test:service
npm run test:torrent
npm run test:vm
npm run test:vm:torrent
npm run test:stability
npm run pack:previewTesty integracyjne potwierdzają, że przed ręcznym wyborem pliku nie jest wysyłane polecenie open-stream. Dopiero po wybraniu pliku sprawdzany jest strumień HTTP Range i zgodność pobranych bajtów.
Publikacja
npm publish --access publicNazwa modułu NPM:
tbtorrent9