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

burek burek021 at gmail.com
Wed Jun 14 03:05:01 EEST 2017


[00:00:07 CEST] <momomo> regarding the question of 1s vs 5s for file size output for say 60 seconds ... ( i guess I could test it ) ... would it differ much  ...
[00:01:11 CEST] <DHE> yes. you would have 60 keyframes rather than 12
[00:01:25 CEST] <DHE> depending on the resolution, a keyframe of 80 to 150 kilobytes is quite normal
[00:04:17 CEST] <momomo> ook, good to know
[00:04:25 CEST] <DHE> one other question. how are you streaming this? over a local LAN? bandwidth constrained internet?
[00:04:26 CEST] <momomo> DHE: have you ever looked into dash?
[00:04:50 CEST] <DHE> only briefly. I got into HLS and it's kinda stuck with me
[00:04:51 CEST] <momomo> DHE: on both .. but there is not much traffic as of yet ...
[00:05:01 CEST] <DHE> even though DASH is technically a standard while HLS isn't
[00:05:12 CEST] <momomo> yeah me too, but it appears as if dash is gaining ground
[00:05:21 CEST] <momomo> seems to be the best solution, but not sure
[00:05:43 CEST] <momomo> since I believe you do not have to segment files and can target byte ranges (?)
[00:06:15 CEST] <momomo> if one connects to a hls stream through ffmpeg is the output also segment files ?
[00:06:16 CEST] <DHE> depends what you're doing. segmentation with HLS isn't technically necessary either but only if it's a pre-rendered video. doesn't work that way for, say, webcams
[00:06:21 CEST] <momomo> many questions :P
[00:07:10 CEST] <momomo> hmm... but I guess you still have to serve "segment" files by picking out the right bytes to serve the client ?
[00:07:15 CEST] <momomo> i am not sure how to do that in java
[00:07:34 CEST] <DHE> HTTP has a Range header which lets a client specify which bytes it wants
[00:07:59 CEST] <momomo> yes, isn't that what dash uses?
[00:08:18 CEST] <momomo> maybe dash/hls is basically the same .. only the way it's done is different ..
[00:08:26 CEST] <momomo> or?
[00:08:33 CEST] <DHE> conceptually they are very similar, yes.
[00:09:00 CEST] <DHE> I know with HLS you can render the video in a single huge file (plus playlist) but only if you can pre-render it. webcams are live and that doesn't work so well.
[00:09:35 CEST] <momomo> DHE: are you the guy behind live jasmine ? :P haha
[00:09:52 CEST] <momomo> or what it's called :)
[00:09:56 CEST] <DHE> uhh... no
[00:10:00 CEST] <momomo> haha
[00:10:03 CEST] <momomo> just joking
[00:10:14 CEST] <momomo> can I share something with you privately ?
[00:10:40 CEST] <momomo> it's not porn related, I swear!
[00:10:44 CEST] <Tatsh> nvenc is so sweet if you don't have noisy content
[00:11:00 CEST] <Tatsh> progressive dvd -> mp4 in a few minutes
[00:11:10 CEST] <Tatsh> my system gets 40x
[00:11:33 CEST] <DHE> Tatsh: it's fast, but x264 software mode usually gives better quality/bitrate
[00:11:39 CEST] <Tatsh> yes
[00:11:45 CEST] <momomo> DHE: i am unable to send you a private message .. you seem to have that turned off in case you wasn't aware
[00:11:48 CEST] <Tatsh> and i have to play with it a lot
[00:11:52 CEST] <Tatsh> -rc constqp -qp ..
[00:11:55 CEST] <DHE> momomo: I am aware. I wrong the block
[00:12:00 CEST] <Tatsh> -qp is not some static number you can apply
[00:12:07 CEST] <Tatsh> it differs a lot based on the content and size of the content
[00:13:35 CEST] <DHE> momomo: what exactly do you want there?
[00:14:03 CEST] <momomo> DHE: just show you what you our work. share a link to the "site"
[00:14:16 CEST] <momomo> dont want to publicize it here
[00:14:45 CEST] <DHE> that's fine. I don't need to see it. I'm a bit busy anyway
[00:15:04 CEST] <momomo> DHE: that sound like an expensive task to click a link
[00:17:49 CEST] <DHE> well it's going to be more than just clicking a link
[00:19:55 CEST] <Tatsh> 4k such hq, you get aliasing errors on live downscale :P
[00:20:41 CEST] <buu> Silly question, but does   Duration: 03:02:33.66, start: 0.000000, bitrate: 3091 kb/s actually mean kilo*bits*
[00:20:46 CEST] <buu> And why does ffprobe write to stderr
[00:20:58 CEST] <Tatsh> buu, yes b = bit
[00:21:18 CEST] <buu> usually true, yup
[00:21:25 CEST] <Tatsh> what you are seeing might be of like, the bitrate on the first frame
[00:21:25 CEST] <DHE> also note that ffmpeg is very stingy on "k" vs "ki", and "M" (mega) vs "m" (milli) etc
[00:22:25 CEST] <Tatsh> buu, who knows on stderr.. developer preference
[00:22:45 CEST] <Tatsh> i was scripting ffmpeg with python and found that out too
[00:24:14 CEST] <kerio> how many millibits do you need to encode a 720p30 video
[00:24:17 CEST] <buu> Tatsh: Yeah, ffmpeg does it as sort of an error output
[00:24:24 CEST] <momomo> DHE: https://pastebin.com/zKTPwwTx .. i have to go now ... but mo @ my username . com if you change your mind
[00:24:29 CEST] <Tatsh> kerio, depends on content
[00:24:33 CEST] <buu> but I assumed ffprobe might be smarter!
[00:27:40 CEST] <buu> kerio: I just did that math, at 1280x720 pixels per frame and 30 frames per second you need at most 108MB/s
[00:27:46 CEST] <buu> hope that helps
[00:28:01 CEST] <kerio> what pixel format tho
[00:28:21 CEST] <buu> I was assuming 4bytes per pixel
[00:28:29 CEST] <buu> which honestly might be low
[00:28:37 CEST] <kerio> ye i like my videos to be half transparent n shit
[00:28:46 CEST] <buu> good point
[00:29:05 CEST] <kerio> so make that 5 Bpp
[00:29:07 CEST] <buu> a single byte is only 256 values
[00:29:20 CEST] <kerio> 10 bit per channel
[00:29:42 CEST] <buu> I'm glad we've figured this all out
[00:30:50 CEST] <Tatsh> 5.1 britney spears https://i.imgtc.com/A8UWWdj.png
[00:37:18 CEST] <Threads> you have me wanting to check 5.1 music even more now
[01:02:50 CEST] <DHE> I think I've been burned by momomo...
[04:18:20 CEST] <Tatsh>  threads even 2.1 sound would be an improvement over the red book quality
[04:32:39 CEST] <guest12343> Hi. Looking for help with webm making.
[05:36:08 CEST] <Sashmo_> does anyone know of a way to encode say 30 frames of images and cylce them every 30 seconds and create a TS stream with 0 video bitrate, and only burst the video on each realod?  for example 0 video bitrate for 30 seconds, burst up to 300k to send the video, and then back down to 0 ?
[05:36:36 CEST] <Sashmo_> I've seen it before, but I can't recall how to re-create it
[06:02:29 CEST] <thomedy> hello
[06:02:39 CEST] <thomedy> can i talk to this room about video file editing
[06:02:45 CEST] <thomedy> is this the room for tht
[06:38:17 CEST] <guest12343> Hello. Looking for help with webm making.
[07:16:36 CEST] <pbgswd> is there a moviepy irc channel? It appears not
[07:39:52 CEST] <thomedy> im desperate please someone be here
[07:39:59 CEST] <thomedy> i hve raw avi
[07:40:06 CEST] <thomedy> ffmpeg -i gives raw video
[07:40:15 CEST] <thomedy> right click shows raw
[07:41:01 CEST] <thomedy> which means that it should be completely uncompressed right? why when i isolate 5 seconds in the middle and try to play it apart from the rest of the video i cant do it
[07:41:52 CEST] <thomedy> Format avi detected only with low score of 1, misdetection possible! new.avi: Invalid data found when processing input
[07:42:05 CEST] <thomedy> thata is what im getting
[07:42:13 CEST] <kerio> what is "raw avi"
[07:42:53 CEST] <thomedy> k
[07:43:12 CEST] <thomedy> with whaat i have been reading avi format can hold uncompressed video files
[07:43:31 CEST] <thomedy> not every time but can.. my properties say raw
[07:43:55 CEST] <thomedy> .avi with uncompressed non-codec or whatever
[07:44:12 CEST] <thebombzen> thomedy: because avi is a container format that provides information on things like duration, and seeking
[07:44:24 CEST] <thebombzen> and chunks the actual video information into pieces so it can be managed by a video player
[07:44:57 CEST] <thomedy> so if i have this right it takes timed frames and describes each frame over and over
[07:45:02 CEST] <thebombzen> AVI is a "container format" which means it is specifically just a method of putting multiple media streams together in one file. In your case there's only one stream and it's a uncompressed video stream
[07:45:28 CEST] <thebombzen> However, AVI is not like .wav. It's not just a header and then the data
[07:45:34 CEST] <thomedy> i remember readding that raw is a consistent stream rate
[07:45:44 CEST] <thomedy> lets say i have a mov
[07:45:47 CEST] <thebombzen> if you try to truncate the file in the middle it won't work. You'll get a corrupt file
[07:45:49 CEST] <thomedy> how do i uncompress that
[07:45:59 CEST] <thebombzen> You probably don't want to uncompress it
[07:46:02 CEST] <thomedy> and yes that is absolutely getting corrupted
[07:46:03 CEST] <thebombzen> what are you actually trying to do?
[07:46:19 CEST] <thomedy>  i want for example just seconds 30 - 35
[07:46:37 CEST] <thomedy> but i need it competely isolated from the rest and no knowledge of the rest
[07:46:39 CEST] <thomedy> when i pay it
[07:46:49 CEST] <thomedy> play
[07:47:08 CEST] <thebombzen> You can do that with: ffmpeg -ss 30 -i input.mov -t 5 output.mov
[07:47:09 CEST] <thomedy> which is why raw
[07:47:26 CEST] <thebombzen> this will read the input file (input.mov, or input.avi, doesn't matter, ffmpeg will autodetect the file type)
[07:47:41 CEST] <thebombzen> this will read it, seek to 30 seconds, and then encode 5 seconds from there
[07:47:55 CEST] <thebombzen> You don't need a raw AVI to do that.
[07:48:16 CEST] <thomedy> the problem im having is its starting encrypted.. i want to encrypt decrypt and only decrypt 5 seconds of it.. if i go raw i dont have to anticipate the codec yet which is the eventual goal
[07:48:31 CEST] <thebombzen> encrypt/decrypt? Do you mean encode/decode?
[07:48:38 CEST] <thebombzen> because FFmpeg will do that for you. FFmpeg will decode the video and then re-encode it.
[07:48:48 CEST] <thomedy> nope i mean turn the the video file into total garbarge
[07:49:05 CEST] <thebombzen> Then you need to back up and explain exactly what you're trying to do
[07:49:07 CEST] <thomedy> and only make for example 5 s to 10 s readable again
[07:49:15 CEST] <thomedy> okay i have some files im trying to secure
[07:49:38 CEST] <thebombzen> You are trying to encrypt some files but you want a 5-second interval in the middle of the file to be readable?
[07:49:45 CEST] <thomedy> absolutely
[07:49:52 CEST] <thebombzen> .... why do you want to do that?
[07:50:04 CEST] <thomedy> its just something im doing unfortunately
[07:50:12 CEST] <thebombzen> Well I suggest you don't do that.
[07:50:19 CEST] <thomedy> i dont know if i could convince you of the logic... but i do really want ot...
[07:50:28 CEST] <thebombzen> Well that doens't make any sense
[07:50:51 CEST] <thebombzen> and as far as I know, what you're describing isn't possible. If you're sure you want to do something weird like that they it makes the most sense to chunk the file into three separate pieces
[07:51:23 CEST] <thebombzen> the video before the start of the 5-second interval, the 5 seconds you want to be unencrypted, and then everything after that
[07:51:36 CEST] <thebombzen> and then you can use whatever encryption method you want to encrypt the first and the third pieces but not the second
[07:51:44 CEST] <thomedy> you were saying it is broken up into pieces right
[07:52:08 CEST] <thomedy> i was reading a bit ago and obviously i can only kno wwhat i learn on the web right now
[07:52:22 CEST] <thomedy> but that there are seperate frames and the frame is described each time
[07:52:33 CEST] <thebombzen> What are you actually trying to do?
[07:52:46 CEST] <thomedy> i dont know how to be more clear
[07:52:59 CEST] <thebombzen> You do realize that "encrypt" is a term used to scramble data so it can only be decrypted with a key or password, right?
[07:53:03 CEST] <thomedy> yep
[07:53:07 CEST] <thomedy> and thats whyat im doing
[07:53:38 CEST] <thomedy> i m going to stab the dog out o my window... does anyone mind
[07:53:41 CEST] <thomedy> he keeps barking
[07:53:42 CEST] <thebombzen> You're trying to encrypt every part of a file except for a 5-second interval in the middle? This is not possible with one file
[07:54:11 CEST] <thebombzen> The only way to accomplish this is to do it with three separate files
[07:54:30 CEST] <thebombzen> have one video file for the first part, one video file for the five-second interval in the middle, and one video file for everything after that
[07:54:38 CEST] <thebombzen> and then encrypt the first and the third video files, but not the second.
[07:55:41 CEST] <thebombzen> But again, this sort of weird project you're doing for no reason
[07:55:48 CEST] <thebombzen> it sounds to me like you're misunderstanding a homework question
[07:55:59 CEST] <thebombzen> because I cannot for the life of me think of why you would want to do that
[07:55:59 CEST] <thomedy> its not homework i havent been in college in a while
[07:56:03 CEST] <thomedy> but thats funny
[07:56:13 CEST] <thebombzen> What is this for?
[07:58:10 CEST] <thomedy> okay so that you guys dont have to do my work for me im going to do some more research into file codecs, and compression
[07:58:21 CEST] <thomedy> cuz i feel like im missing something conceptual
[08:02:27 CEST] <thomedy> okay feel free to laugh at me but fuck it all i think im goign to write my own compression algorithm
[08:05:55 CEST] <thomedy> you know what nope im probably good off tht for a while i sitll want to but no tyet
[08:09:08 CEST] <buu> am I missing insanity
[08:09:53 CEST] <buu> thomedy: if you want multiple streams just encode multiple streams into a file
[08:10:45 CEST] <thomedy> buu:  you might be missing the insanity .... you know that disease where people dont feel pain and its no good... i get that when i disease when i have a goal in mind
[08:11:11 CEST] <thomedy> now grnted i dont want to do the worst thing possible just for the sake of it but i want to be able to encrypt. whole files
[08:11:15 CEST] <buu> thomedy: http://ffmpeg.gusari.org/viewtopic.php?f=12&t=828
[08:11:35 CEST] <thomedy> and only decrypt and play a portion
[08:12:04 CEST] <buu> [container {encrypted video1} {encrypted audio1} {decrypted video2} {encrypted video3}]
[08:12:20 CEST] <buu> What's the issue?
[08:13:04 CEST] <thomedy> the issues is that my encryption decryption algorithm totallyl kicks ass but i dont know enough about video yet
[08:13:11 CEST] <thomedy> so im reading the link you got to me right now
[08:13:14 CEST] <thomedy> it looks promising
[08:14:55 CEST] <buu> you know, there's a saying about people who write their on encryption algorithms
[08:16:00 CEST] <thomedy> nope i dont know it
[08:16:12 CEST] <thomedy> im curious to hear it though cuz mines done and getting cooler every time
[08:16:17 CEST] <thomedy> done sorry
[08:16:21 CEST] <thomedy> cool but growing
[08:16:57 CEST] <buu> oh
[08:16:59 CEST] <buu> they're idiots
[08:17:02 CEST] <buu> that's the saying
[08:17:21 CEST] <thomedy> too late im an idiot
[08:17:24 CEST] <thomedy> im down
[08:17:51 CEST] <thomedy> by the way i think that crap is normally said by people afraid to take a chance and then too lazy to put the work in
[08:17:57 CEST] <thomedy> these algorithms come from somwhere
[08:19:55 CEST] <buu> It's more that A) there's not really a massive demand B) really, really hard C) major consequences for failure
[08:20:50 CEST] <thomedy> hmmm.... 2 really good points specifically the part c... part b ... to me doesn't mean crap..
[08:21:08 CEST] <thomedy> let me hit a more important point..
[08:21:25 CEST] <thomedy> im learnign about codec and reading your article
[08:21:40 CEST] <thomedy> but im going to try to bullet point your statement earlier to confirm
[08:21:49 CEST] <thomedy> a single vidoe file has multiple streams
[08:23:33 CEST] <buu> technically a container, but sure
[08:24:05 CEST] <thomedy> okay
[08:24:06 CEST] <thomedy> cool
[08:24:06 CEST] <buu> thomedy: https://en.wikipedia.org/wiki/Ogg
[08:24:12 CEST] <thomedy> oooh cool
[08:25:36 CEST] <thomedy> okay thats enough for now im going to go work on something else i hve to be up in the morning
[08:25:39 CEST] <thomedy> thanks everyone
[08:49:30 CEST] <ArsenArsen> Hello! I've written a universal encoder with libavcodec, libavformat, libswscale, and libavutil. It works for webm, webp, mp4, but for gif it fails to open and gives me `Invalid argument'. I have a feeling that something I set in my AVCodecContext is wrong. Thanks in advance for any help
[08:52:12 CEST] <ArsenArsen> https://gist.github.com/ArsenArsen/bfec7872f3366073d07d35cf8714f4da
[08:52:16 CEST] <ArsenArsen> Those are my settings
[08:58:26 CEST] <ArsenArsen> Oh I figured it out. It's the pixel format. Thanks anyway
[09:03:35 CEST] <guest113412> Hello. Looking for help with webm making.
[09:12:55 CEST] <ArsenArsen> guest113412, whats up
[09:13:44 CEST] <apaul> hi all.
[09:14:44 CEST] <apaul> How can I use drawtext filter and vaapi vf 'format=nv12|vaapi,hwupload' together? I am stuck. Please help.
[09:14:48 CEST] <guest113412> I have an animated .gif file and audio file. I want to loop gif to achieve audio duration and then create .webm file. The problem is there is no obvious efficient way to do that.
[09:16:50 CEST] <guest113412> I tried to convert it directly to webm using -ignore_loop 0; -f lavfi -i "movie=filename=file.gif.webm:loop=0, setpts=N/(FRAME_RATE*TB)", -f concat and many other ways
[09:17:34 CEST] <furq> guest113412: if the gif loops then -ignore_loop 0 -i foo.gif -i bar.wav -shortest out.webm
[09:17:46 CEST] <guest113412> But t can't reach acceptable performance
[09:23:24 CEST] <guest113412> furq, already tried, not really efficient
[09:23:45 CEST] <ArsenArsen> Ugh.. This keeps happening and I have no clue why `Provided packet is too small, needs to be 9739` when I try encoding GIF
[09:24:13 CEST] <hardening> hi guys
[09:24:20 CEST] <ArsenArsen> Oh my packet is empty
[09:24:22 CEST] <ArsenArsen> Hmm
[09:25:15 CEST] <hardening> I finally managed to get the VAAPI accelerator to work with my C program, anyway I hit something
[09:27:49 CEST] <hardening> When the match on the h264 profile is done it is done very strictly, so I was in the case were the stream was H264BaselineConstrained and the hardware was supporting H264Baseline, as it's for decoding I guess that it would be supposed to work (as the constrained version is just a subset of the full version). What do you think ?
[09:28:59 CEST] <furq> what does "not really efficient" mean
[09:29:57 CEST] <furq> hardening: constrained baseline should work on devices that decode baseline, yeah
[09:30:24 CEST] <furq> emphasis on "should" because people are terrible
[09:31:02 CEST] <hardening> furq: well I've done some subtle changes to have the profile match less strict and it works
[09:33:04 CEST] <hardening> furq: IMHO it makes perfect sense for encoders to have the perfect match, but for decoders we should ignore the contrained flags
[09:43:55 CEST] <guest113412> furq, mean there is at least two methods that are faster
[09:48:15 CEST] <jkqxz> hardening:  Sounds like two driver bugs.  As far as I know no hardware supports baseline profile, so that is probably just wrong.  Second, VAAPI requires that the driver reports support for profiles which are subsets of others, so it shouldn't be able to declare baseline but not constrained baseline at all.
[09:50:00 CEST] <hardening> jkqxz: ok, anyway that's exactly what I have here => https://pastebin.com/fESGMsQv
[09:51:53 CEST] <jkqxz> Oh, old mesa.  That's fixed in newer versions.
[11:13:46 CEST] <thunfisch> hi, slight problem: I'm recording 18 channels from a single alsa interface and want to write every channel out to a separate file with flac encoding. i'm using -map_channel for that, and it's working, but somehow ffmpeg only uses one thread for everything which is too much for that little cpu.
[11:14:07 CEST] <thunfisch> https://paste.xinu.at/YncP/
[11:14:43 CEST] <thunfisch> any idea how I might better balance the load?
[14:52:07 CEST] <amey> Need a review if the following code is correct. Objective is to down sample an audio frame(PCM) to 5512 Hz. Also suggest me if there is a better way than this. Here is code: https://pastebin.com/sr05rQgm
[15:09:42 CEST] <Fyr> is it possible to make libx264 utilize opencl?
[15:10:06 CEST] <BtbN> yes
[15:10:08 CEST] <BtbN> but it's mostly useless
[15:10:18 CEST] <Fyr> BtbN, why so?
[15:10:26 CEST] <BtbN> Because there is no noticeable benefit.
[15:10:39 CEST] <Fyr> BtbN, is it -x264-params "opencl=1" ?
[15:10:45 CEST] <BtbN> no idea
[15:10:50 CEST] <Fyr> =(
[15:11:01 CEST] <BtbN> It does _not_ use the GPU for encoding
[15:11:08 CEST] <BtbN> only for some very specific tasks that a GPU can handle
[15:11:15 CEST] <Fyr> I was so happy to use flac opencl encoder. =/
[15:11:20 CEST] <BtbN> and the uploading/downloading of data almost completely negates any performance benefits
[15:11:27 CEST] <Fyr> it worked 52 times faster than that of FFMPEG.
[15:11:29 CEST] <BtbN> GPUs are bad at video de/encoding
[15:13:23 CEST] <Fyr> GPUs are good when unloading CPU for transcoding.
[15:13:58 CEST] <Fyr> when I convert with CPU, I use 100% of my CPU; when I convert with GPU, I use 1% of my CPU.
[15:14:18 CEST] <Fyr> of course, I notice the quality loss.
[15:14:41 CEST] <Fyr> flacCL utilizes 1-2% of my CPU.
[15:14:45 CEST] <BtbN> The task of video de/encoding is not something the highly parallel nature of GPUs is useful for
[15:14:45 CEST] <Fyr> without quality loss.
[15:14:49 CEST] <BtbN> they are really really bad at it
[15:14:55 CEST] <BtbN> And flac is not video
[15:17:19 CEST] <Mavrik> Well.
[15:17:25 CEST] <DHE> note that opencl and nvenc are two VERY different things
[15:17:28 CEST] <Mavrik> GPU encoders are actually noticably worse than x264
[15:17:37 CEST] <BtbN> Also, they are not GPU encoders
[15:17:44 CEST] <BtbN> they are dedicated silicon on graphics cards
[15:17:46 CEST] <DHE> x264 can offload some tasks like look-ahead to the GPU. I've seen performance differences from 20% to -20% (!!)
[15:18:13 CEST] <BtbN> It having to shovel all the frame data back and forth negates most of its benefits
[15:18:13 CEST] <DHE> at the end of the day I'm sticking with pure software though
[15:18:41 CEST] <Mavrik> On nvenc I've seen you need about +20-30% bitrate to get same quality as x264 slower presets.
[15:18:45 CEST] <furq> isn't opencl lookahead supposed to also be marginally worse quality
[15:18:50 CEST] <Mavrik> So if you actually want to produce good looking videos, use CPU
[15:18:55 CEST] <Mavrik> For live stuff it's fine.
[15:18:55 CEST] <DHE> furq: probably. didn't actually measure it though
[15:18:58 CEST] <BtbN> nvenc is actually a pretty decent hwencoder by now, compared to all the other ones
[15:19:03 CEST] <furq> yeah i've used it before and never noticed
[15:19:05 CEST] <furq> but i remember reading that
[15:19:08 CEST] <BtbN> of course it has no chance against x264
[15:19:12 CEST] <furq> the speedup wasn't worth the risk anyway
[15:19:16 CEST] <furq> i was getting like 3-4%
[15:19:43 CEST] <DHE> doing real-time captures on my GPU anyway at, say, 40 megabit h264 and then letting the CPU compress it later might be worthwhile. and  if you're doing realtime streaming it's nice to offload the graphics
[15:19:53 CEST] <Mavrik> Yeah.
[15:20:02 CEST] <furq> and yeah it's probably fair to say at this point that nothing will ever touch x264 for h264 encoding
[15:20:05 CEST] <DHE> but for a media archive, x264 on slow(er?) preset
[15:20:31 CEST] <furq> and we're probably a good few years away from any consumer hardware outperforming it for any codec
[15:20:54 CEST] <BtbN> for h264, I doubt any hardware will ever outperform x264 in terms of quality
[15:20:58 CEST] <BtbN> for HEVC, maybe
[15:21:07 CEST] <BtbN> But then x265 will be the better choice still
[15:21:11 CEST] <furq> hardware or software really
[15:21:19 CEST] <furq> nobody's going to invest years into making a better h264 encoder in 2017
[15:21:59 CEST] <furq> tbh i'd be way less surprised if hardware hevc started beating x265
[15:22:08 CEST] <furq> still quite surprised though
[15:28:38 CEST] <Mavrik> I don't see people investing a lot in x265 anyway.
[15:28:48 CEST] <Mavrik> The patent BS will probably mean that VP9 is better choice.
[15:30:18 CEST] <Fyr> VP9 almost is not implemented as hardware decoder.
[15:30:32 CEST] <Fyr> only the latest NVidia GPU have it.
[15:30:59 CEST] <Fyr> VP9 FullHD utilized 10-11% of my CPU when playing video.
[15:31:09 CEST] <Fyr> H264 uses only 1-2%.
[15:31:46 CEST] <BtbN> Intel also has it
[15:32:04 CEST] <Fyr> the latest, perhaps.
[15:32:46 CEST] <Mavrik> Bunch of hardware has (and will have) VP9 decoders.
[15:32:51 CEST] <Mavrik> Since YT is going full on there.
[15:33:46 CEST] <Mavrik> Apparently Intel supports VP9 HW acceleration since Haswell
[15:34:03 CEST] <JEEB> yea, my TV can handle 8 and 10 bit VP9
[15:34:24 CEST] <Mavrik> Also 4K/HDR YT will only be available in the new VP9 profile
[15:34:31 CEST] <Mavrik> So HW manufacturers will have to roll over :)
[15:34:44 CEST] <JEEB> now I just need more HLG samples :P
[15:34:47 CEST] <furq> only kaby lake has full vp9 hwdec iirc
[15:34:58 CEST] <furq> before that it's "hybrid" which i assume means it doesn't really do anything
[15:34:59 CEST] <JEEB> well VP9 decoding is heavily optimized even on CPUs
[15:35:05 CEST] <furq> although yeah
[15:35:11 CEST] <furq> i've never had any issues doing it in software
[15:35:11 CEST] <Mavrik> *shrug* No idea, works fine on my Mac
[15:35:16 CEST] <Mavrik> And it's not Kaby Lake
[15:35:20 CEST] <Mavrik> And neither nVidia.
[15:35:50 CEST] <furq> 14:28:38 ( Mavrik) I don't see people investing a lot in x265 anyway.
[15:35:55 CEST] <furq> it is picking up some traction, annoyingly
[15:36:07 CEST] <furq> i know some dvb-t2 deployments are using it now
[15:36:14 CEST] <Mavrik> Maybe Apple will finnally manage to shove HEVC down peoples throats
[15:36:15 CEST] <furq> and obviously netflix
[15:36:20 CEST] <Mavrik> So they can collect those sweet royalties :)
[15:36:21 CEST] <furq> and yeah apple ;_;
[15:36:37 CEST] <furq> i have to wonder how much of a backhander apple got to suddenly announce they're using a new hevc-based image format
[15:36:51 CEST] <furq> or if they did it for free just to see the look on google's face
[15:37:16 CEST] <Mavrik> They're part of HEVC patent pool :)
[15:37:41 CEST] <furq> which one
[15:38:01 CEST] <Mavrik> MPEG-LA
[15:38:30 CEST] <furq> well then that's still three others they could've got a backhander from
[15:38:48 CEST] <furq> although it's been a whole week since i found out about #4, so there's probably two more now
[15:39:46 CEST] <Mavrik> Apple == $$$$, everybody jumping on the wagon
[15:40:36 CEST] <furq> i found a picture of the hevc licensing bodies
[15:40:37 CEST] <furq> https://i2.wp.com/japanesearcade.com/wp-content/uploads/2017/05/wani-wani-panic.jpg
[15:40:47 CEST] <furq> except there's no hammer
[15:41:34 CEST] <Mavrik> You just want to steal their ideas!
[15:41:45 CEST] <furq> it's true
[15:42:00 CEST] <Mavrik> How would we ever get a good video format without poor hungry corpos being paid for 100 years? :)
[15:42:10 CEST] <ritsuka> I don't know what's worse, hevc patents or google making a new video format each year :|
[15:42:55 CEST] <furq> if only i could have come up with such great ideas as "Facilitate easier transmission of video by making it smaller somehow"
[15:43:56 CEST] <Mavrik> You know how long it took them to think of "how about we look at previous and next images, they might be similar?" ?!
[15:44:17 CEST] <furq> ritsuka: do you mean two in nine years
[15:44:37 CEST] <ritsuka> vp8, vp9, av1
[15:44:43 CEST] <furq> av1 isn't out yet
[15:44:54 CEST] <furq> it'll presumably be three in 10 years
[15:45:32 CEST] <Mavrik> There's also VP9 profile 2
[15:45:35 CEST] <Mavrik> Which is new
[15:45:41 CEST] <furq> assuming you include vp8, which never really got any widespread deployment
[15:45:52 CEST] <furq> i mean i know youtube uses it but does it get served to anyone but windows xp users nowadays
[17:07:06 CEST] <alexpigment> hey guys. i'm testing h264_qsv on a 7700K Intel chip, but i'm getting intermittent failures
[17:07:19 CEST] <alexpigment> "Error during encoding: device failed (-17)"
[17:07:27 CEST] <alexpigment> i couldn't find anything on google about this
[17:07:30 CEST] <alexpigment> any ideas?
[17:10:24 CEST] <alexpigment> well, i did find this, which *may* be the same issue? https://trac.ffmpeg.org/ticket/5708
[17:10:33 CEST] <alexpigment> they fixed it by updating the graphics driver
[17:10:37 CEST] <alexpigment> i'll try that report back
[17:15:27 CEST] <kepstin> alexpigment: windows? yeah, sounds like a driver bug
[17:16:21 CEST] <alexpigment> yep, windows
[17:16:23 CEST] <alexpigment> updating now
[17:16:29 CEST] <alexpigment> it was just weird that it was intermittent
[17:20:15 CEST] <furq> most of the gfx driver issues i've ever had have been intermittent
[17:41:24 CEST] <alexpigment> well, updating graphics didn't fix it, so I uninstalled and then reinstalled and that did the trick
[17:41:36 CEST] <alexpigment> (or at least made it much more intermittent to the point where I didn't run into it again)
[17:41:37 CEST] <alexpigment> weird
[17:41:59 CEST] <alexpigment> i wish drivers weren't so quirky
[18:09:13 CEST] <Kadigan> Hey... I'm getting lots of "Truncating likely oversided PPS (9469 > 4096)" on files from a particular camera (Canon XC10). I thought it was my outdated ffmpeg (sometime 2016) but I just built it from scratch and I'm getting the same issue. Anything I can do?
[18:09:53 CEST] <Kadigan> (running on macOS 10.12.5)
[18:10:27 CEST] <Kadigan> This happens roughly every 12 frames or so.
[18:22:02 CEST] <h0par> hello
[18:23:11 CEST] <h0par> how can I generate video from "infinite" number of images to stream?
[18:24:34 CEST] <h0par> images are being generated on the fly, and there might be delay before next is generated
[18:28:04 CEST] <jkqxz> Kadigan:  Upload a sample?  It's possible the PPS might actually be that size, just unlikely.
[18:36:05 CEST] <DHE> h0par: a pipe?
[18:38:08 CEST] <zack_s__> I want to concatenate two videos
[18:38:30 CEST] <zack_s__> however I recieve following error:  Impossible to open 'E:/Testing/ffmpeg-RemuxTest/bin/videos/Trimmed/"E:/Testing/ffmpeg-RemuxTest/bin/videos/Trimmed/video_1.mp4"' E:/Testing/ffmpeg-RemuxTest/bin/videos/Trimmed/concate-file.txt: Invalid argument
[18:39:11 CEST] <zack_s__> this is my command: ffmpeg -f concat -safe 0 -i "E:/Testing/ffmpeg-RemuxTest/bin/videos/Trimmed/concate-file.txt" -c copy output
[18:39:21 CEST] <zack_s__> this my concatenate file: https://pastebin.com/0a9WGxUB
[18:43:52 CEST] <h0par> DHE: yes
[18:44:01 CEST] <h0par> no
[18:44:14 CEST] <h0par> not real pipe, but like pipe
[18:45:10 CEST] <h0par> Can I tell ffmpeg to generate frames based on last image ?
[18:59:32 CEST] <Kadigan> jkqxz: I was afraid of that. This isn't the only file from that camera that's throwing these... I also have some grief from Canon C100 cameras. Well, I'll ask the boss to provide me with sample files to upload.
[19:17:20 CEST] <thebombzen> BtbN: I've found that hevc_nvenc outperforms x264's superfast etc. presets but not its slower presets
[19:17:35 CEST] <BtbN> outperforms?
[19:17:38 CEST] <thebombzen> that is in quality per bitrate
[19:17:41 CEST] <BtbN> ah
[19:17:50 CEST] <BtbN> Would have been surprised if x265 was faster
[19:18:01 CEST] <thebombzen> x264, not x265
[19:18:24 CEST] <thebombzen> If you're encoding x264 with superfast anyway it's probably a realtime grab, and nvenc with a low qp works better
[19:18:38 CEST] <thebombzen> but if you're using a slow preset x264 still takes the cake
[19:19:04 CEST] <BtbN> The hevc encoder in nvenc is basically only using h264 features anyway
[19:19:52 CEST] <furq> yeah nvenc over x264 is a no-brainer for realtime/intermediate stuff
[19:20:37 CEST] <BtbN> hevc
[20:13:00 CEST] <arpu> hello what is the best way to do a live video switch/mix  with ffmpeg ?
[20:13:16 CEST] <arpu> and the output rtmp stream should not be restarted
[20:13:23 CEST] <arpu> i think i should use some fifo?
[20:13:34 CEST] <arpu> anyone an idea?
[20:25:27 CEST] <kerio> will -tune touhou help if i'm streaming a good game instead
[20:28:45 CEST] <furq> what game
[20:34:34 CEST] <kerio> idk
[20:34:35 CEST] <kerio> dodonpachi
[20:36:00 CEST] <furq> then probably
[20:36:37 CEST] <furq> i was hoping to be able to disagree with your opinion of a good game but i don't care enough either way about dodonpachi
[20:36:56 CEST] <furq> as long as you mean dodonpachi and not one of the new ones
[20:37:16 CEST] <furq> anything newer than dai-ou-jou fucking sucks
[20:47:01 CEST] <kerio> someone's salty about daifukkatsu
[20:50:23 CEST] <furq> i knew it
[20:50:32 CEST] <furq> i knew you were hiding something
[20:50:32 CEST] <kerio> :>
[20:50:51 CEST] <kerio> i'm not even good at bullet hells
[20:50:52 CEST] <furq> it would be unthinkable for you to be enjoying something passable
[20:51:03 CEST] <kerio> the only one i've ever done vaguely decently at is esp.ra.de
[20:51:16 CEST] <furq> esp ra de is weird
[20:51:17 CEST] <kerio> and u better not dis esp.ra.de.
[20:51:21 CEST] <furq> it's fine
[20:51:25 CEST] <kerio> yay :3
[20:51:32 CEST] <furq> it's no dangun feveron though
[20:51:57 CEST] <furq> or uh
[20:52:02 CEST] <kerio> guwange?
[20:52:05 CEST] <furq> yeah
[20:52:06 CEST] <furq> how did you know
[20:52:13 CEST] <kerio> I'M IN YOUR HEAD
[20:52:16 CEST] <furq> that's even weirder though
[20:52:57 CEST] <furq> although it does at least have scoring that doesn't mean you have to spend 10 minutes milking every boss
[20:52:57 CEST] <kerio> well you were talking about cave games
[20:56:56 CEST] <furq> i could've been talking about any of cave's innumerable games from the 90s
[20:57:02 CEST] <furq> i could've been talking about uo poko for all you know
[21:00:58 CEST] <alexpigment> doing my monthly check-in about VCE
[21:01:10 CEST] <alexpigment> has anyone heard of any movements on integrating AMD VCE into FFMPEG?
[21:01:49 CEST] <furq> not on windows
[21:02:07 CEST] <alexpigment> yeah, sorry
[21:02:10 CEST] <alexpigment> i meant windows ;)
[21:02:18 CEST] <alexpigment> ok, thanks furq
[21:02:19 CEST] <furq> it's theoretically supported through vaapi but i don't think it actually works
[21:25:32 CEST] <Abnix> quick question if I may, I have a substantial collection of files I wish to normalize the audio on, I have a script I found that uses ffmpeg and it works fine. Except that I have 16 cores to play with and despite passing '-threads 14' to ffmpeg, it is only running on one core...what am I doing wrong?
[21:26:28 CEST] <DHE> audio filtering and audio encoding tends to be not very multi-threadable.
[21:27:18 CEST] <Abnix> so 'lol no'  ?
[21:27:40 CEST] <klaxa> you could work on multiple files in parallel
[21:27:53 CEST] <klaxa> i.e. just spawn more ffmpeg instances
[21:27:57 CEST] <Abnix> righto
[21:28:28 CEST] <Abnix> I had been thinking along that line, but wanted to make sure I wasn't missing something well-known
[21:31:24 CEST] <ChocolateArmpits> audio processing is fast enough that multithreading is hardly necessary
[21:32:30 CEST] <furq> yeah you'll need to use xargs or something
[21:49:48 CEST] <c_14> gnu parallel
[21:49:55 CEST] <c_14> doesn't xargs do it sequentially?
[21:50:21 CEST] <furq> -P
[21:51:19 CEST] <c_14> ah, so it can
[21:51:39 CEST] <furq> parallel is slightly more featureful but also usually not installed
[21:51:46 CEST] <furq> and also harder to use in my experience
[23:00:18 CEST] <necklace> is it possible to split an audio file (ogg vorbis) on silence? I tried silencedetect and filter_complex but it didn't work.. Here's the command I tried https://pastebin.com/NTTKQ4hr
[23:01:14 CEST] <furq> silencedetect doesn't split the file
[23:01:31 CEST] <c_14> silencedetect just outputs to stderr, you have to parse that yourself
[23:01:33 CEST] <furq> if you mean it's not printing messages then you probably need to adjust n
[23:03:26 CEST] <necklace> Hm, so it's not possible to split an audio file on silence, then? It's printing a lot of messages but it didn't split where I wanted it to..
[23:03:46 CEST] <furq> it only prints messages
[23:04:05 CEST] <furq> you need to split it yourself with the information it prints
[23:05:51 CEST] <necklace> but could I make filter_complex and map do that for me? did you see the command?
[23:06:03 CEST] <furq> no
[23:07:16 CEST] <furq> to the first question
[23:08:34 CEST] <c_14> the best you can do is silenceremove
[23:10:44 CEST] <kepstin> necklace: in general, the ffmpeg filter system doesn't let you generate multiple outputs where the number isn't known in advance, so there's no real way to build a "split on silence" filter.
[23:11:53 CEST] <furq> you could probably do it with a script and -f segment
[23:12:53 CEST] <c_14> if you get the times and then segment_times probably
[23:13:41 CEST] <c_14> that would still include the silence parts though, unless you remember which segments contain silence and drop those
[23:13:55 CEST] <furq> well you get silence_start and silence_end
[23:14:14 CEST] <c_14> but segment_times is only a comma separated list
[23:14:21 CEST] <furq> oh right
[23:14:34 CEST] <necklace> Hm, I'm not afraid to get dirty but I'm no ffmpeg pro; can you give me an example?
[23:15:45 CEST] <damano> can ffmpeg/ffprobe used to parse an mp4 file to box level details ?
[23:16:01 CEST] <c_14> you probably want l-smash's boxdumper
[23:27:05 CEST] <furq> necklace: http://vpaste.net/VFWZ8
[23:27:19 CEST] <furq> you could presumably have awk spawn ffmpeg but i'll leave that as an exercise for the reader
[23:28:01 CEST] <necklace> furq: heh, thanks.
[23:31:24 CEST] <TMM> hi all
[23:31:37 CEST] <TMM> whoops, wrong channel :)
[00:00:00 CEST] --- Wed Jun 14 2017


More information about the Ffmpeg-devel-irc mailing list