Byla vydána (𝕏) nová verze 24.7 open source firewallové a routovací platformy OPNsense (Wikipedie). Jedná se o fork pfSense postavený na FreeBSD. Kódový název OPNsense 24.7 je Thriving Tiger. Přehled novinek v příspěvku na fóru.
Binarly REsearch upozorňuje na bezpečnostní problém PKFail (YouTube) v ekosystému UEFI. Stovky modelů zařízení používají pro Secure Boot testovací Platform Key vygenerovaný American Megatrends International (AMI) a jeho privátní část byla při úniku dat prozrazena. Do milionů zařízení (seznam v pdf) po celém světě tak útočníci mohou do Secure Bootu vložit podepsaný malware. Otestovat firmware si lze na stránce pk.fail. Ukázka PoC na Linuxu na Windows na YouTube.
Mobilní operační systém /e/OS (Wikipedie) založený na Androidu / LineageOS, ale bez aplikací a služeb od Googlu, byl vydán ve verzi 2.2 (Mastodon, 𝕏). Přehled novinek na GitLabu. Vypíchnuta je rodičovská kontrola.
Společnost OpenAI představila vyhledávač SearchGPT propojující OpenAI modely umělé inteligence a informace z webů v reálném čase. Zatím jako prototyp pro vybrané uživatele. Zapsat se lze do pořadníku čekatelů.
Distribuce Linux Mint 22 „Wilma“ byla vydána. Je založená na Ubuntu 24.04 LTS, ale s desktopovým prostředím Cinnamon (aktuálně verze 6.2), příp. MATE nebo Xfce, balíkem aplikací XApp, integrací balíčků Flatpak a dalšími změnami. Více v přehledu novinek a poznámkách k vydání.
Příspěvek na blogu Truffle Security: Kdokoli může přistupovat ke smazaným a privátním repozitářům na GitHubu.
Byla vydána nová verze 14 integrovaného vývojového prostředí (IDE) Qt Creator. Podrobný přehled novinek v cgitu. Vypíchnout lze podporu rozšíření v Lua.
Byla vydána verze 1.80.0 programovacího jazyka Rust (Wikipedie). Podrobnosti v poznámkách k vydání. Vyzkoušet Rust lze například na stránce Rust by Example.
Apple oznámil, že v beta verzi spustil své Apple Maps na webu. Podporován je také webový prohlížeč Chrome. Ne však na Linuxu.
Portál Stack Overflow po roce opět vyzpovídal své uživatele, jedná se především o vývojáře softwaru, a zveřejnil detailní výsledky průzkumu. Průzkumu se letos zúčastnilo více než 65 tisíc vývojářů. Z Česka jich bylo 710. Ze Slovenska 246.
mencoder -input video.mov -output video.avi
Řešení dotazu:
ffmpeg -i vstup.mov vystup.avi
Když si s nastavením nechci lámat hlavu, tak to stačí takhle, jen bývá rozumné použít parametr -sameq
, který omezí kompresi na minimum (same quality)
Když potřebuju složitější parametry, tak si je většinou vygooglím...
-acodec
(audio) a -vcodec
(video)
A je potřeba najít ty, které člověk potřebuje... Vypadá to pak nějak takto:
ffmpeg -vcodec libtheora -acodec libvorbis -sameq -i infile.avi outfile.ogv
ffmpeg -vcodec libtheora -acodec libvorbis -sameq -i P1020196.MOV outfile.ogv FFmpeg version SVN-r0.5.6-4:0.5.6-3, Copyright (c) 2000-2009 Fabrice Bellard, et al. configuration: --extra-version=4:0.5.6-3 --prefix=/usr --enable-avfilter --enable-avfilter-lavf --enable-vdpau --enable-bzlib --enable-libdirac --enable-libgsm --enable-libopenjpeg --enable-libschroedinger --enable-libspeex --enable-libtheora --enable-libvorbis --enable-pthreads --enable-zlib --disable-stripping --disable-vhook --enable-runtime-cpudetect --enable-gpl --enable-postproc --enable-swscale --enable-x11grab --enable-libfaad --enable-libdc1394 --enable-shared --disable-static libavutil 49.15. 0 / 49.15. 0 libavcodec 52.20. 1 / 52.20. 1 libavformat 52.31. 0 / 52.31. 0 libavdevice 52. 1. 0 / 52. 1. 0 libavfilter 0. 4. 0 / 0. 4. 0 libswscale 0. 7. 1 / 0. 7. 1 libpostproc 51. 2. 0 / 51. 2. 0 built on Dec 31 2011 15:16:11, gcc: 4.4.5 Unknown decoder 'libtheora'
ffmpeg -i P1020196.MOV -ab 128 -b 1024k -vcodec mpeg4 -acodec libmp3lame converted.mp4 FFmpeg version SVN-r0.5.6-4:0.5.6-3, Copyright (c) 2000-2009 Fabrice Bellard, et al. configuration: --extra-version=4:0.5.6-3 --prefix=/usr --enable-avfilter --enable-avfilter-lavf --enable-vdpau --enable-bzlib --enable-libdirac --enable-libgsm --enable-libopenjpeg --enable-libschroedinger --enable-libspeex --enable-libtheora --enable-libvorbis --enable-pthreads --enable-zlib --disable-stripping --disable-vhook --enable-runtime-cpudetect --enable-gpl --enable-postproc --enable-swscale --enable-x11grab --enable-libfaad --enable-libdc1394 --enable-shared --disable-static libavutil 49.15. 0 / 49.15. 0 libavcodec 52.20. 1 / 52.20. 1 libavformat 52.31. 0 / 52.31. 0 libavdevice 52. 1. 0 / 52. 1. 0 libavfilter 0. 4. 0 / 0. 4. 0 libswscale 0. 7. 1 / 0. 7. 1 libpostproc 51. 2. 0 / 51. 2. 0 built on Dec 31 2011 15:16:11, gcc: 4.4.5 Input #0, mov,mp4,m4a,3gp,3g2,mj2, from 'P1020196.MOV': Duration: 00:00:12.50, start: 0.000000, bitrate: 23279 kb/s Stream #0.0(eng): Video: mjpeg, yuvj420p, 1280x720, 30 tbr, 30 tbn, 30 tbc Stream #0.1(eng): Audio: pcm_s16be, 16000 Hz, mono, s16, 256 kb/s WARNING: The bitrate parameter is set too low. It takes bits/s as argument, not kbits/s Unknown encoder 'libmp3lame'
ffmpeg -i P1020196.MOV -ab 128 -b 1024k -vcodec mpeg4 -acodec aac converted.mp4 FFmpeg version SVN-r0.5.6-4:0.5.6-3, Copyright (c) 2000-2009 Fabrice Bellard, et al. configuration: --extra-version=4:0.5.6-3 --prefix=/usr --enable-avfilter --enable-avfilter-lavf --enable-vdpau --enable-bzlib --enable-libdirac --enable-libgsm --enable-libopenjpeg --enable-libschroedinger --enable-libspeex --enable-libtheora --enable-libvorbis --enable-pthreads --enable-zlib --disable-stripping --disable-vhook --enable-runtime-cpudetect --enable-gpl --enable-postproc --enable-swscale --enable-x11grab --enable-libfaad --enable-libdc1394 --enable-shared --disable-static libavutil 49.15. 0 / 49.15. 0 libavcodec 52.20. 1 / 52.20. 1 libavformat 52.31. 0 / 52.31. 0 libavdevice 52. 1. 0 / 52. 1. 0 libavfilter 0. 4. 0 / 0. 4. 0 libswscale 0. 7. 1 / 0. 7. 1 libpostproc 51. 2. 0 / 51. 2. 0 built on Dec 31 2011 15:16:11, gcc: 4.4.5 Input #0, mov,mp4,m4a,3gp,3g2,mj2, from 'P1020196.MOV': Duration: 00:00:12.50, start: 0.000000, bitrate: 23279 kb/s Stream #0.0(eng): Video: mjpeg, yuvj420p, 1280x720, 30 tbr, 30 tbn, 30 tbc Stream #0.1(eng): Audio: pcm_s16be, 16000 Hz, mono, s16, 256 kb/s WARNING: The bitrate parameter is set too low. It takes bits/s as argument, not kbits/s Unknown encoder 'aac'
No popravde neni to jednoduche provest konverzi pomoci ffmpegu. At volim jako kodeky cokoliv tak mi to nikdy neprojde:(A co číst chybové hlášky? Ty tam nejsou jen tak z legrace. Prvních pár odstavců manuálnu taky lecos osvětlí.
System je Debian Squeeze 32bitAno,ffmpeg -vcodec libtheora -acodec libvorbis -sameq -i P1020196.MOV outfile.ogv FFmpeg version SVN-r0.5.6-4:0.5.6-3, Copyright (c) 2000-2009 Fabrice Bellard, et al. configuration: --extra-version=4:0.5.6-3 --prefix=/usr --enable-avfilter --enable-avfilter-lavf --enable-vdpau --enable-bzlib --enable-libdirac --enable-libgsm --enable-libopenjpeg --enable-libschroedinger --enable-libspeex --enable-libtheora --enable-libvorbis --enable-pthreads --enable-zlib --disable-stripping --disable-vhook --enable-runtime-cpudetect --enable-gpl --enable-postproc --enable-swscale --enable-x11grab --enable-libfaad --enable-libdc1394 --enable-shared --disable-static libavutil 49.15. 0 / 49.15. 0 libavcodec 52.20. 1 / 52.20. 1 libavformat 52.31. 0 / 52.31. 0 libavdevice 52. 1. 0 / 52. 1. 0 libavfilter 0. 4. 0 / 0. 4. 0 libswscale 0. 7. 1 / 0. 7. 1 libpostproc 51. 2. 0 / 51. 2. 0 built on Dec 31 2011 15:16:11, gcc: 4.4.5 Unknown decoder 'libtheora'
-vcodec
před -i
znamená, že chceš nastavit decoder. Na což to správně hlásí že takový decoder nezná. Na nastavení encoderu musíš přesunout -vcodec
před název výstupního souboru.
0.5 je prehistorie. Silně doporučuju upgradovat na nějakou novější verzi. Jinak snažíš se nastavit audio bitrate nad 128 bitů za sekundu, což by asi stejně nefungovalo.ffmpeg -i P1020196.MOV -ab 128 -b 1024k -vcodec mpeg4 -acodec libmp3lame converted.mp4 FFmpeg version SVN-r0.5.6-4:0.5.6-3, Copyright (c) 2000-2009 Fabrice Bellard, et al. configuration: --extra-version=4:0.5.6-3 --prefix=/usr --enable-avfilter --enable-avfilter-lavf --enable-vdpau --enable-bzlib --enable-libdirac --enable-libgsm --enable-libopenjpeg --enable-libschroedinger --enable-libspeex --enable-libtheora --enable-libvorbis --enable-pthreads --enable-zlib --disable-stripping --disable-vhook --enable-runtime-cpudetect --enable-gpl --enable-postproc --enable-swscale --enable-x11grab --enable-libfaad --enable-libdc1394 --enable-shared --disable-static libavutil 49.15. 0 / 49.15. 0 libavcodec 52.20. 1 / 52.20. 1 libavformat 52.31. 0 / 52.31. 0 libavdevice 52. 1. 0 / 52. 1. 0 libavfilter 0. 4. 0 / 0. 4. 0 libswscale 0. 7. 1 / 0. 7. 1 libpostproc 51. 2. 0 / 51. 2. 0 built on Dec 31 2011 15:16:11, gcc: 4.4.5 Input #0, mov,mp4,m4a,3gp,3g2,mj2, from 'P1020196.MOV': Duration: 00:00:12.50, start: 0.000000, bitrate: 23279 kb/s Stream #0.0(eng): Video: mjpeg, yuvj420p, 1280x720, 30 tbr, 30 tbn, 30 tbc Stream #0.1(eng): Audio: pcm_s16be, 16000 Hz, mono, s16, 256 kb/s WARNING: The bitrate parameter is set too low. It takes bits/s as argument, not kbits/s Unknown encoder 'libmp3lame'
-sameq
NEZNAMENÁ "same quality", ale "same quantizer" (v avconvu jsme tuhle volbu přejmenovali na -same_quant
právě z tohohle důvodu). V praxi to znamená to, že při překodování videa z mpegovitého formátu na mpegovitý formát (nikdy jindy to nefunguje) se pro každý frame použije stejný quantizer jako pro příšlušný vstupní frame. V závislosti na situaci se to může více či méně blížit tomu, co si člověk představuje pod pojmem "same quality". Obecně se ale na tuhle volbu díváme s nedůvěrou, protože většinou ji lidi používají aniž vědí co činí, a v tom případě nedělá co asi chtějí.
ffmpeg -threads 4 -i INPUT_FILE -deinterlace -vcodec libx264 -ac 1 -ab 128k -acodec aac -strict experimental -vol 1000 -b 400k -ss 100 -t 3600 -y OUTPUT_FILE.mkv
susímu ffmpegu se musí narvat -strict experimental, aby kódoval do AAC :)Protože náš aac encoder je experimentální hrůza. Při vyšších bitratech by se snad dal poslouchat, ale faac je lepší. Netrváš-li na AAc, tak ještě lepší je lame a úplně nejlepší libvorbis (pokud nepočítáme lossless).
-deinterlace, protože grabujeme z kamery, ze které leze prokládaný obraz
-deinterlace
je vraždění štěňat, ve jménu všeho co je dobré a správné použij -vf yadif
.
-deinterlace, protože grabujeme z kamery, ze které leze prokládaný obraz-deinterlace
je vraždění štěňat, ve jménu všeho co je dobré a správné použij-vf yadif
.
-deinterlace
používá hodně nekvalitní algoritmus, což je zřejmé už z toho, že deinterlacing dělá pouze z jednoho snímku. V novém avconvu je -deinterlace
deprecated a bude odstraněna.
Yadif už pořádný deinterlacer portovaný z mplayeru.
ale faac je lepšíHmm, tenhle susí ffmpeg je očividně bez něj :(. Že bych si zakompiloval?
tak ještě lepší je lameJsem měl za to, že MP3 má mnohem horší možnosti než AAC. To je faac taková hrůza?
-deinterlace je vraždění štěňat, ve jménu všeho co je dobré a správné použij -vf yadifDík, zkusím. (stejně se tam nic nehýbe…)
To sice má, ale kvalita encoderu má na výsledek mnohem větší vliv než rozdíly mezi specifikacemi (viz např. test kde mpeg4 ASP encoder v libavcodecu porazil některé odpadní H.264 encodery). A co se týče kvality, tak AFAIK lame je vysoko nad faac.ale faac je lepšíHmm, tenhle susí ffmpeg je očividně bez něj :(. Že bych si zakompiloval?tak ještě lepší je lameJsem měl za to, že MP3 má mnohem horší možnosti než AAC. To je faac taková hrůza?
#!/bin/sh NAME=`basename ${0}` case "$NAME" in mpeg2avi-[0-9]*) BITRATE=${NAME##mpeg2avi-} ;; *) BITRATE=2000 ;; esac BITRATE_A=128 BITRATE_V=$((${BITRATE}-${BITRATE_A})) INPUT="${1}" OUTPUT="${INPUT%.*}.avi" PASSLOG="${1}.pass" /usr/bin/nice -n 20 \ /usr/bin/ffmpeg \ -vf "yadif" \ -i "${INPUT}" \ -vcodec libxvid -g 250 -bf 2 -r 25 -b ${BITRATE_V}k \ -an \ -pass 1 -passlogfile "${PASSLOG}" \ -f rawvideo -y /dev/null /usr/bin/nice -n 20 \ /usr/bin/ffmpeg \ -vf "yadif" \ -i "${INPUT}" \ -vcodec libxvid -g 250 -bf 2 -r 25 -b ${BITRATE_V}k \ -acodec libmp3lame -ab ${BITRATE_A}k -ar 48000 -async 48000 -ac 2 \ -pass 2 -passlogfile "${PASSLOG}" \ -f avi \ -y "${OUTPUT}" if [ -f "${PASSLOG}" ]; then rm "${PASSLOG}"; fi
#!/bin/bash #Run as $bash prevod.sh ;because with $sh it`s not work. This bash script need function which sh dont support. That`s all.function checkyn { read yesnodel } echo " Please set the folder name for future save your video(s) (~/Videos/" read fold mkdir ~/Videos/$fold echo "Delete original videos after the video compress will be done? (y/n)" yesnodel="" checkyn while [ "$yesnodel" != "y" ] && [ "$yesnodel" != "n" ] do echo "Repeat your answer: (y/n)" checkyn done for F in *.avi do nameMP4=`echo "$F" |sed -e 's/.avi/.mp4/'` echo "Compressing video "$F" at "$nameMP4 ffmpeg -y -i $F -r 25 -b 1200k -ar 22050 -acodec libmp3lame -ab 128000 ~/Videos/$fold/$nameMP4 echo "Compressing video "$F" at "$nameMP4" done." if [ "$yesnodel" = "y" ];then rm $F fi done
ffmpeg -i 01-kreslo.flv -vcodec libxvid -acodec libmp3lame -b:v 1600k -b:a 128k 01-kreslo.avi
Tiskni
Sdílej: