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

burek burek021 at gmail.com
Fri Mar 29 03:05:02 EET 2019


[00:09:59 CET] <retal> kepstin, i know , but i dont know that command correct usage, i found many tutorials but doest help. Thats way  i am here.
[00:10:06 CET] <retal> faLUCE, hi
[00:10:42 CET] <faLUCE> hello retal
[00:11:02 CET] <retal> faLUCE, how are you ? :)
[00:11:11 CET] <faLUCE> retal: fine thanks :-)
[00:11:26 CET] <retal> great ! :)
[00:13:54 CET] <faLUCE> (I tried avformat_open_input(); sleep(3); avformat_flush(ic);  but buffered data has not been flushed... what's wrong?)
[00:14:58 CET] <retal> faLUCE, i think you remember my problem with compiling CUDA, today i fixed everything and compiled with --enable-cuda --enable-cuvid --enable-cuda-nvcc. Now i dont now wath command shuld i use for resizing scale_npp, cuda_scale or other. What the correct command for GPU resizing?
[00:18:04 CET] <faLUCE> retal: wait
[00:18:25 CET] <retal> :)
[00:23:51 CET] <faLUCE> retal: ok, I found some options in cuviddec.c
[00:24:06 CET] <retal> :)
[00:24:24 CET] <faLUCE> for example, for resizing, you can just use -resize
[00:24:34 CET] <faLUCE> (width)x(height)
[00:25:28 CET] <retal> faLUCE, i tried it works, but you think ins using GPU acceleration ?
[00:26:13 CET] <retal> its
[00:26:14 CET] <faLUCE> retal: once you specify cuda for decoding it should
[00:26:34 CET] <faLUCE> what is the command?
[00:27:26 CET] <retal> ffmpeg -i input  -vf scale=1920:960 -vcodec h264_nvenc -b:v 5M -acodec copy Output.mp4
[00:29:06 CET] <faLUCE> retal: you are not specifying nvidia for decoding
[00:29:11 CET] <faLUCE> retal: look at
[00:29:13 CET] <faLUCE> https://ffmpeg.zeranoe.com/forum/viewtopic.php?t=5211
[00:29:29 CET] <faLUCE> ffmpeg.exe -y -loglevel info -c:v h264_cuvid -hwaccel nvdec -deint adaptive -resize 1920x1080 -i "[myH264_1080i.ts]" -c:v h264_nvenc -cbr true -b:v 5M -c:a aac -b:a 128k "[myresult.mp4]"
[00:29:58 CET] <retal> faLUCE, thank you very much !
[00:30:11 CET] <faLUCE> yw :-)
[00:30:52 CET] <retal> one more question just for knowledge. I compiled with --enable-cuda-nvcc, so next time i can compile without ?
[00:31:18 CET] <faLUCE> what do you mean with "compile"? compile+ configure or compile only?
[00:32:22 CET] <retal> confugue -  /configure --enable-nonfree --enable-nvenc --enable-libx264 --enable-gpl --enable-cuda --enable-cuvid --enable-cuda-nvcc
[00:33:04 CET] <faLUCE> retal: I mean, I don't understand the question. Where do you have to compile again that stuff?
[00:33:29 CET] <furq> retal: nvcc is required for scale_cuda
[00:33:41 CET] <furq> i'm not sure what -resize maps to as an nvdec option but there's no harm in keeping nvcc
[00:34:24 CET] <faLUCE> furq: I checked in cuviddec.c
[00:34:37 CET] <retal> furq, ok, thank you clear :) you are mi angel savior :)
[00:34:41 CET] <faLUCE> furq: there's "resize" option
[00:35:32 CET] <retal> resize and scale in fact doing same job under hood? I think
[00:35:59 CET] <faLUCE> retal: there's not scale inside cuviddec, but I think it's inside some filter
[00:36:00 CET] <furq> i would guess -resize does the same thing as scale_npp but idk
[00:36:20 CET] <furq> either way try scale_cuda as well, it might be faster
[00:36:39 CET] <faLUCE> anyway, in cuviddec there's "resize"
[00:37:06 CET] <retal> Thank you guys!
[00:37:27 CET] <retal> furq, i dont now how use scale_cuda
[00:37:37 CET] <retal> doestn work
[00:37:48 CET] <faLUCE> retal: it's part of the sdk, as I see
[00:38:10 CET] <furq> retal: ffmpeg -h filter=scale_cuda
[00:38:23 CET] <retal> may be i using wrong command
[00:39:14 CET] <faLUCE> retal: then use "w" and "h"
[00:39:53 CET] <faLUCE> -h filter=scale_cuda w width h height
[00:39:56 CET] <faLUCE> somthing so
[00:40:19 CET] <retal> les me try again
[00:43:22 CET] <retal> ffmpeg -i input  -vf scale_cuda=1920:1080 -vcodec h264_nvenc -b:v 5M -acodec copy Output.mp4
[00:43:24 CET] <retal> Impossible to convert between the formats supported by the filter 'graph 0 input from stream 0:0' and the filter 'auto_scaler_0'
[00:43:24 CET] <retal> Error reinitializing filters!
[00:43:25 CET] <retal> Failed to inject frame into filter network: Function not implemented
[00:43:25 CET] <retal> Error while processing the decoded data for stream #0:0
[00:43:26 CET] <retal> Conversion failed!
[00:43:47 CET] <faLUCE> retal: try with "w" and "h"
[00:44:28 CET] <furq> retal: you probably need to use hwaccel for that to work
[00:44:42 CET] <retal> ok
[00:45:34 CET] <faLUCE> retal: did you try with w 1920 h 1080 ?
[00:45:54 CET] <faLUCE> -w 1920 -h 1080, something similar...
[00:49:26 CET] <retal> faLUCE, finaly found !
[00:49:31 CET] <retal> scale_cuda=-1:720   :)
[00:49:36 CET] <BtbN> -2
[00:49:47 CET] <faLUCE> :-)
[00:49:49 CET] <faLUCE> bbl
[00:50:04 CET] <BtbN> You need to either upload your frames to the GPU, or use a decoder that decodes them right there.
[00:50:43 CET] <retal> actualy i found in internet, but dont know what mean -1 in that command
[00:51:06 CET] <furq> it means keep the same aspect ratio and match the other argument
[00:51:19 CET] <retal> BtbN, i enabled GPU decoding  -hwaccel cuvid -c:v h264_cuvid
[00:51:33 CET] <retal> furq, thank you
[00:51:51 CET] <furq> 1280:720 would also work fine
[00:52:44 CET] <retal> furq, yeah thats also works
[00:53:53 CET] <retal> Thank you wery much guys
[00:53:57 CET] <retal> !!!
[01:15:42 CET] <retal> Guys, i made same benchmarks with resizing i f you intrested i can show results
[01:21:26 CET] <faLUCE> retal: I did not even know what is cuda until 30 mins ago
[01:21:27 CET] <faLUCE> ;-)
[01:21:59 CET] <retal> faLUCE, :))))))))))))))))))))))
[01:23:20 CET] <faLUCE> really
[01:24:12 CET] <retal> impossible :)
[01:24:17 CET] <retal> faLUCE, the interesting moment is - with scale_cuda i have 2m24sec, with scale -  2m20sec
[01:25:00 CET] <retal> time ffmpeg  -hwaccel cuvid -c:v h264_cuvid  -i  input  -vf scale_cuda=-1280:720 -vcodec h264_nvenc -b:v 5M -acodec copy Output.mp4
[01:25:00 CET] <retal> real    2m24.928s
[01:25:00 CET] <retal> user    0m37.019s
[01:25:00 CET] <retal> sys     0m35.725s
[01:25:00 CET] <retal> time ffmpeg  -i  input  -vf scale=1280:720 -vcodec h264_nvenc -b:v 5M -acodec copy Output.mp4
[01:25:02 CET] <retal> real    2m20.570s
[01:25:06 CET] <retal> user    6m43.787s
[01:25:08 CET] <retal> sys     0m5.709s
[01:25:52 CET] <retal> I was expecting better result from - scale_cuda
[01:25:55 CET] <retal> :)
[01:26:25 CET] <faLUCE> retal: did you try scale without cuda?
[01:26:48 CET] <faLUCE> and did you try resize?
[01:28:04 CET] <retal> 2 yeras ago i tryed it was very slow
[01:28:06 CET] <retal> :)
[01:28:12 CET] <furq> retal: it's worth noting one of those hit your cpu a lot harder
[01:29:26 CET] <furq> at least on consumer cards, nvenc is much more about not touching your cpu than it is about outpacing your cpu
[01:29:44 CET] Action: cards consume you
[01:29:47 CET] <faLUCE> retal: did you try resize WITH cuda?
[01:30:06 CET] <faLUCE> cards: LOL
[01:30:14 CET] <retal> :)))
[01:30:38 CET] <retal> faLUCE, yes ffmpeg  -hwaccel cuvid -c:v h264_cuvid  -i  input  -vf scale_cuda=-1280:720 -vcodec h264_nvenc -b:v 5M -acodec copy Output.mp4
[01:30:57 CET] <furq> retal: he means -resize
[01:31:35 CET] <retal> furq, sorry i was tihink it same :)
[01:33:36 CET] <retal> how use resize ?
[01:36:02 CET] <faLUCE> retal: try resize with cuda dec
[01:38:26 CET] <retal> ok
[01:42:58 CET] <retal> faLUCE, ffmpeg -c:v h264_cuvid -hwaccel nvdec -resize 1280x720 -i input -vcodec h264_nvenc -b:v 5M -acodec copy Output.mp4
[01:43:08 CET] <retal> real    2m18.897s
[01:43:08 CET] <retal> user    1m15.507s
[01:43:08 CET] <retal> sys     0m11.573s
[01:46:06 CET] <faLUCE> then, much better
[01:47:02 CET] <faLUCE> not so much...
[01:47:04 CET] <faLUCE> 6 secs
[01:48:08 CET] <faLUCE> retal: what is your goal?
[01:51:02 CET] <retal> faLUCE, we need transcoder. We also have transcoder in Intel VCA cards, but i dont happy with them. So i decide use GTX cards for future. Now i just testing wich command works faster ;)
[01:52:44 CET] <retal> https://www.intel.com/content/www/us/en/products/servers/accelerators.html
[01:52:53 CET] <faLUCE> retal: transcode from what to what?
[01:55:30 CET] <retal> faLUCE, specially this server wil transcode different mp4 files with different framesizes and bitrates to 1 format 1920:1080 and bitrate
[01:59:32 CET] <retal> any way, i am happy with Nvidia speed
[02:00:07 CET] <faLUCE> retal: transcode means from one codec to another
[02:00:25 CET] <faLUCE> or to the same codec with different params
[02:00:59 CET] <faLUCE> so what interests you is the encode part
[02:01:10 CET] <faLUCE> not the decode one
[02:01:17 CET] <retal> faLUCE, bitrate and framesize  is not different parameters ? :)
[02:01:45 CET] <faLUCE> yes, but I don't understand why you are interested in decoding, if you have to transcode files
[02:02:59 CET] <retal> faLUCE, i was research fast and right way to transcode :)
[02:03:33 CET] <faLUCE> retal: then you have to look at the ENCODE part, not at the decode
[02:03:48 CET] <faLUCE> I mean, encode is more relevant
[02:04:41 CET] <retal> faLUCE, you right , i was think i can accelerate decode also i will have better result
[02:05:08 CET] <retal> and make life easier for CPU
[02:05:13 CET] <faLUCE> retal: you have to scale from what to what?
[02:06:34 CET] <retal> faLUCE, by mistake i just deleted source file let me test with other file
[02:08:06 CET] <faLUCE> in addition, you are using h264 enc without any control, instead, this is the critical part
[02:12:06 CET] <retal> faLUCE, i you mean cbr, vbr , max bitrate .. i will. Now i am just testing acceleration
[02:13:22 CET] <retal> faLUCE, so, just tryed ffmpeg -c:v h264_cuvid -hwaccel nvdec -resize 1920x1080 -i file -vcodec h264_nvenc -b:v 5M -acodec copy Output.mp4
[02:13:42 CET] <faLUCE> ok but you are resizing from what?
[02:13:51 CET] <retal> 1280x720 to 1920 11080
[02:13:52 CET] <faLUCE> are you upscaling?
[02:14:02 CET] <retal> 1920 1080
[02:14:14 CET] <retal> real    4m52.274s
[02:14:15 CET] <retal> user    2m58.395s
[02:14:15 CET] <retal> sys     0m18.496s
[02:14:28 CET] <faLUCE> did you try x264 ?
[02:14:33 CET] <retal> speed=22.7x
[02:14:58 CET] <faLUCE> much will depend on the h264 presets
[02:15:16 CET] <retal> with x264 will much much slower let me try
[02:15:31 CET] <faLUCE> retal: you have to manage presets
[02:15:42 CET] <retal> no
[02:15:43 CET] <faLUCE> there's even zerolatency
[02:16:00 CET] <faLUCE> with x264 you have to choose a preset
[02:16:30 CET] <faLUCE> note also that speed and cpu are not the same thing for the result
[02:17:25 CET] <faLUCE> what I want to say is that it is useless to do these test if you don't test the encode part firstly
[02:20:30 CET] <retal> faLUCE, ffmpeg -i input  -s 1920:1080 -vcodec libx264 -b:v 5M -acodec copy Output.mp4
[02:20:44 CET] <retal> speed=3.83x    :))))))))))))
[02:21:01 CET] <furq> add -preset superfast
[02:21:11 CET] <furq> that's something like the same quality you'll get from nvenc
[02:21:37 CET] <faLUCE> furq: that is what I want to get :-)
[02:21:45 CET] <faLUCE> I wanted to get
[02:23:12 CET] <retal> furq, speed=9.46x
[02:23:20 CET] <retal> :))
[02:23:30 CET] <faLUCE> retal: now look at the cpu
[02:24:36 CET] <retal> faLUCE, i dont need CPU, i hear fan :))))))
[02:24:47 CET] <faLUCE> ??
[02:25:02 CET] <faLUCE> I mean, make a comparison for the CPU between x264 and nvidia
[02:25:45 CET] <faLUCE> (then you have to check the global power consumption as well)
[02:26:44 CET] <furq> you might want to try -preset slow with nvenc as well
[02:27:54 CET] <faLUCE> but all these tests would not be so relevant if you don't measure the power consumption
[02:28:08 CET] <retal> faLUCE, :)))))  x264 very High CPU ussage, GPU speed is great. I dont care about power usage if i need transcode ~2000 files ;)
[02:28:34 CET] <faLUCE> retal: high cpu with which preset?
[02:29:04 CET] <faLUCE> you should  care about power usage for all these files
[02:29:43 CET] <faLUCE> and which percentage?
[02:30:28 CET] <faLUCE> I mean: if the percentage is not overkill, then you really have to compare power consumption
[02:32:56 CET] <retal> faLUCE, CPU will consume about 90w my GTX -  0%   48C    P2    43W
[02:33:38 CET] <retal> Even if GTX consume 150w its good for me
[02:34:19 CET] <faLUCE> retal: which percentage of cpu  usage ?
[02:34:54 CET] <retal> ~50
[02:35:04 CET] <faLUCE> then it's not so high
[02:35:17 CET] <faLUCE> then why would you prefere the gtx?
[02:35:34 CET] <retal> sofor seed yes
[02:35:43 CET] <faLUCE> ?
[02:42:53 CET] <retal> faLUCE, with CPU i have speed=9x , with GPU speed=23x. Power usage in both cases ~45W , what metod i should prefer ? :)
[02:43:24 CET] <furq> that workload will barely touch the gpu
[02:43:32 CET] <furq> i'd be surprised if it even clocked up
[02:43:48 CET] <faLUCE> retal: did you compare them for the SAME preset?
[02:44:10 CET] <furq> the presets don't map between the two
[02:44:32 CET] <faLUCE> furq: nvidia enc doesn't have presets?
[02:44:39 CET] <furq> it does but they're not the same as x264
[02:44:41 CET] <retal> in GPU case i didnt use preset
[02:44:44 CET] <furq> or they won't give the same quality obviously
[02:44:55 CET] <furq> i think nvenc -preset slow (highest quality) is about as good as x264 -preset superfast
[02:45:00 CET] <furq> but that's just something i read in here ages ago
[02:45:12 CET] <furq> you'd have to do a proper comparison
[02:45:35 CET] <faLUCE> yes, you have to make a proper comparison, I agree
[02:45:50 CET] <faLUCE> the speed doesn't tell you much
[02:46:05 CET] <faLUCE> without a precise context
[02:46:24 CET] <faLUCE> you could start by setting a bitrate
[02:46:28 CET] <faLUCE> (average)
[02:46:43 CET] <furq> if x264 is only using 50% cpu you might want to try running two jobs simultaneously
[02:46:57 CET] <furq> they ought to be a lot closer then
[02:47:03 CET] <faLUCE> then use the preset that produces for both the same filesize
[02:47:11 CET] <faLUCE> and compare the quality and the speed
[02:47:27 CET] <retal> I dont compare visually outputs, tomorrow i will try with different presets. But dont thik they will be much diference, beacuse we are going use slow bitrate ~3mb
[02:47:33 CET] <furq> you can use something libe libvmaf to do automated quality comparison
[02:47:37 CET] <furq> nothing beats eyes though
[02:47:47 CET] <faLUCE> and nothing beats x264
[02:47:48 CET] <faLUCE> :-)
[02:47:54 CET] <furq> that too
[02:48:18 CET] <faLUCE> I'm pretty sure that the x264 result would be muuuuch better than all these commercial products
[02:49:25 CET] <faLUCE> retal: this is not what I intended with bitrate
[02:50:02 CET] <retal> faLUCE, i totaly agree with you about x264 quality
[02:50:06 CET] <faLUCE> retal you have to FORCE the bitrate to be a fixed average value
[02:50:24 CET] <faLUCE> so you can produce two files with more or less the same SIZE
[02:50:32 CET] <faLUCE> then compare the quality
[02:50:59 CET] <retal> faLUCE, ok, it will be intresting. Tomorow i will try
[02:52:11 CET] <retal> faLUCE, thank you so much bro !
[02:52:30 CET] <faLUCE> I always wonder how a small group of closed pepole, in few years can obtain the same quality of a big open source project mantained for years and years
[02:52:39 CET] <faLUCE> it's impossible IMHO
[02:53:28 CET] <retal> :)
[03:06:38 CET] <faLUCE> is avformat_open_input() threaded? I put a big sleep(10) after it and it seems to buffer stuff even with that. Nor it seems I can flush it with avformat_flush()
[03:11:36 CET] <faLUCE> https://stackoverflow.com/questions/53537270/ffmpeg-api-how-to-clear-real-time-buffer   my question is the same of that
[03:11:59 CET] <faLUCE> avformat_open_input() starts reading frame.... and I don't understand how to flush it
[04:00:56 CET] <dongs> hurrr what the fuck
[04:01:03 CET] <dongs> to tune this S3 shit i actually need to know Stream ID
[04:01:06 CET] <dongs> otherwise it doesnt evne lock
[04:01:14 CET] <dongs> and i cant find where the NIT stuff is
[04:01:25 CET] <dongs> JEEB: which NIT was working in your stuff?
[04:02:40 CET] <dongs> trying to tune 8K directly and getting nothing but fuckoff
[04:06:57 CET] <pridkett> cd-audio stereo =  1411 kbps   but how is dsd-audio stereo only be  2747 kbps
[04:07:15 CET] <pridkett> math doesn't add up
[04:07:27 CET] <dongs> its the bits mang
[04:07:29 CET] <dongs> moar bits
[04:08:56 CET] <pridkett> dongs  do you know how to calculate  kbps
[04:09:30 CET] <dongs> of what
[04:09:42 CET] <pridkett> for any uncompressed audio format
[04:09:45 CET] <pridkett> or video format
[04:10:32 CET] <dongs> i guess? uncompressed video is like w*h*bits_per_pixel*framerate
[04:10:53 CET] <dongs> DSD is that wacky 2.8mhz sampled shit right?
[04:11:02 CET] <pridkett> what is "w" and "h"?
[04:11:03 CET] <dongs> since its 1bit then 2847kbps sounds about right
[04:11:05 CET] <dongs> or 27437 or wahtever
[04:11:09 CET] <dongs> width*height
[04:11:10 CET] <pridkett> yes
[04:12:06 CET] <pridkett> you are right  1 x 2847 x 2
[04:12:12 CET] <pridkett> because it's stereo
[04:12:29 CET] <pridkett> and you are right about video too
[04:13:01 CET] <pridkett> but  dsd-audio is stereo only   2747 kbps
[04:14:16 CET] <pridkett> explain how that is possible
[04:15:01 CET] <another> *popcorn*
[04:15:09 CET] <pridkett> another explain
[04:15:34 CET] <dongs> i honestly dont give a shit cuz i listen to stuff through shitty bluetooth headphones
[04:15:56 CET] <pridkett> dongs so you don't care about video/audio quality at all?
[04:16:12 CET] <dongs> correct
[04:16:29 CET] <pridkett> dongs start caring then
[04:18:31 CET] <another> pcm: 16 bit * 44100 Hz * 2 channels
[04:18:44 CET] <pridkett> cd-audio stereo =  1411 kbps
[04:18:53 CET] <pridkett> math adds up for that one
[04:19:07 CET] <pridkett> but not for dsd-audio
[04:20:29 CET] <pridkett> DSD-audio 1 bit x 2.8 mhz x 2 channels
[04:22:47 CET] <dongs> then you have a mono file
[04:22:54 CET] <pridkett> no, i don't
[04:22:56 CET] <pridkett> i have stereo
[04:22:58 CET] <dongs> how do you know
[04:23:43 CET] <pridkett>  Duration: 00:05:06.48, bitrate: 2692 kb/s
[04:23:43 CET] <pridkett>     Stream #0:0: Audio: dst (DST  / 0x20545344), 352800 Hz, stereo, flt
[04:24:08 CET] <pridkett> wait, that's show as DST
[04:24:14 CET] <pridkett> which is compressed
[04:25:51 CET] <pridkett> dongs sorry it was compressed, that's why
[04:26:09 CET] <dongs> yep
[04:26:34 CET] <pridkett> if album has 10 songs  they compressed 5 songs but didn't compress 5
[04:26:41 CET] <pridkett> who is stupid
[04:27:06 CET] <dongs> loldongs.
[04:27:15 CET] <dongs> how the fuck do you even listen to this over9 000 bit DSD stuff
[04:27:18 CET] <dongs> does it sound any better
[04:27:32 CET] <pridkett> it's not over 9000
[04:27:49 CET] <pridkett> it's 5 645 kb/s
[04:27:52 CET] <dongs> i thought it was 32767 bits
[04:28:00 CET] <pridkett> 5645 kbps
[04:28:43 CET] <pridkett> oh , you said 9000 bps
[04:28:50 CET] <pridkett> even cd-audio is over 9000 bps
[04:29:33 CET] <dongs> damnit where the fuck is this TLV-NIT table
[04:30:02 CET] <pridkett> dongs what is that?
[04:30:51 CET] <dongs> stuff im working on
[04:31:29 CET] <pridkett> dongs who are the nice ffmpeg devs in here? and who are the mean ffmpeg devs
[04:31:44 CET] <dongs> they're all pretty mean if you start talking shit about opensource not working
[04:31:51 CET] <dongs> like, t hey can't take criticism
[04:31:54 CET] <dongs> even if its constructive
[04:31:55 CET] <pridkett> i see
[04:32:10 CET] <pridkett> i am sure there are few that are nice
[04:32:14 CET] <dongs> but thats literally any opensource project
[04:32:27 CET] <pridkett> dongs  everybody in #opus is nice
[04:32:40 CET] <pridkett> which is not easy to find
[04:33:19 CET] <pridkett> dongs what kind of contructive criticism did you give?
[04:33:25 CET] <dongs> they have to be nice, or else their dead audio format is gonna be even more dead
[04:33:39 CET] <pridkett> dongs opus is dominating in VOIP space
[04:33:59 CET] Action: dongs laughs in G.729
[04:34:12 CET] <pridkett> dongs and youtube starting to use opus too
[04:34:18 CET] <pridkett> what is G.729?
[04:34:18 CET] <dongs> man that sucks
[04:34:30 CET] <dongs> sometimes i use youtube-dl to grab jsut audio part of youtube stuff to listen to in car/whatever
[04:34:44 CET] <dongs> it would really suck if opus was the only optionm
[04:34:50 CET] <pridkett> and what format does it use when you do youtube-dl
[04:35:02 CET] <dongs> i generally pick aac
[04:35:07 CET] <pridkett> i see
[04:35:18 CET] <pridkett> youtube audio quality is pretty bad though
[04:35:27 CET] <pridkett> GRMrGecko welcome
[04:35:36 CET] <dongs> > pretty bad
[04:36:36 CET] <pridkett> the only time i downloaded song from youtube is this:  https://www.youtube.com/watch?v=6kYco2Zt-cM
[04:36:46 CET] <pridkett> because i have no choice
[04:37:26 CET] <dongs> g729 is audio codec for voip. or at least was liek 20 years ago
[04:37:32 CET] <dongs> no idea what newfag shit is now
[04:37:46 CET] <dongs> i still use key system and voip to isdn converter
[04:37:51 CET] <pridkett> higher quality VOIP likes to use opus
[04:38:08 CET] <pridkett> i don't know about lower quality VOIP
[04:42:12 CET] <pridkett> dongs i see g711u
[04:42:18 CET] <pridkett> for my voip
[04:42:29 CET] <dongs> thas jsut uncompressed pcm
[04:42:33 CET] <dongs> 8khz/mono or wahtevef
[04:42:38 CET] <pridkett> it is?
[04:42:44 CET] <pridkett> let me see all my choices
[04:44:13 CET] <pridkett> g711u/g711a/g729a/g723/g726-40/g726-16  : what is the best one from here
[04:44:43 CET] <dongs> still all same shit
[04:44:46 CET] <dongs> 8khz/mono
[04:45:06 CET] <dongs> 711u is just 64kbit so anything else is below that with various terms of compression
[04:45:38 CET] <dongs> 711 is 8bit samples so it takes 16bits and trims them in some math-y way to make it sound slightly better htan just truncating 16bit to 8
[04:45:54 CET] <dongs> all the other ones use some sorta lossy compression
[04:46:27 CET] <pridkett> how do you know so much about VOIP compression
[04:46:28 CET] <another> 711a/u is alaw/ulaw
[04:46:42 CET] <dongs> another: thats the 'mathy way' part
[04:46:54 CET] <dongs> of making 16bit audio samples into 8
[04:46:55 CET] <pridkett> another what is alw/ulaw  mean though
[04:47:11 CET] <dongs> how it converts 16bit audio samples into 8bits
[04:47:13 CET] <another> wikipedia has more one that
[04:48:06 CET] <another> basically it's non-linear quantization
[04:48:23 CET] <another> so that human voice sound better
[04:50:13 CET] <pridkett>  g711u/g711a/g729a/g723/g726-40/g726-16  : what is the best one from here
[04:55:57 CET] <dongs> any of the 711s
[04:56:07 CET] <dongs> like i said, anything else is compressed (more than 711
[04:56:54 CET] <pridkett> okay
[04:58:05 CET] <pridkett> dongs why did you type:   dongs laughs in G.729   when i mentioned opus
[04:59:45 CET] <dongs> becase its superior closed source payware license-needing voip codec
[05:00:00 CET] <dongs> where opus is unmanaged opensource maintained by hippies
[05:00:58 CET] <pridkett> so you think g729 is better than opus ?
[05:01:48 CET] <dongs> no, im trolling
[05:02:04 CET] <dongs> but even if opus was technically more superior, the fact that nothing supports it makes that point moot
[05:02:13 CET] <dongs> like, flac is better than aac/mp3/wahtever
[05:02:17 CET] <dongs> but who cares if nothing plays flac
[05:02:31 CET] <pridkett> my computer plays flac fine
[05:02:35 CET] <dongs> mine doesn't
[05:02:55 CET] <c_14> what doesn't play opus?
[05:02:57 CET] <pridkett> ffplay plays flac fine
[05:03:14 CET] <c_14> everything I have plays opus just fine
[05:03:25 CET] <dongs> i can't say i have a single opus audio file
[05:03:26 CET] <c_14> though for some things you might have to throw it in mkv/webm
[05:03:35 CET] <dongs> or even seen one
[05:03:42 CET] <dongs> same goes for flac since i tend to avoid weird shit
[05:04:10 CET] <dongs> JEEB: beep, im stuck here.
[05:04:27 CET] <another> stuck in an argument? :D
[05:04:43 CET] <another> hey c_14
[05:05:29 CET] <c_14> hey hey
[05:06:15 CET] <another> gonna get a DOSE of SLEEP soon?
[05:06:23 CET] <c_14> just woke up
[05:07:20 CET] <fling> How to change autocrop to allow cropping borders of any color https://github.com/mpv-player/mpv/blob/master/TOOLS/lua/autocrop.lua
[05:07:27 CET] <fling> eg containing logos or anything
[05:07:44 CET] <fling> Like cropping non-moving parts on the sides of the video :>
[05:09:58 CET] <c_14> cropdetect only does black afaik
[05:10:08 CET] <c_14> you'd have to patch it to do anything else
[05:11:19 CET] <fling> hmm hmmm
[05:11:27 CET] <fling> Is not there anotheng tool?
[05:15:48 CET] <c_14> not that I know of
[05:19:51 CET] <pridkett> c_14 are you one of the top ffmpeg dev?
[05:19:57 CET] <pridkett> fling are you one of the top ffmpeg dev?
[05:21:03 CET] <c_14> nope
[05:21:08 CET] <fling> pridkett: no, what is your question?
[05:21:18 CET] <pridkett> who are the top ffmpeg dev
[05:21:40 CET] <pridkett> i would like to know the hierarchy
[05:23:31 CET] <pridkett> no anwer?
[05:43:28 CET] <another> i'm sure you can figure it out by looking at the source
[06:05:12 CET] <pridkett> another i only have the binary
[06:05:15 CET] <pridkett> ffmpeg.exe
[06:26:47 CET] <dongs> ok finally got 8k capture working.
[06:27:12 CET] <dongs> tlv_stream_id was listed in one of the TRs
[06:27:28 CET] <dongs> i wrote parser for TLV-NIT but i see no packets with it
[06:27:33 CET] <dongs> or at least not where im looking
[06:29:20 CET] <pridkett> dongs you have ffmpeg.exe ?
[06:29:31 CET] <dongs> who doesn't
[06:29:59 CET] <pridkett> people who don't use windows
[06:30:16 CET] <dongs> im sure those are far and between
[06:30:24 CET] <dongs> considering how windows has like 99% desktop market share
[06:30:38 CET] <dongs> and the remaining 1% are probly mac idiots or statistical noise
[06:30:42 CET] <pridkett> yup, windows is best OS for desktop
[06:30:51 CET] <pridkett> but windows mobile is horrible
[06:30:56 CET] <pridkett> mobile OS
[06:31:03 CET] <pridkett> android is way way better
[06:34:07 CET] <dongs> lol yeah im sure if you put it this way
[06:34:36 CET] <dongs> android is undisputably garbage tho, but compared to "competition"
[06:35:08 CET] <pridkett> huh?
[06:35:18 CET] <pridkett> android is best mobileOS right now
[06:35:27 CET] <dongs> sure, and its still garbage
[06:35:32 CET] <dongs> beacuse everythign else is much, much worse
[06:35:40 CET] <pridkett> then it's not garbage
[06:35:43 CET] <dongs> no
[06:35:53 CET] <dongs> it most definitely is
[06:35:57 CET] <pridkett> what does android has to improve to satisfy you?
[06:36:32 CET] <pridkett> what makes android/windows best OS  is  it doesn't have like 20 different distro/variation
[06:36:50 CET] <dongs> 1) stop using lunix 2) stop requiring 4gb ram to open one app 3) stop using java 4) stop lazy ass coders who write apps from (2) 5) stop having 9000 different variants of the shit
[06:36:53 CET] <dongs> lol wat
[06:37:02 CET] <dongs> assdroid is even more fragmented than all the lunix distros
[06:37:08 CET] <dongs> every retarded vendor has their own shit
[06:37:29 CET] <pridkett> lunix? you mean linux?
[06:37:58 CET] <pridkett> true, every vendor has their own thing that they installl, i hate that
[06:45:21 CET] <pridkett> dongs i like your honesty
[06:45:29 CET] <pridkett> dongs we need more people like you
[06:46:30 CET] <pridkett> i think java is the slowest language; is that why you hate java
[06:52:26 CET] <dongs> (4) is also a huge problem
[06:52:35 CET] <dongs> typical cashgrab app these days is like 50megs instaled
[06:52:41 CET] <dongs> because its written in electron or some otehr abortion
[06:53:07 CET] <dongs> where you ahve one shitty hipster interpreted language being ran on top of some virtual machine to prevent hacking/cheating and which is then ran again on top of java
[06:53:28 CET] <dongs> by the time you're done, you've got an app using a gig of memory to display some simple shit on screen
[06:56:29 CET] <pridkett> i see, so too many apps are ram hungry
[06:56:40 CET] <pridkett> what about  cpu?  are they CPU hungry too?
[06:58:32 CET] <pridkett> fling do you agree with dongs
[06:59:00 CET] <pridkett> dongs busted: you are using irssi v0.8.19
[06:59:05 CET] <pridkett> what is that about?
[07:05:46 CET] <fling> pridkett: about what?
[07:06:14 CET] <pridkett> fling about dongs talked about  in last 2 hours
[07:06:22 CET] <pridkett> or 1 hour
[07:06:32 CET] <fling> I'm not going to read the log :P
[07:06:52 CET] <pridkett> it's only few text
[07:07:02 CET] <pridkett> nobody else was typing
[07:07:06 CET] <fling> oh ok
[07:07:11 CET] <fling> it is not lunix&
[07:07:20 CET] <fling> Stop using linux! try free software
[07:09:15 CET] <fling> pridkett: look into postmarketos as an android replacement. It is not fragmented and intended to be more like a traditional gnu distro.
[07:09:36 CET] <fling> Also it has very little storage (and probably ram) footprint.
[07:10:14 CET] <fling> pridkett: linux-libre is here to replace linux
[07:10:29 CET] <pridkett> linux-libre?
[07:10:31 CET] <pridkett> what is that
[07:10:39 CET] <fling> Why are you asking things like this in #ffmpeg anyway? :P
[07:11:08 CET] <pridkett> because dongs brought it up
[07:11:20 CET] <fling> linux-libre is a kernel derived from linux. All the blobs are dropped, all the code is patched to not allow loading non-free firmware.
[07:12:02 CET] <pridkett> by blobs? do you mean "bloat"?
[07:12:36 CET] <fling> No, operational binaries embedded in the source code.
[07:13:00 CET] <pridkett> can linux-libre  fit on  a 700M  cd?
[07:13:13 CET] <pridkett> because linux has become bloated
[07:13:23 CET] <fling> pridkett: you are probably talkinga bout gnu.
[07:13:55 CET] <pridkett> hard to find linux distro that can fit on a  700M cd
[07:13:58 CET] <pridkett> these days
[07:14:10 CET] <fling> pridkett: https://www.gnu.org/philosophy/words-to-avoid.html#Linux
[07:16:29 CET] <fling> pridkett: I'm using gentoo on my hosts and I'm running different apps in tiny lxd containers.
[07:17:34 CET] <fling> pridkett: look at the size column https://bpaste.net/show/033e77aab9dd
[07:17:46 CET] <fling> pridkett: alpine gnu/linux is really small.
[07:22:06 CET] <fling> pridkett: you could start with a trisquel livecd to check if it suits your needs.
[07:22:29 CET] <Kuukunen> it's called linux tho :V
[07:22:47 CET] <pridkett> fling  is that  linux-libre ?
[07:23:39 CET] <fling> pridkett: https://www.fsfla.org/ikiwiki/selibre/linux-libre/
[07:23:46 CET] <Kuukunen> https://alpinelinux.org <- Alpine Linux!
[07:23:54 CET] <fling> Kuukunen: https://www.gnu.org/philosophy/words-to-avoid.html#Linux
[07:24:05 CET] <Kuukunen> they're wrong tho
[07:24:21 CET] <fling> Kuukunen: yes
[07:24:46 CET] <Kuukunen> I'm glad we agree gnu is wrong!
[07:24:50 CET] <fling> haha
[07:25:05 CET] <fling> or should it be busybox/linux? :P
[07:25:14 CET] <fling> Kuukunen: ask at #fsf and/or #gnu
[07:26:48 CET] <Kuukunen> I can assume where their opinion lies, but Alpine is clearly called "Alpine Linux"
[07:27:28 CET] <fling> Kuukunen: do you understand what the linux is?
[07:27:44 CET] <pridkett> linux is kernel
[07:28:01 CET] <Kuukunen> yea, but also used as nane for whole distros :P
[07:28:07 CET] <Kuukunen> name*
[07:28:15 CET] <fling> Kuukunen: this is the problem.
[07:28:17 CET] <dongs> the fact there are more than 1 "distro" means lunix has already failed
[07:28:22 CET] <dongs> instead of making one thing that isn't shit
[07:28:29 CET] <dongs> there are 9000 split groups making diffefent shit
[07:28:43 CET] <Kuukunen> dongs: but that's also the reason why it has succeeded
[07:28:55 CET] <dongs> your definiteion of "success" must be wildly different from mine
[07:29:20 CET] <Kuukunen> you wouldn't have linux in bazillion places if it was tightly controlled single distro
[07:29:40 CET] <dongs> i don't want it in any of those places, believe me
[07:29:42 CET] <fling> if linux is a kernel then maybe you should start naming distros after OS instead?
[07:30:18 CET] <fling> There is "gentoo linux" for example and linux is not even shipped by the default in stage3 which you are using to install it.
[07:30:46 CET] <Kuukunen> "linux" is shorter than GNU/Linux/X
[07:30:52 CET] <fling> And gentoo supports running with different kernels like freebsd's one and can also run in prefix on different oses using their kernel
[07:30:56 CET] <fling> Even on windows.
[07:31:14 CET] <Kuukunen> and gnu has already pretty much lost the war on naming, most people call the whole OS Linux
[07:31:27 CET] <fling> so it would be wiser to call it 'gentoo gnu' or just gentoo but noone cares.
[07:31:37 CET] <Kuukunen> exactly :P
[07:32:11 CET] <fling> A lot of people call everything except (windows and android) as linux or even ubuntu
[07:32:25 CET] <dongs> gross.
[07:32:47 CET] <Kuukunen> https://en.wikipedia.org/wiki/Linux
[07:32:51 CET] <fling> The page is here for a reason https://www.gnu.org/philosophy/words-to-avoid.html#Linux
[07:33:10 CET] <Kuukunen> yea, but it's not really useful
[07:33:45 CET] <fling> You could help improving the situation if you want ;P
[07:34:30 CET] <Kuukunen> I'm trying! to unite everyone under one banner and call it just Linux!
[07:34:56 CET] <fling> This channel is hilarious!!
[07:35:11 CET] <fling> Can we return to the topic?
[07:35:55 CET] <fling> Which branch to use if I'm going to try implementing switches for avoptions for v4l2 input devices?
[07:36:34 CET] <dongs> huh, that's weird. stuff on NDxx left-polarized transponders still uses 8PSK not 16APSK
[07:36:37 CET] <dongs> and bitrate is still higher
[07:37:23 CET] <pridkett> dongs you are busted
[07:44:14 CET] <pridkett> <another> i'm sure you can figure it out by looking at the source:  i am more interested in irc name.  i am guessing that will show their real name
[07:44:56 CET] <pridkett> i am interested in who are the top ffmpeg dev
[07:45:44 CET] <Kuukunen> (as a sidenote: lol)
[07:47:06 CET] <pridkett> Kuukunen do you know?
[07:47:37 CET] <dongs> the amount of people that come in here just to troll is amazing
[07:47:44 CET] <dongs> there was asnother guy who had nothing but "waht if" questions that made no sense
[07:47:49 CET] <dongs> like a week or two ago
[07:48:04 CET] <dongs> pridkett: what are you trying t o achieve
[07:48:12 CET] <dongs> will you be using ffmpeg in your work/life y/n/m
[07:48:27 CET] <pridkett> dongs yes
[07:48:53 CET] <pridkett> dongs who is trolling?
[07:49:00 CET] <dongs> you, i think
[07:49:13 CET] <pridkett> i don't understand? what am i doing?
[07:51:53 CET] <pridkett> dongs  i bet a lot of people use ffmpeg   even by proxy
[07:52:44 CET] <dongs> i dont like this kind of linux-like "usabilitiy studies"
[07:53:05 CET] <dongs> "it might be in that dudes router, so he's using lunix"
[07:53:16 CET] <dongs> no, he's not. and he probably hates teh shit out of that router for being slow and shit
[07:53:32 CET] <pridkett> dongs you are busted
[07:53:42 CET] <pridkett> you are using irssi
[07:53:43 CET] <dongs> the fuck you talking about, youi repeated that sentencel ike 3 times already
[07:53:45 CET] <dongs> and it still makes no sense
[07:53:59 CET] <pridkett> what kind of linux hater uses irssi
[07:54:15 CET] <fling> me
[07:54:40 CET] <pridkett> fling that makes no sense
[07:54:57 CET] <fling> I'm using irssi. I hate linux, I hate computers, I hate ffmpeg running things in single thread.
[07:55:16 CET] <pridkett> linux haters should be using mirc
[07:55:26 CET] <pridkett> like me
[07:55:28 CET] <dongs> i fucking hate android and yet i still use it
[07:55:32 CET] <fling> but mirc is a blob ;P
[07:55:48 CET] <fling> And I'm not using gui.
[07:56:13 CET] <pridkett> what kind of 2019 person doesn't use GUI these days
[07:57:03 CET] <pridkett> dongs that's because  there is nothing better than android (like you said earlier: so you have an excuse)
[07:57:18 CET] <fling> This is ffmpeg support channel. Can you please stop talking about all kinds of things? :P My questions are getting lost in the flood&
[07:57:36 CET] <pridkett> dongs,   but as far as using irssi, you have no excuse
[07:58:02 CET] <pridkett> fling sorry, but i think this is important
[07:58:17 CET] <pridkett> fling feel free to repeat your question
[07:58:30 CET] <fling> /query him or talk at #gnu and/or ##linux ?
[07:58:56 CET] <pridkett> or repeat your question many times so it doesn't get losst: that's what i do
[08:11:11 CET] <pink_mist> pridkett: and that is fucking annoying. STOP doing that.
[08:11:21 CET] <pridkett> pink_mist doing what?
[08:11:39 CET] <pink_mist> jesus christ, do you have the brain of an amoeba?
[08:11:56 CET] <pink_mist> I was responding to your last sentence
[08:12:23 CET] <pridkett> oh, but it works
[08:12:33 CET] <pridkett> trying to help out my fellow fling
[08:12:56 CET] <pink_mist> you're trying to make him an annoying cunt like yourself
[08:13:04 CET] <pink_mist> that's not what I'd call "helping"
[08:13:29 CET] <pridkett> wow, those are harsh words
[08:13:49 CET] <pink_mist> you're right, they're probably a bit too harsh, so I apologise
[08:14:04 CET] <pridkett> who is "they"?
[08:14:09 CET] <pink_mist> and I guess I should also leave this channel for a while, give myself a timeout
[08:14:16 CET] <pink_mist> ... never mind
[08:14:35 CET] <pink_mist> your last line makes me reaffirm my words again
[08:14:37 CET] <pink_mist> holy fuck
[08:14:39 CET] <pridkett> pink_mist or just calm, don't get irc/freenode affect you too much
[08:15:13 CET] <pink_mist> I'll just /ignore you, because there's no way to hold any kind of conversation with you since you don't seem to grasp language
[10:03:26 CET] <another> pink_mist: behold the nick change ;)
[11:34:07 CET] <AhirPK> hi, i am trying to make c application using show_volume filter
[11:34:07 CET] <AhirPK> but when I push video frames and then pull from filter graph it returns AVERROR(EAGAIN) [no frames in buffer] everytime and when i pull audio frames from filter graph and convert it to jpg then it gives me output with video background like i want
[11:34:07 CET] <AhirPK> but i want output in udp mutlicast stream so its not giving output in udp
[11:35:16 CET] <AhirPK> filter graph: v
[11:35:18 CET] <AhirPK> filter graph: https://pastebin.com/CQvcC6Nh
[11:36:00 CET] <AhirPK> c code: https://www.dropbox.com/s/e6ed0ubfm759hpd/main.c?dl=0
[11:37:31 CET] <AhirPK> can anyone help me to figure out the problem?
[11:37:33 CET] <AhirPK> thank you
[12:35:45 CET] <faLUCE> is avformat_open_input() threaded? I put a big sleep(10) after it and it seems to buffer stuff even with that. Nor it seems I can flush it with avformat_flush()
[12:50:17 CET] <pk08> faLUCE: no, avformat_open_input() not threaded
[12:51:02 CET] <pk08> i need almost realtime output so i dont want to feed buffer
[12:51:31 CET] <pk08> and i tried avformat_flush() but it didnt work
[12:52:35 CET] <pk08> and one more thing, it returns AVERROR(EAGAIN) [no frames in buffer] every time when i pull video frame from filter graph
[13:12:44 CET] <barg> I have a 3GP file MPEG-4(AVC,AAC) I want to convert it to mp4. Is this right/good ffmpeg -i input.3gp -vcodec libx264 -acodec copy output.mp4 ?
[13:14:41 CET] <DHE> if you just want to convert the container, -c copy is usually all you need. or do you actually want to change the video encoding parameters?
[13:15:05 CET] <barg> okay, I guess just -c copy then. Thanks
[13:15:37 CET] <DHE> by specifying -vcodec libx264 you're saying you wan to have x264 transcode it, even if it's already in h264 format
[13:17:12 CET] <barg> hmm, the 3gp file is quite big like 43MB and gets much smaller like 7MB when I do -vcodec libx264
[13:18:56 CET] <DHE> sure, but I suspect you're losing a lot of image quality there since you're getting transcode defaults which are fixed values
[13:28:05 CET] <faLUCE> pk08: I don't understand why it's not possible to flush it after opening with that function
[13:31:38 CET] <faLUCE> pk08: of course the muxer can be opened with avformat_alloc_output_context2() and custom I/O, but I would like to see if I can reduce the latency of ffplay, which uses avformat_open_input()
[13:33:54 CET] <ammen99_> Hello guys, I am developing a simple recording application and I use ffmpeg for encoding. However, in some setups  there is a crash (bt can be found here: https://github.com/ammen99/wf-recorder/issues/13). Have any of you had similar issues or any ideas what I might be doing wrong?
[13:34:13 CET] <dongs> > vaapi haha
[13:34:18 CET] <dongs> found your problem
[13:40:16 CET] <ammen99_> dongs: it actually works on at least 4 different setups :)
[16:10:32 CET] <aboxer_> if ffprobe does not mention that a video stream is progressive, does this mean it is interlaced ?
[16:11:44 CET] <DHE> ffprobe $INPUT_FILE -show_frames | grep interlace
[16:11:52 CET] <DHE> you'll want to CTRL+C it at some point
[16:12:42 CET] <aboxer_> DHE thanks!
[16:14:21 CET] <aboxer_> DHE: interlaced_frame=0 means progressive ?
[16:14:34 CET] <aboxer_> and =1 is interlaced ?
[17:52:40 CET] <Corin-EU> If anybody has administration privileges on the FFMPEG web site front page, please note that the big green DOWNLOAD button is linked to the old version v4.1 and not the latest version v4.1.2 despite the label on the button.  Thank you for your attention.
[17:55:51 CET] <furq> even worse, it's using bz2 in 2019
[18:01:26 CET] <Corin-EU> furq: on the actual releases directory listing page "http://ffmpeg.org/releases/" there are in fact gz, bz2, and xz archives of the latest versions
[18:02:07 CET] <JEEB> Corin-EU: there's a patch to fix that on the ml
[18:02:15 CET] <JEEB> so prolly will get fixed soon
[18:02:47 CET] <Corin-EU> JEEB: okay, so long as somebody is aware about it.
[18:03:24 CET] <Corin-EU> Just does not look good for ffmpeg if people use the convenient big green button and then find it is an old version.
[18:06:40 CET] <Corin-EU> Be seeing you .......
[19:52:47 CET] <pkeroulas_> hello, I'm using libx264 for a streaming application, no file transcoding. The passlogfile is getting really large after a while (10GB/day) and eventually ffmpeg will fail "error: ratecontrol_init: can't open stats file". Is there any way to get rid of it?
[19:53:15 CET] <JEEB> why are you even using multipass encoding?
[19:53:19 CET] <JEEB> just don't set -pass X
[19:53:37 CET] <JEEB> since you're never going to go over the stream input again
[19:53:54 CET] <JEEB> which is for what the pass file is for
[20:00:46 CET] <pkeroulas_> JEEB, you're right, I don't know why but I thought -pass was mandatory...
[20:01:01 CET] <JEEB> nope
[20:01:05 CET] <pkeroulas_> thanks
[20:01:07 CET] <JEEB> specifically utilized for multipass encoding
[22:31:13 CET] <faLUCE> is there a way to know if output is available before calling av_read_frame() ?
[22:31:26 CET] <faLUCE> (so I can have it non-blocking)
[22:49:01 CET] <kepstin> faLUCE: no. I suggest using threads instead.
[22:52:18 CET] <faLUCE> kepstin: I was thinking about  while (avio_read(s->pb, buf, 100) >= 0) as a way to flush the buffer
[22:52:52 CET] <kepstin> well, there might be some configurations where the underlying io can run in non-blocking mode, and then av_read_frame() will return AVERROR(EAGAIN) rather than a packet.
[22:53:01 CET] <kepstin> not sure exactly what makes that occur
[22:54:29 CET] <faLUCE> kepstin: already checked that, it seems that non blocking is not allowed for files and lot of other stuff
[22:54:48 CET] <faLUCE> then I was thinking about flushing the buffer in the way just described
[22:55:16 CET] <kepstin> yeah, that's probably down to whether the os provides interfaces for it. linux doesn't have non-blocking file io at the kernel level, for example. (it's basically all simulated with threads)
[22:56:03 CET] <kepstin> I'm not sure what you'rd doing, flushing the buffer seems like the opposite of checking if you could read a packet?
[22:56:30 CET] <kepstin> if you flush the buffer, then you lose data, so it's gonna be corrupt input or have to resync, so it'll block longer...
[22:56:37 CET] <faLUCE> kepstin: my goal is to flush the buffer and loose data
[22:56:49 CET] <faLUCE> and I really don't know if is there a way to do that
[22:56:57 CET] <kepstin> why do you want to do that?
[22:57:22 CET] <faLUCE> kepstin: because I'm trying to patch ffplay. It buffers stuff before demuxing packets
[22:57:33 CET] <faLUCE> even with -fflags nobuffer
[22:57:58 CET] <faLUCE> kepstin: this because avformat_open_input() doesn't return immediatly
[22:58:02 CET] <faLUCE> then it buffers stuff
[22:58:48 CET] <kepstin> ah, so your problem specifically is that you want to discard the data buffered during probing so you can "catch up" to realtime?
[22:59:01 CET] <faLUCE> kepstin: yes, perfect
[22:59:21 CET] <faLUCE> kepstin: with custom avio I can avoid that
[22:59:26 CET] <kepstin> solution is to just call av_read_frame as fast as possible until it starts blocking, i guess :/
[22:59:40 CET] <faLUCE> kepstin: not possible
[23:01:14 CET] <faLUCE> kepstin: the weird thing is that  avformat_flush() doesn't have any effect
[23:03:55 CET] <kepstin> the docs for avformat_flush have a note that might help you there
[23:05:55 CET] <faLUCE> kepstin: I called avio_flush as well
[23:05:58 CET] <faLUCE> no effect
[23:08:16 CET] <faLUCE> it's very strange that there's not a way to flush this stuff
[00:00:00 CET] --- Fri Mar 29 2019



More information about the Ffmpeg-devel-irc mailing list