Szabványos, alacsony vagy változó frame/sec-es formátum

 ( horvatha | 2010. április 16., péntek - 10:11 )

Kedves HUP-osok!

Multimédiában elég kezdő vagyok, kérlek, segítsetek.

Adott egy video valami szabványos formátumban, amit mencoder, vlc, ... megeszik.
Ebből szeretnék sokkal kisebb helyfoglalásút készíteni úgy, hogy:

a) A hang maradjon (esetleg alacsonyabb bitráta elég, nem kell a szuper minőség)

b) A kép sokszor csak igen lassan, egyszerre csak kis területen változik, ezért elég lehet ritkábban menteni a képeket vagy kisebb bitrátát megadni, mert a képek közti változás kicsi.

c) A kimenet szabványos legyen, azaz egy átlagos Win* vagy Linux installációval le lehessen játszani, ne kelljenek hozzá extra codec-ek.

Saját ötleteim:

1) mencoder-rel mpeg-be vagy avi-ba kódolok alacsony frame/s vagy bit/s értékkel.
Vajon egy átlagos user alap MediaPlayer-rel a Win-es gépén ezt le tudja játszani?

2) Esetleg létezik olyan video formátum, mely nem egyenletes frame/s -et használ és erre konverter, hogy csak akkor ment képet, ha elég nagy differencia gyűlt össze az előző mentetthez képest? Ez olyan DVD-slideshow szerű cucc lenne, csak nem kézzel generálva, hanem egy adott, nyugis videot beetetve.

Vagy valami egész más megoldás?

Előre is kösz!

Hozzászólás megjelenítési lehetőségek

A választott hozzászólás megjelenítési mód a „Beállítás” gombbal rögzíthető.

Bocs, senkinek semmi lövése?

magával azzal hogy a kép egy része nem változik nem kell különösebben foglalkozni, minden mai codec pont ezt (ilyesmiket) használ ki, tartalomtól függően persze a fps-t leveheted, de sokkal inkább ezen kívül *keyframe*gyakoriságot* lehet értelme állítani, ami alapból 300 szokott volt lenni, bár már elég rég játszottam ilyennel, lehet azóta fejlődött a technika, de xvid időkben ez volt

Hello!
Webre akarod optimaiáli az anyagot vagy valami másra? Most biztos sokan me fognak kövezni,de az flv-t próbáld ki.

Üdv.

Kösz az eddigi tanácsokat, de még nem sokra mentem vele, ami szerintem azért van, mert érthetetlenül tettem fel a kérdést. :-)

Megpróbálom újra.

Az igazi probléma az, hogy levelező hallgatóimnak szeretnék rövid idő alatt feladatmegoldásokat elérhetővé tenni. (Fizika) Tapasztalat szerint a legjobb táblánál, élő szó + írás összehangolt használatával tenni ezt, mert mutogatok, magyarázok, átnyilazok képletek közt, .... Ezt egy statikus dokumentum nem tudja. Ráadásul kiszerkeszteni egy számolós példát hosszú idő. (+ az ilyen anyagból könnyű puskát gyártani.)

Ezért az ötletem 0. verziója az, hogy fogok egy kamerát, állványra teszem, és filmre veszem, ahogy egy papíron kidolgozom a megoldást, miközben magyarázok is. (A kamera teljesen a papírt mutatja, nem a pofázmányomat.) Ekkor megmarad a kézi írás szabadsága, egyszerre hallják és látják a dolgot a diákok, ... majdnem, mintha teremben lennénk (csak nem kérdezhetnek közbe).

A 0. verzióval csak az a baj, hogy iszonyatos helyfoglalású fájlokhoz vezet teljesen feleslegesen. Ahogy írok egy papírra, nem kell 25 fps-sel követni, igen kicsit különböznek az egymás utáni képek, ... (innen jön a felvetett probléma).

Ideális megoldás az lenne, ha egy program benyalná a nyers videót, és kimenetén egy spéci, alámondott szövegű "slideshow"-t produkálna: csak akkor adna új képet, ha az számottevően megváltozott (ez nem mindig egyenletes időközönként van), közben a szöveg azért hallatszana (szinkronban a képekkel). Van ilyen szabványos formátum? És konverter?

Kicsit gyengébb megoldás, ha pl. 1 s-onként mentek képet, azaz mencoder-rel 1 fps-re konvertálom a videót. Ezzel az a bajom, hogy más ügyben találkoztam már olyannal, hogy a felhasználók egy nem szabványos fps-ű videót nem tudtak lejátszani, mert a MediaPlayer kötekedett a nem szabványos fps miatt. Tudjátok, melyik formátum az, amiben mondjuk 1-2 fps-es video is szabványosnak számít, tehát várhatóan a hallgatók gond nélkül lejátsszák?

Ha a bitrate-et nyomom le, attól tartok, hogy az egyes képek
életlenek lesznek, nem pedig intelligensen a kis változások követésével nyomja le a szükséges adatmennyiséget a konverter.
Fontos, hogy a képek élesek maradjanak, hogy a szöveg olvasható legyen. Van olyan formátum, ahol ez értelmesen állítgatható?

Előre is kösz a segítséget.

[PS: Tudom, vannak célszoftverek vagy akár PowerPoint-ban is lehet ilyet csinálni, de erre nincs időm. Abban bízok, hogy megoldható az ügy azzal, hogy elmondom a megoldást a kamerának, mintha a diáknak mondanám, majd egy konverter ezt elfogadható méretű hangos slideshow-vá alakítja, és ez üzemszerűen lehetővé teszi tucatszám a megoldások rögzítését.]

Szerintem fogj egy webkamerát, és a kimenetét vlc-vel konvertáld át flv-be. A méretét is lejebb veheted nyugodtan 360 pixel szélesre.

A VLC tudni fogja ezt az adaptív bitráta-csökkentést? Ha igen, milyen paramétereket érdemes birizgálnom a konverziókor és kb. milyen értékűre? Sajnos, mint írtam, tájékozatlan vagyok, kellene valami indulás.

A méret lejjebb vétele nem jó ötlet: mégha vastag tollal is írok a papírra, akkor sem biztos, hogy 360 pixel esetén olvasható marad.

Nem kell neked adaptív bitráta csökkentés. Elég, ha a hangban van (bár ezzel drasztikusan csökkented a lejátszhatóság esélyét). Sokkal jobban csökkenti a fileméretet, ha kissebb és kevesebb a frame. A méretet neked kell belőnöd, hogy mikor olvasható még, az fps szintén paraméterből megadható (mondjuk 5 fps).

Egyébként meg olvasgasd a doksit, rengeteg példa van benne:
http://wiki.videolan.org/Main_Page

Innen is javaslom a transcode aloldalt:
http://wiki.videolan.org/Transcode

konkrét kodeket és paraméterezést most nem tudok friss tapasztalat hiányában, de az biztos hogy ilyen pixelcsökkentés felesleges és káros, sőt ahogy írtam az fps is, hisz épp ez a kodekek célja hogy a változást mentsék csak el, és pont hogy írott szöveg van, nem ilyen youtubos arc beszél

Hello!

Szerintem akkor jársz a legjobban ha fogod magad és a magyarázatot kimented egy külön hang fájlba. Aztán fogod a kamerádat és felveszed az anyagot amit akarsz. Ha meg vagy vele akkor pedig azokat a képkockákat elmented ahol a változások vannak.Majd mondjuk egy virtualdubbal beilleszted a képeket egymás után ahogy akarod és a végén a külön hangfájlt mellé rakod. Ezután már olyan kodekkel elmented az avi fájlodat amilyenbe akarod. Szerintem olyan video kodek nincsen ami bizonyos képkockákat megtart neked és bizonyosakat nem. Azt még mindig tanácsolom viszont hogy a kis helyfoglalás miatt az flv egy opció lehet.
Üdv.

http://www.debugmode.com/wink/

Ezt nézd meg, hátha megoldást ad a problémádra. swf-et tol ki magából.

Bocs, még mindig érdekelne a megoldás, ha van... :-)

Tehát tud valaki olyan formátumot, hogy:
-- tudjak bele free eszközökkel konvertálni (ffmpeg, mencoder)
-- 1-3 fps-es legyen
-- a hangot rendesen tartsa meg
-- nagy felbontású legyen, mert a képek ugyan lassan változnak, de részleteik fontosak
-- szabványos, tehát lejátsszák az elterjedt programok
?

Plusz dolog lenne, ha a konverziókor nem egyszerűen minden 10.-20. kép kerülne a kimenetbe, hanem 10-es 20-as csoportokban a frame-ek átlaga.

Előre is kösz a segítséget!

(A dolog felvett tantermi előadások videofájljainak méret-csökkentéséhez kellene. A hang fontos, jó, ha látják, hogyan alakul a táblán az írás, hova mutogatok, de a mozgás részletei teljesen irrelevánsak. A felbontásból, kép-élességből nem lehet engedni, hogy a vékony vonalak is láthatók maradjanak, de az időbeli lefutás pontos részletei mellőzhetők.)