Vytvoření AVI videa z obrázků

Re:Vytvoření AVI videa z obrázků
« Odpověď #15 kdy: 26. 04. 2017, 20:36:27 »


Prostě do ffmpegu napajpuješ jednotlivé framy po sobě. Osobně bych to dělal takhle:

Kód: [Vybrat]
for f in *.png; do convert $f do_netpbm_typu_P6 - | tail -n +uřízni_hlavičku; done | ffmpeg -i - -f rgb24 -crf 5 -y out.mkv

Co si mam predstavovat pod "+uřízni_hlavičku" to moc nechapu, jak to tam zadam. Kdyz dam jen tail -n, nejde to:
tail: option requires an argument -- 'n'
Try `tail --help' for more information.

Na konci celeho cyklu konvertu:
pipe:: Invalid data found when processing input


Re:Vytvoření AVI videa z obrázků
« Odpověď #16 kdy: 26. 04. 2017, 20:52:35 »
Kód: [Vybrat]
ls | sort > seznam.txt
a pak
Kód: [Vybrat]
ffmpeg -f concat -i seznam.txt -c:v huffyuv -pix_fmt yuv422p output.avi

Vytvoreni seznamu je OK, pak ale ffmpeg zahlasi chybu.

[concat @ 0x5427900] Line 1: unknown keyword 'Image0000000004_MAP_Interpolated_MOLA_TEMP.png'
seznam.txt: Invalid data found when processing input

Zmineny nazev obrazku je pro prvni obrazek v rade (jak prvni v abecede tak prvni vytvoreny tak prvni v seznamu) (nikoliv ctvrty, cisla nejdou po jedne).

Asi i mam nejakou divnou verzi, ktera nezna moc formatu. Takze jsem zkousel ruzne mixovat poradi parametru a ruzne formaty.

format mpeg to zna. Ale 1800 onrazku to zpracovalo prilis rychle. A asi moc nedba na rozliseni, pouzije deafultni nastaveni, tedy:
tream #0:0: Video: ansi, pal8, 640x400, 25 fps, 25 tbr, 25 tbn, 25 tbc

Nakonec mi vytvoril video po tomto prikazu:

ffmpeg -f mpg concat -i seznam.txt out.mkv

Video z 1800 obrazku ma jen 60 MB.

Ted jak tam dostat nastaveni. Rozliseni stejne jako obrazky, kvalita vysoka pro dalsi zpracovani a fps 30 a 10 snimku za sekundu

balmr

Re:Vytvoření AVI videa z obrázků
« Odpověď #17 kdy: 26. 04. 2017, 21:01:22 »
Vytvoreni seznamu je OK, pak ale ffmpeg zahlasi chybu.

[concat @ 0x5427900] Line 1: unknown keyword 'Image0000000004_MAP_Interpolated_MOLA_TEMP.png'
seznam.txt: Invalid data found when processing input

Kurna chlape to te tady musime vodit za rucicku ci co? google.com znas? pastnout tam chybu umis? Kdybys kousek pohl dvema prsty na klavesnici tak jsi to uz moh mit hotovy pred tejdnem a ne tady cekat na kazdou odpoved.

1. takze bingovani pro dummies: http://tinyurl.com/kjlnzsu
2. klikni na prvni hit, ano je to tohle: https://trac.ffmpeg.org/wiki/Concatenate
3. koukni se do dokumentace a uvidis ze nestaci mit v seznamu jen nazev souboru ale je potreba i klicove slovo a nazev dat do uvozovek: file '/path/to/file1'
4. jeste se opovaz tu napsat otazku jak se pridava file a obaluje soubor uvozvkama a pretahnu te po hlave knihou Bash for dummies! Tohle uz snad vybingovat zvladnes :-D

Jenda

Re:Vytvoření AVI videa z obrázků
« Odpověď #18 kdy: 26. 04. 2017, 22:32:38 »
To je lez. Klidne si dej 20GB film jako -i velkej.film.mp4 a zbehne ti to i na 4GB RAM masine
Ale já jsem nemluvil o -i jeden_film, ale o -i maska_tisíce_obrázků - ze kterého to otevře z každého jeden frame. Nicméně teď se mi to nepodařilo zreprodukovat, takže je možné, že jsem si to fakt s něčím spletl. Ale živě si pamatuju, že jsem takhle někam naskládal tisíc framů (možná to bylo nějak trochu jinak nebo si to dokonce pletu s ImageMagickem) a počítač se mi uswapovat k smrti.

Vytvoreni seznamu je OK, pak ale ffmpeg zahlasi chybu.

[concat @ 0x5427900] Line 1: unknown keyword 'Image0000000004_MAP_Interpolated_MOLA_TEMP.png'
seznam.txt: Invalid data found when processing input
Můj seznam musí mít tento formát:
Kód: [Vybrat]
file 'rec-2017-03-02T20-26-04.mkv'
file 'rec-2017-03-02T20-39-24.mkv'
(bez záruky)

Co si mam predstavovat pod "+uřízni_hlavičku" to moc nechapu, jak to tam zadam.
Kdyby sis přečetl odkazovaný článek na Wikipedii nebo si zkusil jeden ten soubor vyrobit, tak bys zjistil, že na začátku je hlavička a pak následují data obrázku. Nevím, kolik řádků hlavička má, tak jsem čekal, že si to zjistíš a napíšeš tam správné číslo.

ByCzech

  • *****
  • 1 830
    • Zobrazit profil
    • E-mail
Re:Vytvoření AVI videa z obrázků
« Odpověď #19 kdy: 27. 04. 2017, 06:22:07 »
@Honza1Ubuntu

Hele taky ti doporučuji trochu se snažit a používat manuály a vyhledávače... :)

Viz např: https://trac.ffmpeg.org/wiki/Slideshow#Concatdemuxer

Otázka 2 s najít jak má vypadat soubor se seznamem obrázků ;-)


Re:Vytvoření AVI videa z obrázků
« Odpověď #20 kdy: 27. 04. 2017, 10:18:21 »
Vytvoreni seznamu je OK, pak ale ffmpeg zahlasi chybu.

[concat @ 0x5427900] Line 1: unknown keyword 'Image0000000004_MAP_Interpolated_MOLA_TEMP.png'
seznam.txt: Invalid data found when processing input

Kurna chlape to te tady musime vodit za rucicku ci co? google.com znas? pastnout tam chybu umis? Kdybys kousek pohl dvema prsty na klavesnici tak jsi to uz moh mit hotovy pred tejdnem a ne tady cekat na kazdou odpoved.

1. takze bingovani pro dummies: http://tinyurl.com/kjlnzsu
2. klikni na prvni hit, ano je to tohle: https://trac.ffmpeg.org/wiki/Concatenate
3. koukni se do dokumentace a uvidis ze nestaci mit v seznamu jen nazev souboru ale je potreba i klicove slovo a nazev dat do uvozovek: file '/path/to/file1'
4. jeste se opovaz tu napsat otazku jak se pridava file a obaluje soubor uvozvkama a pretahnu te po hlave knihou Bash for dummies! Tohle uz snad vybingovat zvladnes :-D

Vsak clovek se snazil vyhledavat, kde jak co nastavit. Pouzil jsem jak jiz navrhovane postupy a frmaty v tomto vlakne, tak jsem se snazil vygooglit jak na to. Hral jsem si s tim docela dlohou. Asi mam nejakou divnou verzi, ale naprosta vetsina navrhovanych formatu nejde. Stejne tak jako fps a rozliseni byl problem do ffmpegu narvat. Nakonec se to povedlo, zakladni formaty zna a udaje o rozliseni, fps a kompresi musi byt nejspis pred i za concat. samotny seznam v puvodni podobe funguje, to na to nemelo vliv. Ale prohazet se musi jednotlive parametry v prikazu.

Takze:
ls | sort > seznam.txt
ffmpeg -f h264 -s 2000x1000 -r 30 -x264-params crf=0  concat -i seznam.txt -f h264 -s 2000x1000 -r 30 -x264-params crf=0 out.mkv

crf=0 dava okolo 1 BM videa na 1 s, crf=1 temer o poloviny mensi video, velikost je OK.

Jde i pouzit prakticky bez komprese rawwideo, to ale dava cca 1 GB na minutu videa (16-17 MB/s)
.
/opt/ffmpeg-3.1.3-64bit-static/ffmpeg -f rawvideo -s 2000x1000 -r 30 concat -i seznam.txt -f rawvideo -s 2000x1000 -r 30 out.mkv

Tenhle prikaz vezme pouze prvnich 500 obrazku, video je dlouhe 16,5 s jen. Takze taky tam neco bude blbe.

Re:Vytvoření AVI videa z obrázků
« Odpověď #21 kdy: 27. 04. 2017, 10:22:40 »
4. jeste se opovaz tu napsat otazku jak se pridava file a obaluje soubor uvozvkama a pretahnu te po hlave knihou Bash for dummies! Tohle uz snad vybingovat zvladnes :-D

Narozdil of ffmpeg, prikazy typu sed,grep,gawk,cut,tr pouzivam uz par let a v parsingu textu se relativne vyznam. Pretahnuti manualem po hlave bude take obtizne, nebot lokalizace moji IP lokalizuje Exit TOR node.

Re:Vytvoření AVI videa z obrázků
« Odpověď #22 kdy: 27. 04. 2017, 10:26:05 »
@Honza1Ubuntu

Hele taky ti doporučuji trochu se snažit a používat manuály a vyhledávače... :)

Viz např: https://trac.ffmpeg.org/wiki/Slideshow#Concatdemuxer

Otázka 2 s najít jak má vypadat soubor se seznamem obrázků ;-)

Pouzity byly, stejne tak jako navrhovane prikazy. Problem se seznamem byl stejne jinde. Potreba bylo prehazet parametry zadani. Navrovane formaty casto ffmpeg neznal a rozliseni takyignoroval. Ted to bere jen prvnich 500 obrazku, taky divne.

Ucitel

Re:Vytvoření AVI videa z obrázků
« Odpověď #23 kdy: 27. 04. 2017, 10:37:04 »
Mozna mu pomuze -frames:v 10000  kde to cislo je pocet obrazku ktere tam potrebujes dat

Re:Vytvoření AVI videa z obrázků
« Odpověď #24 kdy: 27. 04. 2017, 11:30:17 »
Mozna mu pomuze -frames:v 10000  kde to cislo je pocet obrazku ktere tam potrebujes dat

Tam bude neco jinyho, vypada to na parametr q. Uz par hodin se snazim na to prijit ruznymi nastavenimi, a nic. Skonci po par sekundach na obrazku 567. V testovacim adresari je celkem 1800 obrazku, coz by melo dat minutu videa.

HLASENI KE KONCI:


Kód: [Vybrat]
frame=   26 fps=8.7 q=0.0 q=0.0 size=     102kB time=00:00:00.03 bitrate=24946.3kbits/s dup=8 drop=0 speedframe=   27 fps=5.0 q=0.0 q=0.0 size=     202kB time=00:00:00.06 bitrate=24843.8kbits/s dup=8 drop=0 speedframe=   29 fps=4.7 q=0.0 q=0.0 size=     403kB time=00:00:00.13 bitrate=24736.6kbits/s dup=10 drop=0 speeframe=   30 fps=4.4 q=0.0 q=0.0 size=     403kB time=00:00:00.16 bitrate=19792.7kbits/s dup=10 drop=0 speeframe=   47 fps=6.4 q=0.0 q=0.0 size=     915kB time=00:00:00.73 bitrate=10218.0kbits/s dup=16 drop=0 speeframe=   53 fps=6.6 q=0.0 q=0.0 size=    1014kB time=00:00:00.93 bitrate=8896.6kbits/s dup=18 drop=0 speedframe=   54 fps=6.3 q=0.0 q=0.0 size=    1014kB time=00:00:00.96 bitrate=8590.4kbits/s dup=18 drop=0 speedframe=   71 fps=7.8 q=0.0 q=0.0 size=    1330kB time=00:00:01.53 bitrate=7104.8kbits/s dup=24 drop=0 speedframe=   86 fps=8.9 q=0.0 q=0.0 size=    1554kB time=00:00:02.03 bitrate=6261.7kbits/s dup=28 drop=0 speedframe=  102 fps= 10 q=0.0 q=0.0 size=    1824kB time=00:00:02.56 bitrate=5822.0kbits/s dup=34 drop=0 speedframe=  120 fps= 11 q=0.0 q=0.0 size=    2104kB time=00:00:03.16 bitrate=5443.0kbits/s dup=40 drop=0 speedframe=  137 fps= 12 q=0.0 q=0.0 size=    2399kB time=00:00:03.73 bitrate=5264.6kbits/s dup=46 drop=0 speedframe=  155 fps= 13 q=0.0 q=0.0 size=    2671kB time=00:00:04.33 bitrate=5050.3kbits/s dup=52 drop=0 speedframe=  173 fps= 14 q=0.0 q=0.0 size=    2980kB time=00:00:04.93 bitrate=4948.7kbits/s dup=58 drop=0 speedframe=  189 fps= 15 q=0.0 q=0.0 size=    3254kB time=00:00:05.46 bitrate=4876.2kbits/s dup=62 drop=0 speedframe=  206 fps= 15 q=0.0 q=0.0 size=    3526kB time=00:00:06.03 bitrate=4787.9kbits/s dup=68 drop=0 speedframe=  222 fps= 16 q=0.0 q=0.0 size=    3780kB time=00:00:06.56 bitrate=4715.5kbits/s dup=74 drop=0 speedframe=  240 fps= 17 q=0.0 q=0.0 size=    4064kB time=00:00:07.16 bitrate=4645.5kbits/s dup=80 drop=0 speedframe=  257 fps= 17 q=0.0 q=0.0 size=    4358kB time=00:00:07.73 bitrate=4616.6kbits/s dup=86 drop=0 speedframe=  275 fps= 18 q=0.0 q=0.0 size=    4637kB time=00:00:08.33 bitrate=4558.3kbits/s dup=92 drop=0 speedframe=  290 fps= 18 q=0.0 q=0.0 size=    5550kB time=00:00:08.83 bitrate=5146.7kbits/s dup=96 drop=0 speedframe=  307 fps= 19 q=0.0 q=0.0 size=    5812kB time=00:00:09.40 bitrate=5065.3kbits/s dup=102 drop=0 speeframe=  325 fps= 19 q=0.0 q=0.0 size=    6118kB time=00:00:10.00 bitrate=5012.0kbits/s dup=108 drop=0 speeframe=  342 fps= 19 q=0.0 q=0.0 size=    6392kB time=00:00:10.56 bitrate=4955.1kbits/s dup=114 drop=0 speeframe=  359 fps= 20 q=0.0 q=0.0 size=    6693kB time=00:00:11.13 bitrate=4924.5kbits/s dup=120 drop=0 speeframe=  377 fps= 20 q=0.0 q=0.0 size=    6975kB time=00:00:11.73 bitrate=4870.0kbits/s dup=126 drop=0 speeframe=  393 fps= 21 q=0.0 q=0.0 size=    7217kB time=00:00:12.26 bitrate=4819.9kbits/s dup=130 drop=0 speeframe=  409 fps= 21 q=0.0 q=0.0 size=    7475kB time=00:00:12.80 bitrate=4784.2kbits/s dup=136 drop=0 speeframe=  423 fps= 21 q=0.0 q=0.0 size=    7721kB time=00:00:13.26 bitrate=4767.8kbits/s dup=140 drop=0 speeframe=  440 fps= 21 q=0.0 q=0.0 size=    7999kB time=00:00:13.83 bitrate=4737.1kbits/s dup=146 drop=0 speeframe=  455 fps= 21 q=0.0 q=0.0 size=    8256kB time=00:00:14.33 bitrate=4718.8kbits/s dup=152 drop=0 speeframe=  470 fps= 22 q=0.0 q=0.0 size=    8480kB time=00:00:14.83 bitrate=4683.2kbits/s dup=156 drop=0 speeframe=  486 fps= 22 q=0.0 q=0.0 size=    8744kB time=00:00:15.36 bitrate=4661.6kbits/s dup=162 drop=0 speeframe=  503 fps= 22 q=0.0 q=0.0 size=    9030kB time=00:00:15.93 bitrate=4642.7kbits/s dup=168 drop=0 speeframe=  518 fps= 22 q=0.0 q=0.0 size=    9260kB time=00:00:16.43 bitrate=4616.3kbits/s dup=172 drop=0 speeframe=  534 fps= 22 q=0.0 q=0.0 size=   10126kB time=00:00:16.96 bitrate=4889.0kbits/s dup=178 drop=0 speeframe=  551 fps= 23 q=0.0 q=0.0 size=   10433kB time=00:00:17.53 bitrate=4874.5kbits/s dup=184 drop=0 speeframe=  566 fps= 23 q=0.0 q=0.0 size=   10680kB time=00:00:18.03 bitrate=4851.8kbits/s dup=188 drop=0 speeframe=  567 fps= 23 q=-1.0 Lq=-1.0 size=   11112kB time=00:00:18.90 bitrate=4816.4kbits/s dup=188 drop=0 speed=0.751x   
video:22224kB audio:0kB subtitle:0kB other streams:0kB global headers:0kB muxing overhead: unknown
[libx264 @ 0x49f8cc0] frame I:3     Avg QP: 0.00  size:474717
[libx264 @ 0x49f8cc0] frame P:564   Avg QP: 0.00  size: 17650
[libx264 @ 0x49f8cc0] mb I  I16..4: 52.4%  0.0% 47.6%
[libx264 @ 0x49f8cc0] mb P  I16..4:  0.6%  0.0%  0.8%  P16..4:  1.2%  0.3%  0.7%  0.0%  0.0%    skip:96.5%
[libx264 @ 0x49f8cc0] 8x8 transform intra:0.0% inter:11.4%
[libx264 @ 0x49f8cc0] coded y,u,v intra: 56.7% 0.0% 0.0% inter: 1.2% 0.0% 0.0%
[libx264 @ 0x49f8cc0] i16 v,h,dc,p: 85% 14%  1%  0%
[libx264 @ 0x49f8cc0] i4 v,h,dc,ddl,ddr,vr,hd,vl,hu: 44% 43%  2%  3%  3%  1%  1%  0%  2%
[libx264 @ 0x49f8cc0] Weighted P-Frames: Y:0.0% UV:0.0%
[libx264 @ 0x49f8cc0] ref P L0: 49.9%  1.1% 25.2% 23.9%
[libx264 @ 0x49f8cc0] kb/s:4816.41
[libx264 @ 0x4a152e0] frame I:3     Avg QP: 0.00  size:474717
[libx264 @ 0x4a152e0] frame P:564   Avg QP: 0.00  size: 17650
[libx264 @ 0x4a152e0] mb I  I16..4: 52.4%  0.0% 47.6%
[libx264 @ 0x4a152e0] mb P  I16..4:  0.6%  0.0%  0.8%  P16..4:  1.2%  0.3%  0.7%  0.0%  0.0%    skip:96.5%
[libx264 @ 0x4a152e0] 8x8 transform intra:0.0% inter:11.4%
[libx264 @ 0x4a152e0] coded y,u,v intra: 56.7% 0.0% 0.0% inter: 1.2% 0.0% 0.0%
[libx264 @ 0x4a152e0] i16 v,h,dc,p: 85% 14%  1%  0%
[libx264 @ 0x4a152e0] i4 v,h,dc,ddl,ddr,vr,hd,vl,hu: 44% 43%  2%  3%  3%  1%  1%  0%  2%
[libx264 @ 0x4a152e0] Weighted P-Frames: Y:0.0% UV:0.0%
[libx264 @ 0x4a152e0] ref P L0: 49.9%  1.1% 25.2% 23.9%
[libx264 @ 0x4a152e0] kb/s:4816.41


Re:Vytvoření AVI videa z obrázků
« Odpověď #25 kdy: 27. 04. 2017, 13:45:34 »
On nakonec stejne concat neni potreba. Pouziti concat udela jedno video a pak stejne vysledne video o uplne stejne velikosti. Obe videa jsou pravdepodbne stejna a obe sezerou pri vytvareni stejne CPU a RAM.

Pri pouziti concat: vyuziti 8 jader CPU, RAM VIRT 5 GB RES 2,2 GB, rychlost 28-31 FPS.

Pouziti rovnou ze seznamu:
Kód: [Vybrat]
ffmpeg -framerate 30 -i seznam.txt -f h264 -s 2000x1000 -frames 100000 -x264-params crf=0
Vyuziti CPU 8 jader, RAM VIRT 2564 MB RES 1,1 GB rychlost 55-63 FPS.

Problem ale je, ze ffmpeg vytvori video z necele tretiny obrazku, zkousel jsem 3 ruzne datove sety a mnoho variant prikazu. Posledni varianta bez concat, stejne tak jako vsechny ostatni. Bez concat je i kratsi vypis prubehu.

Kompletni vypis prubehu:
Kód: [Vybrat]
ffmpeg version 3.1.3-static http://johnvansickle.com/ffmpeg/  Copyright (c) 2000-2016 the FFmpeg developers
  built with gcc 5.4.1 (Debian 5.4.1-1) 20160803
  configuration: --enable-gpl --enable-version3 --enable-static --disable-debug --enable-libmp3lame --enable-libx264 --enable-libx265 --enable-libwebp --enable-libspeex --enable-libvorbis --enable-libvpx --enable-libfreetype --enable-fontconfig --enable-libxvid --enable-libopencore-amrnb --enable-libopencore-amrwb --enable-libtheora --enable-libvo-amrwbenc --enable-gray --enable-libopenjpeg --enable-libopus --enable-libass --enable-gnutls --enable-libvidstab --enable-libsoxr --enable-frei0r --enable-libfribidi --disable-indev=sndio --disable-outdev=sndio --enable-librtmp --enable-libmfx --enable-libzimg --cc=gcc-5
  libavutil      55. 28.100 / 55. 28.100
  libavcodec     57. 48.101 / 57. 48.101
  libavformat    57. 41.100 / 57. 41.100
  libavdevice    57.  0.101 / 57.  0.101
  libavfilter     6. 47.100 /  6. 47.100
  libswscale      4.  1.100 /  4.  1.100
  libswresample   2.  1.100 /  2.  1.100
  libpostproc    54.  0.100 / 54.  0.100
Input #0, tty, from 'seznam.txt':
  Duration: 00:10:29.70, bitrate: 47 kb/s
    Stream #0:0: Video: ansi, pal8, 640x400, 30 fps, 30 tbr, 30 tbn, 30 tbc
File 'out.mkv' already exists. Overwrite ? [y/N] y
No pixel format specified, yuv444p for H.264 encoding chosen.
Use -pix_fmt yuv420p for compatibility with outdated media players.
[libx264 @ 0x3b44ae0] using cpu capabilities: MMX2 SSE2Fast LZCNT
[libx264 @ 0x3b44ae0] profile High 4:4:4 Predictive, level 4.0, 4:4:4 8-bit
[h264 @ 0x3b43380] Using AVStream.codec to pass codec parameters to muxers is deprecated, use AVStream.codecpar instead.
Output #0, h264, to 'out.mkv':
  Metadata:
    encoder         : Lavf57.41.100
    Stream #0:0: Video: h264 (libx264), yuv444p, 2000x1000, q=-1--1, 30 fps, 30 tbn, 30 tbc
    Metadata:
      encoder         : Lavc57.48.101 libx264
    Side data:
      cpb: bitrate max/min/avg: 0/0/0 buffer size: 0 vbv_delay: -1
Stream mapping:
  Stream #0:0 -> #0:0 (ansi (native) -> h264 (libx264))
Press [q] to stop, [?] for help
frame=18891 fps= 60 q=-1.0 Lsize=  230638kB time=00:10:29.70 bitrate=3000.5kbits/s speed=   2x   
video:230638kB audio:0kB subtitle:0kB other streams:0kB global headers:0kB muxing overhead: 0.000000%
[libx264 @ 0x3b44ae0] frame I:76    Avg QP: 0.00  size:629379
[libx264 @ 0x3b44ae0] frame P:18815 Avg QP: 0.00  size: 10010
[libx264 @ 0x3b44ae0] mb I  I16..4: 37.9%  0.0% 62.1%
[libx264 @ 0x3b44ae0] mb P  I16..4:  0.7%  0.0%  0.4%  P16..4:  2.3%  0.4%  0.4%  0.0%  0.0%    skip:95.7%
[libx264 @ 0x3b44ae0] 8x8 transform intra:0.0% inter:9.2%
[libx264 @ 0x3b44ae0] coded y,u,v intra: 43.4% 0.0% 0.0% inter: 0.9% 0.0% 0.0%
[libx264 @ 0x3b44ae0] i16 v,h,dc,p: 92%  7%  0%  0%
[libx264 @ 0x3b44ae0] i4 v,h,dc,ddl,ddr,vr,hd,vl,hu: 44% 43%  3%  3%  3%  0%  2%  0%  2%
[libx264 @ 0x3b44ae0] Weighted P-Frames: Y:0.0% UV:0.0%
[libx264 @ 0x3b44ae0] ref P L0: 24.2%  0.5% 14.7% 60.5%
[libx264 @ 0x3b44ae0] kb/s:3000.45

Re:Vytvoření AVI videa z obrázků
« Odpověď #26 kdy: 27. 04. 2017, 16:08:37 »
Vyzkouseno bylo velm mnoho kombinaci, nez jsm dosel k reseni.

Ruzne prejmenovani obrazku, pridani, odebrani casti nazvu a pod. Take byl ruzne zkousen format seznamu, list souboru, file "file" i file 'file'. Zkouseny byly ruzne formaty videa. I byl zkousen convert prez concat i linkovani prmo seznamu obrazku. Zkouseny ruzne datasety.

Pokud se dobre napsali parametru v poradi, vytvareni videa se rozbehlo, casto to ale zkoncilo chybou kvuli poradu parametru. Ale video se vzdy vytvorilo neuplne, po 7-30% poctu obrazku zkoncilo z neznameho duvodu. Kolik obrazku bylo zpracovano, to zavisi jen, jakse soubory v seznamu jmenuji. Jen cislo.png (nejdo po 1), IM_cislo.png IM_Cislo_dalsinazev.png, pokazde byl pocet zpracovanych obrazku jiny.

zkousel jsem to prez pipe,
Kód: [Vybrat]
cat *.png | ffmpeg -f image2pipe -i
ale tam to hned skoncilo chybou Argument List too long. (obrazku je cca 60 000), podle vseho nesmi byt argument list (pocet znaku) vetsi nez 1 MB, nebo 2na20.

Reseni, kdy mi to vzalo vsechny obrazku, je tzv. Glob pattern *:

Kód: [Vybrat]
ffmpeg -framerate 30 -pattern_type glob -i '*.png' -c:v h264 -s 2000x1000 -x264-params crf=0 OutputFile.mkv

Pravda, nepodarilo se mi tam zadat format yuv420p, misto toho je tam deafultne yuv444p. Zabralo to RAM: VIRT 3173 M RES 1,1 G a cpu to zabralo k 1000% (kolisa 800-1100%), tedy10 vlaken z 16 soucasne. Rychlost 36fps, tedy 1,2 nasobek rychlosti prehravani. Velikost videa 5689 M a cas videa 00:34:24,57, 30 fps, 2000x1000. Obrazky byly prejmenovany na cislo.png, kde cisla jsou vzdy 9-mistna, jako seq -w (000000001.png a pod), zmena cisla nejdou po 1, ale se stejnym krokem. Abecedni seznam je totozny se seznamem datumu-modifikace.

TAK SNAD VYRESNO.

Otazkou je, zdali to vzalo obrazky v poradi spravnem. Jak obrazky prejmenovat na Obr000001.png, Obr000002.png Obr000003.png, to se zatim nepodarilo.

Vysledne hlaseni:
Kód: [Vybrat]
ffmpeg version 3.1.3-static http://johnvansickle.com/ffmpeg/  Copyright (c) 2000-2016 the FFmpeg developers
  built with gcc 5.4.1 (Debian 5.4.1-1) 20160803
  configuration: --enable-gpl --enable-version3 --enable-static --disable-debug --enable-libmp3lame --enable-libx264 --enable-libx265 --enable-libwebp --enable-libspeex --enable-libvorbis --enable-libvpx --enable-libfreetype --enable-fontconfig --enable-libxvid --enable-libopencore-amrnb --enable-libopencore-amrwb --enable-libtheora --enable-libvo-amrwbenc --enable-gray --enable-libopenjpeg --enable-libopus --enable-libass --enable-gnutls --enable-libvidstab --enable-libsoxr --enable-frei0r --enable-libfribidi --disable-indev=sndio --disable-outdev=sndio --enable-librtmp --enable-libmfx --enable-libzimg --cc=gcc-5
  libavutil      55. 28.100 / 55. 28.100
  libavcodec     57. 48.101 / 57. 48.101
  libavformat    57. 41.100 / 57. 41.100
  libavdevice    57.  0.101 / 57.  0.101
  libavfilter     6. 47.100 /  6. 47.100
  libswscale      4.  1.100 /  4.  1.100
  libswresample   2.  1.100 /  2.  1.100
  libpostproc    54.  0.100 / 54.  0.100
Input #0, image2, from '*.png':
  Duration: 00:34:24.57, start: 0.000000, bitrate: N/A
    Stream #0:0: Video: png, pal8(pc), 2000x1000 [SAR 72:72 DAR 2:1], 30 fps, 30 tbr, 30 tbn, 30 tbc
No pixel format specified, yuv444p for H.264 encoding chosen.
Use -pix_fmt yuv420p for compatibility with outdated media players.
[libx264 @ 0x558e4e0] using SAR=1/1
[libx264 @ 0x558e4e0] using cpu capabilities: MMX2 SSE2Fast LZCNT
[libx264 @ 0x558e4e0] profile High 4:4:4 Predictive, level 4.0, 4:4:4 8-bit
[libx264 @ 0x558e4e0] 264 - core 148 r276 3f5ed56 - H.264/MPEG-4 AVC codec - Copyleft 2003-2016 - http://www.videolan.org/x264.html - options: cabac=1 ref=3 deblock=1:0:0 analyse=0x1:0x111 me=hex subme=7 psy=0 mixed_ref=1 me_range=16 chroma_me=1 trellis=0 8x8dct=1 cqm=0 deadzone=21,11 fast_pskip=0 chroma_qp_offset=0 threads=24 lookahead_threads=4 sliced_threads=0 nr=0 decimate=1 interlaced=0 bluray_compat=0 constrained_intra=0 bframes=0 weightp=2 keyint=250 keyint_min=25 scenecut=40 intra_refresh=0 rc=cqp mbtree=0 qp=0
[matroska @ 0x5546d40] Using AVStream.codec to pass codec parameters to muxers is deprecated, use AVStream.codecpar instead.
Output #0, matroska, to 'OutputFile.mkv':
  Metadata:
    encoder         : Lavf57.41.100
    Stream #0:0: Video: h264 (libx264) (H264 / 0x34363248), yuv444p, 2000x1000 [SAR 1:1 DAR 2:1], q=-1--1, 30 fps, 1k tbn, 30 tbc
    Metadata:
      encoder         : Lavc57.48.101 libx264
    Side data:
      cpb: bitrate max/min/avg: 0/0/0 buffer size: 0 vbv_delay: -1
Stream mapping:
  Stream #0:0 -> #0:0 (png (native) -> h264 (libx264))
Press [q] to stop, [?] for help
frame=61937 fps= 36 q=-1.0 Lsize= 5825753kB time=00:34:24.53 bitrate=23116.4kbits/s speed= 1.2x   
video:5825243kB audio:0kB subtitle:0kB other streams:0kB global headers:0kB muxing overhead: 0.008758%
[libx264 @ 0x558e4e0] frame I:248   Avg QP: 0.00  size:262235
[libx264 @ 0x558e4e0] frame P:61689 Avg QP: 0.00  size: 95641
[libx264 @ 0x558e4e0] mb I  I16..4: 95.3%  0.0%  4.7%
[libx264 @ 0x558e4e0] mb P  I16..4:  4.9%  0.0%  0.0%  P16..4: 29.0%  8.8% 10.6%  0.0%  0.0%    skip:46.8%
[libx264 @ 0x558e4e0] 8x8 transform intra:0.0% inter:31.7%
[libx264 @ 0x558e4e0] coded y,u,v intra: 50.6% 50.4% 48.3% inter: 32.3% 31.8% 31.7%
[libx264 @ 0x558e4e0] i16 v,h,dc,p: 33% 67%  0%  0%
[libx264 @ 0x558e4e0] i4 v,h,dc,ddl,ddr,vr,hd,vl,hu: 41% 40% 11%  1%  1%  1%  1%  1%  3%
[libx264 @ 0x558e4e0] Weighted P-Frames: Y:0.0% UV:0.0%
[libx264 @ 0x558e4e0] ref P L0: 63.5%  0.0% 23.5% 13.0%
[libx264 @ 0x558e4e0] kb/s:23113.99

Jerry

Re:Vytvoření AVI videa z obrázků
« Odpověď #27 kdy: 27. 04. 2017, 17:24:09 »
...hele a co zkusit VirtualDUB + XVid codec .. to by bylo asi nejjednodušší ne ?

http://www.virtualdub.org/
https://www.slunecnice.cz/sw/xvid-codec-koepi/

Jenda

Re:Vytvoření AVI videa z obrázků
« Odpověď #28 kdy: 27. 04. 2017, 18:18:14 »
Jo, jasně, to bude určitě lepší a jednodušší na rozchození než ta implementace MPEG-4 Part 2 co už je dávno v ffmpegu.

Honza1

Re:Vytvoření AVI videa z obrázků
« Odpověď #29 kdy: 27. 04. 2017, 20:34:10 »
...hele a co zkusit VirtualDUB + XVid codec .. to by bylo asi nejjednodušší ne ?

http://www.virtualdub.org/
https://www.slunecnice.cz/sw/xvid-codec-koepi/

Tak to jsem pouzival az do ted. On snad ani VirtualDub neni pro Linux.
Stahnul jsem si obrazky ze serveru pomoci WinScp, prejmenoval v Total Commander na IM00001.png IM00002.png , natahnul do Virtual Dubu a pak udelal video (AVI, stary codec "Cinepac Codex By Radius", kvalita 100 %, pri 2000x1000 30fps vysla hodnina na 13-25 GiB, coz neni tak strasny).

Pak jsem video prekonvertoval v HandBrake, nebo ve WinScp pretahnout zpet na server.

HandBrake umi davkove zpracovani, i multithreading, virtual dub nikoliv. To ale nevadi, pustil jsem 4 virtual duby najednou.

Problem je, ze porad musi clovek byt u windowasackeho PC, vse odklikat, nechat bezet, pak zase odklikat a kazda akce ma prodlevu. Navic prez den se kolem windowskych stroju porad nekdo mota s stroj obcas vypne.

HLAVNI CIL JE PRACOVAT Z DALKY NA VYKONEM LINUXOVEM STROJI, JEN PREZ TERMINAL. Pracovat na dalku je to nejdulezitejsi.