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

burek burek021 at gmail.com
Mon Oct 2 03:05:01 EEST 2017


[01:03:36 CEST] <wiak> ive compiled ffmpeg with libvpx git, yet i cant get -row-mt=1 to work hmm
[01:13:56 CEST] <DHE> -key=value isn't ffmpeg syntax
[03:52:57 CEST] <jnollette> hey yall, im trying to build ffmpeg with h265, and im getting an error not found in pkg-config
[03:53:15 CEST] <jnollette> i've added all my dependencies using apt-get, on ubuntu 16.04
[04:27:30 CEST] <jnollette> I gave this a try for h265 - http://tipsonubuntu.com/2016/11/02/install-ffmpeg-3-2-via-ppa-ubuntu-16-04/
[04:27:35 CEST] <jnollette> it worked btw
[08:22:20 CEST] <voltagex> How much data would be transferred if I ran ffprobe on a remote file? (SMB/HTTP)
[09:22:33 CEST] <rabbe> hi. i'm testing ginx with rtmp + webrtc and then i read this statement would you agree with it? "The best and easiest way to stream to a browser is UV4L with WebRTC (much better than mjpeg). It works "out-of-the-box" with the embedded streaming server. No command sauces are required. It optionally supports audio as well. Audio and/or video can be bidirectional. The streaming server can load customized pages too. With
[09:22:33 CEST] <rabbe> chrome (much better than Firefox) latency can be as low as 150ms with Full HD hardware-encoded h264."
[11:20:22 CEST] <killown> is there a way to cut only the first few seconds of a video without need to specify how many seconds the video has?  for example ffmpeg -i inputFile -vcodec copy -acodec copy -ss 00:09:23 -to 00:25:33 outputFile    I don't want to use the -to, can't ffmpeg detect it automatically?
[12:12:31 CEST] <flux> killown, well, don't use -to then? what happens in that case?
[12:12:57 CEST] <flux> killown, btw, you may also consider using -ss before -i
[13:02:29 CEST] <mgit> Hi, anyone here?
[13:23:36 CEST] <c_14> no
[13:24:00 CEST] <c_14> Just ask your question, if someone can answer they will
[14:18:42 CEST] <blap> 'Liberty is the power that we have over ourselves'
[15:24:07 CEST] <RandomNoob> hey folks, I'm trying to pipe to and from ffmpeg on windows using named pipes. However I'm not sure which format is correct, I tried pipe:name and \.\\pipe\name. However it seems that ffmpeg never connects. I do not get an error
[15:24:13 CEST] <RandomNoob> any input on that?
[15:25:42 CEST] <RandomNoob> cli looks like this: https://pastebin.com/qeMShgpr
[15:26:45 CEST] <RandomNoob> I open the pipe using C#, trying to write to the input stream results in "Pipe not connected yet"
[15:37:28 CEST] <Sharkigator_> RandomNoob why not use anonymous pipes?
[15:37:50 CEST] <RandomNoob> like stdin and stdout?
[15:37:57 CEST] <Sharkigator_> yes
[15:38:23 CEST] <RandomNoob> in that case I would have to set input and output file  both to pipe:, right?
[15:38:58 CEST] <Sharkigator_> I used ffmpeg with c# a while back, let me look if i can find it
[15:42:08 CEST] <Sharkigator_> dunno, I guess you just write pipe:
[15:43:18 CEST] <RandomNoob> I'll try that
[16:05:33 CEST] <Easyfab> Is "ffmpeg  -i file1 -i file2  -lavfi  ssim -f null - "  accurate with mkv encoded with ffmpeg ?  because ffmpeg -i foreman.y4m foreman.mkv give me SSIM 9.51... and ffmpeg -i foreman.y4m foreman.mp4 ( same x264 kb/s ) give me 14.11...  is there a problem with mkv container and lavfi ssim ?
[17:34:39 CEST] <cryptodechange> Heh, CRF 15 gets this One-Punch Man episode to avg 7.5mbps using my settings
[17:34:50 CEST] <cryptodechange> (raw bd to 10bit x264)
[17:34:56 CEST] <cryptodechange> Happy with that
[17:39:02 CEST] <BtbN> again, if you're targetting a specific bitrate, crf is not the mode you should be using.
[17:39:21 CEST] <BtbN> use crf if you don't care about the bitrate and want to achive a certain level of quality no matter what
[17:40:00 CEST] <cryptodechange> Mm, I'm kind of put off by every episode being an exact file size though
[17:40:16 CEST] <cryptodechange> Especially if there's a super busy scene that doesn't get enough bitrate
[17:40:26 CEST] <BtbN> So what do you want then?
[17:40:38 CEST] <BtbN> Either you do want a specific bitrate, or you don't
[17:40:38 CEST] <cryptodechange> I'd rather use a CRF range, where I know in usual tests the perceived quality is not noticeable from raw
[17:40:41 CEST] <cryptodechange> or good enough
[17:41:13 CEST] <cryptodechange> And if the bitrate is lower than usual, drop it to give it a bit more leeway
[17:41:15 CEST] <BtbN> What you want sounds more like abr with a maxrate to me
[17:41:33 CEST] <BtbN> Or even two-pass CBR
[17:42:09 CEST] <cryptodechange> Probably, I've never actually dabbled with it tbh, when I started encoding I didn't really know what the acceptable bitrates were for resolutions/media types
[17:42:35 CEST] <cryptodechange> So I read a few guides on CBR, comparisons etc, and went with CRF
[17:42:38 CEST] <BtbN> the point of two-pass is exactly to prevent what you just mentioned
[17:43:05 CEST] <BtbN> It does two passes, and stores information about high-motion scenes in a file, and uses that information for the second pass
[17:43:24 CEST] <BtbN> so you get the best possible quality for a given filesize
[17:43:50 CEST] <JEEB> but if you don't know that file size you want then CRF is good as it lets you define something else
[17:44:19 CEST] <BtbN> well, but he does seem to not want to exceed a certain bitrate
[17:44:27 CEST] <JEEB> ok
[17:44:31 CEST] <cryptodechange> Well for plex, it buffers ahead by 60 seconds or so before throttling
[17:44:51 CEST] <BtbN> What does that have to do with the quality?
[17:44:53 CEST] <cryptodechange> So e.g. in a very sudden busy scene where it jumps to 14mbps, then normalises
[17:44:55 CEST] <cryptodechange> That's fine for me
[17:45:43 CEST] <BtbN> maxrate vbr with a large vbv buffer size
[17:46:47 CEST] <cryptodechange> Just ran an encode I did through bitrate viewer
[17:46:48 CEST] <cryptodechange> https://imgur.com/a/t3DBF
[17:47:06 CEST] <JEEB> note: those bit rate viewers tend to suck since they don't clearly tell you what they calculate
[17:47:19 CEST] <cryptodechange> I see
[17:48:12 CEST] <cryptodechange> So even though the 'average bitrate' is something, CRF can still variate wildly?
[17:48:30 CEST] <JEEB> ABR and CRF are the two sides of a coin more or less I think?
[17:48:52 CEST] <JEEB> one has you set the bit rate, another has you set the resulting rate factor
[17:49:02 CEST] <cryptodechange> I haven't done enough reading on this
[17:49:32 CEST] <cryptodechange> My concern was that super busy scenes would get blocky and I would need to analyse a lot of content to check
[17:50:17 CEST] <JEEB> both ABR and CRF do try to look at how "bit intensive" a picture is + take speed into mention
[17:50:18 CEST] <BtbN> If you are fine with buffering for 60 seconds, set your maxrate to your desired maximum bitrate, set your vbv buffer size to 60 times that maxrate, and do a vbr encode
[17:50:19 CEST] <cryptodechange> Thinking ahead, when internet infrastructure (at least in the UK) will likely have 300mbps> download within 10 years, even 1gbit, I suppose it's ok
[17:50:44 CEST] <cryptodechange> it's 1/4 the size of Blurays, maybe that's what I should aim for, storage size and trying to 1/2-1/4 the filesize
[17:50:51 CEST] <cryptodechange> of the bluray files*
[17:52:08 CEST] <cryptodechange> I am muxing the raw audio too btw
[17:54:06 CEST] <cryptodechange> I currently use vbv-maxrate=62500:vbv-bufsize=78125
[17:54:11 CEST] <cryptodechange> which I believe is a default from somewhere
[17:55:32 CEST] <JEEB> that is so high that I quite honestly believe it might be worth just not having maxrate+bufsize. the problem being that as soon as you enable it, you get non-determinism
[17:55:51 CEST] <JEEB> as in, if you have threading enabled and VBV/HRD
[17:56:01 CEST] <JEEB> you will get different/non-repeatable results
[17:56:05 CEST] <JEEB> for same input
[17:57:27 CEST] <cryptodechange> I suppose avoiding this route just delays me from learning the command lines
[17:57:33 CEST] <cryptodechange> May aswell dabble in it
[18:50:18 CEST] <cryptodechange> So a safe max bitrate of 10mbit, I would go for -b:v 10M -maxrate 10M
[18:51:37 CEST] <BtbN> you'll also want a large vbv buffer size to compensate spikes
[18:53:46 CEST] <cryptodechange> Trying to figure out a decent value
[18:55:59 CEST] <BtbN> just set it to however long you are ok with buffering
[18:56:06 CEST] <cryptodechange> On plex my 'Transcoder default throttle buffer' is 120 seconds
[18:56:13 CEST] <cryptodechange> (Amount in seconds to buffer before throttling the transcoder.)
[18:56:16 CEST] <BtbN> Whatever that is
[18:59:27 CEST] <cryptodechange> Well, the average bitrate could be <> 10M, so I'll set that to 9 as I'm happy with 8-10, I could just double the that to 18M
[18:59:51 CEST] <cryptodechange> -b:v 9M -maxrate 9M -bufsize 18M
[19:02:09 CEST] <BtbN> that gives you two seconds of buffer max
[19:07:32 CEST] <cryptodechange> Could I do CRF with VBV 2pass?
[19:08:23 CEST] <BtbN> that makes no sense.
[19:08:47 CEST] <Ober> other than -vf deshake are there any good filters for cleaning up shakey video or blurry spots?
[19:10:18 CEST] <cryptodechange> I came across this article
[19:10:20 CEST] <cryptodechange> http://slhck.info/video/2017/03/01/rate-control.html
[19:10:32 CEST] <cryptodechange> 2. Streaming  Two-pass CRF or ABR with VBV-constained bitrate.
[19:13:08 CEST] <BtbN> you cannot stream two-pass
[19:26:51 CEST] <DHE> x264 and probably some others support look-ahead, where it will buffer a large amount of video (ie. multiple seconds worth) for short term rate control decisions. obviously this raises latency a boatload, but is the closest thing you'll get
[19:27:26 CEST] <JEEB> that probably talks about VOD :P
[19:27:47 CEST] <JEEB> which for them is still "streaming" as it goes over a limited bandwidth
[19:48:29 CEST] <redrabbit> for my iptv i use buffsize = 2x maxrate
[19:48:43 CEST] <redrabbit> with x264
[19:49:10 CEST] <JEEB> well IPTV has its own limitations since usually the crap boxes and very expensive monitoring tools expect something like 0.5-2x maxrate
[19:49:23 CEST] <JEEB> also lulzily low GOP lengths, of course
[19:49:40 CEST] <redrabbit> with nvenc avc, -rc-lookahead 32
[19:52:43 CEST] <Jymmm> I realize this may be totally unrelated, but anyone know of a channel for ripping audio cd's? I'm trying to understand the best method to get FLAC(?)+CUE and be able to recreate the original CD should mine get damaged.
[19:53:10 CEST] <Mavrik> JEEB, GOP of 15 should be enough for everyone! ;P
[19:55:35 CEST] <cryptodechange> I'm probably going to stick to the CRF for now, as it's for media archiving anywho, if the streaming limits aren't good enough, it'll ffmpeg veryfast from e.g. 9.5mbps to 8mbps or whatever is set
[19:55:40 CEST] <cryptodechange> Which is better than 30mbps to 8mbps
[19:58:17 CEST] <redrabbit> you can use both crf and maxrate
[19:58:53 CEST] <JEEB> yes, VBV|HRD is completely orthogonal to the primary rate control mode (at least in x264)
[19:59:05 CEST] Action: Jymmm is willing to RTFM too, so if anyone has links, they would be appraciated.
[19:59:07 CEST] <JEEB> (caveat: unless you're using constant quantizer mode, which you shouldn't be)
[20:22:14 CEST] <jajaja> how can i convert a video into same format as the source - mp4 that is?
[20:22:48 CEST] <jajaja> it only converts into something else than the original
[20:23:14 CEST] <jajaja> i'm cutting a piece of video out longer video
[20:32:19 CEST] <BtbN> jajaja, do you even need to convert? Does -c copy not work for what you're doing?
[20:42:54 CEST] <blap>                          €€€€€€€„€€€€€€€€€€€€€€œ
[20:42:57 CEST] <blap>                   €€€Ÿ                           ™€€
[20:43:00 CEST] <blap>                ›„                                    ™œ
[20:43:03 CEST] <blap>              ›„                      ›€€   ›   ™       „œ
[20:43:06 CEST] <blap>             ›                       Ÿ         ›         „œ
[20:43:09 CEST] <blap>           ›Ÿ              Œ   €        Œ  Ÿ   Œ           œ
[20:43:12 CEST] <blap>          ›Ÿ        €€€€€€Ÿ         Œ       œ                €
[20:43:15 CEST] <blap>         ›        ›Ÿ    €„„„œ                               ™
[20:43:18 CEST] <blap>        ›         Ÿ    Œ   ›     „€„     „€€Ÿ                  Œ
[20:43:20 CEST] <Jymmm>  
[20:43:21 CEST] <blap>        Ÿ         š           €€               ›Ÿ               €
[20:43:23 CEST] <tdr> thats annoying, please stop
[20:43:24 CEST] <blap>                   €€€€€€€€Ÿ                                    œ
[20:43:27 CEST] <blap>      ›                                                          Œ
[20:43:30 CEST] <blap>      Ÿ                                                          Œ
[20:43:33 CEST] <blap>     ›            Ÿ ™
[20:43:36 CEST] <blap>                ™       €€€œ     ›Ÿ €    €œ    ›€€      ›„„
[20:43:40 CEST] <Jymmm> blap: /part
[20:43:40 CEST] <blap>    Œ             œ  Œ  š     Œ      Œ  Œ   œ  ›   Œ    Œ   Œ   ›
[20:43:44 CEST] <blap>                 Œ   ›  ›Ÿš  €  ›Ÿ  Œ  Œ      Œ   Œ    Œ      Œ
[20:43:48 CEST] <blap>    Œ             Œ  Ÿ  œ ™€Ÿ                € ›Ÿ       Œ  ›    ™
[20:43:52 CEST] <blap>    Œ       €     Œ      €œ     ›€œ                €     Ÿ  
[20:43:55 CEST] <blap>    Œ      Œ     Ÿ ›      Œ   ›    ™€€€€€€€€   €„      €  ›
[20:43:59 CEST] <blap>           œ ™€„   Ÿ  ›€    €„                        Ÿ ›€Ÿ     Œ
[20:44:03 CEST] <blap>      €     ™œ    ›„   ™€€€Ÿ                                    €
[20:44:06 CEST] <blap>       œ                                                       ›
[20:44:09 CEST] <blap>        „                                                    ›„
[20:44:12 CEST] <blap>          €         ›                                       €
[20:44:15 CEST] <blap>           ™€                                            €Ÿ
[20:44:18 CEST] <blap>              ™€œ                                    ›€„
[20:44:21 CEST] <blap>                  „€€                            €€„
[20:44:24 CEST] <blap>                      ™„€€€€€œ         €€€€€€€Ÿ
[20:44:27 CEST] <blap>                                                                         
[20:44:32 CEST] <Jymmm> blap: Unless you're trolling quit and rejoin to kill that
[21:15:06 CEST] <iive> he is definitely trolling
[21:30:14 CEST] <durandal_1707> noooo
[21:31:41 CEST] <iive> durandal_1707: ?
[21:32:13 CEST] <durandal_1707> iive: dont  ban for no reasons
[21:32:40 CEST] <iive> blaenk: 30 lines ascii art that looks like isis flag is definitely a reason.
[21:33:36 CEST] <iive> durandal_1707: ^
[21:33:36 CEST] <durandal_1707> you have strange imagination
[21:33:47 CEST] <blaenk> what???
[21:33:56 CEST] <iive> blaenk: sorry, wrong autocomplete
[21:34:12 CEST] <iive> durandal_1707: well, maybe you can enlighten me what that 30 lines were
[21:34:18 CEST] <blaenk> now I'm on some list cause these logs are public >=O
[21:34:39 CEST] <blaenk> long way to go from blaenk to durandal_1707
[21:34:45 CEST] <iive> blaenk: we are all on some lists. just using linux adds you as POI
[21:51:20 CEST] <iive> blaenk: i think I might have highlighten you because your nick starts with bla... like the spammer. once again, sorry.
[21:51:58 CEST] <blaenk> iive: no worries, all good
[21:59:47 CEST] <furq> fwiw the isis thing is way less offensive than pasting 30 lines into irc
[21:59:54 CEST] <furq> you should hang for that
[22:00:20 CEST] <fChanX> LOL
[22:40:59 CEST] <Chagall> is there a function to find supported codecs for a particular output format or formats that support a particular codec through the API?
[22:41:40 CEST] <JEEB> for video formats there are lists of supported pix_fmts
[22:42:16 CEST] <Chagall> working with audio right now
[22:42:16 CEST] <JEEB> for containers I think it's a bit less simple, since usually it checks in init() or so
[22:42:34 CEST] <Chagall> it goes through init without an issue and just crashes when trying to write the header later on
[22:42:56 CEST] <JEEB> right, that could be difference between external/internal API :)
[22:43:00 CEST] <JEEB> but it shouldn't... crash
[22:43:05 CEST] <JEEB> just tell you "nope, ENOTGOOD"
[22:43:43 CEST] <JEEB> and for audio you can check audio formats, but not sample rates I think
[22:43:49 CEST] <Chagall> well i'm getting an access violation trying to write the header but i haven't found what to check for
[22:46:31 CEST] <Chagall> how do you check for formats?
[22:48:51 CEST] <JEEB> in avcodec it's for audio https://github.com/FFmpeg/FFmpeg/blob/master/libavcodec/aacenc.c#L1093
[22:49:11 CEST] <JEEB> when you "get" an avcodec you are able to poke at that array
[22:49:40 CEST] <JEEB> in this case there's just one audio format it supports
[22:49:43 CEST] <JEEB> (float)
[22:49:57 CEST] <JEEB> also you could get the audio encoder frame size somehow :P
[22:50:18 CEST] <Chagall> oh right, i meant avformat (container i guess)
[22:50:58 CEST] <JEEB> that's more problematic because there's no such list in containers
[22:51:38 CEST] <JEEB> oh
[22:51:43 CEST] <JEEB> there's a query_codec
[22:51:51 CEST] <JEEB> I didn't even motherfucking know that worked :D
[22:51:56 CEST] <JEEB> s/worked/existed/
[22:52:11 CEST] <JEEB> just noticed in matroskaenc :P
[22:52:34 CEST] <JEEB> so you feed it AVCodecID and an FF_COMPLIANCE thing
[22:52:40 CEST] <JEEB> (standards compliance mode)
[22:53:00 CEST] <Chagall> oh, didn't see that. thanks a lot
[22:53:00 CEST] <JEEB> wonder how many formats have the query_codec set
[22:53:31 CEST] <JEEB> but yea, even I learn things it seems :P
[23:54:12 CEST] <Durandal> what the
[23:54:54 CEST] <Durandal> huh
[23:56:30 CEST] <Durandal> anyway, I have a question about multichannel opus
[23:57:08 CEST] <Durandal> In older versions of ffmpeg it would encode fine, but I recently updated and now get this error: [libopus @ 0000000002311700] Invalid channel layout 5.1(side) for specified mapping family 1.
[00:00:00 CEST] --- Mon Oct  2 2017


More information about the Ffmpeg-devel-irc mailing list