Fórum Root.cz
Hlavní témata => Software => Téma založeno: iko 05. 10. 2015, 15:53:01
-
Zdravim...
Skompiloval som si ffmpeg z gitu(asi) s podporou libx264 (aj to som kompiloval) a ked kodujem video do libx264, tak mi na konzolu hadze milion vypisov (asi debugovacie). -loglevel quiet nepomaha, tu je vzorka:
[libx264 @ 0x44c9660] frame=2271 QP=27.82 NAL=2 Slice:P Poc:94 I:413 P:1138 SKIP:69 size=11442 bytes
stream #1:
keyframe=1
duration=0.024
dts=34593.116 pts=34593.116
size=576
stream #1:
keyframe=1
duration=0.024
dts=34593.140 pts=34593.140
size=576
stream #1:
keyframe=1
duration=0.024
dts=34593.164 pts=34593.164
size=576
stream #1:
keyframe=1
duration=0.024
dts=34593.188 pts=34593.188
size=576
stream #1:
keyframe=1
duration=0.024
dts=34593.212 pts=34593.212
size=576
frame= 2319 fps= 16 q=28.0 size= 25754kB time=00:01:32.31 bitrate=2285.4kbits/stream #1:rop=0
keyframe=1
duration=0.024
dts=34593.236 pts=34593.236
size=576
stream #1:
keyframe=1
duration=0.024
dts=34593.260 pts=34593.260
size=576
stream #1:
keyframe=1
duration=0.024
dts=34593.284 pts=34593.284
size=576
stream #1:
keyframe=1
duration=0.024
dts=34593.308 pts=34593.308
size=576
stream #1:
keyframe=1
duration=0.024
dts=34593.332 pts=34593.332
size=576
stream #0:
keyframe=0
duration=0.040
dts=34593.646 pts=34593.646
size=7344
niekedy to vypise dokonca modrou nejaky hexavypis niecoho a pokracuje
x264 som kompiloval takto:
./configure --prefix="$HOME/ffmpeg_build" --bindir="$HOME/bin" --enable-static
platform: X86_64
system: LINUX
cli: yes
libx264: internal
shared: no
static: yes
asm: yes
interlaced: yes
avs: avxsynth
lavf: no
ffms: no
mp4: no
gpl: yes
thread: posix
opencl: yes
filters: crop select_every
debug: no
gprof: no
strip: no
PIC: no
bit depth: 8
chroma format: all
ffmpeg:
PKG_CONFIG_PATH="$HOME/ffmpeg_build/lib/pkgconfig" ./configure --prefix="$HOME/ffmpeg_build" --extra-cflags="-I$HOME/ffmpeg_build/include" --extra-ldflags="-L$HOME/ffmpeg_build/lib" --bindir="$HOME/bin" --pkg-config-flags="--static" --enable-gpl --enable-nonfree --enable-libfdk-aac --enable-libfreetype --enable-libmp3lame --enable-libopus --enable-libvorbis --enable-libvpx --enable-libx264 --enable-libx265 --disable-debug
Nikde som sa nevygooglil co to preco to. Co s tym, aby som mal normalny vypis z ffmpeg? System je CentOS 6.5.
-
Ide ti o kompilaciu, alebo o ffmpeg? Lebo ak o ffmpeg, tak preco ho kompilovat, ked su RPM. Napr. dag ho myslim ma v repozitaroch.
-
Ide mi o to, dag nema filtre v tom ffmpegu. chcem skompilovany, ale bez tych zbytocnych vypisov. Skusim este pozriet do src rpm daga, ako kompiluje.
-
zkousel jsi parametr
-v quiet
?
muzes sem hodit ten prikaz, ktery pouzivas? ja to vyzkousim jestli se mi to chova stejne nebo jinak.
-
skusal som, aj -loglevel quiet aj -loglevel 0
ffmpeg -y -i "$ts" -deinterlace -vcodec libx264 -preset medium -crf 23 -acodec libmp3lame -ar 44100 -b:a 192k -f mp4 "$n" -v quiet
-
ci to nevypisuje libx264, ale v nom som pri configure ziadny parameter ohladne toho nenasiel:
Usage: ./configure [options]
Help:
-h, --help print this message
Standard options:
--prefix=PREFIX install architecture-independent files in PREFIX
[/usr/local]
--exec-prefix=EPREFIX install architecture-dependent files in EPREFIX
[PREFIX]
--bindir=DIR install binaries in DIR [EPREFIX/bin]
--libdir=DIR install libs in DIR [EPREFIX/lib]
--includedir=DIR install includes in DIR [PREFIX/include]
--extra-asflags=EASFLAGS add EASFLAGS to ASFLAGS
--extra-cflags=ECFLAGS add ECFLAGS to CFLAGS
--extra-ldflags=ELDFLAGS add ELDFLAGS to LDFLAGS
--extra-rcflags=ERCFLAGS add ERCFLAGS to RCFLAGS
Configuration options:
--disable-cli disable cli
--system-libx264 use system libx264 instead of internal
--enable-shared build shared library
--enable-static build static library
--disable-opencl disable OpenCL features
--disable-gpl disable GPL-only features
--disable-thread disable multithreaded encoding
--enable-win32thread use win32threads (windows only)
--disable-interlaced disable interlaced encoding support
--bit-depth=BIT_DEPTH set output bit depth (8-10) [8]
--chroma-format=FORMAT output chroma format (420, 422, 444, all) [all]
Advanced options:
--disable-asm disable platform-specific assembly optimizations
--enable-debug add -g
--enable-gprof add -pg
--enable-strip add -s
--enable-pic build position-independent code
Cross-compilation:
--host=HOST build programs to run on HOST
--cross-prefix=PREFIX use PREFIX for compilation tools
--sysroot=SYSROOT root of cross-build tree
External library support:
--disable-avs disable avisynth support
--disable-swscale disable swscale support
--disable-lavf disable libavformat support
--disable-ffms disable ffmpegsource support
--disable-gpac disable gpac support
--disable-lsmash disable lsmash support
-
chmm tak mne to jede normalne potichu tak to nevim, zkus jim poslat bug report.
-
A co z toho nevie ffmpeg z binarnych repozitarov? Ja mam z rpmfusion.org ale teda pre fedoru.
Niezeby som si nieco obcas nekompiloval zo zdrojovych kodov, ale ak to ide z rpm, tak neriesim.
A pouzil by som 2 pass encoding. Ma o dost lepsi vystup.
-
Mám pár týdnů starou verzi zdrojáků, ale mělo by to snad pomoct:
tiskne se to tu:
ffmpeg.c: 3666: process_input
(=> libavformat.c/dump.c: 106: av_pkt_dump2, 111: av_pkt_dump_log2 (=> 82: pkt_dump_internal))
kontroluje to proměnnou do_pkt_dump která je inicializovaná na 0, a nestavuje se zde:
ffmpeg.c: 3394: check_keyboard_interaction (toggle key je zřejmě 'h')
Tak jestli je někde něco rozbytý, tak tu to můžete natvrdo vypnout.
Nebo prostě nemačkejte 'h' :)
-
Tak som zmodifikoval libx264, zvysil som natvrdo vnutri loglevel na level ERROR, tym som vyhodil hlasky libx264. Potom este ffmpeg vypisoval hexdump volaky, tak som zakomentaroval som makro HEXDUMP_PRINT a uz to ma normalny vypis.