[Ffmpeg-devel-irc] ffmpeg.log.20170203

burek burek021 at gmail.com
Sat Feb 4 03:05:01 EET 2017


[00:34:07 CET] <rebel2234> Big THANKS! To all in this channel who helped me.  Tvheadend is happy with 7 concurrent h264 streams (i7-3770) and all are avg of 1.2mbit/sec WOW! @720. Again, Thanks!
[00:35:02 CET] <rebel2234> for those who are interested, this is what I ended up with. "pipe:///usr/bin/ffmpeg -loglevel fatal -i http://10.7.7.100:5004/auto/v524 -vcodec libx264 -preset superfast -crf 28 -maxrate 2600k -bufsize 3500k -vf yadif=0,scale=-2:720 -acodec aac -b:a 128K -f mpegts pipe:1
[00:35:03 CET] <rebel2234> "
[00:37:08 CET] <rebel2234> That is such a low stream I could almost send the packets via USPS! Well done peeps!
[00:46:28 CET] <DHE> wow, that's actually pretty low for that image resolution
[00:46:53 CET] <furq> that seems about right for crf 28
[00:50:03 CET] <rebel2234> most of the time it hangs around 1mbit but spikes of 2mbit come in with fast moving scenes. Very happy camper!
[00:51:13 CET] <rebel2234> Everybody take the day off tomorrow, if your boss asks... send him to me.. hahah!
[00:51:20 CET] <furq> i take it that's the lowest crf your cpu can handle
[00:52:54 CET] <rebel2234> I messed with the crf trying to squeeze as many of the 9 tuners as I could and found that crf gives me 7 streams happily with some quality degrade. At some point I may get a i7 with 6 cores and turn that crf down to about 20-22
[00:53:51 CET] <rebel2234> I tried 20 and it worked but not 7 streams was good 5 streams but 6 was iffy
[00:55:35 CET] <rebel2234> Well it's 5pm here and time to go have a beer, ya'll should join me. Haha! Cheers!
[00:58:49 CET] <DHE> if you go the enterprise route, you can get CPUs with between 10 and 22 cores. Albeit with a price tag that goes with it...
[03:40:20 CET] <b0br> hi all
[04:14:50 CET] <b0br> I've compiled ffmpeg on centos as per https://trac.ffmpeg.org/wiki/CompilationGuide/Centos
[04:15:21 CET] <b0br> seems to be fine showing ffmpeg version N-83372-g08b0981 Copyright (c) 2000-2017 the FFmpeg developers
[04:16:18 CET] <b0br> i have an app that i'm trying to build that required libavformat >= 53.21.1, hence the compile
[04:16:58 CET] <b0br> now system shows libavformat    57. 66.101 - but now the app I'm trying to build says "must install libavformat-dev to build"
[04:17:35 CET] <b0br> am i stuffed or can I make -devel the same way i made ffmpeg?
[04:18:02 CET] <furq> you probably want to build with --enable-shared
[04:18:33 CET] <b0br> pretty sure i did that
[04:18:44 CET] <thebombzen> did you run "ldconfig" as root
[04:18:50 CET] <b0br> yep
[04:19:01 CET] <thebombzen> do you have /usr/local/lib in your ld.so.conf?
[04:19:09 CET] <b0br> think so
[04:19:25 CET] <thebombzen> doublecheck because that's for example not there by default on some distros
[04:19:29 CET] <b0br> yes
[04:19:30 CET] <b0br> include ld.so.conf.d/*.conf
[04:19:42 CET] <thebombzen> well
[04:19:46 CET] <furq> where are the libs and headers
[04:19:47 CET] <b0br> - /usr/local/lib
[04:20:07 CET] <b0br> - /usr/local/bin
[04:20:24 CET] <thebombzen> b0br: do you have any file in /etc/ld.so.conf.d/*.conf that includes /usr/local/lib
[04:20:33 CET] <furq> and the headers are in /usr/local/include?
[04:20:43 CET] <b0br> - /usr/local/lib all those inc libavformat.so.57.66.101
[04:20:54 CET] <b0br> thebombzen> b0br: do you have any file in /etc/ld.so.conf.d/*.conf that includes /usr/local/lib let me see
[04:21:21 CET] <furq> iirc at least on debian, gcc doesn't check /usr/local/include by default
[04:21:42 CET] <furq> if rpm normally installs to /usr/include then you might have to explicitly pass that path
[04:21:45 CET] <b0br> thebomzen i'm not sure what you mean, i see kernal conf and mysql conf in that dir
[04:22:10 CET] <thebombzen> b0br: you need to have a line containing nothing but /usr/local/lib
[04:22:14 CET] <b0br> things like this furq? /usr/local/include/libavcodec
[04:22:22 CET] <thebombzen> in either /etc/ls.so.conf or in one of those files
[04:22:26 CET] <furq> yeah that's good
[04:22:31 CET] <thebombzen> the /etc/ld.so.conf/*.conf
[04:22:45 CET] <b0br> there are kernal conf and mysqld conf
[04:22:50 CET] <furq> but like i said, that might not be on the search path by default
[04:23:09 CET] <b0br> ffmpeg works from any path on cmd line, is that what you mean furq?
[04:23:10 CET] <thebombzen> b0br: can you paste the output of this command to a paste site
[04:23:12 CET] <furq> if you can pass CPPFLAGS or whatever to this app you're building then try adding -I/usr/local/include
[04:23:29 CET] <furq> b0br: i mean gcc's header search path
[04:23:33 CET] <thebombzen> b0br: cat /etc/ld.so.conf /etc/ld.so.conf.d/*
[04:23:41 CET] <thebombzen> can you paste the output of that command
[04:24:28 CET] <furq> surely ffmpeg wouldn't work if /usr/local/lib wasn't on the shared libary path
[04:24:29 CET] <b0br> http://pastebin.com/V6gxgdBi
[04:24:50 CET] <furq> and also i don't see how that matters at compile time
[04:26:15 CET] <b0br> thank you for the help guys, appreciate it :) i really not sure and have been working blind ... lots to learn
[04:26:27 CET] <furq> what's the app you're trying to compile
[04:27:21 CET] <b0br> its mod_av for freeswitch that needs libavformat >= 53.21.1 - now shows must install libavformat-dev to build
[04:28:08 CET] <b0br> am i right then in guessing when i installed ffmpeg i also got the devel?
[04:28:18 CET] <b0br> you guys havent mentioned that
[04:28:44 CET] <furq> the devel package is the headers and shared libs
[04:28:47 CET] <furq> s/shared/static
[04:28:52 CET] <b0br> ahh ok, the h files
[04:28:53 CET] <furq> you don't need the static libs since you already have the shared libs
[04:29:05 CET] <b0br> thank you furq :)
[04:29:24 CET] <furq> i'm guessing it doesn't work because your headers are in /usr/local/include and iirc that's not on gcc's default search path
[04:29:30 CET] <b0br> - /usr/local/include/libavformat/avformat.h
[04:29:44 CET] <furq> if mod_av's build system lets you add extra CFLAGS or CPPFLAGS then you can add it to the path there
[04:29:53 CET] <b0br> !!  CFLAGS or CPPFLAGS
[04:30:29 CET] <b0br> i added to the make file
[04:30:30 CET] <b0br> AVFORMAT_CFLAGS =
[04:30:30 CET] <b0br> AVFORMAT_LIBS = /usr/local/lib
[04:30:53 CET] <furq> if AVFORMAT_CFLAGS is actually used then set that to -I/usr/local/include
[04:31:11 CET] <b0br> it was blank without the location, i added the location but same problem - there was no change
[04:31:27 CET] <furq> pastebin the makefile somewhere
[04:31:32 CET] <b0br> lol
[04:34:44 CET] <b0br> https://freeswitch.org/stash/projects/FS/repos/freeswitch/browse/src/mod/applications/mod_av
[04:35:08 CET] <b0br> not sure thats what you asked sorry
[04:35:30 CET] <furq> nice typo on line 8 there
[04:35:55 CET] <b0br> the make file http://pastebin.com/a6w9HtT7
[04:36:32 CET] <furq> you can probably do `make CPPFLAGS=-I/usr/local/include`
[04:36:55 CET] <b0br> huh?
[04:37:26 CET] <furq> run that
[04:44:21 CET] <b0br> make clean, ./configure, make CPPFLAGS=-I/usr/local/include
[04:44:28 CET] <b0br> same problem when it gets to mod_av
[04:44:52 CET] <b0br> Makefile:829: *** You must install libavformat-dev to build mod_av.  Stop.
[04:45:44 CET] <b0br> at least i now know what the -devels are! so thank you for that :)
[04:51:06 CET] <furq> http://vpaste.net/ezdXT
[04:51:11 CET] <furq> that's at the bottom of that makefile you pasted
[04:51:23 CET] <furq> so i guess it's doing some other weird shit when you run configure
[04:51:41 CET] <furq> check ./configure --help and see if there's some other way to pass an include path
[04:51:50 CET] <b0br> ok ty
[04:52:01 CET] <furq> you'll probably want to run make clean and rerun configure anyway
[04:52:54 CET] <b0br>  --with-lib-subdir ?
[04:53:00 CET] <b0br> Find libraries in DIR instead of lib
[04:54:03 CET] <b0br> To assign environment variables (e.g., CC, CFLAGS...), specify them as VAR=VALUE
[04:54:41 CET] <furq> yeah you might need to set CPPFLAGS before you run configure
[04:54:57 CET] <b0br> ./configure --help http://pastebin.com/671pfv5d
[04:55:24 CET] <b0br> make clean and rerun configure - dont that each time to be sure
[04:55:50 CET] <furq> probably `./configure CPPFLAGS=-I/usr/local/include; make CPPFLAGS=-I/usr/local/include`
[04:56:24 CET] <furq> i have no idea why they wouldn't just bail when you run configure instead of spitting out a makefile which is guaranteed to error
[04:56:27 CET] <b0br> what the diff between ccpflags and cflags
[04:56:31 CET] <furq> the joys of build systems~
[04:56:37 CET] <furq> cppflags is c preprocessor flags
[04:56:56 CET] <furq> that's usually less likely to have stuff in there that you could overwrite
[04:57:03 CET] <b0br> <furq> i have no idea why they wouldn't just bail when you run configure instead of spitting out a makefile which is guaranteed to error
[04:57:17 CET] <b0br> well its an interesting learning experiment for me and thankyou teacher :)
[04:58:08 CET] <b0br> tryinh that ./configure CPPFLAGS=-I/usr/local/include; make CPPFLAGS=-I/usr/local/include now
[05:00:24 CET] <b0br> i've got the dev installed at higher than the required version for mod_av as i understand it, the header files, so, idk what but its time to take it back to #freeswitch - would you agree?
[05:01:21 CET] <furq> probably
[05:01:40 CET] <furq> if that doesn't work then i'd have to actually understand their build system, and that's not going to happen
[05:02:22 CET] <b0br> thank you very much for your help furq
[05:03:02 CET] <b0br> well its failed on the configure this time
[05:04:11 CET] <b0br> using the string you gave me, so that kinda idk you said 'why they wouldn't just bail when you run configure' well it is now with ./configure CPPFLAGS=-I/usr/local/include; make CPPFLAGS=-I/usr/local/include
[05:16:55 CET] <RiedFrice> Just an observation. I finally got the frei0r filters working on windows by using the compiled ones on http://oss.netfarm.it/mplayer/, and the enviroment variable/value thing you're suuposed to do. But I have to run command prompt as admin for it to work
[05:17:12 CET] <RiedFrice> Otherwise I get an Access Denied
[06:04:01 CET] <RiedFrice> When I try to use certain frei0r effects like "screen" or "test_pat_L" I get errors like "Invalid type 'source' for this plugin" or Invalid type 'mixer2' for this plugin"
[06:04:14 CET] <RiedFrice> Any clues? :V
[06:18:04 CET] <maarhart> how can I use hstack and vstack for more than two inputs?
[06:19:29 CET] <maarhart> shouldn't this be correct? ffmpeg -i 1-1.avi -i 1-2.avi -i 1-3.avi -i 1-4.avi -i 1-5.avi -i 1-6.avi -i 1-7.avi -i 1-8.avi -i 3Country2_fade.mp3 -filter_complex "[0:v][1:v][2:v][3:v]hstack[t]=inputs=4;[4:v][5:v][6:v][7:v]hstack[b]=inputs=4;[t][b]vstack[v]" -map "[t]" -map 8:a -c:a copy -shortest output.mp4
[06:19:50 CET] <furq> hstack=inputs=4[t]
[06:19:59 CET] <furq> also you probably want -map "[v]"
[06:20:05 CET] <Diag> AMERICA
[06:26:07 CET] <maarhart> thanks furq!
[06:55:10 CET] <maarhart`> what does this mean? [Parsed_hstack_4 @ 0x7ffc58425280] Input 2 height 1200 does not match input 0 height 600.
[06:55:10 CET] <maarhart`>  
[06:55:25 CET] <maarhart`> I'm feeding videos that are the same size
[07:19:31 CET] <twid> Though ffmpeg support many network protocols like rtmp. hls and so on,  and many streaming examples on net uses ffmpeg internally, but so far not seen utilization of ffmpeg internal netowrk protocols, is ther any reason why?
[09:34:08 CET] <the_k> "This channel is publicly logged"
[09:34:11 CET] <the_k> where's the log?
[09:41:40 CET] <llamapixel> is this it? http://ffmpeg.gusari.org/irclogs/
[09:41:55 CET] <llamapixel> hehe
[09:42:35 CET] <llamapixel> http://ffmpeg.gusari.org/irclogs/ffmpeg.log.20170203
[09:43:59 CET] <llamapixel> https://youtu.be/r38fEGep2yU?t=82
[09:45:18 CET] <LigH> Hi.
[09:46:06 CET] <LigH> What exactly does it mean to enable the M2TS mode of the MPEG-TS muxer? (-mpegts_m2ts_mode)
[09:46:28 CET] <LigH> Is it 188 bytes (without timestamp) vs. 192 bytes (with timestamp)?
[09:46:54 CET] <LigH> Or anything else/more?
[11:48:48 CET] <jimmygulp> hello. I have a video file captured using ffmpeg from a security cameras rtsp stream. However, the first frame has an incorrect pixel format (-1, instead of yuv420p). I can get ffplay to skip past that to a keyframe that works, and I get video, so I wanted to re-encode with ffmpeg, but I can't seem to find the right command to skip the first (broken) frame. using -ss 10 before (or after input file)
[11:48:54 CET] <jimmygulp> still wants to read that broken frame. Any ideas what I'm missing?
[11:50:23 CET] <jimmygulp> the command 'ffplay -ss 10 out219.mov' skips the first 10 seconds, and plays, but to re-encode as an h264 (its already h264) with 'ffmpeg -ss 10 -i out219.mov -an -vcodec libx264 -crf 23 out219__.mp4' fails on the first frame.
[11:52:21 CET] <jimmygulp> ah look at that... using -codec copy seems to be working (well, its doing something)
[11:56:17 CET] <BtbN> I doubt h264 stores the pixel format per-frame
[11:56:53 CET] <BtbN> Or even has a built in pixel format, beside 420/444/...
[12:02:14 CET] <jimmygulp> fiddle sticks, codec copy just managed to copy the first frame to an hour of CCTV footage, thats not the answer...
[13:06:12 CET] <yong> I have a .mkv file that shows as 1k fps with ffprobe, but should be 60 FPS (pretty sure it is). I'm trying to fix the tag to 60 FPS (-c copy), but neither -framerate 60 nor -r 60 before or after -i have any effect. How do I tell the muxer that the video isn't actually 1k FPS?
[13:43:54 CET] <satinder___> Hi
[13:44:03 CET] <satinder___> I am getting following errors
[13:44:14 CET] <satinder___> frame=  231 fps=8.4 q=13.2 Lsize=    1366kB time=00:00:16.12 bitrate= 694.2kbits/s dup=0 drop=159 speed=0.589x
[13:44:26 CET] <satinder___> my ffmpeg command is following :
[13:44:43 CET] <satinder___> ffmpeg -video_size 720x480 -thread_queue_size 1024  -i /dev/video0 -f alsa -thread_queue_size 1024   -i hw:0 -pix_fmt yuv420p -c:v mpeg2video -f mpegts udp://@227.40.50.60:1234
[13:45:43 CET] <satinder___> Is there anything wrong in command
[13:46:08 CET] <satinder___> please anyone help me
[13:46:37 CET] <satinder___> durandal_1707 : please help
[13:46:41 CET] <jimmygulp> are you concerned about the number of dropped frames, the speed?
[13:46:49 CET] <satinder___> yes
[13:46:58 CET] <satinder___> jimmygulp :
[13:47:20 CET] <satinder___> my stream is stopping after some time
[13:47:33 CET] <satinder___> and showing increment in drop
[13:48:17 CET] <jimmygulp> you're only able to encode at 8.4fps, I assume the camera you're capturing from is running something like 25/30fps. I'd suggest a different video format
[13:48:39 CET] <jimmygulp> or specify to capture at maybe 7/8 fps?
[13:48:55 CET] <satinder___> but that is very low frame rate
[13:49:26 CET] <jimmygulp> it is, yes. I think its safe to assume you're running this on a low powered machine?
[13:49:54 CET] <satinder___> ok
[13:50:21 CET] <satinder___> but our mobile is also low power machine but we can do video calling how ?
[13:51:08 CET] <satinder___> DTS -118867876601, next:15330576 st:0 invalid dropping0.87 bitrate= 710.3kbits/s speed=   1x
[13:51:28 CET] <satinder___> now I am getting above error and audio dropping
[13:51:56 CET] <jimmygulp> I'd suggest trying different video codecs. h/x264 might be worth a try. I assume with the udp output you're watching this on another machine
[13:52:52 CET] <satinder___> ok
[14:07:34 CET] <kepstin> yong: what's the actual ffprobe output? Note that all mkv files use a 1/1000 timebase with vfr, so the fps that ffmpeg shows is really a guess.
[14:08:14 CET] <kepstin> (although there might be some metadata saying what the fps should be? not sure)
[14:09:31 CET] <yong> kepstin: Stream #0:0: Video: h264 (Constrained Baseline), yuvj420p(pc, bt470bg/unknown/unknown, progressive), 1920x1080 [SAR 1:1 DAR 16:9], 1k fps, 60 tbr, 1k tbn, 120 tbc (default)
[14:10:16 CET] <yong> The interesting thing is, if I actually re-encode with libx264 and -framerate 60, ffprobe shows fps to be 60, but VLC thinks it's 60.0024
[14:10:47 CET] <kepstin> yeah, VLC's number is just due to rounding errors/jitter from the 1/1000
[14:11:29 CET] <satinder___> Hi guys if I streaming auto different and video different then that is fine but with single command that is not working good packets droping
[14:11:34 CET] <satinder___> :(
[14:11:49 CET] <satinder___> what can I do ?
[14:11:57 CET] <kepstin> yong: I'm pretty sure there's a way to get ffmpeg to rewrite timestamps in copy mode, gonna look it up
[14:13:03 CET] <satinder___> please anyone help me
[14:13:04 CET] <yong> kepstin: Well do I want it to rewrite timestamps? This whole thing is a bit confusing to me, because if I use mp4 as a container the FPS is just 60 everywhere. But mp4 doesn't like pcm16le/flac
[14:13:20 CET] <JEEB> raw PCM should now work
[14:13:23 CET] <JEEB> it was standardized
[14:13:37 CET] <JEEB> if it doesn't it's just not implemented in lavf
[14:13:41 CET] <kepstin> yong: right now it sounds like there's no actual issue aside from a cosmetic thing where ffprobe isn't guessing the right fps
[14:13:51 CET] <kepstin> yong: so not really any need to do anything...
[14:14:27 CET] <satinder___> JEEB : ?
[14:14:28 CET] <yong> Yeah I dunno, the mkv file seems a bit choppier in playback, but it's hard to say if that's just placebo or not
[14:14:52 CET] <yong> JEEB: Hmm I didn't know that, that'd be nice
[14:15:37 CET] <kepstin> if the timestamps have lots of jitter, which is probably what's causing the guess to be wrong, a player might occasionally miss a frame on a 60Hz display (some players have stats that'll show dropped frames like this, iirc)
[14:16:43 CET] <kepstin> hmm. i guess there isn't actually any way to rewrite pts when stream-copying. I guess it would be complicated due to reordered frames (b-frames) etc.
[15:38:24 CET] <nirvanko> How to extract jpg frame from a mp4 file? sudo ffmpeg -ss 00:02:00 -t 00:00:00.04 -i videos/1080p/S04E01-02_Exit_1080.mp4 -r 25.0 SeasonCover.jpg
[15:38:40 CET] <nirvanko> [image2 @ 0x3d0f160] Could not get frame filename number 2 from pattern 'SeasonCover.jpg' (either set updatefirst or use a pattern like %03d within the filename pattern)
[15:38:43 CET] <nirvanko> av_interleaved_write_frame(): Invalid argument
[15:40:09 CET] <nirvanko> Right, I forgot the pattern
[15:40:16 CET] <nirvanko> Case dismissed
[15:41:46 CET] <DHE> sudo?
[15:42:20 CET] <DHE> you shouldn't need to sudo unless you have a filesystem permission issue
[16:55:42 CET] <pmercado> Hi!, newbie question here: http://paste.opensuse.org/55817255 <- using traGtor 0.8.82, any hint ?
[16:59:14 CET] <pmercado> anyway... added ? finally xD
[17:01:19 CET] <Diag> ?
[17:03:30 CET] <pmercado> using message hint at bottom
[17:03:58 CET] <Diag> oh i see
[17:04:10 CET] <Diag> have you updated your keyboard drivers lately?
[17:25:12 CET] <kepstin> nirvanko: if you only want to extract one frame, use "-frames:v 1", then you don't need a pattern i think
[17:25:35 CET] <kepstin> (and you also don't need a -t option)
[17:41:31 CET] <arturoperu> Hello
[17:42:08 CET] <arturoperu> Here's Arturo, from Lima, Peru, we are trying to compile ffmpeg in CentOS
[17:42:23 CET] <arturoperu> from some days ago
[17:44:15 CET] <arturoperu> here's the message we get
[17:53:41 CET] <joseval> Hello! I'm looking for some help while installing ffmpeg php. I found this error while configuring configure: "error: ffmpeg headers not found. Make sure ffmpeg is compiled as shared libraries using the --enable-shared option"
[17:54:51 CET] <joseval> What I want to know is how to compile ffmpeg with "--enable-shared" parameter
[17:56:26 CET] <joseval> Please give me a reference to solve this problem, thanks!
[18:00:35 CET] <Diag> joseval: you add --enable-shared to the end of the command lol?
[18:01:06 CET] <joseval> yes, I did
[18:02:00 CET] <joseval> I followed this instructions to compile ffmpeg: https://trac.ffmpeg.org/wiki/CompilationGuide/Centos
[18:04:16 CET] <joseval> I Specifically wrote this: 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 -ldl" --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-li
[18:04:23 CET] <joseval> and then make
[18:07:04 CET] <joseval> Do you have a different reference to try with please!
[18:07:16 CET] <joseval> ?
[18:10:34 CET] <francesco_> Hey, what's the best way to get the time at which a frame should be displayed with libav*?
[18:10:46 CET] <c_14> joseval: your IRC client cut off part of your configure command
[18:10:58 CET] <c_14> francesco_: get_best_effort_timestamp afaik
[18:12:10 CET] <francesco_> c_14, and what's its measure unit?
[18:12:18 CET] <francesco_> The stream's time_base?
[18:12:26 CET] <c_14> timebase units probably
[18:18:55 CET] <francesco_> thanks
[19:30:03 CET] <barteks2x> how do I stop ffmpeg that runs within a script without stopping the script?
[19:31:38 CET] <barteks2x> nevermind, I think the script exited because there was an error in it
[19:35:41 CET] <francesco_> hey, where can I see examples about how to use the new av_receive_frame, av_send_packet etc?
[19:39:06 CET] <Diag> francesco_: yes, you can
[19:39:20 CET] <francesco_> Diag, I can?
[19:39:32 CET] <francesco_> but where? lol
[19:39:36 CET] <Diag> francesco_: yeah theres some flags for that
[19:39:54 CET] <francesco_> ?
[19:40:22 CET] <Diag> francesco_: im saying, yes i believe you can, lol
[19:40:59 CET] <francesco_> ok
[19:41:47 CET] <Diag> francesco_: nah im just fuckin with ya, i got no idea
[19:42:30 CET] <francesco_> yeah, I figured it out :)
[20:01:23 CET] <magican> Hi guys !
[20:01:28 CET] <magican> I give up on google etc now=)
[20:01:54 CET] <magican> Problem is: ffmpeg -f x11grab -video_size 1920x1080 -i $DISPLAY -f alsa -i default -c:v ffvhuff -c:a flac test.mkv
[20:02:21 CET] <magican> That pic up my mic, cam and screen perfect. but 1 min is like 1 gb :O Convert it to mp4 in kdenlive is only 2mb..
[20:02:33 CET] <magican> how do I get it do mp4 directly ?? Would save tons of GB for me.
[20:03:12 CET] <furq> -c:v libx264 -c:a aac
[20:03:17 CET] <Diag> 2mb for 1 minute of video
[20:03:20 CET] <Diag> :L
[20:03:34 CET] <furq> it's a desktop capture, what do you expect
[20:03:44 CET] <Diag> "cam"
[20:04:13 CET] <magican> Diag: kinda..after kdenelive save it as mp4 is 20x smaller :)  It record everything, but the raw ouput is overkill in size.
[20:04:28 CET] <magican> furq: I try that.. A bit smaller output would be good, then kdenlive can do it's magic.
[20:04:58 CET] <furq> well you're about to discover the reason why people recommend lossless codecs for this
[20:05:05 CET] <furq> the two reasons, if you're editing this later
[20:06:05 CET] <magican> Yepp, but it's actually hard to find good sources for commandlines. I try what you said though.
[20:06:32 CET] <magican> You see what line I use above, suggestions for it? I try the thing you said anyway, see how the size and quallity goes.
[20:06:54 CET] <magican> never mind :D
[20:06:57 CET] <furq> if you want "a bit smaller" then -c:v ffv1 -c:a flac
[20:06:58 CET] <magican> 8mb .. :o
[20:07:12 CET] <magican> Would easy been 800mb with other commandline.
[20:07:16 CET] <magican> Spank you :)
[20:08:01 CET] <magican> As I've read a lot, "Past duration blablabal" .. anyoing thing, BUT not important anyway. (?) .. look and sound as I want so.
[20:08:16 CET] <furq> you shouldn't record directly to mp4 anyway
[20:08:35 CET] <furq> if the recording is interrupted for whatever reason then the file will be unplayable and difficult to recover
[20:09:08 CET] <furq> and if you're editing this file afterwards then you should consider using lossless x264 to avoid generation loss
[20:09:13 CET] <magican> Everything is perfect now. 10seconds IRC = 1hr google :)
[20:09:24 CET] <furq> i'm assuming the cpu usage you're seeing is acceptable
[20:09:35 CET] <furq> the main reason to use ffvhuff is that it's incredibly fast
[20:09:53 CET] <magican> ~40% on all 4 cores..  Running a 6700k @ 4.8ghz though
[20:10:19 CET] <magican> However, can be a bit ruff for it when virtualbox at the same time :D
[20:11:17 CET] <magican> Current which works fine: ffmpeg -f x11grab -video_size 1920x1080 -i $DISPLAY -f alsa -i default -c:v libx264 -c:a aac video.mkv
[20:11:29 CET] <magican> Tips'n'tricks to get down cpu usage? Wihtout quallityloss?
[20:11:40 CET] <Diag> not a lot lol
[20:12:16 CET] <Diag> maybe qsv if you dont mind the file being a bit larger
[20:12:50 CET] <furq> -preset superfast -qp 0
[20:13:11 CET] <Diag> yeah but thats gonna be a huge file right...
[20:13:18 CET] <furq> not if it's mostly static
[20:13:22 CET] <Diag> hmm
[20:13:32 CET] <furq> it'll be a lot smaller than ffvhuff anyway
[20:15:28 CET] <blue_misfit> hey folks, so it looks like I can do inverse telecine with the pullup filter, which is great
[20:15:43 CET] <blue_misfit> however, is there a good way to detect 3:2 pulldown versus pure interlaced?
[20:16:10 CET] <blue_misfit> since you ideally want to deinterlace pure interlaced video, and IVTC video with 3:2 pulldown
[20:18:30 CET] <magican> Sorry, my bad..  having the terminal OPEN with ffmpeg gave me 40-50% cpu usage, minimze it and do all other stuff as normal wile recording, 10-20%
[20:18:37 CET] <magican> so, happy days! Just start my masterplan then :P
[20:18:45 CET] <magican> Big thanks to you all! esp furq!
[21:05:50 CET] <francesco_> Can I set AVCodecContext options after it's been opened?
[21:20:55 CET] <bumblehead> hi i'm looking for a way to make a blank black mp4 video
[21:21:09 CET] <bumblehead> of any length really...
[21:21:23 CET] <bumblehead> would someone tell me an ffmpeg recipe for doing this?
[21:21:40 CET] <furq> -f lavfi -i nullsrc=d=60 out.mp4
[21:21:52 CET] <furq> replace 60 with your desired duration
[21:24:53 CET] <bumblehead> furq: thank you!
[21:28:56 CET] <rnsanchez> greetings, folks
[21:29:10 CET] <rnsanchez> anyone doing h264 transcoding in Tesla GPUs?
[21:29:42 CET] <rnsanchez> I did some experimenting in a K20c, but it easily saturates with 2 FullHD streams  :-/
[21:30:17 CET] <rnsanchez> I could push it to 3 stream by lowering parameters, but this is a lot less than I expected
[21:31:00 CET] <rnsanchez> in comparison, when transcoding on a 2xE5-2699, we can keep up with 18 streams
[21:33:06 CET] <rnsanchez> the card is listed here: http://www.dell.com/learn/us/en/04/campaigns/poweredge-gpu
[21:36:01 CET] <rnsanchez> note, this card is a total beast when transcoding a single stream..  you can crank everything up and it will crunch the video at above 1x.  but as you add more streams, it chokes pretty quickly.
[21:37:30 CET] <JeffATL> so if i'm strying to store some videos for long-term archiving hoping that they can be read years from now, mp3/libx264 for a/v encoding?
[21:38:00 CET] <furq> probably aac instead of mp3
[21:38:08 CET] <JeffATL> furq: ok
[21:43:13 CET] <JeffATL> and if i want to encode something that starts out mp2/mp2  for later cutting up in e.g. kdenlive, howbout i go -c:a copy -c:v rawvideo -vf "blah" then have kdenlive encode aac/libx264 on the way out of it?
[21:43:59 CET] <JeffATL> (where "blah" is yadif. crop, pad)
[21:47:30 CET] <furq> you might as well just keep the mp2 audio really
[21:48:23 CET] <JeffATL> furq: i'm finding some new hardware (smart tvs) that won't read it
[21:48:47 CET] <furq> sounds pretty smart
[21:49:08 CET] <furq> well yeah aac is the best for wide compatibility
[21:50:10 CET] <furq> not sure why you're going via rawvideo though
[21:50:28 CET] <furq> oh nvm you're filtering with ffmpeg, not kdenlive
[21:50:52 CET] <furq> you might as well use something like ffvhuff to reduce the bitrate a bit
[21:51:38 CET] <JeffATL> furq: yeah, kdenlive will take rawvideo and i'd just as soon not lossy-encode more times than i have to
[21:51:52 CET] <furq> ffvhuff is lossless
[21:52:45 CET] <furq> for long-term archival i'd probably just keep them as they are now if you have the space for it
[21:53:05 CET] <furq> and if you can make the cuts you want without reencoding
[21:55:31 CET] <JeffATL> furq: i'm not all that worried about space, but if various things can't read them as-is they're not a lot of help to me - i'd just as soon not keep both mp2/mp2 and aac/h264
[21:55:51 CET] <furq> well yeah if you need to play them in the meantime then that's no good
[21:56:26 CET] <furq> i generally try to keep master copies of stuff so i'm not locking myself out of future advancements in codecs and filters
[21:56:31 CET] <thebombzen> JeffATL: although keep in mind that mp2 is part of the dvd-video standard
[21:56:53 CET] <thebombzen> so there's a low risk that mp2 won't be readable in the future, because people will still have dvds
[21:57:13 CET] <JeffATL> so this first ffmpeg pass is only to crop away edge junk and de-int
[21:57:34 CET] <furq> well deinterlacing is the main thing i'm thinking of when i say filters
[21:57:46 CET] <furq> yadif is already a long way from the best-in-class deinterlacer
[21:58:05 CET] <thebombzen> I was about to ask what deinterlace filters would you recommend?
[21:58:13 CET] <JeffATL> thebombzen: i'm not so sure about that. i was headed in that direction too at first, but i'm starting to see optical media becoming less and less part of ppl's lives
[21:58:18 CET] <furq> nnedi, but not the ffmpeg implementation because it's singlethreaded and slow as fuck
[21:58:28 CET] <furq> i normally use vapoursynth and qtgmc
[21:58:32 CET] <furq> it's still pretty slow though
[21:58:47 CET] <thebombzen> is there an avfilter binding for those?
[21:58:53 CET] <furq> no
[21:59:07 CET] <thebombzen> is yadif the best one in avfilter?
[21:59:09 CET] <furq> vapoursynth will spit out y4m on stdout so you can pipe it into ffmpeg
[21:59:20 CET] <furq> lavf has nnedi, but it's unbelievably slow
[21:59:29 CET] <thebombzen> ah so it's the only one you could so with lavfi in realtime
[21:59:36 CET] <furq> yadif is the best one if you want to encode sd at more than 3fps
[21:59:57 CET] <thebombzen> I was asking cause I have some interlaced video and I'd like to play it
[22:00:00 CET] <furq> at least in my experience
[22:00:13 CET] <furq> i've not been keeping up with deinterlacers in lavf
[22:00:24 CET] <JeffATL> if my source vid were coming off of umatic, laserdisc, or a 2" ampex i might care more about a higher-quality de-interlacer
[22:00:37 CET] <thebombzen> ohhey mpv automatically picks -vf yadif
[22:00:39 CET] <thebombzen> cool
[22:01:00 CET] <furq> in my experience better deinterlacers help more with worse sources
[22:01:13 CET] <furq> yadif does a perfectly fine job if you have a clean 1080i source
[22:01:24 CET] <furq> or even a high-bitrate low-motion dvd source
[22:01:34 CET] <furq> ymmv obviously
[22:02:27 CET] <furq> it may be worth looking into, but vapoursynth plus all the filters you'll need to install plus writing the scripts will complicate the workflow a lot
[22:03:09 CET] <durandal_1707> w3fdif bwdif
[22:03:24 CET] <furq> do you actually think they're better than yadif or are you just listing other deinterlacers
[22:03:35 CET] <furq> i wasn't impressed with w3fdif at all
[22:04:00 CET] <durandal_1707> its faster
[22:04:40 CET] <durandal_1707> there is also kerndeinit iirc
[22:04:47 CET] <furq> kern is really basic isn't it
[22:05:27 CET] <furq> JeffATL: also if you do use yadif, use it in mode 1 (-vf yadif=1)
[22:05:43 CET] <durandal_1707> also for nnedi you want it have slice threading support
[22:05:49 CET] <furq> it doubles the framerate but it looks much nicer
[22:06:09 CET] <furq> durandal_1707: i think the avisynth/vapoursynth implemention uses frame threading
[22:06:12 CET] <furq> +at
[22:06:32 CET] <furq> although i guess there's no chance of that in libavfilter
[22:06:49 CET] <durandal_1707> you wrong
[22:07:07 CET] <furq> are there filters which can use frame threading
[22:07:20 CET] <furq> i thought that wasn't possible atm
[22:08:29 CET] <durandal_1707> slice threading is better
[22:22:51 CET] <thebombzen> welp, just found out that I have a hardware deinterlacer
[22:22:54 CET] <thebombzen> looks like I"m using that
[22:35:13 CET] <Gimmes> Hello, I am trying to make a livestream to a RTMP server of mine, I got a script that downloads a .png automatically as fast as possible and I want FFMPEG to read from it and when it changes put the new one on screen, the input png is called test.png, the FPS can be quite low, 1 should be enough but I am having issues, I tried with png pipe but got an error that there are not enough frames to estimate rate etc...
[22:37:26 CET] <Gimmes> Correction, on a image that doesn't change it works, but the problem is that when my script that downloads it, and repeats itself to check for updates it breaks FFMPEG
[22:55:00 CET] <aicasn> hey folks - i'm trying to drop the volume on a really loud video but the output vol is unchanged with this command
[22:55:26 CET] <aicasn> ffmpeg -i input.avi -c:v copy -c:a aac -af "volume=-3dB" output.mkv
[22:55:37 CET] <aicasn> any obvious mistakes there?
[22:58:22 CET] <aicasn> as if the whole "-af parameter" were being ignored
[23:00:09 CET] <durandal_1707> aicasn: try 0.75
[23:12:03 CET] <thebombzen> aicasn: the volume filter takes % as its argument
[23:12:05 CET] <thebombzen> not dB change
[23:12:11 CET] <furq> it takes both
[23:12:14 CET] <thebombzen> really?
[23:12:16 CET] <thebombzen> okay
[23:12:19 CET] <thebombzen> fk
[23:12:22 CET] <furq> !filter volume
[23:12:22 CET] <nfobot> furq: http://ffmpeg.org/ffmpeg-filters.html#volume
[23:12:38 CET] <thebombzen> sweet
[23:13:51 CET] <thebombzen> furq: it appeard it doesn't take both
[23:13:57 CET] <furq> either
[23:14:06 CET] <aicasn> neither made a noticeable difference in volume
[23:14:34 CET] <thebombzen> what about -af volume=0.1
[23:14:36 CET] <thebombzen> try thenuclear option
[23:14:39 CET] <thebombzen> see what happens
[23:14:42 CET] <furq> is your player doing normalisation or something
[23:14:51 CET] <aicasn> furq: testing with mpv. unlikely
[23:14:57 CET] <furq> oh
[23:14:57 CET] <furq> weird
[23:15:16 CET] <arpu> hi how ca i generate dash streams with h264 video codec ? webm_chunk  does not work
[23:15:16 CET] <furq> i've definitely used it with dB
[23:15:22 CET] <furq> volumedetect would be pretty useless otherwise
[23:15:42 CET] <arpu> the idea is to use matroska conatiner with h264 video   as  dash streams
[23:15:43 CET] <aicasn> i probably need to run the whole video through handbrake and just redo both a/v encodings
[23:15:58 CET] <aicasn> thanks folks. cheers :)
[23:20:58 CET] <thebombzen> does dash even support h.264
[23:21:16 CET] <furq> yes
[23:21:18 CET] <kerio> you mean mkv
[23:21:19 CET] <furq> webm obviously doesn't though
[23:30:08 CET] <arpu> yes i think this should work mkv with h264 as dash
[23:30:25 CET] <arpu> but web_chunk  makes webm chunks
[23:30:29 CET] <arpu> so its not allowed
[23:30:29 CET] <furq> dash normally uses fragmented mp4 afaik
[23:30:39 CET] <furq> !muxer segment
[23:30:39 CET] <nfobot> furq: http://ffmpeg.org/ffmpeg-formats.html#segment_002c-stream_005fsegment_002c-ssegment
[23:30:42 CET] <furq> you probably want that
[23:30:54 CET] <arpu> is this hls ?
[23:30:58 CET] <furq> no
[23:31:10 CET] <arpu> ok will look at thuis thx
[23:31:55 CET] <furq> i don't know if there's a way to have ffmpeg generate the manifest
[23:33:12 CET] <arpu> now i use web_chunk  with vp9 codec and webm conatiner and webm_dash_manifest to write the manifest file
[23:33:19 CET] <arpu> works fantastic!
[23:33:33 CET] <arpu> container
[23:38:41 CET] <arpu> but why not use mkv? in webm_chunk
[00:00:00 CET] --- Sat Feb  4 2017


More information about the Ffmpeg-devel-irc mailing list