avi (divx) fájlt szeretnék négyszeres tempóra gyorsítani. audio információra nincs szükségem (így nem is zavaró a plusz két oktáv), csak a videóval kéne huncutkodni. ötlet?
köszi!
Hozzászólások
btw: olyan megoldás kellene, ami a lejátszási időnél gyorsabban működik, és külön öröm, ha a "minden négy képkockából hármat törlünk" megoldásnál egy lépcsőfokkal elegánsabb.
ovc copy=output video codec _másolata_ legyen a bemenetnek (bit/bit)
de amit lent ír ssa2, vagy annak mintájára, átkódolni lehet, szerintem az kell neked, (esetleg xvid vagy más az x264 helyett, "ovc list" vagy valami ilyesmi ad egy listát)
szerk.: ha jól értelmezem az avi működését: az erősen tömörített videókból szépen látszik, hogy az avi kép változását rögzíti, nem pedig egyenként a képet. ez logikus, mert a kép nagy része film esetén minimálisan változik, és jól lehet tömöríteni. az átkódolás tehát azért szükséges, mert lényegében nem is léteznek "frame"-ek.
igazából az a kérdés mit akarsz, az eredetire lent úgy gondolom jó választ kaptál, de ha azzal akarod a fájl méretet csökkenteni hogy ezeket a "nem létező" (a hivatalos neve néhány kódolásnál P és B frame-k) eltünteted, akkor igen keveset fogsz csak nyerni vele
(((a P és B frame-k a kulcs képkockákra hivatkoznak amik teljes képet tartalmaznak, azok viszont nincsenek definiálva milyen messze vannak egymástól, a kódoló próbálja a megtalálni hogy mikor változik meg nagyon a kép, de van egy maximum is pl seek miatt, többnyire 300 frame )))
te akartál avit, abban hexaeditorral (linuxossal:) ) egyetlen byte-ot kell átírni, a linkelt szöveg csak azt mutatja melyiket (hint: avi az ms-é)
(azt persze értem hogy ezzel nem lesz kisebb a fájl, de speciel a framek kihagyása nélkül ezt hogy akarod megoldani és miért nem linuxos megoldás ez és miért fúj, azt már nem :) )
Hozzászólások
btw: olyan megoldás kellene, ami a lejátszási időnél gyorsabban működik, és külön öröm, ha a "minden négy képkockából hármat törlünk" megoldásnál egy lépcsőfokkal elegánsabb.
mplayer -speed 4 (-framedrop)
nem lejátszani, fájlba írni...
mencoder -speed 4 (-nosound)
Szerintem a "-ovc copy" is kell hozzá ...
mencoder -o output.avi -speed 4 -nosound -ovc copy input.avi
meg enter is a végén
Én kettőt is szoktam ütni, biztos, ami biztos ... :)
ez nem ugyanaz, mint az én frame-rate-hexeditoros megoldásom? újrakódolás nélkül nehezen lehetne frame-eket kihagyni, lásd P és B frame
--
joco voltam szevasz
nem, nem ugyanaz, mert ez linuxos, nincs az mencoder után a .exe és nem kell hozzá ms doksit olvasni :P
szóval akkor ez a megoldás sem csökkenti a fájlméretet?
ovc copy=output video codec _másolata_ legyen a bemenetnek (bit/bit)
de amit lent ír ssa2, vagy annak mintájára, átkódolni lehet, szerintem az kell neked, (esetleg xvid vagy más az x264 helyett, "ovc list" vagy valami ilyesmi ad egy listát)
-ovc copy másolja az eredeti streamet. ha kisebb fájl kell, újra kell kódolni, már írták lentebb.
--
joco voltam szevasz
ez tiszta az okával együtt. a kérdés a hogyan?
szerk.: ha jól értelmezem az avi működését: az erősen tömörített videókból szépen látszik, hogy az avi kép változását rögzíti, nem pedig egyenként a képet. ez logikus, mert a kép nagy része film esetén minimálisan változik, és jól lehet tömöríteni. az átkódolás tehát azért szükséges, mert lényegében nem is léteznek "frame"-ek.
hm?
igazából az a kérdés mit akarsz, az eredetire lent úgy gondolom jó választ kaptál, de ha azzal akarod a fájl méretet csökkenteni hogy ezeket a "nem létező" (a hivatalos neve néhány kódolásnál P és B frame-k) eltünteted, akkor igen keveset fogsz csak nyerni vele
(((a P és B frame-k a kulcs képkockákra hivatkoznak amik teljes képet tartalmaznak, azok viszont nincsenek definiálva milyen messze vannak egymástól, a kódoló próbálja a megtalálni hogy mikor változik meg nagyon a kép, de van egy maximum is pl seek miatt, többnyire 300 frame )))
értem és mindenkinek köszi a segítséget!
A DivX kódolás működését értelmezted.
:)
AVI RIFF File Reference
Simán átírsz egy mezőt hexeditorban.
--
joco voltam szevasz
egyrészt elsősorban linuxos megoldást keresek, másrészt nem árt, ha a fájl mérete is negyedére csökken, harmadrészt fúj.
te akartál avit, abban hexaeditorral (linuxossal:) ) egyetlen byte-ot kell átírni, a linkelt szöveg csak azt mutatja melyiket (hint: avi az ms-é)
(azt persze értem hogy ezzel nem lesz kisebb a fájl, de speciel a framek kihagyása nélkül ezt hogy akarod megoldani és miért nem linuxos megoldás ez és miért fúj, azt már nem :) )
:) kisebb fájlt szeretnék. ennyi.
mencoder valami.avi -speed 4 -ofps 25 -ovc x264 -x264encopts bitrate=2000 -no
sound -o valami4x.avi
Már ha 25fps-os a bemeneti fájl. Codec lehet tetszés szerinti.
http://en.wikibooks.org/wiki/Kdenlive/Video_effects#Speed
Az AviSynth többféle módon is tud ilyesmit.
:)