Kirjautuminen

Haku

Tehtävät

Keskustelu: Yleinen keskustelu: Terveisiä elokuva-alalta

PetriKeckman [19.11.2024 01:43:20]

#

Koodailu on joskus melko yksinäistä puuhaa - ainakin, jos koodaa yksikseen. Siksi oli erityisen miellyttävää tehdä yhteistyötä öljyvärimaalari Milla Isomäen kanssa. Minula on 34 kpl valokuvia hänen tauluistaan. Halusin keksiä eri animaation jokaiselle tauluvalokuvalle. Tuotoksena tämä animaatio:


https://youtu.be/-bjs3GqQeHs

Ei se tosin vielä lopullisessa kuosissaan ole. Ensi vuoden Projio media- ja valotaidetapahtumaan on melkein vuosi aikaa, eli on tässä aikaa parantaa sitä.

Sen soundit sain aikaiseksi siten, että latasin ilmaisesta pixabay kirjastosta 36 kpl hyvin lyhkäsiä syntsan soundeja. Arvoin niitä 500 kpl jonoon, sitten toiset 500 ja kolmannet ja laitoin nämä kolme ääniraitaa (jotka sain aikaiseksi ffmpeg ohjelmalla) Audacity äänieditorissa päällekkäin. Jokainen animaatio kestää 20 sekuntia ja sen jälkeen näytetään taulusta selkeää kuvaa 5 sek. Samalla näytetään taulun nimi. Tämän sain aikaiseksi omalla REBOL-kielisellä ohjelmalla, joka tuotti .srt eli tekstitystiedoston, joka oli muotoa:

1
00:00:00,000 --> 00:00:00,001


2
00:00:20,000 --> 00:00:25,000
Hukkummassa

3
00:00:45,000 --> 00:00:50,000
Talvella

4
00:01:10,000 --> 00:01:15,000
Puupää

5
00:01:35,000 --> 00:01:40,000
Niskaan hengittäminen

6
00:02:00,000 --> 00:02:05,000
Solbo

Jos ihmettelette, miksi minulla on ensimmäisenä teksityksenä pelkkä tyhjä rivi, niin se johtuu siitä, että VSDC editorin tekstitys toiminto kertakaikkiaan jättää ensimmäisen tekstityksen noteeraamatta.

Videon efektit sain musan tahtiin heilumaan VSDC editorin Edit the Beat toiminnolla. Kuten ehkä tarkkasilmäiset huomanette, niin videossa vaihdetaan 5 sekunnin välein efektiä. Vaati vähän kikkailua, että tein molemmat efektit koko videolle ja paloittelin ne 5 sekunnin pätkiin, joista joka toinen oli toista ja joka toinen toista, paitsi jos mod järjestysluku = 5, jolloin kyseessä oli selkeä kuva, jossa oli taulun nimi, niin sillä ei saanut olla minkäänlaista efektiä.

Se siitä proggiksesta. Nyt on valmisteilla toinen. Tunnin elokuva. Koska minulla on ne 34 erilaista kuville tuottavaa animaatiota ja lisäksi ohjelma, jolla voin tuottaa loputtomasti erilaisia kuvia, joista 300 esimerkkikuvaa on tuolla:

https://petke.info/uus/points.html

Aion siis tehdä kuvan ja arpoa sille animaation - tarkemmin sanottuna minulla on lista, missä kahden saman animaation etäisyys éi saa olla pienempi kuin 22 kpl, jotta ei tulisi liian nopeasti toistoa eri animaatioiden välillä. Sen listan tuottaminen oli mielenkiintoinen ohjelmointihaaste. ChatGPT:kään ei auttanut yhtään, vaan alkoi sekoilemaan täysin. Oli itse koodattava tällainen ohjelma:

REBOL []
koodeja: 34 ; Eri koodien määrä 34
etäisyys: 22 ; Minimi etäisyys saman animaation välillä
animaatioita: 144 ; Animaatioiden määrä 144 tunnin elokuvaan
valmiit: copy [] ; Lista koodeille 1...34
random/seed now/precise
; laitetaan ensin  valmiit taulukkoon 144 satunnaista koodin arvoa
valmiit: copy[]
for i 1 animaatioita 1 [
    append valmiit random koodeja
]
;aletaan tarkistamaan valmiit taulukkom kunnes se kelpaa...
print "wait"
until [
	pieninetäisyys: 9999 ;tutkitaan niin kauan kunnes taulukosta löytyvä pienin etäisyys >= etäisyys
	i: 1 ; aloitetaan tarkistus ensimäisestä koodista
	until [
		koodi1: valmiit/(i)
		;taaksepän tarkistus
		indeksi: i - 1
		if indeksi > 1 [
			until [
				if koodi1 = valmiit/(indeksi) [ ;löytyi sama koodi
					et: i - indeksi
					if et < pieninetäisyys [pieninetäisyys: et]
					if et < etäisyys [valmiit/(indeksi): random koodeja]
				]
				indeksi: indeksi - 1
				(indeksi = (i - etäisyys)) or (indeksi <= 1)
			]
		]
		;eteenpäin tarkistus
		indeksi: i + 1
		if indeksi < animaatioita [
			until [
				if koodi1 = valmiit/(indeksi) [
					et: indeksi - i
					if et < pieninetäisyys [pieninetäisyys: et]
					if et < etäisyys [valmiit/(indeksi): random koodeja]
				]
				indeksi: indeksi + 1
				(indeksi > (i + etäisyys)) or (indeksi >= animaatioita)
			]
		]
		i: i + 1
		i > animaatioita
	]
	pieninetäisyys >= etäisyys
]
print etäisyys
probe valmiit
halt

Aivan samoin kuin Milla Isomäen öljyväritaulujen kuvista näytetään 5 sekuntia selkeää kuvaa ja taulun nimeä, aion näyttää 5 sek kuvan nimeä. Kuvan nimen tuotan siten, että minulla on 50 adjektiivia ja 50 substantiivia. Erilaisia nimiä on siis 2500 kpl. Mutta tiedättekös mitä? Jos arpoo vain sattumalta adjektiivi ja substantiivipareja, niin todennäköisyys, että joillekin kahdelle eri taulule tulee sama nimi, kun tauluja on 144 kpl on noin 98.5%! On siis tarkistettava, että kuviennimet listaan kun laitetaan uusi nimi, ettei se jo ole siellä.

PetriKeckman [21.11.2024 20:20:23]

#

Lähettivät minulle äsken University of Utah & College of Charleston:sta kyselylomakkeen koskien taidettani! Halusivat tietää, mistä olen oppini saanut ja mitä ohjelmia käytän. Suunnittelevat sinne jotain "Art and Computing" ohjelmaa.

Enhän minä mitään ohjelmia käytä kuin omia REBOL-ohjelmiani ja oppini sen käyttöön olen saanut harrastuksistani. Toki Helsingin yliopistossa 80-luvulla opiskelin muita kieliä ja kaikissa lauseohjelmoinin kielissähän on samoja piirteitä, mutta kaikkea muuta siellä Pascal kielellä ohjelmoitiin kuin taidetta.

Niin! Ehkäpä jopa nimeni mainitaan Yhdysvaltalaisessa yliopistossa esimerkkinä siitä, kuinka taidetta tehdään! Se olisi hieno tunnustus! Hienoa olisi, jos professorit tai opiskelijat keskustelisivat luennolla:

"Ja tässä on esimerkki suomalaisesta taiteilijasta, Petri Keckmanista, joka käyttää REBOL-ohjelmointikieltä luodakseen taidetta. Hänen työnsä on osoitus siitä, miten omistautuminen ja luovuus voivat yhdistää teknologian ja taiteen täysin ainutlaatuisella tavalla." 😀

Vastaus

Muista lukea kirjoitusohjeet.
Tietoa sivustosta