Nejste přihlášen/a.

Přihlásit se do poradny

 

Ffmpeg - pomalý zápis na rychlou flash

Od: jarina odpovědí: 14 změna:

Pomoc, mám problém v ffmpeg (pouze převod kontejneru -c copy), když je výstupní soubor na flashce (sekvenční zápis 120 MB/s), tak je zápis tragicky pomalý (200 fps což odpovídá asi 5 MB/s). Zdrojové soubory jsou na ramdisku. Když výstup zvolím ten ramdisk, tak je rychlost 50000fps(tedy 1 GB/s), když je výstup SSD notebooku, tak je rychlost jen 30000fps (450 MB/s).

Přitom jsem testoval flashku v Atto, tam má rychlost zápisu bez fronty pro bloky 4,8,16,32,64,128 rychlost 23,28,63,60,60,125 MB/s, což je i tak víc než těch bídných 5 MB/s. Bloky menší (2-0.512 jsem netestova)

Proč je zápis přes ffmpeg tak pomalý?

 

 

14 odpovědí na otázku
Řazeno dle hodnocení

 

 


0x
Fleška je pro tento účel naprosto nevhodná, je pomalá.

 

jarina

četl jsto? Soubory se na ní kopírují 120 MB/s, ale výstup ffmpeg jen 5 MB/s. Ta flash není nějaký krám kingston výběhový model, co prodává místní "it odborník" ve sklepě v každém městě za trojnásobné ceny.

 

jarina

poradíte Někdo dál?

ctenar*

Je rozdíl při zapnuté a vypnuté write cache pro to USB?

 

jarina

Zkusil jsem poladit nastavení write cache, ale nejde to. V dialogu Správce zařízení - Disky - flashka - Zásady Mám pouze volby:

1.Rychlé odebrání
2.Lepší výkon a nic
3. Lepší výkon a Povolit ukládání do mezipaměti
4.
Lepší výkon a Povolit ukládání do mezipaměti a Zákaz vyprázdňování

Volby 3 a 4 nejdou nastavit, po stlačení OK to hodí hlášku, že se to nepodařilo nastavit (neumí to zařízení nebo nnepodporuje změnu).

Dal jsem tedy jen 2 a znovu zapojil a rychlost je stále bídná, nic se nezměnilo

A zajímá mě, kde by mohl být problém technicky v tom ffmpeg konkrétně, že ten zápis přes probíhá šnečím tempem.

PS: formát je exFAT, nevím zda to hraje roli.

ctenar*

Měl jsem na mysli zrušení toho "Rychlého odebrání". Říkáš žádný rozdíl

Vždycky můžeš zkusit pokusně naformátovat tu flash na FAT32 nebo NTFS a provézt měření rychlosti, ale zlepšení neočekávám.

Jak je velká ta flash?

jarina
20.10.16 23:49

128gb

ctenar*

Asi bych zkusil nějakou starší flash (16/32GB) s tím NTFS/FAT32, abych se přesvědčil, že problém není někde v kartě nebo soub.systému.

Napiš, jak to dopadlo.

V nejhorším to budeš ukládat na RAMdisk a na konci dáš "překopírovat na USB" (nějaký dávkový soubor).

PS. ve své instalaci ffmpeg jsem -c copy nenašel (nedělám s tím).

jarina

Zkusil jsem u u NTFS flash Lepší výkon a je to lepší, ale pořád se mi to nějak nezdá.

Nechápu tu poznámku. ffmpeg máš.Parametr -c je volba výstpuního kodeku (pořadí těch voleb hraje roli, zrovna -c musí být za vstupy), copy (může být aac,mp3 hevc,libx264,xvid...)znamená ponechat původní kodek, tedy netranskodovat, nicméně ale se to stává i při kompresi (pokud je rychlý CPU a parametry kodeku nastavené na rychlou kompresi (-preset fast, nízké rozlišení...).

ctenar*

NTFS jsi dělal na té 128GB flash? Kolik to zapisovalo?

Kdyžtak zkus i nějakou starou flash 16GB ze šuplíku.

Podle mě není chyba ani v ffmpeg, ani v zápisech přes USB, ale někde ve flash nebo ve způsobu, jak k ní přistupuje ten soub.systém


doplněno 21.10.16 14:35:

Zkusil bych také zkusil v tom tvém Atto (?) rychlost zápisu pro malé bloky (0,5-2KB).

jarina

ne, NTFS jsem zformátoval na microSDXC 64GB kartě s rychlostí zápisu 75 MB/s.

Zkusil jsem ATTO disk benchmark při 256kB (queue depth 1). Vychází mi z toho, že flash není o moc pomalejší než SSD v těchto rychlostech(při queue 4 je rychlost max 50% lepší,ale to podle mě se nevyužívá) a že chyba není ve FS ani v rychlosti flash, ale v cache modu toho média a že ffmpeg výstup nebufferuje a používá moc malé bloky.
Na CSSD) má pro 0.5-4kB rychlosti: MB/S: 6/6; 10/12; 21/23; 40,43
Na té 128 GB flash: 3/3; 6/6; 10;10; 19/22

ctenar*

To jsem si právě myslel, že ffmpeg to asi bude zapisovat po malých blocích. U SSD to vadit nebude, protože je to dobře bufrované v RAM. U toho USB jsem vsázel na to "Rychlé odebrání" (tedy bez bufrování), ale psal jsi, že to na rychlost nemá vliv.

Chtěl jsem zkusit jiný souborový systém, protože ty mají zápisy jinak velkých bloků a tedy mají svůj vnitřní malý buffer.

Jestli máš RAM (i ten SSD disk je fajn) dost velkou na celý film, tak bych to asi neřešil. Prostě bych to po převodu celé vrhnul na USB sekvenčním zápisem plnou rychlostí.

Ty jsi asi moc nepracoval s disketami, že ne?

jarina

s disketami ve věku, kdy jsem se o počítače zajímal "uživatelsky"(herně) ještě

 

ctenar*

0x

Bohužel neumím poradit víc, než už jsem napsal. Škoda, že se to nepodařilo vyřešit.

Asi se budeš muset zkusit zeptat na nějakém fóru speciálně pro XP nebo ffmpeg, kde se schází více lidí, kteří do problému vidí.

 

 


 

 

 

Přihlásit se k odběru odpovědí z této otázky:

Neneseme odpovědnost za správnost informací a za škodu vzniklou jejich využitím. Jednotlivé odpovědi vyjadřují názory jejich autorů a nemusí se shodovat s názorem provozovatele poradny Poradte.cz.

Používáním poradny vyjadřujete souhlas s personifikovanou reklamou, která pomáhá financovat tento server, děkujeme.

Copyright © 2004-2025 Poradna Poradte.cz. Všechna práva vyhrazena. Prohlášení o ochraně osobních údajů. | [tmavý motiv]