[Ffmpeg-devel-irc] ffmpeg.log.20170905
burek
burek021 at gmail.com
Wed Sep 6 03:05:01 EEST 2017
[00:01:16 CEST] <markmedes2> klaxa: Beautiful, it worked!!! Thank you!
[00:01:22 CEST] <klaxa> :)
[11:12:10 CEST] <Ingvix> hey, I'm trying to convert mp4 with dvd_subtitles to mkv but when trying to include the subs I'm getting this error https://pastebin.com/0KsyucJ0 What could I try to get them work or is there some incompatibility issue that can't be easily overcome?
[11:22:29 CEST] <Ingvix> I added -scodec dvdsub and now it's converting it
[11:22:36 CEST] <Ingvix> not sure if the right way yet
[16:09:19 CEST] <alone> hello, anyone know is it possible to have h264 screen capturing "lossless" with right colors?
[16:09:50 CEST] <DHE> you should run libx264rgb then
[16:10:48 CEST] <alone> i can do it by CPU with
[16:11:01 CEST] <alone> ffmpeg -loglevel quiet -f gdigrab -i desktop -vf crop=1600:900:5:0 -c:v libx264 -profile:v high444 -crf 0 -preset:v ultrafast output.mkv
[16:11:10 CEST] <alone> but with nvenc - no
[16:11:41 CEST] <alone> ffmpeg -loglevel quiet -f gdigrab -i desktop -vf crop=1600:900:0:0 -c:v h264_nvenc -qp 0 -pix_fmt yuv420p h264-nVidia.mkv
[16:12:22 CEST] <alone> this is near colors, but... i have almost only two colors at screen - red and green.
[16:12:28 CEST] <alone> with first line - it's fully ok
[16:13:02 CEST] <alone> with nvenc - near, but .. i dont know why. may be becouse it's not lossless already..
[16:13:28 CEST] <alone> just trying to do less CPU usage with nvenc
[16:20:54 CEST] <c_14> alone: h264_nvenc should support yuv444p if you set the correct profile as well
[16:21:02 CEST] <c_14> Assuming that's enough to give you correct colors
[16:21:24 CEST] <c_14> Though you might also want to look into something like using zscale to convert colorspaces if you want 420p
[16:22:17 CEST] <alone> c_14, i have Kepler core - GTX 640 card. i am scaring may be it's not possible to do a screen grabbing with "lossless" ?
[16:23:56 CEST] <c_14> You can try what I said with -profile high444p -pix_fmt yuv444p, but if that doesn't work you'll have to look into using zscale to transform pixel formats which should prevent color degredation
[16:24:15 CEST] <alone> "-profile high444p" says 0 invalid params, may be incorrect bit rate or width
[16:25:18 CEST] <alone> thank you, but kepler can underspand only yuv420p
[16:25:43 CEST] <alone> and profile - "high"
[16:25:50 CEST] <alone> but not "high444p"
[16:26:26 CEST] <alone> i have a little bit of understanding with colors, but you right, this is degradation
[16:26:31 CEST] <c_14> ok, then you'll have to try https://ffmpeg.org/ffmpeg-filters.html#zscale-1
[16:26:57 CEST] <alone> with CPU i have two strings working for me VERY good:
[16:27:06 CEST] <alone> @ffmpeg -loglevel quiet -f gdigrab -i desktop -vf crop=1600:900:5:0 -c:v libx265 -preset ultrafast -x265-params lossless=1 E:\Screen.Capturing\%yyyymmhhmmss%.mkv
[16:27:17 CEST] <alone> 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
[16:27:23 CEST] <alone> for 264 and 265
[16:27:45 CEST] <alone> but for nvenc, 265 not working on Kepler cores
[16:27:55 CEST] <alone> 264 - working, but without lossless supporting.
[16:28:28 CEST] <alone> well, ok. crf 0 or qp 0 - will be near. but colors ;((((((
[16:29:14 CEST] <alone> it's not red (255,0,0) but dark red, it's not green (0,255,0) - it's light green
[16:29:31 CEST] <c_14> Yeah, that's due to the RGB->YUV conversion
[16:30:06 CEST] <c_14> Using zscale to do the RGB->YUV conversion should prevent that
[16:30:17 CEST] <c_14> Since the internal converter is tuned for speed more than accuracy
[16:30:58 CEST] <alone> sorry, for i am asking, do u have a working example of such conversation?
[16:31:33 CEST] <alone> before this day, i has never know about colorspace ;)
[16:31:47 CEST] <c_14> You mean an ffmpeg command?
[16:32:04 CEST] <alone> yes?
[16:32:11 CEST] <alone> i am trying to grabbing text
[16:32:19 CEST] <c_14> -vf zscale,format=yuv420p should do it
[16:32:35 CEST] <alone> with several colors - black. white.. green, red. that's all
[16:33:03 CEST] <alone> just a moment i will try
[16:33:47 CEST] <JEEB> (do note that zscale will angrily derp at you if you don't have the colorspace defined in the input ;)
[16:34:15 CEST] <alone> fffmpeg -f gdigrab -i desktop -vf crop=1600:900:0:0 -c:v h264_nvenc -qp 0 -pix_fmt yuv420p -vf zscale,format=yuv420p h264-nVidia.mkv
[16:34:16 CEST] <alone> ?
[16:34:26 CEST] <JEEB> use only one vf
[16:35:08 CEST] <alone> "NO NVenc capavle devices found " ;) no path beetween colorspaces
[16:35:16 CEST] <alone> between.
[16:36:56 CEST] <alone> ffmpeg -f gdigrab -i desktop -vf crop=1600:900:0:0 -c:v h264_nvenc -qp 0 -pix_fmt yuv420p -vf zscale h264-nVidia.mkv
[16:37:00 CEST] <alone> same errors
[16:46:12 CEST] <c_14> -vf crop,zscale,format=yuv420p
[16:46:21 CEST] <c_14> you can only have one -vf in the command
[16:50:52 CEST] <alone> ops
[16:52:09 CEST] <alone> well, i guess it's not possible to use nvenc with right colors ;-((
[16:52:15 CEST] <alone> thank you guyz
[16:54:21 CEST] <DHE> yuv444 support will vary by GPU
[16:55:43 CEST] <alone> DHE - not Kepler
[16:56:33 CEST] <alone> https://developer.nvidia.com/nvidia-video-codec-sdk#NVENCFeatures
[16:56:37 CEST] <DHE> that's the oldest generation isn't it?
[16:57:04 CEST] <alone> well, 2012 year
[16:57:17 CEST] <alone> fermi, kepler, maxwell
[16:57:22 CEST] <alone> i guess so
[16:58:06 CEST] <alone> i dont understand, i cant do some conversation for right color - or it's impossible? may be after conversation.. dont know
[16:58:53 CEST] <alone> if you know something about it, please give me a link or cmd line ;-(
[16:58:55 CEST] <alone> thank a lot
[17:04:12 CEST] <DHE> colourspaces besides 444 means that multiple pixels will share at least some colour information with each other. but at the same time with H264 a lot of players (quicktime, many hardware players) only support 420
[18:33:32 CEST] <dafna_> hi, I use the ffmpeg library for decoding
[18:34:03 CEST] <dafna_> can someone explain what is the field repeat_pict of AVFrame ?
[18:34:39 CEST] <JEEB> https://ffmpeg.org/doxygen/trunk/structAVFrame.html#aef11fd783ad17b6841af82efa07c859e
[18:36:23 CEST] <JEEB> ah, it's used for stuff like soft telecine
[18:37:04 CEST] <dafna_> so I can ignore it ?
[18:37:48 CEST] <JEEB> or actually not sure... but at least in my code I don't touch that field since post-decode PTS is pretty much all I generally care about
[18:38:02 CEST] <JEEB> (and duration if available)
[18:40:16 CEST] <dafna_> ok , another question, there is the flag AV_PKT_FLAG_KEY in the packet flags
[18:40:53 CEST] <dafna_> does this flag is mandatory as an input for dome decoders before calling avcodec_decode_video2 ?
[18:41:08 CEST] <dafna_> or is it an output flag set by the decoder itself ?
[18:43:22 CEST] <dafna_> do I need to check myself if the current packet contain a key frame and then set this flag accordingly ?
[18:45:39 CEST] <JEEB> dafna_: that flag in the AVPacket generally means that it might be a random access point
[18:46:04 CEST] <JEEB> generally I just tend to feed decoders things until I get a decoded picture successfully
[18:51:38 CEST] <dafna_> amm, a key frame is the same as intra frame ?
[18:51:58 CEST] <JEEB> yes, but in reality that flag often means IRAP
[18:52:03 CEST] <JEEB> intra random access picture
[18:52:04 CEST] <dafna_> what if I set this flag on all frames automaticlly ?
[18:52:16 CEST] <JEEB> uhh
[18:52:33 CEST] <JEEB> it doesn't make sense :P why would *you* be touching it
[18:52:39 CEST] <JEEB> you're demuxing/decoding
[18:52:43 CEST] <JEEB> it tells you about the input
[18:53:22 CEST] <dafna_> so it's a data I get from the demuxer or the decoder ?
[18:53:55 CEST] <JEEB> AVPackets are demuxed things (the function in lavf is called "read_frame" for some reason, but it's really "read_packet"), and AVFrames are decoded things
[18:54:21 CEST] <JEEB> so you feed a decoder AVPackets and you receive AVFrames
[18:54:25 CEST] <JEEB> and the other way with encoding
[18:55:01 CEST] <dafna_> ok, so, in general my question is if I should set this flag ?
[18:55:22 CEST] <dafna_> and if so , how can I know it's a key frame ?
[18:55:54 CEST] <JEEB> your demuxer or encoder will know what to set it to
[18:56:01 CEST] <JEEB> you do not override it
[18:56:13 CEST] <JEEB> it's info for you, not something you can adjust with that specific flag
[18:56:50 CEST] <dafna_> ok,
[18:58:48 CEST] <dafna_> my senario is that I get encoded frame buffer from another function and I create the packet my self and set it every time with av_init_packet and av_packet_from_data
[18:59:42 CEST] <JEEB> > encoded frame buffer
[19:00:00 CEST] <JEEB> first word notes it's compressed, second is usually assigned to uncompressed stuff
[19:00:15 CEST] <JEEB> at least I don't hear the wording "frame buffer" being used for compressed images
[19:01:23 CEST] <dafna_> oh, ok , so whats the jargon ?
[19:01:44 CEST] <JEEB> well what I meant is "actually tell me what you're talking about"
[19:04:02 CEST] <dafna_> ok , so I get a buffer, this buffer that starts with 00 00 00 01
[19:04:20 CEST] <JEEB> that sounds like encoded AVC or HEVC
[19:04:39 CEST] <dafna_> yap
[19:04:48 CEST] <JEEB> sounds like you will want to pass it through the raw AVC or HEVC stream demuxer
[19:04:52 CEST] <dafna_> and I have to decode it with avcodec_decode_video2
[19:04:53 CEST] <JEEB> that will then separate the NAL units etc
[19:05:04 CEST] <JEEB> and no, you don't want to use decode_video2
[19:05:09 CEST] <JEEB> if you are writing code *now*
[19:05:23 CEST] <JEEB> you want to use the push/pull (feed/receive) API
[19:05:33 CEST] <dafna_> yes, I know it's deprecated
[19:05:41 CEST] <JEEB> https://www.ffmpeg.org/doxygen/trunk/group__lavc__decoding.html
[19:05:44 CEST] <dafna_> whats the difference ?
[19:06:04 CEST] <JEEB> works better considering what you're doing, more straightforward
[19:06:22 CEST] <JEEB> you feed until you can't feed a decoder any more, and you receive from it until it tells you to feed it more
[19:06:26 CEST] <dafna_> amm, in what way it works better ?
[19:06:28 CEST] <dafna_> faster ?
[19:06:45 CEST] <JEEB> the logic you can put around it is much better
[19:06:53 CEST] <JEEB> since it separates sending and receiving data
[19:07:16 CEST] <JEEB> esp. since often with many formats the amount of things going in and out doesn't match
[19:07:51 CEST] <JEEB> also it lets you use the same functions with audio, video and subtitles
[19:08:00 CEST] <JEEB> instead of having separate functions and separate logic
[19:08:44 CEST] <dafna_> but if I use this two functios one directly after the other
[19:08:49 CEST] <dafna_> then does it metter ?
[19:09:03 CEST] <dafna_> and my video has not audio anyway
[19:09:14 CEST] <JEEB> because the logic is less simple even with just video
[19:09:30 CEST] <JEEB> but suit yourself
[19:09:41 CEST] <JEEB> I really prefer the way the send/receive APIs work
[19:10:58 CEST] <dafna_> I guess I dont understand it enough to appriciate it
[19:11:08 CEST] <dafna_> are you from the ffmpeg developers ?
[19:11:19 CEST] <JEEB> I do work on the insides as well
[19:11:29 CEST] <dafna_> for me it's like magic anyway
[19:12:10 CEST] <dafna_> and the result of the 2 API for the outside user seems the same
[19:12:38 CEST] <JEEB> https://www.ffmpeg.org/doxygen/trunk/group__lavc__encdec.html
[19:12:43 CEST] <JEEB> this is a general overview of it
[19:13:05 CEST] <JEEB> anyways, open a demuxer for the raw AVC or HEVC - whichever you're dealing with, and that will then cut it into AVPackets
[19:13:05 CEST] <dafna_> thanks
[19:13:20 CEST] <JEEB> then feed those AVPackets into the decoder
[19:13:32 CEST] <JEEB> at some point you will start getting AVFrames back
[19:13:57 CEST] <bencc> when encoding a video with -b:a -b:v and maxrate options, will the bitrate be the max or might be much lower?
[19:14:14 CEST] <JEEB> depends on the encoder completely
[19:14:16 CEST] <bencc> I'm encoding a video file for several HLS variants
[19:14:22 CEST] <bencc> libx264 encoder
[19:14:31 CEST] <JEEB> with libx264 you need to set both maxrate and bufsize
[19:14:37 CEST] <JEEB> and that will keep you under the VBV/HRD limits
[19:14:55 CEST] <JEEB> it will not use more bit rate than required by the general rate control, though
[19:15:16 CEST] <JEEB> so your basic rate control mode controls the encoder, and then maxrate+bufsize limit the base rate control
[19:15:25 CEST] <bencc> JEEB: so the final bitrate might be much lower than my maxrate and buffsize?
[19:15:35 CEST] <JEEB> if using f.ex. CRF and the content is pure black
[19:15:38 CEST] <JEEB> then yes
[19:15:40 CEST] <bencc> what is the "basic rate control"?
[19:15:48 CEST] <JEEB> basic rate control modes
[19:15:54 CEST] <JEEB> either ABR, CRF etc
[19:16:02 CEST] <JEEB> it's the basic rate control mode of libx264
[19:16:21 CEST] <JEEB> maxrate+bufsize is then to limit that to specific VBV/HRD parameters
[19:17:11 CEST] <bencc> https://pastebin.com/WVpEvYWL
[19:17:15 CEST] <bencc> this is the command I'm using
[19:17:50 CEST] <JEEB> well, I've said all there is regarding maxrate&bufsize
[19:18:08 CEST] <JEEB> also just fyi CRF and ABR don't go together
[19:18:11 CEST] <JEEB> it's one or the otehr
[19:18:12 CEST] <bencc> and this is one variant https://pastebin.com/x03W7Wcs
[19:18:33 CEST] <bigx> hello there, do you know if the overlay filter can be gpu accelerated?
[19:19:35 CEST] <bencc> JEEB: in my command I only use "-crf 23". I don't use ABR
[19:19:56 CEST] <JEEB> well you wanted seemingly to have me look at your shit that I have no interest in and I saw both the ABR and CRF be set
[19:20:00 CEST] <bencc> should I use different CRF per variant or is it ok to use -crf 23 for all variants/resolutions
[19:20:00 CEST] <JEEB> -b:v sets ABR in libx264
[19:20:01 CEST] <durandal_1707> bigx: why? is it slow, how big overlay is
[19:20:06 CEST] <JEEB> and -crf is CRF
[19:20:27 CEST] <JEEB> so most likely whatever the fuck gets there last is the one that gets effectively used, but the fuck do I know
[19:20:41 CEST] <bencc> ok. thanks for the head up
[19:21:13 CEST] <bencc> I wish there was a reference implementation of encoding for several HLS variants
[19:21:15 CEST] <bigx> durandal_1707: yes, 3328×1664 pixels
[19:21:17 CEST] <bencc> it's probably common
[19:22:23 CEST] <durandal_1707> bigx: overlay or main video?
[19:23:22 CEST] <ChocolateArmpits> bencc, what do you mean variants? You want to encode different qualities at the same time or something?
[19:23:56 CEST] <bigx> durandal_1707: I have an image (png) 3328×1664 pixels and a video (vp8 with alpha channel) the video will be on top of the image
[19:25:13 CEST] <durandal_1707> bigx: how much fps you get, and what fps you expect instead?
[19:25:26 CEST] <bigx> and Im trying to use nvdec/nvenc for fast video creation
[19:25:50 CEST] <bigx> durandal_1707: Im getting around 10fps on a Tesla M60 gpu
[19:26:07 CEST] <ChocolateArmpits> bigx, please benchmark the overlay filter only
[19:26:14 CEST] <bigx> (on amazon ec2, g3.4xlarge instance)
[19:27:38 CEST] <ChocolateArmpits> To benchmark properly, replace the output and encoder for "-vcodec rawvideo -f null -" and use the bench filter to get accurate timing
[19:28:02 CEST] <bencc> ChocolateArmpits: yes. for example,encode the same video to 540p, 720p and 1080p
[19:28:18 CEST] <bencc> like recommended here https://developer.apple.com/library/content/technotes/tn2224/_index.html#//apple_ref/doc/uid/DTS40009745-CH1-SETTINGSFILES
[19:28:31 CEST] <ChocolateArmpits> bencc, I'll be back in a sec
[19:28:55 CEST] <durandal_1707> bigx: there is overlay for some other hw in preparation
[19:29:26 CEST] <bencc> ChocolateArmpits: thanks
[19:29:36 CEST] <durandal_1707> but i doubt its for nvidia hw
[19:29:39 CEST] <bigx> durandal_1707: good, to know :) but my deadline is in 10 days :)
[19:30:18 CEST] <bigx> durandal_1707: is there a place where I can find which filters can be hw accelerated?
[19:31:38 CEST] <durandal_1707> bigx: they are separate filters with name and name of hw
[19:32:02 CEST] <bigx> that simple :) thanks durandal_1707
[19:34:13 CEST] <bigx> durandal_1707: are you a ffmpeg developer?
[19:34:52 CEST] <durandal_1707> bigx: yea and i might write overlay simd
[19:35:09 CEST] <bigx> cool, I see this page https://www.ffmpeg.org/consulting.html
[19:36:01 CEST] <bigx> and I would definitely get in touch for my problem with some experts, I have some budget for a day or two
[19:38:49 CEST] <bigx> it feels weird to ask for a contractor on the ffmpeg-devel mailing list
[19:40:21 CEST] <durandal_1707> what problems?
[19:50:55 CEST] <bigx> well I need to create a 360° video from a png image and an alpha video on top of it
[19:51:05 CEST] <MarkedOne> Hello good ppl, i am confused what happens in two pass encoding h264 when target file size is 2GB and source file have only 50MB? Will this 2GB be maximum allowed or will it be enforced?
[19:51:05 CEST] <bigx> as fast as I can
[19:51:38 CEST] <kepstin> MarkedOne: the encoder will do its best to make a 2GB file, but it might end up undershooting if it can't figure out a way to make the video big enough.
[19:52:33 CEST] <MarkedOne> kepstin: So it is possible that 50Mb will be stretched to 2GB even if there is not enough quality..
[19:52:48 CEST] <bigx> durandal_1707: it works pretty ok on cpu, but my probem is to porting it on gpu
[19:53:10 CEST] <MarkedOne> kepstin: So one shuld use 2 pass encoding when it is sure that targeted file size is lesser than source right?
[19:54:59 CEST] <MarkedOne> kepstin: might does mean, I have used maximum quality I can get.. so I finish here... Lets say.. 50MB source file will be converted in 100MB and 99% quality possible?
[19:55:55 CEST] <kepstin> MarkedOne: well, absolute "best" quality would be to just use a lossless mode - but it sounds like you should be using crf mode instead of 2-pass mode
[19:58:12 CEST] <vlt> Hello. Is it possible to take a VIDEO_TS directory with .VOB files as input and create one .mkv file with "-codec:v copy"?
[19:59:20 CEST] <ChocolateArmpits> vlt, "concat:VTS_01.VB|VTS_02.VOB" works most of the time
[19:59:34 CEST] <ChocolateArmpits> as an input that is
[19:59:37 CEST] <vlt> ChocolateArmpits: Thank you :-)
[20:01:10 CEST] <MarkedOne> kepstin: Final encoding will be 2 passed cuz I need to put 8GB into DVD... But DVD player is old and I want to see which preset, profile, level it can handle. So i created 20MB strip and want to test it... with different combinations..
[20:03:03 CEST] <MarkedOne> So I dont want CRF because in the end I will encode with 2 pass... So i need to test with 2 pass too. But how to target filesize I could make it large enough so 2 pass will go at maximum quality....
[20:05:55 CEST] <bencc> ChocolateArmpits: you told me to wait :)
[20:06:06 CEST] <ChocolateArmpits> bencc, testing something atm
[20:07:18 CEST] <bencc> thanks
[20:08:02 CEST] <ChocolateArmpits> bencc, you can do multiple encodings of a single source by first splitting the input using the split filter into multiple streams and then specifying their parameters using an index postfix i.e. -b:v:1 320k
[20:09:03 CEST] <ChocolateArmpits> between the encoder and the split filter you can insert additional scale filters to adjust for each respective resolution
[20:09:13 CEST] <ChocolateArmpits> bencc, are you familiar with filter_complex ?
[20:09:38 CEST] <bencc> ChocolateArmpits: I don't mind encoding multiple times for now for simplicity
[20:09:54 CEST] <bencc> ChocolateArmpits: but I don't know how to encode each variant
[20:12:06 CEST] <bencc> ChocolateArmpits: for each variant/resolution I want to limit audio bandwidth, video bandwidth and total bitrate
[20:12:34 CEST] <ChocolateArmpits> bencc, if I understand correctly hls stores each variant separately ?
[20:12:45 CEST] <bencc> ChocolateArmpits: and if possible encode as efficient as possible. If the input is 1Mbps 720p, the is no reason to increase the bitrate for the same resolution
[20:13:23 CEST] <bencc> ChocolateArmpits: yes. today it's much simpler. you can have one ts or mp4 file for each variant or multiple chunks
[20:13:56 CEST] <bencc> you have a master playlist file that tells the client about available variants and a playlist per each variant with the list of chunks
[20:14:45 CEST] <ChocolateArmpits> bencc, this is what you most likely need https://trac.ffmpeg.org/wiki/Creating%20multiple%20outputs#Onefilteringinstancepereachoutput
[20:15:40 CEST] <ChocolateArmpits> as I said before, split is used to split the input, each duplicate stream gets filtered and mapped to separate encoding+output instances
[20:16:03 CEST] <bencc> ChocolateArmpits: again, that's not my issue. lets say I only need one variant
[20:16:09 CEST] <bencc> without filter_complex
[20:16:22 CEST] <bencc> I'm trying to limit audio_bandwidth, video_bandwidth and maxbitrate
[20:16:32 CEST] <ChocolateArmpits> yeah
[20:16:37 CEST] <bencc> yeah
[20:19:44 CEST] <MarkedOne> btw how to know audio bitrate if it has only 44khz writen?
[20:19:45 CEST] <ChocolateArmpits> bencc, have you predefined your target rates?
[20:21:08 CEST] <bencc> ChocolateArmpits: yes. this is one example https://pastebin.com/x03W7Wcs
[20:21:43 CEST] <ChocolateArmpits> bencc, and the problem is what exactly?
[20:22:22 CEST] <bencc> ChocolateArmpits: I don't know how to use the limits to encode mp4 with libx264
[20:22:42 CEST] <bencc> this is what I was using https://pastebin.com/WVpEvYWL
[20:23:07 CEST] <bencc> but it uses both -crf and -b:v and JEEB said it's wrong
[20:26:06 CEST] <ChocolateArmpits> bencc, read this for different ways to control the rate http://slhck.info/video/2017/03/01/rate-control.html
[20:26:56 CEST] <bencc> thanks. looks nice
[20:28:37 CEST] <ChocolateArmpits> For internet streaming, vbv is probably most prefered because it's the only real way to balance between buffering and playback.
[20:30:32 CEST] <bencc> ok. I'll try vbv
[20:37:10 CEST] <MarkedOne> Btw what is good aac bitrate?
[20:40:47 CEST] <ChocolateArmpits> MarkedOne, anything above 128kbps
[20:42:54 CEST] <MarkedOne> ChocolateArmpits: should I multiply it by number of channels? Btw what do you reccomend for movie?
[20:45:23 CEST] <furq> if the source is ac3 then just keep that
[20:50:58 CEST] <MarkedOne> hmm thanks
[20:51:35 CEST] <redrabbit> -vcodec libx264 -bufsize 3600k -maxrate 1800k -crf 22
[20:51:53 CEST] <redrabbit> i use theses settings for streaming
[20:53:09 CEST] <redrabbit> i tried other methods but if you are on a limited link (mobile stuff) you cant really afford big bitrate spikes
[20:56:51 CEST] <MarkedOne> Pls.. is bitrate -b:a 128k k here means power of 2 or 10? 1k means 1000 or 1024? Im not sure.. And also it is in Bytes or bits? Probably bits
[20:57:49 CEST] <ChocolateArmpits> MarkedOne, bits, "k" stands for kilobits
[20:58:02 CEST] <ChocolateArmpits> actually, kibibits
[20:58:05 CEST] <ChocolateArmpits> :)
[20:58:14 CEST] <MarkedOne> ChocolateArmpits: oh thanks.. :)
[21:01:50 CEST] <kmax> Hello!
[21:01:57 CEST] <kmax> anyone chatting?
[21:31:50 CEST] <kmax> hello?
[21:36:01 CEST] <kmax> i am looking for some help with ffmpeg
[21:36:16 CEST] <kmax> trying to speed up the creation of m3u8 for HLS streaming
[21:36:36 CEST] <kmax> using clappr player... right now it takes about 15 seconds for the video to start playing
[21:36:45 CEST] <kmax> we need to at least cut that in half
[21:36:57 CEST] <kmax> the chunks are set to 3 seconds each
[21:37:13 CEST] <kmax> i believe clappr has to download 3 of them to start buffering
[21:53:19 CEST] <MarkedOne> Sorry guyz another question.. How to find supported levels for h264 in ffmpeg?
[21:54:44 CEST] <BtbN> ffmpeg supports all of them
[21:55:04 CEST] <MarkedOne> BtbN: Thanks
[21:55:26 CEST] <thebombzen> I'm getting a segfault with zscale's bilinear scaling algorithm, but I don't want to submit a bug report unless it's a bug in libavfilter and not an actual bug in zimg
[21:55:37 CEST] <thebombzen> it occurs when downscaling with zscale set to bilinear
[21:56:14 CEST] <thebombzen> you can reproduct the segfault with: ffmpeg -f lavfi -i testsrc2=s=hd1080 -vf zscale=hd720:f=biliniear -f null -
[21:56:22 CEST] <thebombzen> do you have any tips on figuring out where the bug would be?
[22:00:56 CEST] <kmax> Any other sources of ffmpeg support online anywhere?
[22:01:03 CEST] <thebombzen> the mailing list
[22:01:42 CEST] <thebombzen> see this: https://ffmpeg.org/contact.html
[22:02:32 CEST] <BtbN> kmax, set your keyframe interval properly
[22:23:43 CEST] <MarkedOne> Thank you guyz all for help :)
[22:26:44 CEST] <MarkedOne> Btw what happens when i do 2pass encoding and resolution and bitrate is bigger than preset with level allows?
[22:26:58 CEST] <kmax> @BtbN can you explain more about that?
[22:35:23 CEST] <DHE> kmax: each video file HLS makes starts with a keyframe. you can use the -g setting to specify how often (in frames) keyframes occur
[22:36:01 CEST] <DHE> if each file is 15 seconds of video and runs at 60fps, then that means you have a default of -g 900 and you should bring that down
[22:39:18 CEST] <durandal_1707> thebombzen: use copy before zscale
[22:41:01 CEST] <thebombzen> durandal_1707: ffmpeg -f lavfi -i testsrc2=s=hd1080 -vf copy,zscale=hd720:f=bilinear -f null -
[22:41:03 CEST] <thebombzen> still segfaults
[22:41:36 CEST] <JEEB> ah yea, I've had that kind of stuff too before
[22:41:45 CEST] <JEEB> with lavfi source and zscale
[22:42:04 CEST] <thebombzen> but it's only with f=bilinear
[22:42:07 CEST] <thebombzen> every other algorithm works
[22:42:10 CEST] <JEEB> funky
[22:42:16 CEST] <thebombzen> here's my log. not exciting, but here it is: http://sprunge.us/PjBH
[22:42:18 CEST] <JEEB> I do know that anon32 did some fixes recently
[22:42:30 CEST] <JEEB> so if you haven't pulled recently you might want to re-check
[22:43:25 CEST] <thebombzen> I built ffmpeg this morning
[22:43:36 CEST] <thebombzen> but zimg I have installed from the package manager
[22:44:09 CEST] <JEEB> although I don't know any specifics wrt bilinear. I just know that very recently there were some asm bugs found
[22:44:29 CEST] <thebombzen> it's also not unique to libavfilter input. that is, it segfaults with: ffmpeg -i some_1080p_video_file.mkv -vf zscale=hd720:f=bilinear -f null -
[22:44:37 CEST] <JEEB> right
[22:44:46 CEST] <JEEB> sounds like an issue with zimg (or zscale) then
[22:46:29 CEST] <thebombzen> let's build zimg from master and see what happens
[22:52:54 CEST] <MarkedOne> THank you all for help. Good night.
[22:56:21 CEST] <thebombzen> JEEB: yep, zimg's git master fixed it
[23:13:07 CEST] <jya> hi there. I have a video made of a single video frame
[23:13:22 CEST] <jya> how can I make this video so it's made of the same frame, but multiple times ?
[23:29:31 CEST] <durandal_1707> jya: use stream looop or loop filter
[23:30:51 CEST] <jya> durandal_1707: yeah, i just found that out, but unfortunately; it doesn't help like I had hoped to
[23:31:26 CEST] <durandal_1707> jya: really? how so?
[23:32:24 CEST] <jya> the video (made of a single frame) I have exposes a bug in the AMD H264 dxva decoder
[23:32:33 CEST] <jya> it is decoded as green
[23:33:00 CEST] <redrabbit> ffmpeg -loop 1 -i x.jpg -i x.mp3 -shortest -q 15 -acodec copy out.mp4
[23:33:13 CEST] <redrabbit> i use that to make a vid with a pic + audio
[23:33:22 CEST] <redrabbit> idk if its what you want
[23:33:34 CEST] <jya> I'm trying to make a video that doesn't reproduce that bug; yet satisfy the reasons on why we made that simplistic video in the first place (which is checking if decoding h264 works)
[23:34:00 CEST] <redrabbit> single frame and picture sounds like the same to me
[23:37:00 CEST] <jya> redrabbit: I hadthought the issue was to do wih the fact that this video is made of a single I frame
[23:37:35 CEST] <redrabbit> get a pic out of that frame and try my cmd
[23:37:50 CEST] <redrabbit> idk what you want to acheive exactly
[23:40:57 CEST] <jya> Option loop not found.
[23:41:53 CEST] <durandal_1707> pastebin full command output
[23:45:11 CEST] <redrabbit> i used that same exact command dozens of times no issue
[23:45:38 CEST] <redrabbit> i do that for youtube when i need to post audio content
[23:45:57 CEST] <redrabbit> wasting gogole BW me likey
[23:47:03 CEST] <jya> I typed " ffmpeg.exe -loop 1 -i videotest.mp4 -shortest -q 15 -y test.mp4"
[23:47:21 CEST] <redrabbit> you dont get it lol
[23:47:29 CEST] <jya> that gives me the error "Option loop not found."
[23:47:29 CEST] <redrabbit> a picture
[23:47:41 CEST] <redrabbit> you are supposed to use a picture
[23:47:51 CEST] <jya> i don't have to give it a picutre, i have no picture to give it
[23:47:58 CEST] <redrabbit> cmon
[23:47:59 CEST] <jya> forget it
[23:48:03 CEST] <redrabbit> what is a single frame
[23:48:05 CEST] <redrabbit> its a picture
[23:48:09 CEST] <redrabbit> just extract it
[23:49:25 CEST] <durandal_1707> for video there us stream-loop option
[23:53:08 CEST] <durandal_1707> redrabbit: that would be pointless as he is testing hw decoder for specific codec
[23:53:29 CEST] <redrabbit> ok
[23:54:19 CEST] <jya> well, regardless on the parameter I use to encode, how may frames I put in that video, the output still always crap out with the amd decoder
[23:55:08 CEST] <jya> i guess I'll have to wait for AMD to come up with some ideas on how to encode this video so their cards aren't blacklisted
[23:59:33 CEST] <blap> youtube is really messing with some live streams
[23:59:35 CEST] <blap> [ffmpeg] tls: The TLS connection was non-properly terminated.
[23:59:37 CEST] <blap> [ffmpeg] tls: The specified session has been invalidated for some reason
[00:00:00 CEST] --- Wed Sep 6 2017
More information about the Ffmpeg-devel-irc
mailing list