Kirjoittaja Aihe: Ylen tekstityksen kuvista srt-tiedosto...  (Luettu 5879 kertaa)

SuperOscar

  • Käyttäjä
  • Viestejä: 3337
  • Tänään täällä, huomenna poissa
    • Profiili
    • Legisign.org
Vs: Ylen tekstityksen kuvista srt-tiedosto...
« Vastaus #20 : 07.01.19 - klo:21.19 »
ReadMe - kirjoitti...

No sehän tietenkin jäi lukemati – ei tosimies lue dokkareita! 8)

Enihuu, hieman hankalaahan tuo käyttö toistaiseksi on, kun ohjelmia ei voi vain heittää jonnekin kansioon ja ajaa sieltä vaan ne täytyy kopioida työskentelykansioon. Wrapper-skriptinä toimivan makesrtsubtitles.sh:n pitäisi mieluummin osata etsiä kutsumansa kamat jostakin. Eikähän se iso korjaus olisikaan, pitäisi vain korvata ”./” ohjelmien poluissa jollakin, mikä ensin on selvitetty (tai luotetaan $PATHiin).

Itse lopputulos on enimmäkseen kunnossa, mutta skripti äänekäs:

Koodia: [Valitse]
rm: tiedostoa 'errors.txt' ei voi poistaa: Tiedostoa tai hakemistoa ei ole
Warning. Invalid resolution 0 dpi. Using 70 instead.
Warning. Invalid resolution 0 dpi. Using 70 instead.
Warning. Invalid resolution 0 dpi. Using 70 instead.
Traceback (most recent call last):
  File "./makeOneLine.py", line 32, in <module>
    res=res+(f.readlines()[0][0:-1])
IndexError: list index out of range
Warning. Invalid resolution 0 dpi. Using 70 instead.

Sitten miljoona riviä noita samanlaisia Tesseractin varoituksia ja aina välissä tuo Traceback-viesti.
openSUSE Leap 15.0 (pöytäkone 1, kannettavat 1 & 2), RPi LibreELEC 8.2.5 (HTPC), RPi Raspbian GNU/Linux 9 (nimipalvelin)

kamara

  • Käyttäjä
  • Viestejä: 1985
    • Profiili
Vs: Ylen tekstityksen kuvista srt-tiedosto...
« Vastaus #21 : 08.01.19 - klo:07.17 »
Enihuu, hieman hankalaahan tuo käyttö toistaiseksi on, kun ohjelmia ei voi vain heittää jonnekin kansioon ja ajaa sieltä vaan ne täytyy kopioida työskentelykansioon. Wrapper-skriptinä toimivan makesrtsubtitles.sh:n pitäisi mieluummin osata etsiä kutsumansa kamat jostakin. Eikähän se iso korjaus olisikaan, pitäisi vain korvata ”./” ohjelmien poluissa jollakin, mikä ensin on selvitetty (tai luotetaan $PATHiin).

Itse lopputulos on enimmäkseen kunnossa, mutta skripti äänekäs:

Koodia: [Valitse]
rm: tiedostoa 'errors.txt' ei voi poistaa: Tiedostoa tai hakemistoa ei ole
Warning. Invalid resolution 0 dpi. Using 70 instead.
Warning. Invalid resolution 0 dpi. Using 70 instead.
Warning. Invalid resolution 0 dpi. Using 70 instead.
Traceback (most recent call last):
  File "./makeOneLine.py", line 32, in <module>
    res=res+(f.readlines()[0][0:-1])
IndexError: list index out of range
Warning. Invalid resolution 0 dpi. Using 70 instead.

Sitten miljoona riviä noita samanlaisia Tesseractin varoituksia ja aina välissä tuo Traceback-viesti.

Joo, en ole viitsinyt viimeistellä scriptiä, niin se on varsin äänekäs.
Ensimmäinen errors.txt yrittää poistaa virhe-tiedoston, mikäli sellainen on, ja yleensähän sellaista tiedostoa ei ole, joten se valittaa tiedoston puutteesta.

Tesseract ei tykkää LodePNG:llä tehdystä kuvasta, koska LodePNG ei määrittele kuvalle resoluutiota (siis pistettä/tuuma). Siistä siis tulee toi...
Koodia: [Valitse]
Warning. Invalid resolution 0 dpi. Using 70 instead.

Jälkimmäinen, jonka pitäisi ilmentyä hivenen harvemmin tulee siitä, ettei tesseract-anna tekstiä (tavuakaan), mutta python-ohjelma yrittää poistaa viimeisen tavun.

Laiskuuttahan se tietenkin on, mutta toisaalta toimivaa peliä ei kannata sorkkia.

Jos muuttaa makesrtsubtitles.sh:n tällaiseksi, niin pitäisi toi ensimmäinen virheilmoitus poistua ("errors.txt-tiedostoa ei voi poistaa")...
Koodia: [Valitse]
#!/bin/bash
declare -i i
i="0"
touch errors.txt
rm errors.txt
touch errors.txt
for f in *.png
do
    i="$i+1"
    echo $i
    #echo ${f%kuva.png}
    ./YLEsubtextPrepare $f
    python ./makeOneLine.py ${f} $i rm
    echo
done
#rm *pngNormalWord*