POCETNA STRANA

Seminarski i Diplomski Rad
 

SEMINARSKI RAD IZ MULTIMEDIJE

 

VIRTUALNA MULTIMEDIJALNA BIBLIOTEKA

Projektni zadatak

Namjena  multimedijalne biblioteke je arhiviranje nekoliko vrsta datoteka,tačnije tekstualnih,zvučnih,video datoteka kao I slika.Datoteke se mogu dodati sa lokalnog diska,a tekstualne datoteke I sa web stranice.Datoteke se smiještaju unutar trenutnog direktorijuma u kojem se nalazi Macromedia Director.Potrebno je unutar tog foldera kreirati sljedeće foldere:/sound,/text,/webtext,/video./soundplaylist,/image.

Početni ekran aplikacije je dat na sljedećoj slici.

 

Pocetni ekran aplikacije

Odabirom opcije Upload  korisniku je omogućeno da dodaje datoteke sa lokalnog diska ili ,eventualno, interneta.

Primjer upload-a tekstualnog fajla je dat na sljedećoj slici:

Primjer upload-a tekstualnog fajla

Aktivacijom dugmeta Select file otvara se dijalog za izbor datoteke.Takođe je neophodno unijeti naziv pod kojim će datoteka biti sačuvana.Ukoliko su parametri uneseni,klikom na dugme Upload datoteka se pamti na sljedeći način:ukoliko je npr. datoteka tekstualna,unutar unaprijed kreiranog foldera text  koji se nalazi unutar instalacionog foldera Directora(npr. C:\Director MX 2004\text),se kreira nova datoteka koja nosi ime fajla koji dodajemo,i čiji je sadržaj string koji specifikuje adresu sa koje je dodana datoteka.

Lingo skript za Select file:

on mouseUp me

 

  fajl=new xtra("fileio")

  fajl.setFilterMask("Text")

  rezultat=fajl.displayOpen()

  if rezultat=EMPTY THEN

    alert "Izaberite datoteku!"

  else

    member("lokacijatextlocal").text=string(rezultat)

    updateStage

  end if

 

end

 

Lingo skript za Upload file:

 

global lokacija

on mouseUp me

  fajl1=new xtra("fileio")

 

  putanja=member("lokacijatextlocal").text

  imeFajla=member("tekstimeizbor").text

  if putanja=EMPTY THEN

    alert("Unesite putanju do datog fajla!")

  else  if imeFajla=EMPTY THEN

    alert "Izaberite ime pod kojim ce datoteka biti sacuvana!"

   

  else

    lokacija=string(_player.applicationPath & "text\")

    fajl1.openFile(putanja,0)

    

   

   

    fajl2=new xtra("fileio")

   

    fajl2.createFile(string(lokacija  & string(imeFajla) ))

    fajl2.openFile(string(lokacija  & string(imeFajla) ),0)

    fajl2.writeString(putanja)

 

   

   

    alert "Upload uspjesan!"

  end if

end

 

Izborom opcije Search sa početne strane moguće je pretražiti biblioteku prema tipu i imenu datoteke.Izgled ekrana za pretragu dat je na slijedećoj slici:

Izgled ekrana za pretragu

Na primjer,ako pretražujemo tekstualne datoteke klikom na dugme Pretraži tekstualne datoteke pokrece se skript:

 

global tipDatoteke

on mouseUp me

 

  fileList=[]

  fileListWeb=[]

  wantedList=[]

  wantedListWeb=[]

  uzorak=member("uzorakpotipu").text

  if uzorak=EMPTY THEN

    ALERT "Unesite kljucnu rijec pretrage!"

  else

    repeat with i = 1 to 1000

     

      n = getNthFileNameInFolder(string(_player.applicationPath & "text\"),i)

      --spisak imena u folderu u kojem su smjestene datoteke

      if n = EMPTY then exit repeat

      fileList.add(n)

    end repeat

    duzina=fileList.count()

    repeat with j=1 to duzina

      linija = fileList.getAt(j)

      if linija contains uzorak then--provjera da li ime datoteke sadrzi uzorak po kojem pretrazujemo

        wantedList.add(string(linija))--ako sadrzi dodajemo ime datoteke u listu pronadjenih datoteka

       

      end if

    end repeat

    tekst1=""

   

    REPEAT with k=1 to wantedList.count()

      clan=wantedList.getAt(k)

      member("rezultatpretrage").line[k]=string(clan)--u tekstualno polje na slijedecoj strani dodajemo linije sa rezultatima pretrage

     

     

    end repeat

    repeat with k = 1 to 1000

      m = getNthFileNameInFolder(string(_player.applicationPath & "webtext\"), k)--spretraga datoteka prikljucenih sa web-a,slicno kao gore

      if m = EMPTY then exit repeat

      fileListWeb.add(m)

    end repeat

    duzinaWeb=fileListWeb.count()

    repeat with p=1 to duzinaWeb

      linijaWeb = fileListWeb.getAt(p)

      if linijaWeb contains uzorak then

        wantedListWeb.add(string(linijaWeb))

       

      end if

    end repeat

   

   

   

   

    REPEAT with m=1 to wantedListWeb.count()

      clanWeb=wantedListWeb.getAt(m)

      member("rezultatwebpretrage").line[m]=string(clanWeb)

     

    end repeat

   

   

    updateStage

    tipDatoteke="text"--globalna promjenljiva koja specifikuje tip datoteka koje trazimo.Upotrebljiv prilikom reprodukcije datih datoteka.

    _movie.go(81)

  end if

 

end

 

Slijedeći ekran prikazuje rezultate pretrage:

rezultati pretrage

Klikom na dugme Play selected files dolazimo do ekrana na kojme je moguće pokrenuti selektovanu datoteku.Utvrdjujemo koja je datoteka selektovana tako što polju sa rezultatima pridružimo skript:

global lineText1

global izvortext

global izvorsound

global izvorvideo

on mouseUp me

  pointClicked = _mouse.mouseLoc--mjesto u polju na koje je klikmuto misem

  currentMember = sprite(5).member

  lineNum = sprite(5).pointToLine(pointClicked)--redni broj linije teksta koja je kliknuta

  lineText1 = currentMember.line[lineNum]--tekst sa te linije

  izvortext="local"

  izvorsound="local"

  izvorvideo="local"--tip datoteke:lokalna ili web

 

 

end

 

Dugmetu Play Selected files je pridružen skript:

 

global tipDatoteke

global lineText1--ime selektovane datoteke iz polja sa rezultatima

on mouseUp me

  if lineText1=EMPTY then

    alert "Izaberite datoteku!"

   

  else if tipDatoteke="text" then

    member("texttrenutniclan").text=string(lineText1)

    _movie.go(101)

    --navigacija do frejma u kojem se nalazi player za odredjenu vrstu datoteka

  else if tipDatoteke="video" then

    member("videotrenutniclan").text=string(lineText1)

    _movie.go(106)

  else if tipDatoteke="sound" then

    member("zvuktrenutniclanime").text=string(lineText1)

    _movie.go(111)

  else if tipDatoteke="image" then

    member("nazivslike").text=string(lineText1)

    _MOVIE.GO(131)

  end if

 

Playeri:

 

Sound player:

Sound player

 

 

Skript za Play dugme:

 

global izvorsound--definisana ranije,specifikacija da li je fajl lokalni ili sa web-a

on mouseUp me

member("mutezvuk").text="MUTE DISABLED"--po dafaultu mute je iskljucen

  zvukClan=_movie.newMember(#sound)

  SOUND(1).VOLUME=250--default volume

  odrediste=member("zvuktrenutniclanime").text

  if odrediste=EMPTY THEN

    ALERT "IZABERITE NEKU DATOTEKU!"

  else if izvorsound="web" then--za datoteku sa web-a

    fajl2=new xtra("fileio")

    fajl2.openFile(string(_player.applicationPath & "websound\" & string(odrediste)),0)--otvara se fajl koji nosi ime datoteke

    adresa=fajl2.readLine()--cita se adresa sa oje je fajl upload-ovan

    fajl2.closeFile()

    set mynetid = preloadNetThing(string(adresa))

    downLoadNetThing("http://" & string(adresa), the   applicationPath & string(odrediste))

    sound(1).volume=250

    sound(1).playFile(string(the   applicationPath & string(odrediste)))

   

  else if izvorsound="local" then --za lokalnu datoteku

    fajl3=new xtra("fileio")

   

    fajl3.openFile(string(_player.applicationPath & "sound\" & string(odrediste)),0)

    adresa2=fajl3.readLine()

    fajl3.closeFile()

    sound(1).volume=250

    sound(1).playFile(string(adresa2))--koristi se metoda playFile() zvucnog kanala

   

   

   

   

  end if

END

 

Skript za Volume up   dugme:

on mouseUp me

  jacinaZvuka= sound(1).volume

  if jacinaZvuka<1000 then

    jacinaZvuka=jacinaZvuka+100

    sound(1).volume=jacinaZvuka

    end if

end

 

 

Reprodukcija video datoteka:

Reprodukcija video datoteka

 

Skript za play dugme:

 

 

global izvorvideo

global objWindow

global videoClan

 

on mouseUp me

  MEMBER("VIDEO").fileName=EMPTY

  member("loop").text="LOOP DISABLED"

  updateStage

  member("video").stop()

  member("video").audio=true--reprodukcija zvuka je omogucena

 

 

 

  odrediste=member("videotrenutniclan").text

  if odrediste=EMPTY THEN

    ALERT "IZABERITE NEKU DATOTEKU!"

 

   

   

   

  else if izvorvideo="local" then

    fajl3=new xtra("fileio")

   

    fajl3.openFile(string(_player.applicationPath & "video\" & string(odrediste)),0)

    adresa2=fajl3.readLine()--ocitavanje adrese na kojoj se nalazi datoteka

    fajl3.closeFile()

    member("video").fileName=string(adresa2)--fajl sa adrese se pridruzuje windowsmedia cast memberu 'video'

   

   

   

   

  end if

END

 

Skript za Loop disabled/enabled  dugme:

on mouseUp me

  if member("poljeloop").text="LOOP ENABLED" then

    member("poljeloop").text="LOOP DISABLED"

    member("video").loop=FALSE

  else if  member("poljeloop").text="LOOP DISABLED" then

    member("poljeloop").text="LOOP ENABLED"

    member("video").loop=TRUE

 

  end if

end

 

Preglednik slika:

 

Preglednik slika

 

Skript za dugme Pregledaj:

 

on mouseUp me

   odrediste=member("nazivslike").text

  if odrediste=EMPTY THEN

    ALERT "IZABERITE NEKU DATOTEKU!"

 

   

  else

    fajl3=new xtra("fileio")

   

    fajl3.openFile(string(_player.applicationPath & "image\" & string(odrediste)),0)

    adresa2=fajl3.readLine()

   

    fajl3.closeFile()

    fajl33=new xtra("fileio")

    member("bmp1").fileName=string(adresa2)--datoteka sa navedene adrese je pridruzena bitmap cast memberu 'bmp1'

    updateStage

   

  end if

end

 

Preglednik teksta:

 

Preglednik teksta

 

Skript za dugme Pregledaj(tekst):

global theNetId

global izvortext

on mouseUp me

 

  odrediste=member("texttrenutniclan").text

  if odrediste=EMPTY THEN

    ALERT "IZABERITE NEKU DATOTEKU!"

  else if izvortext="web" then--za web datoteke

    fajl2=new xtra("fileio")

    fajl2.openFile(string(_player.applicationPath & "webtext\" & string(odrediste)),0)

    adresa=fajl2.readLine()

    fajl2.closeFile()

    theNetID = getNetText(string(adresa))

  

   

  else if izvortext="local" then --lokalni fajlovi

    fajl3=new xtra("fileio")

   

    fajl3.openFile(string(_player.applicationPath & "text\" & string(odrediste)),0)

    adresa2=fajl3.readLine()--ocitavanje adrese sa koje je dodan fajl u biblioteku

   

    fajl3.closeFile()

    fajl33=new xtra("fileio")--otvaranje fajla sa adrese

    fajl33.openFile(string(adresa2),0)

    sadrzaj=fajl33.readLine()--citanje sadrzaja .txt datoteke

    fajl33.closeFile()

    member("ispistextpregleda").text=string(sadrzaj)

    updateStage

   

  end if

END

 

Provjera uspješnosti pribavljanja teksta iz datoteke locirane na web adresi,se vrši tako što se u 1 frejm  smijesti skript:

 

global theNetID

on exitFrame me

 

  if netDone(theNetID) then

   member("ispistextpregleda").text = netTextResult(theNetID)

  end if

  end

 

Odabirom opcije Sound playlist  korisniku je omogućeno kreiranje listi zvučnih datoteka,kao i popunjavanje datih listi datotekama po izboru.

 

Sound playlist

 

Dugmetu za prikaz listi  pridružen je sprajt:

 

global tipDatoteke

on mouseUp me

 

  fileList=[]--nova lista fajlova koji se nalaze u folderu /soundplaylist

 

  repeat with i = 1 to 1000

   

    n = getNthFileNameInFolder(string(_player.applicationPath & "soundplaylist\"), i)

    if n = EMPTY then exit repeat

    fileList.add(n)

  end repeat

  duzina=fileList.count()

  repeat with j=1 to duzina

    linija = fileList.getAt(j)

    member("playlistlista").line[j]=string(linija)--ispis postojecih listi

   

    end repeat

  END

 

Dugmetu za dodavanje zvučne datoteke u izabranu listu pridružen je sprajt:

 

global  playlist1

on mouseUp me

  if member("selectedsoundfile").text=EMPTY THEN

    ALERT "Trebate izabrati datoteku!"

  else if member("playlistpolje").text=EMPTY then

    alert "Trebate izabrati listu zvucnih datoteka!"--provjere da li je korisnik izabrao zvucnu datoteku koju dodaje te listu datoteka u koju ce je dodati

  else

   

    fajl1=new xtra("fileio")

   

   

    imeFajla=member("selectedsoundFile").text

    imeListe=member("playlistpolje").text

   

    lokacija=string(_player.applicationPath & "soundplaylist\")

    fajl1.openFile((string(lokacija)  & string(imeListe)),0  )

    playlist1=propList()

   

setaProp playlist1, string(imeFajla), string(imeListe)--property lista sa imenima datoteka,kojima je pridruzena lista u kojoj se nalaze.U ovom slucaju imeFajla je property.Ukoliko vec postoji,pridruzuje mu se ime nove Liste,a ukoliko ne postoji kreira se novi property

  

 

    fajl1.writeString(string(imeFajla))--upisivanje imena datoteke u fajl sa imenom liste je ostavljeno,medjutim neefikasno zbog nemogucnosti kreiranja novih redova,sto dovodi do zamjene prethodnog fajla novim,te se lista ustvari sastoji od samo 1 fajla.

   

    fajl1.closeFile()

    alert "Dodavanje datoteke uspjesno"

  end if

end

 

Aktivacijom opcije Dodaj novu listu otvara se sljedeći ekran:

 

Opcije Dodaj novu listu

 

Dugmetu Dodaj  je pridružen skript:

 

global potvrda

on mouseUp me

  imeListe=member("imeliste").text --ime liste koju dodajemo

  potvrda="moze"--specifikacija da li navedena lista vec postoji

  fileList = [ ]

  repeat with i = 1 to 100

    n = getNthFileNameInFolder(the moviePath, i)

    if n = EMPTY then exit repeat

    fileList.append(n)

  end repeat

  repeat with j=1 to fileList.count

    if fileList.getAt(j)=imeListe then

      potvrda="nemoze"

    end if

  end repeat

  if member("imeliste").text=EMPTY then--ukoliko nije uneseno ime nove liste

    alert "Unesite naziv liste koju zelite kreirati!"

  else if potvrda="nemoze" then

    alert "Lista sa navedenim imenom vec postoji!"

   

   

  else if potvrda="moze" then--ukoliko ne postoji lista sa navedenim imenom

   

    fajl1=new xtra("fileio")

    lokacija=string(_player.applicationPath & "soundplaylist\")

    fajl1.createFile(string(lokacija)  & string(imeListe)  )--kreiramo datoteku sa imenom liste u koju ce se  kasnije upisivati reference na zvucne datoteke

   

    fajl1.closeFile()

    k= member("spisaklista").lineCount

    l=k+1

    member("spisaklista").line[l]=string(imeListe)

    --u polje u kom su navedene postojece liste dodajemo novokreiranu listu

   

  end if

end

 

Napomena:Zbog nedostatka prostora prikazani su samo odredjeni skriptovi,primjerci nekih navigacionih prozora,te njihova primjena.

PROČITAJ / PREUZMI I DRUGE SEMINARSKE RADOVE IZ OBLASTI:
ASTRONOMIJA | BANKARSTVO I MONETARNA EKONOMIJA | BIOLOGIJA | EKONOMIJA | ELEKTRONIKA | ELEKTRONSKO POSLOVANJE | EKOLOGIJA - EKOLOŠKI MENADŽMENT | FILOZOFIJA | FINANSIJE |  FINANSIJSKA TRŽIŠTA I BERZANSKI    MENADŽMENT | FINANSIJSKI MENADŽMENT | FISKALNA EKONOMIJA | FIZIKA | GEOGRAFIJA | INFORMACIONI SISTEMI | INFORMATIKA | INTERNET - WEB | ISTORIJA | JAVNE FINANSIJE | KOMUNIKOLOGIJA - KOMUNIKACIJE | KRIMINOLOGIJA | KNJIŽEVNOST I JEZIK | LOGISTIKA | LOGOPEDIJA | LJUDSKI RESURSI | MAKROEKONOMIJA | MARKETING | MATEMATIKA | MEDICINA | MEDJUNARODNA EKONOMIJA | MENADŽMENT | MIKROEKONOMIJA | MULTIMEDIJA | ODNOSI SA JAVNOŠĆU |  OPERATIVNI I STRATEGIJSKI    MENADŽMENT | OSNOVI MENADŽMENTA | OSNOVI EKONOMIJE | OSIGURANJE | PARAPSIHOLOGIJA | PEDAGOGIJA | POLITIČKE NAUKE | POLJOPRIVREDA | POSLOVNA EKONOMIJA | POSLOVNA ETIKA | PRAVO | PRAVO EVROPSKE UNIJE | PREDUZETNIŠTVO | PRIVREDNI SISTEMI | PROIZVODNI I USLUŽNI MENADŽMENT | PROGRAMIRANJE | PSIHOLOGIJA | PSIHIJATRIJA / PSIHOPATOLOGIJA | RAČUNOVODSTVO | RELIGIJA | SOCIOLOGIJA |  SPOLJNOTRGOVINSKO I DEVIZNO POSLOVANJE | SPORT - MENADŽMENT U SPORTU | STATISTIKA | TEHNOLOŠKI SISTEMI | TURIZMOLOGIJA | UPRAVLJANJE KVALITETOM | UPRAVLJANJE PROMENAMA | VETERINA | ŽURNALISTIKA - NOVINARSTVO