Warning: session_write_close(): write failed: No space left on device (28) in /home/www/studentski-izvjestaji/doku.php on line 117
Warning: session_write_close(): Failed to write session data (files). Please verify that the current setting of session.save_path is correct (/var/lib/php/sessions) in /home/www/studentski-izvjestaji/doku.php on line 117
===== Jeton Fejza =====
==== PROGRAMSKO RJEŠENJE ZA SNIMANJE PREDAVANJA TEMELJENO NA FFMPEG ALATU ====
{{:studenti:jeton_fejza:diplomski-fejza.doc|Tekst rada}}, {{:studenti:jeton_fejza:lecto.7z|konačan build alata}} i [[https://bitbucket.org/jeton_fejza/lecto_ffmpeg|GitHub repozitorij]].
==== Zadatak ====
Potrebno je implementirati novo programsko rješenje za snimanje audio i video tokova koji čine predavanje. Rješenje izvesti kao nadogradnju nad programskim alatom ffmpeg i učiniiti ga neovisnim o platformi na kojoj se izvodi.
Konkretno, programsko rješenje mora omogućiti korisniku
* snimanje proizvoljno kombiniranih AV izvora priključenih na računalo pozivanjem funkcija ffmpeg alata
* podršku za definiranje parametara i izbor AV kodeka dostupnih u ffmpeg alatu
* podršku za Start/Stop/Pause funkcije kontrole izvođenja snimanja
* podršku za izvođenje proizvoljno zadane ffmpeg naredbe
* podršku za funkcije specifične za LeCTo Recorder alat (gneriranje PSU datoteka)
* podršku za prevođenje sučelja
* po mogućnosti podršku za indeksiranje generiranih datoteka za izvođenje na webu
-----
| [[studenti:jeton_fejza:jf4_dnevnik|Dnevnik rada]] |
-----
==== Plan rada ====
Koraci:
0. Repozitorij za rad
- Otvori repozitorij na Bitbucketu i dodaj i mene za admina
1. Funkcionalna verzija za Win
- Prekopirati prazni GUI od starog LeCTo Recordera bez poziva dodatnih funkcija vlca ili vlcja. Rezultat bi morao biti program koji na start pocne brojat sekunde a na stop stane, moze mijenjat jezik sucelja, otvarati sucelje za uredivanje AV tokova i generriati PSU fajl.
- Dodati funkciju za ispravno listanje deviceova (za Win)
- Iz podržanih parametara za AV tokove izbaciti "Scale" i kao jedini ponuđeni codec staviti mp4 video i aac audio u mp4 containeru (dodati na vrh drop listu containera koja trenutno sadrzi samo mp4 i u tom slucaju za a i v codece nudi samo ova dva)
- Istraziti format pozivanja ffmpega za snimanje vise izvora (N naredbi za N izvora ili po jedna naredba za 2 izvora ili... ?)
- Podesiti pozivanje odgovarajućih funkcija na tipke Start i Stop (za Win)
2. Dodatne funkcije
- Dodati na glavni frame tipku za otvaranje editora tokova
- Dodati povratnu info o odabranim sourceovima u glavni frame blizu te tipke
- Omoguciti checkbox "Auto hide on Start" na glavnom sucelju i spustiti aplikaciju na taskbar ili u tray
- Profile pohranjivati u text fajlove u Lecto folder
- Podrzati listanje audio i video codeca u ovisnosti o odabranom containeru. za h264 omoguciti polje quality factor i definirati kako ce se to omoguciti za druge kodeke u buducnosti
- Auto podesavanje izlaznog foldera na svim izvorima preko checkboxa i pamcenje izlaznog foldera
- Auto dodavanje datuma i vremena na ime fajla
- U izbornik dodati opciju Run custom ffmpeg command i unesenu naredbu izvrsiti u command promptu (da se vidi izlaz)
- dodati Tipku Pause - onemoguciti promjenu parametara ako je ona ikad pritisnuta i nakon pritiska na Stop konkatenirati generirane fajlove
- Istraziti i dokumentirati komunikaciju i odnose izmedu procesa koji se pozivaju i jave. mozemo li imati live text log koji je output pozvanog ffmpeg procesa?
3. Podrska za Mac OS i Unix
- Omoguciti da se izvrsava i tamo. Dokumentirati specificnosti.
4. Proofanje
- 32 vs 64 bita - prekontrolirati da li je ffmpeg u skladu s verzijom jave koja se koristi
- Dokumentiranje funkcija (pozeljno cijelo vrijeme)
- Dodati info o pogreškama tipa odspojen video izvor koji se koristi u profilu, pogresno procitan output ffmpega, nenaden ffmpeg alat, ...
==== Rezultat ====
==== Zaključak ====
~~NOTOC~~