abclinuxu.cz AbcLinuxu.cz itbiz.cz ITBiz.cz HDmag.cz HDmag.cz abcprace.cz AbcPráce.cz
AbcLinuxu hledá autory!
Inzerujte na AbcPráce.cz od 950 Kč
Rozšířené hledání
×
    včera 20:00 | Komunita

    Byly zpracovány a na YouTube zveřejněny videozáznamy z konference LinuxDays 2025.

    Ladislav Hagara | Komentářů: 0
    4.10. 15:22 | IT novinky

    Na konferenci LinuxDays 2025 byl oficiálně představen nový router Turris Omnia NG.

    Ladislav Hagara | Komentářů: 13
    4.10. 05:22 | Komunita

    Přímý přenos (YouTube) z konference LinuxDays 2025, jež probíhá tento víkend v Praze v prostorách FIT ČVUT. Na programu je spousta zajímavých přednášek.

    Ladislav Hagara | Komentářů: 11
    3.10. 22:44 | IT novinky

    V únoru loňského roku Úřad pro ochranu osobních údajů pravomocně uložil společnosti Avast Software pokutu 351 mil. Kč za porušení GDPR. Městský soud v Praze tuto pokutu na úterním jednání zrušil. Potvrdil ale, že společnost Avast porušila zákon, když skrze svůj zdarma dostupný antivirový program sledovala, které weby jeho uživatelé navštěvují, a tyto informace předávala dceřiné společnosti Jumpshot. Úřad pro ochranu osobních údajů

    … více »
    Ladislav Hagara | Komentářů: 3
    3.10. 19:00 | Nová verze

    Google Chrome 141 byl prohlášen za stabilní. Nejnovější stabilní verze 141.0.7390.54 přináší řadu novinek z hlediska uživatelů i vývojářů. Podrobný přehled v poznámkách k vydání. Opraveno bylo 21 bezpečnostních chyb. Za nejvážnější z nich (Heap buffer overflow in WebGPU) bylo vyplaceno 25 000 dolarů. Vylepšeny byly také nástroje pro vývojáře.

    Ladislav Hagara | Komentářů: 0
    3.10. 17:11 | Upozornění

    eDoklady mají kvůli vysoké zátěži technické potíže. Ministerstvo vnitra doporučuje vzít si sebou klasický občanský průkaz nebo pas.

    Ladislav Hagara | Komentářů: 7
    3.10. 17:00 | Komunita

    Novým prezidentem Free Software Foundation (FSF) se stal Ian Kelling.

    Ladislav Hagara | Komentářů: 1
    3.10. 14:33 | Komunita

    Na čem pracují vývojáři webového prohlížeče Ladybird (GitHub)? Byl publikován přehled vývoje za září (YouTube).

    Ladislav Hagara | Komentářů: 0
    3.10. 12:33 | Upozornění

    Vyšla kniha Počítačové programy a autorské právo. Podle internetových stránek nakladatelství je v knize "Významný prostor věnován otevřenému a svobodnému softwaru, jeho licencím, důsledkům jejich porušení a rizikům „nakažení“ proprietárního kódu režimem open source."

    javokajifeng | Komentářů: 0
    3.10. 01:11 | Bezpečnostní upozornění

    Red Hat řeší bezpečnostní incident, při kterém došlo k neoprávněnému přístupu do GitLab instance používané svým konzultačním týmem.

    Ladislav Hagara | Komentářů: 0
    Jaké řešení používáte k vývoji / práci?
     (38%)
     (45%)
     (15%)
     (17%)
     (20%)
     (15%)
     (17%)
     (16%)
     (15%)
    Celkem 175 hlasů
     Komentářů: 12, poslední 4.10. 20:35
    Rozcestník

    Kvalitnější flash video pomocí ffmpegu

    21.4.2007 21:49 | Přečteno: 2971× | Linux | Výběrový blog | poslední úprava: 27.4.2007 20:32

    Trochu si hraju s videem na webu, je to taky trochu má práce, nicméně toto se jí až tak netýká. Chtěl jsem si zkusit publikovat flash na webu v nějakém přehrávači a zjistit o kolik je výsledná kvalita horší, než u WMV9 videa. Už jsem kdysi flash zkoušel, ale kvalita i VP6 mě docela zklamala, tentokrát jsem to zkusil trochu víc.

    Pro převody videa používám program ffmpeg, ten zatím nedovoluje enkódovat do formátu VP6 (a v dohledné době asi ani nebude), jen staré formáty flash video 6 (jestli jsem to zjistil správně), kvalita je dost mizerná, nicméně se dá pár parametry relativně slušně zlepšit. Hledal jsem dlouho parametry, které by měly vliv na kvalitu výsledného flv videa, na webu jsem nic přímo pro převod do flv nenašel, zkoušel jsem tedy používat parametry, které byly na webu například pro kodek h.264.

    Po pár hodinách hledání, porovnávání a zkoušení jsem nalezl parametry, díky kterým flv video v ffmpegu vypadá o něco lépe. Používám různé datové toky a rozlišení, pro 3 různé typy výstupů. Následuje bashový skript, který používám pro převod jednoho videa (ve formátu mpeg) do 3 různě kvalitních flv videí.

    #!/bin/bash                                                                                                                                              
                                                                                                                                                             
    AUDIO_LOW="-acodec mp3 -ab 32k -ac 1 -ar 22050"                                                                                                          
    VIDEO_LOW="-f flv -deinterlace -nr 500 -croptop 4 -cropbottom 4 -cropleft 8 -cropright 8 -s 160x120 -aspect 4:3 -r 25 -b 100k"                           
    AUDIO_MIDDLE="-acodec mp3 -ab 48k -ac 1 -ar 44100"                                                                                                       
    VIDEO_MIDDLE="-f flv -deinterlace -nr 500 -croptop 4 -cropbottom 4 -cropleft 8 -cropright 8 -s 320x240 -aspect 4:3 -r 25 -b 270k"                        
    AUDIO_HIGH="-acodec mp3 -ab 64k -ac 2 -ar 44100"                                                                                                         
    VIDEO_HIGH="-f flv -deinterlace -nr 500 -croptop 4 -cropbottom 4 -cropleft 8 -cropright 8 -s 640x480 -aspect 4:3 -r 25 -b 650k"                          
    PARAM="-me_range 25 -i_qfactor 0.71 -g 500"  
    
    if [ -f "$1" ]; then                                                                                                                                     
        ffmpeg -i "$1" $AUDIO_LOW $VIDEO_LOW $PARAM -pass 1 -y "low_`echo $1 | cut -d. -f1`.flv"                                                             
        ffmpeg -i "$1" $AUDIO_LOW $VIDEO_LOW $PARAM -pass 2 -y "low_`echo $1 | cut -d. -f1`.flv"                                                             
        ffmpeg -i "$1" $AUDIO_MIDDLE $VIDEO_MIDDLE $PARAM -pass 1 -y "middle_`echo $1 | cut -d. -f1`.flv"                                                    
        ffmpeg -i "$1" $AUDIO_MIDDLE $VIDEO_MIDDLE $PARAM -pass 2 -y "middle_`echo $1 | cut -d. -f1`.flv"                                                    
        ffmpeg -i "$1" $AUDIO_HIGH $VIDEO_HIGH $PARAM -pass 1 -y "high_`echo $1 | cut -d. -f1`.flv"                                                          
        ffmpeg -i "$1" $AUDIO_HIGH $VIDEO_HIGH $PARAM -pass 2 -y "high_`echo $1 | cut -d. -f1`.flv"  
    fi
    

    Pár kometářů: Pro co nejnižší datový tok audia a zároveň co nejlepší kvalitu audia používám pro kvality low a middle mono, je to mnohem lepší, než stereo, hlavně pokud se použije vzorkovací frekvence 44,1kHz. Video je prokládané, takže je třeba provést deinterlace, zároveň pro dosažení lepší komprese je lepší provést i odstranění šumu, v tomto případě trochu silnějšího (normálně používám 300-400 pro h264), video má často zbytečně navíc nějaká prázdná místa nahoře, dole a po stranách, ty oříznu.

    Pro přehrávání na webu používám přehrávač Flash Video Player ve verzi 3.7

    Přidávám ještě pár obrázků pro porvnání kvality, rozdíl mezi obrázky byl jen v tom, že jsem pro druhé obrázky odstranil ze skriptu $PARAM, nechám tu zobrazit jen kvalitu middle. Výsledná videa byla přibližně stejně velká (rozdíl cca 1%).

    Pokud se chcete podívat i na videa, tak jsem udělal pokusnou stránku, kterou mam jen pro testy a dlouho k dispozici nebude.

    Do budoucna bych chtěl zkusit používat playlisty, tj. pomocí nějakého xml souboru nechat přehrávat jen určíté části jednoho souboru, nebo streaming který by neposílal celé video co nejrychleji a tak nepřetěžoval server, a nakonec ještě posun na určitou pozici bez nahrávání celého flashe, to už nějaký flash přehrávač umí.

           

    Hodnocení: 100 %

            špatnédobré        

    Tiskni Sdílej: Linkuj Jaggni to Vybrali.sme.sk Google Del.icio.us Facebook

    Komentáře

    Vložit další komentář

    Skeletonix avatar 22.4.2007 09:56 Skeletonix | skóre: 18 | Praha
    Rozbalit Rozbalit vše Re: Kvalitnější flash video pomocí ffmpegu
    super
    20.5.2009 13:44 MatoStik
    Rozbalit Rozbalit vše Re: Kvalitnější flash video pomocí ffmpegu

    Dekuji za skvely prispevek. Jen je skoda, ze jiz nefunguji obrazky pro porovnani.

    Zkusil jsem to tedy na svem videu a vysledek? - vyborny. Kvalita zustala +/- stejna, ale velikost se snizila na 60%. Jedna se o zavody RC modelu aut, takze tam je hodne rychleho pohybu, tak jsem to drive resil vyssim bitrate.

    Drive jsem pouzival:
    Závod 3.5.2009
    /usr/local/bin/ffmpeg -i 'zavod.mpg' -vhook '/usr/local/lib/vhook/watermark.so -f wm.gif' -ar 44100 -f flv -s 640x480 -b 1500k -minrate 1500k -maxrate 1500k -bufsize 1835k -y 'zavod.flv'

    A nyni:
    Závod 17.5.2009 - komentář Milda
    /usr/local/bin/ffmpeg -i 'zavod.mpg' -vhook '/usr/local/lib/vhook/watermark.so -f wm.gif' -acodec mp3 -ab 64k -ac 1 -ar 44100 -f flv -nr 500 -s 640x480 -r 25 -b 850k -me_range 25 -i_qfactor 0.71 -g 500 -pass 1 -y 'zavod.flv'
    /usr/local/bin/ffmpeg -i 'zavod.mpg' -vhook '/usr/local/lib/vhook/watermark.so -f wm.gif' -acodec mp3 -ab 64k -ac 1 -ar 44100 -f flv -nr 500 -s 640x480 -r 25 -b 850k -me_range 25 -i_qfactor 0.71 -g 500 -pass 2 -y 'zavod.flv'

    Jen pro vygenerovani nahledoveho obrazku se novy flv nehodi. Upravil jsem tedy, ze se nahledovy obrazek generuje z originalniho videa:
    /usr/local/bin/ffmpeg -ss 00:00:05 -an -i 'zavod.mpg' -vhook '/usr/local/lib/vhook/watermark.so -f wm.gif' -s 640x480 -f mjpeg -t 0.001 -y 'zavod.flv.jpg'
     

    Jeste jednou diky :).

    ISSN 1214-1267   www.czech-server.cz
    © 1999-2015 Nitemedia s. r. o. Všechna práva vyhrazena.