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

burek burek021 at gmail.com
Fri Apr 6 03:05:01 EEST 2018


[01:05:49 CEST] <kerio> is fdk-aac still better than the builtin aac encoder?
[01:06:02 CEST] <furq> yes
[01:06:04 CEST] <kerio> (for 128kbps stereo)
[01:08:06 CEST] <JEEB> I'd say at that point I wouldn't be sure if I would bother.
[01:08:20 CEST] <furq> if you have both then use fdk
[01:08:40 CEST] <furq> but yeah don't rebuild ffmpeg for that
[01:08:43 CEST] <JEEB> I've done 96kbps stereo with the internal one and it was pretty fine for stuff like broadcast
[01:12:18 CEST] <kerio> furq: you can't control me
[01:12:30 CEST] <kerio> i'm also rebuilding from 3.4.2 to HEAD
[03:16:40 CEST] <JackK> Hi.  I found this script to use ffmpeg to stream mp4 to youtube.  https://pastebin.com/tTd1DNZR  But when I run the script, I get the errors at the bottom of the paste.  Any suggestions?  Thanks.
[04:04:23 CEST] <JackK> hmmm..  it seems to work fine locally..  just missing something on debian
[04:25:38 CEST] <JackK> nevermind.. it fails locally too.
[04:27:08 CEST] <JackK> different versions.  fail at different times
[05:16:56 CEST] <JackK> It's because the videos are different resolutions.. is there a way to scale them automatically?
[05:42:09 CEST] <wfbarksdale> am I correct in understanding that libx264 is a propietary encoder, but not the only h264 encoders available in ffmpeg?
[05:45:25 CEST] <furq> x264 is GPL
[05:45:29 CEST] <furq> h264 itself is proprietary
[05:46:28 CEST] <wfbarksdale> ahh, i see. How aggressive is MPEG LA?
[05:46:33 CEST] <furq> fairly
[05:46:55 CEST] <furq> if you're making money in a place where software patents exist then you're probably going to need a license
[05:47:10 CEST] <furq> ffmpeg also supports openh264, but idk why you'd bother
[05:47:29 CEST] <furq> openh264 is royalty-free if you use cisco's precompiled binaries but idk if that extends to building it into ffmpeg
[05:49:17 CEST] <wfbarksdale> so the options for encoding h264 video with ffmpeg are either libx264 (GPL) or openh264 (?)?
[05:50:04 CEST] <furq> openh264 is BSD
[05:50:23 CEST] <furq> it's also baseline-only and generally not as good
[05:57:14 CEST] <wfbarksdale> hmm, so on my mac I guess i can use videotoolbox... as i see this encoder when i do `AVCodec *h264Encoder = avcodec_find_encoder(AV_CODEC_ID_H264);`
[05:57:33 CEST] <wfbarksdale> but my deployment is debian... rats
[05:59:04 CEST] <DHE> there are some other options for hardware encoding, like nvenc or quicksync
[05:59:49 CEST] <DHE> in general hardware encoding is faster than software encoding but the quality ceiling is much lower
[06:00:50 CEST] <wfbarksdale> interesting, thanks for the info guys
[06:02:17 CEST] <furq> videotoolbox on OSX is just quicksync iirc
[06:02:27 CEST] <furq> unless it has a fallback software encoder
[06:12:09 CEST] <wfbarksdale> makes sense
[08:50:06 CEST] <ritsuka> videotoolbox can uses the amd hevc encoder on some macs too.
[11:12:12 CEST] <Nethe> Hi guys. I am trying to compile latest ffmpeg from repository, but it is showing an interesting error. Can you please help me to find what is wrong? Configuration with params and make error on this pastebin link https://goo.gl/qJX5kP
[11:13:16 CEST] <furq> are you sure you want to build with --disable-x86asm
[11:14:24 CEST] <Nethe> Is that an issue?
[11:14:50 CEST] <furq> i mean it should still build without it
[11:14:56 CEST] <furq> but you almost certainly don't want to disable asm
[11:15:13 CEST] <iive> it is going to make a lot of things very slow.
[11:15:19 CEST] <Nethe> Ah ok
[11:15:22 CEST] <Nethe> Thanks for tip :)
[11:16:12 CEST] <iive> oh, you got ICE
[11:16:56 CEST] <iive> internal compiler error. are you running on ryzen cpu by any chance?
[11:17:36 CEST] <Nethe> Absolutely no, it is intel
[11:17:42 CEST] <Nethe> Model name:            Intel(R) Core(TM) i5-4460  CPU @ 3.20GHz
[11:18:39 CEST] <Nethe> This is firstime when I can see this ice... Absolutely don't know what went wrong. Trying to compile it on Debian stretch (latest)
[11:19:06 CEST] <iive>  what gcc version?
[11:19:27 CEST] <Nethe> iive: gcc version 6.3.0 20170516
[11:20:08 CEST] <iive> technically it is gcc bug, so it should be reported to them. just make sure it is reliably reproducable.
[11:20:55 CEST] <azarus> the compiler segfaulted! woot
[11:21:19 CEST] <Nethe> iIt is interesting, this version of gcc is on the server what I installed and compiled normally yesterday
[11:21:22 CEST] <furq> i take it you're not overclocking or anything like that
[11:21:47 CEST] <azarus> furq: his CPU doesn't really support overclocking
[11:21:48 CEST] <Nethe> No, i am not doing  nothing like overclocking or something like that
[11:22:44 CEST] <iive> you might want to repeat the failing command, but using the gcc option "-E" that would produce a pre-processed file
[11:23:09 CEST] <Nethe> ok, will try
[11:23:11 CEST] <iive> so then just doing `gcc -c file.from.E.c` would trigger that bug.
[11:23:29 CEST] <iive> does it ICE every time you run make?
[11:24:25 CEST] <Nethe> I tried it 7x and still the same
[11:25:25 CEST] <iive> hum. there is gcc 6.4
[11:26:11 CEST] <iive> i mean, i'm with 7.3, but they have newer release for the old series too.
[11:26:12 CEST] <furq> yeah idk if it's worth reporting 6.3 bugs any more
[11:26:22 CEST] <furq> 6.4 was the final bugfix rollup for 6.x i think
[11:26:55 CEST] <Nethe> https://goo.gl/JV4NQ6 this is full report if you want to see it, it is short
[11:27:14 CEST] <furq> is it in a different place every time
[11:27:51 CEST] <furq> if it is then i'd maybe start to worry about system stability
[11:28:07 CEST] <iive> oh, they even tell you to run the -E and to read the instructions for sending bugreport to them.
[11:28:20 CEST] <Nethe> Yup, will try it and will see, thanks for help!
[11:28:25 CEST] <iive> furq, he said 7 times at same place.
[11:28:44 CEST] <furq> he didn't say it was in the same place
[11:28:50 CEST] <furq> and those two pastes are in different places
[11:28:58 CEST] <Nethe> furq is correct
[11:29:13 CEST] <iive> oh, indeed
[11:29:16 CEST] <Nethe> will try to use older sources if it will help
[11:29:33 CEST] <furq> if you're getting segfaults in different places every time then i'd probably start checking that your box is ok lol
[11:29:53 CEST] <iive> memtest
[11:30:04 CEST] <furq> make sure nothing's overheating etc
[11:30:07 CEST] <furq> and yeah then memtest
[11:30:07 CEST] <iive> is a good start.
[11:30:38 CEST] <Nethe> ok
[11:30:58 CEST] <iive> `sensors`
[11:31:06 CEST] <iive> should tell you temperatures
[11:31:29 CEST] <iive> the cpu can cool quickly while idle
[11:31:36 CEST] <Nethe> i will check it
[11:32:16 CEST] <iive> check also the `watch` command,
[11:46:36 CEST] <Nethe> sensors shows nothing unexpected, temperature is aroud 40 degrees of Celsia...
[11:57:55 CEST] <Nethe> Ok, it seems the hardware is wrong, tested memory and there are a few errors in write tasks... Thanks for help guys
[12:43:33 CEST] <th3_v0ice> Hi guys. Can FFmpeg still generate HLS master playlist? The option is there on a website but I cant find it in source. I am using FFmpeg C API.Thanks!
[12:46:17 CEST] <Li> execuse for the noob questiosn here. when ffmpeg complain about video or audio codec, is there a command to list current available codecs on the machine?
[12:49:11 CEST] <Li> 2_ to stream video camera to http://localhost:9876 do I need to install http server or does ffmpeg opens/create the service itself and I'm able to access from lan? it keeps complaining in my trial about this Connection to tcp://localhost:9876 failed (Connection refused), trying next address
[13:03:28 CEST] <m1_> hi all, i'm having difficulty trying to concatenate two files using the concat demuxer
[13:04:18 CEST] <m1_> i've re-encoded both input files with the same codecs / settings but no matter what codecs i use, when i try to concat them i get all kinds of errors once it hits the 2nd input file
[13:04:56 CEST] <m1_> command lines and errors: https://pastebin.com/NvXf7uJz
[13:47:01 CEST] <th3_v0ice> Maybe a better question would be, how to invoke -master_pl_name while using the HLS muxer and FFmpeg API?
[14:09:10 CEST] <alone-y> hello, any one can approve, TechSmith codec for ScreenRecording only can be reading with ffmpeg, right?
[14:14:10 CEST] <alone-y> i guess so.
[14:14:15 CEST] <alone-y> ffmpeg -codecs
[14:14:38 CEST] <alone-y> can any know alternative of TechSmith?
[14:18:34 CEST] <pmjdebruijn> in what way
[14:18:59 CEST] <pmjdebruijn> those specific screencapture codecs are designed for best compression of onscreen data, with relatively low system usage
[14:19:12 CEST] <pmjdebruijn> so they are optimized for recording, not as much playback
[14:19:31 CEST] <pmjdebruijn> you should be able to transcode them for playback with ffmpeg quite easily
[14:20:13 CEST] <pmjdebruijn> alone-y: please do elaborate on what you want to achieve?
[14:20:15 CEST] <alone-y> well,pmjdebruijn, right choise techsmith?
[14:20:26 CEST] <alone-y> only text
[14:20:30 CEST] <alone-y> many text
[14:20:51 CEST] <alone-y> text with colors, may be 8 colors total
[14:21:38 CEST] <pmjdebruijn> uhm
[14:21:40 CEST] <alone-y> but i need lossless = or something like lossless- with exact colors
[14:21:48 CEST] <pmjdebruijn> for recording?
[14:21:52 CEST] <pmjdebruijn> yourself?
[14:22:01 CEST] <pmjdebruijn> what does it need to be played back on?
[14:22:05 CEST] <alone-y> yes, for me. iam recoring data..
[14:22:39 CEST] <pmjdebruijn> point is as you already noticed TechSmith codecs is Decode only
[14:22:55 CEST] <alone-y> how i use
[14:22:56 CEST] <alone-y> ffmpeg -loglevel quiet -f gdigrab -i desktop -vf crop=1000:710:3797:125 -c:v libx264 -profile:v high444 -crf 0 -preset:v ultrafast E:\Screen.Capturing\%yyyymmhhmmss%.mkv
[14:23:03 CEST] <alone-y> this is h264 lossless
[14:23:06 CEST] <pmjdebruijn> sure
[14:23:11 CEST] <pmjdebruijn> i'd probably prefer that
[14:23:11 CEST] <alone-y> but it's 80% of my CPU
[14:23:22 CEST] <alone-y> ^)
[14:23:32 CEST] <pmjdebruijn> but do you need full lossless?
[14:23:42 CEST] <alone-y> i guess, yes.
[14:23:50 CEST] <pmjdebruijn> why do you need lossless?
[14:23:53 CEST] <alone-y> becouse if now lossless - will be wrong colors
[14:24:05 CEST] <pmjdebruijn> in what way would that matter?
[14:24:17 CEST] <pmjdebruijn> any problems should be barely noticable
[14:24:33 CEST] <pmjdebruijn> why not try -crf 10
[14:24:39 CEST] <pmjdebruijn> without -profile:v high444
[14:24:43 CEST] <alone-y> well, oh will be TERRIBLE ;)
[14:24:50 CEST] <pmjdebruijn> will it?
[14:24:56 CEST] <pmjdebruijn> I doubt it
[14:25:00 CEST] <alone-y> 1 sec
[14:25:08 CEST] <alone-y> i will do it ok?
[14:25:12 CEST] <pmjdebruijn> sure
[14:25:15 CEST] <pmjdebruijn> easy enough to try
[14:25:17 CEST] <alone-y> thank you for helping.
[14:25:19 CEST] <alone-y> just a moment
[14:25:24 CEST] <pmjdebruijn> also another option might be huffyuv
[14:25:46 CEST] <pmjdebruijn> lagarith
[14:25:46 CEST] <alone-y> if you can - say it how and i will try
[14:25:48 CEST] <pmjdebruijn> or if ffv1
[14:25:55 CEST] <pmjdebruijn> huh?
[14:26:05 CEST] <pmjdebruijn> oh wait lagarith is deocde only too
[14:26:06 CEST] <alone-y> lagarith can encoding with ffmpeg?
[14:26:10 CEST] <alone-y> yes yes..
[14:26:31 CEST] <pmjdebruijn> anyhow ffv1 or huffyuv might be worth tyring
[14:26:40 CEST] <pmjdebruijn> still h264 will play back with almost anything
[14:26:45 CEST] <pmjdebruijn> so that's big advantage
[14:28:06 CEST] <alone-y> can i talking with you private for not disturbing other people here?
[14:28:10 CEST] <alone-y> or it's ok?
[14:31:06 CEST] <pmjdebruijn> no
[14:31:20 CEST] <pmjdebruijn> this is on topic for the channel i guess
[14:31:27 CEST] <alone-y> ok, thank you
[14:31:54 CEST] <alone-y> -c:v libx264 -crf 10 -preset:v ultrafast
[14:32:00 CEST] <alone-y> right crf 10?
[14:32:09 CEST] <alone-y> i dont see visual differences
[14:32:32 CEST] <pmjdebruijn> that was exactly my point
[14:32:39 CEST] <pmjdebruijn> it'll still be fairly high bitrate
[14:32:47 CEST] <pmjdebruijn> but presumbly your cpu usage should be lower
[14:32:51 CEST] <alone-y> but 80% of cpu still persist. i guess may be it will less file lenght..
[14:35:43 CEST] <pmjdebruijn> what system are you trying this on? an older machine?
[14:36:09 CEST] <alone-y> well, win7-64, intel pentium double corse g..
[14:36:13 CEST] <alone-y> core
[14:36:16 CEST] <alone-y> g..
[14:36:39 CEST] <alone-y> 620
[14:37:46 CEST] <pmjdebruijn> ah quite old indeed
[14:38:00 CEST] <alone-y> well, yes, not core-i7
[14:38:03 CEST] <alone-y> ;)
[14:38:17 CEST] <pmjdebruijn> I guess ffv1 is the other option
[14:38:27 CEST] <pmjdebruijn> but that will only play back on system with that codec installed
[14:38:35 CEST] <pmjdebruijn> so for playback you might want to transcode after the fact
[14:38:47 CEST] <alone-y> well i guess mpv can ffv1
[14:39:26 CEST] <alone-y> qrtle?
[14:41:21 CEST] <alone-y> nice note:
[14:41:49 CEST] <alone-y> i have encode ~90 sec with lossless and without lossless h264
[14:42:10 CEST] <alone-y> sizes is very similar - 24mb
[14:42:11 CEST] <alone-y> but:
[14:42:37 CEST] <alone-y> with 7z, files are compressed to 11mb and 3mb
[14:42:56 CEST] <alone-y> question, which size for lossless 7z and non-lossless 7z ;)
[14:43:00 CEST] <alone-y> guess what..
[14:43:27 CEST] <pmjdebruijn> huh?
[14:43:30 CEST] <pmjdebruijn> sense it does not make
[14:44:25 CEST] <alone-y> lossless packed to 3mb
[14:44:36 CEST] <alone-y> non-lossless 11
[14:44:46 CEST] <pmjdebruijn> possibly
[14:45:05 CEST] <alone-y> 50% compression rate for non-lossless and 3/24=1/8.. for.. lossless
[14:45:12 CEST] <pmjdebruijn> regardless, archiving already compressed content is clumsy at best
[14:45:16 CEST] <alone-y> well size it's not to matter - cpu my goal
[14:45:30 CEST] <alone-y> well, yes.
[14:45:37 CEST] <iive> you should not be able to compress already compressed data
[14:45:51 CEST] <pmjdebruijn> in case of some lossless codec it might
[14:45:58 CEST] <pmjdebruijn> as they tend to favor low CPU usage
[14:46:04 CEST] <pmjdebruijn> i'm surprised too
[14:46:10 CEST] <alone-y> well, yes, but if i dont need soume archive, why i can't compress 50gb files to.. 5?
[14:46:19 CEST] <pmjdebruijn> huh?
[14:46:48 CEST] <alone-y> well, i am periodically packing this h264 lossless.
[14:46:57 CEST] <alone-y> of course it's not 1|10 but 1|5 = yes
[14:47:33 CEST] <alone-y> 1gb 7zped, it's near 5gb h264 lossless
[14:48:51 CEST] <alone-y> (same result for h265 lossless - for h265 lossless mode is simpler - just some prefix)
[14:49:20 CEST] <alone-y> "-x265-params lossless=1"
[14:49:24 CEST] <furq> now try that with -preset veryslow
[14:50:31 CEST] <alone-y> i guess it will be 100% of cpu ;)
[14:50:45 CEST] <iive> try huffyuv
[14:51:02 CEST] <alone-y> 1 sec
[14:51:47 CEST] <iive> ffmpeg had support for some screencapture formats, but mostly decoding.. not sure if zlib codec is supported...
[14:52:34 CEST] <alone-y> yes, i guess decoding
[14:52:42 CEST] <alone-y> well
[14:52:43 CEST] <alone-y> ffmpeg -f gdigrab -i desktop -vf crop=1600:900:5:0 -vcodec qtrle -strftime 1 capture.mov
[14:52:47 CEST] <alone-y> good for CPU (my cpu)
[14:52:56 CEST] <alone-y> and real good qulity of texts
[14:53:02 CEST] <alone-y> but sizes ;))
[14:53:18 CEST] <alone-y> 90 minut = 9 gb
[14:53:26 CEST] <alone-y> 90 minutes
[15:03:32 CEST] <alone-y> ==========
[15:03:48 CEST] <alone-y> techsmith testing: 3minutes = 90mb
[15:04:01 CEST] <alone-y> (9 in 7z)
[15:05:10 CEST] <pmjdebruijn> alone-y: if you capture in ffv1 or huffyuv, you can transcode to a more space efficient codec later
[15:05:48 CEST] <alone-y> thank you pmjdebruijn
[15:06:07 CEST] <alone-y> well, my goal cpu - techsmith 20%
[15:06:12 CEST] <alone-y> of cpu for 1600*900
[15:06:18 CEST] <alone-y> but i need 3*1600*900
[15:06:22 CEST] <alone-y> at least ;)
[15:07:11 CEST] <alone-y> can you give me example with ffv1 or huffyuv/
[15:07:12 CEST] <alone-y> ?
[15:07:13 CEST] <alone-y> >
[15:09:21 CEST] <furq> use ffvhuff if you want it to be as fast as possible
[15:09:29 CEST] <furq> assuming you're going to reencode it later anyway
[15:10:08 CEST] <alone-y> well, ffmpeg -f gdigrab -i desktop -vf crop=1600:900:5:0 -vcodec qtrle -strftime 1 capture.mov
[15:10:12 CEST] <alone-y> this one - nighmare
[15:10:21 CEST] <alone-y> becouse it's 100 mb for 50sec
[15:10:31 CEST] <alone-y> and cpu not small - 60%
[15:10:48 CEST] <alone-y> techsmith 100mb for almost 4 minutes
[15:10:51 CEST] <alone-y> with 20% cput
[15:10:53 CEST] <alone-y> cput.
[15:11:10 CEST] <alone-y> is where alternative in ffmpeg for that?
[15:11:13 CEST] <alone-y> can any one know?
[15:24:13 CEST] <alone-y> with all my sadness i guess no alternative ;(
[15:31:46 CEST] <pmjdebruijn> alone-y: have you tried ffv1 or huffyuv ?
[15:33:31 CEST] <alone-y> yes, but it's nightmare - sizes is... gigabytes, but cpu usage not so small
[15:34:06 CEST] <alone-y> ffmpeg -f gdigrab -i desktop -vf crop=1600:900:5:0 -vcodec huffyuv capture.mov
[15:34:14 CEST] <alone-y> VERY BIG SIZE
[15:35:08 CEST] <alone-y> ffv1 - near same with 100% cpu
[15:35:23 CEST] <pmjdebruijn> ok
[15:36:55 CEST] <alone-y> thank you for helping pmjdebruijn
[15:38:50 CEST] <pmjdebruijn> yeah I'm out of ideas, sorry
[15:38:58 CEST] <pmjdebruijn> alone-y: you might try -threads 2
[15:39:14 CEST] <pmjdebruijn> it will not reduce cpu usage, though i might spread it across your cores
[15:39:39 CEST] <pmjdebruijn> alone-y: also which version of ffmpeg/libx264 are you using earlier?
[15:39:54 CEST] <pmjdebruijn> 3.4.2 from https://www.ffmpeg.org/download.html ?
[15:41:47 CEST] <alone-y> One day I tried to reverse-engineer some codec (just for fun), looked at sample produced by TechSmith Camtasia and realized that its packed with zlib and after some time guessed correctly they use M$ RLE. In order to test it I wrote a decoder and hacked it into FFmpeg.
[15:42:34 CEST] <alone-y> ffmpeg version N-86330-gbd1179e Copyright (c) 2000-2017
[15:42:55 CEST] <alone-y> i guess this man says, techsmith is ms rle packed zlib?
[15:42:57 CEST] <alone-y> or not?
[15:42:57 CEST] <alone-y> ;)
[15:43:03 CEST] <alone-y> just interesting how is it working.
[15:43:14 CEST] <alone-y> https://codecs.multimedia.cx/page/20/?title=Dirac
[15:43:47 CEST] <pmjdebruijn> ah that's dev snapshot
[15:44:18 CEST] <alone-y> may be
[16:10:51 CEST] <DHE> okay, I'm actually impressed by av1 so far (in terms of image quality I mean)
[16:11:53 CEST] <JEEB> yea, even though it's still getting breaking changes into the review queue - the format itself is quite promising
[16:37:05 CEST] <foobar_user68195> Hey, guys! I'm trying to extract a single frame from a video_a and make another video out of it with a complex_filter (part of bigger command). I know I can do it with two commands, but that doesn't fit my purpose. Is there any way of translating https://pastebin.com/E7Nv0TLL into a single filter_complex command?
[16:39:38 CEST] <dragmore88> hi, anyone know if enabeling --hrd on will expose nal_hrd_parameters_present_flag
[16:39:38 CEST] <dragmore88>  + vcl_hrd_parameter_present_flag
[16:39:38 CEST] <dragmore88>  +bit_rate_scale
[16:39:38 CEST] <dragmore88>  when using ffmpeg + lib_x265 ?? Our packager is complaining (Harmonic WFS)
[17:12:45 CEST] <kepstin> dragmore88: looking at the x265 documentation, it looks like that's probably the case. Probably fastest just to try it yourself and see? Note that the ffmpeg option description for -nal-hrd says that you'll also have to set vbv-bufsize (via -x265-params) for it to work.
[17:14:45 CEST] <dragmore88> yupp, its a complex plattform i dont have access to directly.. ;) And the x265 docs doesnt mention the sub parameters
[17:20:31 CEST] <kepstin> dragmore88: you'd probably be better off asking the x265 folks directly, if possible.
[17:20:55 CEST] <dragmore88> yea.. tried on the channel.. ill wait for some response ;)
[17:20:59 CEST] <dragmore88> thx tho
[17:25:28 CEST] <m1_> anyone have any idea why concatenating two videos fails encoded with the same parameters is failing? https://pastebin.com/NvXf7uJz
[18:23:55 CEST] <alexpigment> m1_ : it could be that your audio and video streams are mapped wrong
[18:24:16 CEST] <alexpigment> i can see that your audio is stream 0:0 and your video is stream 0:1
[18:24:55 CEST] <alexpigment> i don't see anything for sure that points to that being the problem, but i'd try to rule it out first
[18:26:53 CEST] <foobar_user68195> Bump: lots of people joined or quit, I'm going to repeat myself - maybe one of the newcomers knows the answer? I'm trying to extract a single frame from a video_a and make another video out of it with a complex_filter (part of bigger command). I know I can do it with two commands, but that doesn't fit my purpose. Is there any way of translating https://pastebin.com/E7Nv0TLL into a single filter_complex command?
[18:27:42 CEST] <foobar_user68195> (It's a two-liner, nothing overly complex, I just don't know the actual filter_complex equivalents of the commands or if they even exist)
[18:47:21 CEST] <BtbN> foobar_user68195, use the loop filter
[18:49:29 CEST] <BtbN> ffmpeg.exe -ss 22:44.350 -i test.mkv -an -sn -vf loop=-1:1:0,scale=1280:720 -t 10 out.mp4
[18:58:34 CEST] <MichaelJoel> I have some very large (long, like 2 hours) mp3 files. The audio itself though has silent spaces of a given amount of time in various areas. Could I somehow split these files by searching for these silence areas - the result being multiple files (preferably with the silence removed)?
[19:04:25 CEST] <foobar_user68195> Btbn, thanks, but I wanted a filter_complex version, not a self-contained one-liner. I still need to input that image-video inside another stream
[19:04:43 CEST] <foobar_user68195> (Going to copy that one-liner for future reference, though, always a step less)
[19:19:40 CEST] <BtbN> foobar_user68195, ?
[19:19:57 CEST] <BtbN> vf and filter_complex are equivalent
[19:41:17 CEST] <foobar_user68195> Oh? So how would that look in the filter_complex version for 10s extracted-frame being held? How do I pass the "-t 10" in there?
[19:41:33 CEST] <foobar_user68195> E.g. ffmpeg -ss 22:44.350 -i video_a.mp4 -filter_complex "[0:v:0]trim=start=40:end=60,setpts=PTS-STARTPTS[v1];[0:v:0]loop=-1:1:0,scale=1280:720[held_frame];[held_frame][v1]concat[outv]" -map [outv] -map 0:a out.mp4
[19:44:03 CEST] <saml> -vf scale=...   and -filter_complex scale=... gives me different result  why?
[20:11:29 CEST] <kiroma> Hey, I want to develop a small program that would play back videos, where should I start?
[20:14:40 CEST] <Mavrik> ffplay.c ?
[20:15:11 CEST] <kiroma> What reference sheets should I be looking for?
[20:40:21 CEST] <alexpigment> does anyone have a script (or at least a set of instructions) on how to do smart cutting with ffmpeg? i understand it from a basic standpoint (losslessly cut IDR > IDR, encode trim points up to IDR, concat), but i don't know how you'd do this programmatically
[20:42:00 CEST] <MichaelJoel> any way to have ffmpeg split mp3 files by *either* just a certain amount of play time -OR- (preferred) a specified space of silence in the audio?
[20:43:09 CEST] <alexpigment> MichaelJoel: no, but i have a feeling it requires using the silencedetect filter: https://stackoverflow.com/questions/42507879/how-to-detect-the-silence-at-the-end-of-an-audio-file
[20:43:13 CEST] <JEEB> alexpigment: index the file first, then decide on the points and utilize decoding+encoding on the parts you have to re-encode
[20:44:23 CEST] <alexpigment> JEEB: by index, you mean print out all frame types?
[20:44:35 CEST] <alexpigment> is there a way to do that with ffmpeg, or do you use ffprobe?
[20:45:02 CEST] <JEEB> if you are actually going to do this stuff with the API
[20:45:18 CEST] <JEEB> then you will probably want to roll through with lavf and make your own index that you then load from either memory or otherwise
[20:45:54 CEST] <alexpigment> so it would be difficult to do it outside of the API?
[20:46:19 CEST] <JEEB> doing any sort of seeking without indexing can get rather iffy
[20:46:56 CEST] <JEEB> and generally, you want to know where to start cutting on lavf level, and where you have to re-encode
[20:47:12 CEST] <JEEB> it's not impossible to do it with just ffmpeg.c + ffprobe, but uhhh
[20:47:30 CEST] <JEEB> also you need to have some sort of parameter set parsing in AVC or HEVC
[20:48:01 CEST] <JEEB> (or at least you have to be able to generate parameter sets that actually match the whole concat thing)
[20:48:16 CEST] <MichaelJoel> ok... not very familiar with mp3 players and such. (maybe redirect me to a correct channel if this isn't it for this question) Is there a way to create some kind of an index file an mp3 player can use to know where areas in an mp3 start?
[20:48:44 CEST] <alexpigment> JEEB: yeah, i know the parameter set is important. for just proof of concept though, i'm avoiding that for n ow
[20:48:45 CEST] <alexpigment> *now
[20:49:15 CEST] <MichaelJoel> I mean by that - is leaving a long mp3 file as one long file, and having another file that specifies "chapters"/"tracks" within that file?
[20:49:24 CEST] <MichaelJoel> that mp3 players will recognize?
[20:49:55 CEST] <sfan5> you're describing a cue file
[20:50:00 CEST] <sfan5> doubt any mp3 players will read those
[20:50:13 CEST] <MichaelJoel> so I do need to break it into seperate files
[20:50:25 CEST] <JEEB> sfan5: also think about seeking in raw mp3 with VBR :P
[20:50:40 CEST] <sfan5> yeah, that will suck too
[20:50:42 CEST] <JEEB> (although various audio players actually goddamn index the file when opening it, lol)
[20:50:53 CEST] <MichaelJoel> thanks sfan5
[20:50:56 CEST] <alexpigment> are these commercial discs that could be scraped via a database?
[20:51:16 CEST] <sfan5> MichaelJoel: if you create such a cue file you can let a program automatically split it into several files though
[20:51:19 CEST] <alexpigment> it's possible they include timestamps - i could be wrong
[20:51:50 CEST] <MichaelJoel> hmm? Well their originally mp4 that I converted to mp3 with ffmpeg
[20:52:02 CEST] <MichaelJoel> so I would assume timestamps and such are gone?
[20:52:23 CEST] <jafa> the "field" video filter adjusts the stride such that every second line is skipped... does anyone happen to know if it do this conditionally on the frame being an interlaced frame?
[20:53:21 CEST] <sfan5> doesn't look like it https://github.com/ffmpeg/ffmpeg/blob/master/libavfilter/vf_field.c#L69
[20:53:44 CEST] <jafa> thanks!
[20:59:45 CEST] <DJDan> will NDI FFMPEG work on RPI3 at all?
[21:27:30 CEST] <MichaelJoel> hmm. Tried that example out. Log shows silence starting at 6.90882. What is that number in? not seconds or minutes
[21:29:13 CEST] <MichaelJoel> oh. Doc says seconds, but that cant be... hmmm maybe I got something wrong
[21:40:20 CEST] <pimpind_> hi
[21:40:38 CEST] <pimpind_> im having an issue limited my video to 2500k and 720p when steaming to youtube
[21:40:45 CEST] <pimpind_> can someone look at my cmd and give me a hand?
[21:41:30 CEST] <kiroma> Don't ask to ask, paste the code to pastebin and link it here.
[21:41:34 CEST] <pimpind_> thanks@!
[21:41:44 CEST] <slavanap> Hi, could you suggest a good starter guide to process video&audio with ffmpeg in C++. I'm familiar with AviSynth plugins development already. For instance, I need to extract video frames in RGB32 from videofile and mute audio for specific duration at specific position.
[21:42:10 CEST] <pimpind_> https://pastebin.com/c0bu01i6
[21:43:52 CEST] <pimpind_> i think i got closed
[21:44:49 CEST] <pimpind_> it close
[21:46:21 CEST] <c_14> pimpind_: you probably want to set -maxrate and -bufsize
[21:46:49 CEST] <c_14> https://trac.ffmpeg.org/wiki/EncodingForStreamingSites
[21:47:26 CEST] <pimpind_> ok it seems like since i was using copy it wouldnt scale
[21:47:46 CEST] <c_14> if you use copy it won't encode either
[21:47:47 CEST] <c_14> ...
[21:48:19 CEST] <pimpind_> ya my bad
[21:50:54 CEST] <DJDan> does FFMPEG support NDI by default in RPI3 via apt-get install ffmpeg?
[21:51:16 CEST] <DHE> if you want to write for ffmpeg in C/C++, there's some minimal examples of various thigngs in doc/examples/*.c to get you going. doxygen docs are available for buildings and on the site
[21:52:06 CEST] <kiroma> I'm erroring out with undefined reference to avdevice_register_all()
[21:52:55 CEST] <MichaelJoel> hmm, trying that example "grep" is unrecognized as any command
[21:54:11 CEST] <kiroma> grep is a Unix command
[21:54:20 CEST] <MichaelJoel> oh
[21:57:42 CEST] <JEEB> DJDan: NDI is a closed source SDK which is incompatible with a lot of software that people generally want to enable with FFmpeg that is open source
[21:57:57 CEST] <alone-y> hello, anyone know ffmpeg can encoder packed rle?
[21:57:58 CEST] <pimpind_> how can i try and force 30fps?
[21:58:04 CEST] <pimpind_> im hoving right at 27
[21:58:09 CEST] <pimpind_> cpu is barely pegged
[21:58:18 CEST] <pimpind_> would changing the preset affect that?
[21:58:36 CEST] <c_14> if your cpu isn't limited it's something else
[21:59:02 CEST] <c_14> network maybe
[21:59:05 CEST] <JEEB> read: people usually want x264 and shit which is GPL, at which point if you link NDI you will have to enable-nonfree, which means that the resulting mish-mash cannot be distributed
[21:59:05 CEST] <DJDan> JEEB:  NDI is now supported in ffmpeg... im trying to get a NDI source from one computer, and then display it in another computer (RPI3) fullscreen
[21:59:27 CEST] <JEEB> DJDan: FFmpeg can be built with NDI's proprietary closed source thing
[21:59:32 CEST] <JEEB> there's a wrapper for it, yes
[22:00:01 CEST] <alone-y> ms rle packed my zlib - is it possible t encoder with ffmpeg?
[22:00:12 CEST] <pimpind_> network?
[22:00:17 CEST] <pimpind_> like my network might be limited?
[22:00:28 CEST] <pimpind_> dont think so im on a pretty big univ pipe to stream this camera
[22:00:32 CEST] <JEEB> what I mean is that people generally want to distribute FFmpeg with things that are incompatible with the notion of having closed source stuff in the binary. thus it is highly unlikely someone's repository will have an FFmpeg with NDI linked in
[22:01:06 CEST] <JEEB> even if it in theory is possible to distribute an LGPL build of FFmpeg with NDI shit (as long as NDI side's license agrees, of course)
[22:01:24 CEST] <DJDan> JEEB:  how do i know if Raspbian apt-get install ffmpeg has ndi support? and how would i make my NDI source appear fullscreen on RPI3? will i need to do NDI Stream -> FFMPEG -> port to a stream of some sort then open VLC to maximize or is there a better method?
[22:01:44 CEST] <JEEB> DJDan: I am trying to tell you goddamnit that nobody is going to fucking distribute binaries with it
[22:02:00 CEST] <JEEB> because you cannot put such basic yet useful crap into the binary as x264 then
[22:02:02 CEST] <DJDan> JEEB:  sorry, i will recompile it..
[22:02:07 CEST] <JEEB> or anything else that is GPL
[22:02:27 CEST] <JEEB> because as soon as you create a binary that has GPL stuff in it plus proprietary -> the thing becomes NON distributable
[22:02:40 CEST] <JEEB> aka you can use it and all, but you CANNOT GIVE IT OUT
[22:02:49 CEST] <JEEB> also do note that this does not at all take into account NDI's licensing
[22:03:00 CEST] <DJDan> oh fairenough
[22:03:19 CEST] <JEEB> their proprietary thing's license can be whatever
[22:03:29 CEST] <DJDan> so i will recompile ffmpeg for rpi3 then and how do i enable NDI support
[22:03:30 CEST] <JEEB> also I don't even know if you can get the NDI SDK or whatever for ARM
[22:03:43 CEST] <kurufu> indeed some purists may consider such linking of proprietary stuff to gpl stuff a violation. Though i dont think anyone here is a lawyer :)
[22:03:48 CEST] <DJDan> FFMPEG said it has NDI support in the latest version
[22:03:57 CEST] <DJDan> is that not for ARM
[22:04:00 CEST] <JEEB> FFmpeg SUPPORTS USING THE NDI PROPRIETARY LIBRARY
[22:04:10 CEST] <JEEB> as in, THERE IS A FUCKING WRAPPER AROUND IT
[22:04:14 CEST] <JEEB> sorry for the caps
[22:04:31 CEST] <kiroma> I feel you jeeb.
[22:04:43 CEST] <DJDan> well i have a NDI source coming from Windows, i would like to stream that to the RPI3 and display it on the RPI3
[22:05:02 CEST] <JEEB> because the NDI pieces of shits want to call their crap a "standard" yet do not want to make it public nor do they want to open source their shit
[22:05:27 CEST] <durandal_1707> if you want ndi shite, compile your own ffmpeg
[22:05:33 CEST] <JEEB> so they got someone's good side and a wrapper was merged
[22:05:38 CEST] <JEEB> for their proprietary SDK
[22:05:41 CEST] <pimpind_> when the stream is going
[22:05:51 CEST] <pimpind_> what does fps=30 q=31 mean
[22:05:53 CEST] <pimpind_> whats the q?
[22:05:57 CEST] <pimpind_> fps is obvious lol
[22:06:29 CEST] <JEEB> kurufu: the resulting binary is non-distributable. I don't think we need lawyers for that. You have GPL software and you link something proprietary that doesn't hit the "what comes with the OS" exception
[22:06:48 CEST] <DJDan> how do i enable NDI on the RPI3 when compiling FFMPEG then? and then will it allow me to grab a NDI network source and then output it fullscreen to RPI3 somehow...
[22:06:50 CEST] <JEEB> the resulting binary is OK for you to use, but you will never be able to abide to the GPL for the whole mix
[22:06:51 CEST] <kiroma> q is quanitizer, the higher it is, the lower image quality
[22:06:52 CEST] <kurufu> oh yes thats for sure. I meant if the act of linking them together was admissable.
[22:07:11 CEST] <JEEB> people do weird things in their homes, and they have had to do enable-nonfree
[22:07:19 CEST] <JEEB> as long as they don't distribute it, who cares
[22:07:36 CEST] <JEEB> DJDan: you need the NDI assholes' SDK
[22:07:41 CEST] <pimpind_> where is that set kiroma
[22:07:44 CEST] <JEEB> so find out if it even exists for ARM
[22:07:47 CEST] <pimpind_> and what is high vs low?
[22:08:02 CEST] <JEEB> pimpind_: basically ignore it as for most modern encoders you will not get any value from that value
[22:08:14 CEST] <pimpind_> ok
[22:08:24 CEST] <pimpind_> im just confused why i cant hold 30fps
[22:08:27 CEST] <DJDan> JEEB:  isnt there a parameter when compiling to enable NDI.. or do i still need to get the Linux NDI SDK
[22:08:45 CEST] <JEEB> of course you need it because the NDI assholes never made the actual NDI thing open source
[22:09:06 CEST] <durandal_1707> DJDan: there is parameter, but you need SDK too
[22:09:08 CEST] <JEEB> some consultants just wrote a wrapper around the SDK
[22:09:17 CEST] <kurufu> The parameter only enables the usage of the SDK. iwthout the SDK you get nothing.
[22:09:25 CEST] <DJDan> oh i see... and once i do this.. will i be able to RPI3 to fullscreen a NDI source? I assume i just ffmpeg -> x264 then VLC to fullscreen
[22:09:48 CEST] <JEEB> no effing idea
[22:09:49 CEST] <durandal_1707> DJDan: why? what is so special with NDI?
[22:09:58 CEST] <kurufu> why in gods name dont you just streaming x264 which the rpi actually has a hardware encoder for?
[22:10:09 CEST] <JEEB> NDI is just a protocol, IIRC
[22:10:17 CEST] <kurufu> it is also an encoding
[22:10:33 CEST] <JEEB> and I am really weirded out by the fact that people don't want opensrt and yet we have NDI already in
[22:10:40 CEST] <DJDan> NDI is low latency.. and im trying to broadcast from VJing software (Resolume Arena) to another computer
[22:11:03 CEST] <DJDan> (RPI3)
[22:11:15 CEST] <JEEB> a lot of stuff over UDP can be low latency without closed source magic
[22:11:22 CEST] <kurufu> low latency is just a bad meme promoted by hardware manufacturers. at least 99.9% of the time.
[22:11:33 CEST] <JEEB> well, low latency is important
[22:11:37 CEST] <kurufu> do you really need x line latency if you are sending this to a RPI?
[22:11:46 CEST] <kurufu> Consider it very carefully.
[22:11:50 CEST] <JEEB> oh that level low latency :P
[22:12:12 CEST] <kurufu> well ndi is only like frame level latency or whatever. But yes im mostly harping on line level latency :)
[22:12:43 CEST] <JEEB> well, there are use cases where you just want to minimize latency of your workflow, which is valid. but you can do it with less MAGICAL CLOSED SOURCE
[22:12:53 CEST] <JEEB> "totally standard bullshit protocol"
[22:13:26 CEST] <JEEB> but if the guy's software can only output NDI then that checkbox gets filled, esp. if there are no alternatives for it
[22:13:27 CEST] <durandal_1707> calm down, bro
[22:13:27 CEST] <DJDan> what is wrong with picking up a NDI stream from the network, then outputing it somehow to the RPI3 maximised
[22:13:58 CEST] <JEEB> well, rather than wrong I'm just not sure NDI lets you do that
[22:13:59 CEST] <JEEB> and yes, NDI
[22:14:01 CEST] <kurufu> mostly the RPI part of this workflow. And your need for ffmpeg support despite not understanding ffmpeg.
[22:14:01 CEST] <DJDan> Syphon or NDI. NDI is best
[22:14:09 CEST] <JEEB> because NDI is closed source
[22:14:29 CEST] <JEEB> so you're 100% up to whether or not they have ARM SDK
[22:15:01 CEST] <JEEB> but if it is also a custom video encoding format
[22:15:16 CEST] <JEEB> then I have a very bad feeling about the rpi3 being able to decode it fast enough
[22:15:23 CEST] <JEEB> but sure, go look into it please
[22:15:37 CEST] <JEEB> that way you can learn if you a) can even do it b) how quick it is if you can do it
[22:15:51 CEST] <DJDan> im mainly just trying to play with the fact NDI on ARM.. if it wont fully handle it ill upgradeto ODroid or something more powerfull
[22:16:31 CEST] <DJDan> if ARM is full limited i will have to use a x86 Intel NUC or similiar.. but i was trying to workout ARM with NDI first. :)
[22:16:45 CEST] <JEEB> I recommend visiting the NDI site for their options then
[22:16:57 CEST] <kurufu> So why are you still putting off the first step of you supposed goal and figuring out if NDI even support arm?
[22:17:30 CEST] <JEEB> because as I have noted N times already, the FFmpeg thing is a wrapper around their SDK because they are not interested in either opening the protocol or having their SDK be open source
[22:17:50 CEST] <JEEB> so go check if they are nice enough to give you an ARM SDK
[22:18:10 CEST] <durandal_1707> but NDI, NDI, NDI is awesome, they will talk you like we do on irc
[22:19:13 CEST] <kurufu> Its almost as good as ASIO... *sigh*
[22:19:30 CEST] <JEEB> DJDan: also if you care about NDI, join the people telling NDI to open their crap up. or at least publish proper specifications.
[22:19:56 CEST] <pimpind_> can i set rtsp-transport to auto?
[22:20:02 CEST] <pimpind_> or do i have to select tcp or udp
[22:20:15 CEST] <DJDan> JEEB: clearly i care, cause its the best solution for sending/receiving video through a IP network for VJing / Video Production flows
[22:20:27 CEST] <JEEB> pimpind_: https://www.ffmpeg.org/ffmpeg-all.html#rtsp
[22:20:33 CEST] <JEEB> that documents all the options
[22:20:52 CEST] <JEEB> DJDan: ok, then I recommend leveraging your position and trying to make it clear that you would like to use NDI without bullshit
[22:21:11 CEST] <JEEB> of course, NDI doesn't seem to actually care about open source adoption
[22:21:26 CEST] <JEEB> or well, they care that open source projects have wrappers around their magical source
[22:21:32 CEST] <JEEB> as in, their SDK
[22:21:43 CEST] <kurufu> of course the only reason its "the best" is because its what your tool supports (thanks most likely in whole due to NDI funds).
[22:22:12 CEST] <DJDan> because, they probably want to charge major companies for creating and selling HDMI to NDI boxes... which cost around 1k+ per box
[22:22:27 CEST] <JEEB> DJDan: but I hope at this point you have at least went and looked if they even provide ARM SDK?
[22:22:40 CEST] <JEEB> because this discussion quits pretty quickly if they don't
[22:23:18 CEST] <JEEB> DJDan: yes. yet surprisingly that also happens with actual standardized protocols. how funny that is :)
[22:23:44 CEST] <JEEB> they could actually put out a specification and then those who want to do the thing themselves can do it
[22:23:51 CEST] <JEEB> and for everyone else they could have their magical SDK
[22:24:06 CEST] <JEEB> that way you could have NDI in FFmpeg proper, for example
[22:24:09 CEST] <kurufu> perhaps the real solution is to just pay 1k for one of those magic boxes for their magic protocol.
[22:24:35 CEST] <JEEB> DJDan: but yes, please stop looking at this chat and check if they provide an ARM SDK
[22:24:59 CEST] <MichaelJoel> consider me a dope if you want... the larger the negative dB number the quieter it is correct?
[22:26:42 CEST] <durandal_1707> MichaelJoel: yes, if you take absolute value of it, it is larger
[22:27:31 CEST] <MichaelJoel> so if I want to filter for silence (or near silence) I put in -47dB it is looking for -47dB to (whatever "0" db) would be
[22:27:50 CEST] <MichaelJoel> (i.e. no sound at all)
[22:27:53 CEST] <DJDan> JEEB: Windows, Linux and AppleOS. Downloading the Linux NDI now
[22:28:19 CEST] <kurufu> None of those things you listed was an architecture.
[22:29:53 CEST] <DJDan> well the email just specified that
[22:33:02 CEST] <alone-y> may be any one know. ffmpeg have analogue of TechSmith screen capturing encoder
[22:33:14 CEST] <DJDan> strange..it downloaded a 28.7mb file..InstallNDISDK_v3_Linux (1).sh .. and all it had was cat << NDI_EULA_END   NewTek ... and didnt do anything
[22:33:46 CEST] <kurufu> sounds like you better go beg them for support. Im sure they will happily work with you to figure out any issues.
[22:34:07 CEST] <JEEB> alone-y: ffmpeg -encoders
[22:34:13 CEST] <JEEB> and search there
[22:34:30 CEST] <JEEB> also what do you mean "analogue of"?
[22:34:53 CEST] <alone-y> jeeb = it's similar compression ratio with similar cpu usage
[22:35:05 CEST] <alone-y> i guess - there is not analogue.
[22:35:16 CEST] <JEEB> so something like ut video?
[22:35:27 CEST] <JEEB> I just don't know your goddamn expectations
[22:35:36 CEST] <JEEB> if you mean a simple huffman coding based thing
[22:35:43 CEST] <JEEB> then there's a few
[22:36:31 CEST] <MichaelJoel> I think I am catching on :D
[22:36:46 CEST] <alone-y> well, 5 hours of screen capturing have near 8gb with 20% cpu usage with TechSmith camstasia
[22:37:02 CEST] <alone-y> i guess there is no similar codec in ffmpeg package, right?
[22:37:38 CEST] <JEEB> why do you think like that?
[22:37:50 CEST] <JEEB> there's fast, there's good compression, various pixel formats...
[22:37:59 CEST] <alone-y> h264, h265 - cpu usage much more cpu use, but good size
[22:38:06 CEST] <JEEB> umm
[22:38:18 CEST] <alone-y> ffv1 etc is VERY BIG size and cpu usage not too small.
[22:38:34 CEST] <JEEB> you can adjust x264 and if you have a realtime speed it will not use more CPU than needed to keep realtime
[22:38:41 CEST] <JEEB> also there's presets, by default it's medium
[22:39:02 CEST] <JEEB> also I don't even know if that techsmith thing is lossy or lossless?!
[22:39:04 CEST] <alone-y> h264 - 80% cpu for me.
[22:39:13 CEST] <alone-y> real time screen capturing 1600*900
[22:39:20 CEST] <JEEB> did you tweak the preset?
[22:39:25 CEST] <JEEB> or was taht at medium?
[22:39:30 CEST] <alone-y> 1 sec
[22:39:33 CEST] <MichaelJoel> I am using -af silentdetect . I put in a duration of 2.02 seconds but it also logs 3 second silence. So obviously it that is 2.02 or greater? Can I limit it back to mean 2 to 2.02 only?
[22:39:33 CEST] <JEEB> if it was medium then I'd say that's pretty good
[22:39:38 CEST] <alone-y> h264 lossless
[22:40:14 CEST] <alone-y>  ffmpeg -loglevel quiet -f gdigrab -i desktop -vf crop=1600:900:5:0 -c:v libx264 -profile:v high444 -crf 0 -preset:v ultrafast E:\Screen.Capturing\%yyyymmhhmmss%.mkv
[22:40:20 CEST] <alone-y> i use this.
[22:40:32 CEST] <JEEB> you don't need to set the profile as that will be picked automagically if you set lossless mode
[22:40:38 CEST] <alone-y> size ok,but cpu - not ok forme
[22:40:38 CEST] <JEEB> then first of all
[22:40:47 CEST] <JEEB> FFmpeg's frame capture is not optimized
[22:40:53 CEST] <JEEB> I'm pretty sure you're using a LOT of resources there
[22:41:17 CEST] <JEEB> also is that RGB or YCbCr?
[22:41:34 CEST] <JEEB> because you're also doing scaling and colorspace conversion on the CPU if it's YCbCr
[22:42:18 CEST] <JEEB> I'd say the video encoder is the last thing that is holding you down there
[22:42:20 CEST] <alone-y> i dont know rgb or ycbcr
[22:43:00 CEST] <JEEB> an optimized screen capture thing would use the windows 8.1+ APIs, would do the scaling and colorspace conversion on the GPU, and then just encode on the CPU if needed
[22:43:24 CEST] <JEEB> quite likely that whatever VFW etc thing you're testing does at least the first thing
[22:44:36 CEST] <alone-y> i c. well, simple solution for changing Camtasia TechSimith codec not exist, right?
[22:44:45 CEST] <alone-y> i mean ffmpeg..
[22:44:51 CEST] <JEEB> why are you still noting the video format
[22:44:56 CEST] <kurufu> if you only need windows you can try obs with the custom ffmpeg out. Handles conversions on the gpu before feeding ffmpeg with whatever encoder you want.
[22:45:16 CEST] <JEEB> yes, that sounds like a much better alternative since IIRC OBS has OK screen capture code
[22:45:49 CEST] <kurufu> im not aware of anything with better screen capture code :)
[22:48:32 CEST] <alone-y> with modern gpu h264 will be ok with nvenc
[22:48:36 CEST] <alone-y> i know.
[22:48:45 CEST] <JEEB> ok, you're beyond anything
[22:48:58 CEST] <JEEB> good luck and thanks for all the fish
[22:49:23 CEST] <alone-y> jeeb, is it exist zlib packe RLE encoder in ffmpeg?
[22:49:48 CEST] <alone-y> as i know, techsmith just packed ms rle with zlib..
[22:50:06 CEST] <JEEB> pretty sure it does, but that is not your fucking problem as far as I can see
[22:50:37 CEST] <JEEB> your problem is more with the fact that libavdevice's windows capture stuff is fucking awful and that if you're dealing with GPU surfaces you want to keep them there for as long as fucking possible
[22:50:53 CEST] <alone-y> yes i c u
[22:52:45 CEST] <alone-y> my capturing is very simple - less then 10 colors i mean...
[22:52:50 CEST] <alone-y> almost CGA monitor
[22:52:51 CEST] <alone-y> ;)
[22:53:00 CEST] <alone-y> only texts...
[23:09:49 CEST] <alone-y> .
[23:13:48 CEST] <alone-y> can c only ENCODERS with ffmpeg -codecs?
[23:14:04 CEST] <sfan5> ffmpeg -encoders
[23:14:33 CEST] <alone-y> thank you, already got it himself, sorry
[23:14:34 CEST] <alone-y> ;)
[23:32:52 CEST] <jafa> wondering, are there any development efforts underway for ac4 audio?
[23:33:00 CEST] <JEEB> not that I know
[23:33:08 CEST] <JEEB> the spec is kind of out and there are DASH-IF samples
[23:33:25 CEST] <JEEB> but I am not sure if anyone is giving it any attention since it's not being utilized anywhere AFAIK
[23:34:01 CEST] <durandal_1707> jafa: ac4 have no spec and only colorful pamflet
[23:36:44 CEST] <alone-y> jeeb, can i use dshow instea gdigrab for better... productivity
[23:36:46 CEST] <alone-y> ?
[23:38:56 CEST] <Zeranoe> alone-y: dshow should be better if you have a device for it
[23:40:13 CEST] <alone-y> i guess same, zmbv codec is very good
[23:40:22 CEST] <alone-y> it's only 50% of cpu
[23:40:41 CEST] <alone-y> but i guess jeeb right
[23:40:58 CEST] <alone-y> boutle neck is not good grabbing
[23:41:16 CEST] <alone-y> OBS may be solution, it's have cmd line too
[23:41:27 CEST] <alone-y> but how can i use dshow?
[23:41:44 CEST] <alone-y> ffmpeg -f dshow -i desktop -vf crop=1600:900:5:0 -vcodec zmbv zzz1.avi
[23:41:48 CEST] <alone-y> npw working
[23:42:11 CEST] <alone-y> i guess irect show coec included win7 y default
[23:43:20 CEST] <Zeranoe> You need a capture device
[23:43:44 CEST] <Zeranoe> https://trac.ffmpeg.org/wiki/DirectShow
[23:44:53 CEST] <alone-y> hm
[23:44:58 CEST] <alone-y> i have onlyweb camera
[23:45:04 CEST] <alone-y> as dshow device
[23:45:12 CEST] <alone-y> why?
[23:45:28 CEST] <wfbarksdale> odd question, i'm wondering if a tool exists to grab a media file and visualize it as it exists on disk, like breaking up the packets, and showing some metadata about each packet
[23:45:34 CEST] <Zeranoe> I came in late so I don't know what you did with JEEB
[23:45:45 CEST] <wfbarksdale> and display header infromation, and all that sort of thing
[23:46:09 CEST] <Zeranoe> wfbarksdale: depends on how deep you need it, ffprobe for a lot of metadata
[23:46:10 CEST] <alone-y> Zeranoe, iam trying to screen capturing texts with colors
[23:46:30 CEST] <alone-y> with not too big cpu usage and file size
[23:46:48 CEST] <Zeranoe> alone-y: "texts with colors"?
[23:46:50 CEST] <alone-y> trying t have analogue of Camtasia TechSmith codec
[23:46:56 CEST] <alone-y> with ffmpeg ;)
[23:47:10 CEST] <alone-y> yes, my screen - colored texts.
[23:47:22 CEST] <alone-y> several colors.
[23:48:06 CEST] <Zeranoe> alone-y: did you read the wiki for capturing the desktop with a dshow device
[23:48:33 CEST] <alone-y> jeeb guessing, that capturing consuming CPU not by codec only, but wrong code of capturing.
[23:48:45 CEST] <alone-y> he says OBS have better code for capturing.
[23:49:14 CEST] <Zeranoe> OBS is pretty popular for desktop capturing
[23:49:41 CEST] <JEEB> GDI capture and colorspace conversions with swscale are quite likely to give you "nice" overhead
[23:49:50 CEST] <alone-y> he says also it's possible to have custom ffmpeg command with OBS?
[23:50:04 CEST] <JEEB> no I did not, but someone else did
[23:50:19 CEST] <Zeranoe> Does OBS install dshow devices?
[23:50:30 CEST] <Zeranoe> I know it has a GDI fallback
[23:51:06 CEST] <alone-y> ffmpeg -f gdigrab -i desktop -vf crop=1600:900:5:0 -vcodec zmbv zzz.avi
[23:51:35 CEST] <alone-y> now i have simple line, i guess zmbv is goo solution, may be one.
[23:51:51 CEST] <alone-y> only one for my goal.
[00:00:00 CEST] --- Fri Apr  6 2018


More information about the Ffmpeg-devel-irc mailing list