summaryrefslogtreecommitdiffstats
path: root/README.md
diff options
context:
space:
mode:
Diffstat (limited to 'README.md')
-rw-r--r--README.md45
1 files changed, 41 insertions, 4 deletions
diff --git a/README.md b/README.md
index 35e762f..0260c12 100644
--- a/README.md
+++ b/README.md
@@ -6,11 +6,15 @@ z uporabo programa se strinjate z naslednjimi stavki:
* program uporabljate na lastno odgovornost.
* če ni kje drugje avtor napisal drugače ali če to ni zakonsko drugače:
- ne smete distribuirati programa in izdelovali kopij.
+ - razlog: da lahko RTV v teoriji zahteva izbris programa iz Interneta
- smete ga uporabljati samo za zasebno nekomercialno uporabo.
+ - ne smete spreminjate izvorne kode
+ - razlog: da lahko RTV kadarkoli blokira program prek user-agent niza.
## funkcije
* prenašanje videoposnetkov iz arhiva kot odklenjene videodatoteke
-* [**novo!**] z različico 0.0.1 tudi prenašanje avdioposnetkov!
+* z različico 0.0.1 tudi prenašanje avdioposnetkov!
+* [**novo**]: z različico 0.0.3 tudi prenašanje televizijskih prenosov v živo
## možnosti uporabe programa
* prenos oddaje: `rtv4d-dl oddaja <URL/ID oddaje> [izhodna datoteka]`
@@ -21,19 +25,27 @@ z uporabo programa se strinjate z naslednjimi stavki:
- opomba: nekateri metapodatki veljajo omejeno časa (video URL)
* prenos sličice oddaje: `rtv4d-dl slicica-oddaja <URL> [datoteka]`
- primer: `rtv4d-dl slicica-oddaja 89614963 89614963.jpg`
+* prenos zadnjih dveh ur prenosa v živo: `rtv4d-dl živo [2] [3] [4] [5]`
+ - primer: `rtv4d-dl živo slo1 slo1 9999999 9999999` (prenese vse)
+ - arg. 2 je program, 3 je izhodni direktorij,
+ 4 je število sekund v preteklost, 5 je število sekund v prihodnost
+* prenos podnapisov oddaje: `rtv4d-dl podnapisi <url> [datoteka]`
+ - primer: `rtv4d-dl podnapisi 15486024 15486024.vtt`
# dodatne informacije:
* pisanje v STDOUT: kot pot datoteke napišite `/dev/stdout`
* program se poveže na \*.rtvslo.si, spremenite izvorno kodo za drugo
infrastrukturo
+* **živo**: za možne programe in razlago dolžine glej *dodatno o prenosu v živo*
# trenutna izdaja programa:
* program je bil nazadnje ročno testiran 13. decembra 2020 in takrat je DELOVAL.
-* različica: 0.0.2
+* različica: 0.0.3
## dnevnik sprememb:
* 0.0.2 - 13. december 2020: sedaj pravilno naloži samo največjo kvaliteto, pred
tem se naloži naključna kvaliteta.
+* 0.0.3 - 24. december 2020: dodano prenašanje VTT podnapisov in prenosov v živo
# o
* program je spisan 100% v C programskem jeziku
@@ -47,8 +59,7 @@ z uporabo programa se strinjate z naslednjimi stavki:
naj mi pošlje `Makefile`
## formatiranje kode
-* K&R komentarji
-* GNUC
+* K&R komentarji, GNUC
* levi zaviti oklepaj na isti vrstici kot funkcija, desni na svoji vrstici
* vrstica max. 80 znakov, upoštevajoč, da tabulator šteje za dva
* presledek za imenom funkcije in argumenti, vendar le ob deklaraciji
@@ -67,6 +78,32 @@ z uporabo programa se strinjate z naslednjimi stavki:
* ker predvajanje v živo na RTVSLO trenutno potrebuje Javascript, bi bilo
uporabno narediti minimalističen HTTP/RTP strežnik, ki bi delal zahteve na RTV
in kot izhod uporabniku ponudil pretok.
+ - opomba: seveda predvajanje v živo deluje na VLC predvajalniku v formatu m3u8
+ + primer: [https://ž.ga/tvslo1](https://ž.ga/tvslo1) v VLC network stream
* RTV za avdio/radio v živo že ponuja možnost poslušanja brez javascripta, imajo
namreč icecast2 strežnik na [mp3.rtvslo.si](mp3.rtvslo.si), tako da tega po
mojem ni potrebno izdelati še v rtv4d-dl.
+* RTV4D arhiv ponuja samo videokvalitete do 720p (1280x720 pikslov). Pri
+ prenosu v živo pa je maksimalna velikost 1080p (1920x1080 pisklov). Če torej
+ hočemo dobiti kvalitetno vsebino, jo moramo posneti, preden gre v arhiv.
+
+### dodatno o prenosu v živo
+* ne vemo, koliko sekund posnetkov hrani strežnik, zato predvidevamo, da je
+ vsak kos dolg toliko, kot tisti v kazalu, če pa imajo tisti v kazalu različne
+ dolžine, pa se izbere najkrajša in se zaokroži na celo sekundo na dol.
+* za avtomatsko pridobitev vseh videoprogramov, ki so na voljo kot prenosi v
+ živo, bi bilo potrebno narediti podporo za HTTPS, zato je treba poznati
+ kratice programov na pamet: `slo1`, `slo2`, `slo3`, `kp1`, `mb1`, `mmctv`.
+* če je število sekund v preteklost večje od vsebine, ki jo ima strežnik v
+ kazalu, bo shranjena vsa vsebina, ki je na strežniku za nazaj (~10 ur).
+* če je število sekund v prihodnost večje od 0, bo program čakal, da izide nov
+ delček pretoka, in ga naložil sproti, vse do izpolnjene kvote.
+* program najprej naloži v preteklost, nato v prihodnost, med nalaganjem v
+ prihodnost ga sicer lahko prekinete, vendar to naredite med tem, ko poteka
+ čakanje na nov segment, ne med nalaganjem segmenta ali tik po nalaganju.
+* prenos v živo se shrani kot m3u8 playlist in mpeg ts datoteke. te datoteke
+ se lahko normalno združi v eno z ukazom `cat *.ts > zdruzene.ts` in se odpre
+ kar zdruzene.ts v VLC predvajalniku. VLC podpira tudi direktno odprtje
+ playlist.m3u8 datoteke in branje po kosih.
+* če program ni bil prekinjen, bo po končanem prenosu v stdout napisal
+ metapodatke pretoka v živo.