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

burek burek021 at gmail.com
Tue Nov 13 03:05:04 EET 2018

[01:14:07 CET] <cone-065> ffmpeg 03Andreas Rheinhardt 07master:ee47ac97d793: cbs_h2645: Improve performance of writing slices
[01:26:37 CET] <philipl> BtbN: do you think it's ok as a single change or should break out the updates for each codec/filter?
[01:56:27 CET] <iive> if you do that, would it help bisect or would it make it slower?
[02:23:44 CET] <philipl> I think it makes little difference. The most likely problem is I goof one of the codecs/filters and it segfaults. You'd know which change to look that either way.
[09:42:27 CET] <cone-674> ffmpeg 03Paul B Mahol 07master:a09411a0ee02: avfilter/af_afftfilt: calculate all channels FFT values upfront
[09:42:28 CET] <cone-674> ffmpeg 03Paul B Mahol 07master:0f2cfa3d809b: avfilter/af_headphone: do not leak input frames on error
[09:46:00 CET] <cone-674> ffmpeg 03Paul B Mahol 07master:26772b789b95: avcodec/tiff: add initial bayer and sub image support
[09:54:13 CET] <durandal_1707> no reviewers - dead project
[10:28:43 CET] <dualz> so I have a filter that passes through a video and an audio input 2->2. I am using activate(). My question is there a good guide on syncing audio and video? Looking at my activate callback does it look like the frames are going to get out of sync? https://gist.github.com/ryanmarin/86808a7ea2eccd8117f7855dfdf412e9
[10:29:40 CET] <durandal_1707> it will get out of sync if you do not look at pts
[10:31:48 CET] <dualz> what am i supposed to do after I look at them
[10:33:48 CET] <durandal_1707> depending on inlink and outlink timebase change pts, but synchronization is done via pts, so i fail to see what you want to do with that filte
[10:33:51 CET] <durandal_1707> *filter
[10:39:09 CET] <dualz> the filter takes in a video and an audio input (some constant stream such as nullsrc), when it starts it simply passes through the input to the output. Then it has a process_command for opening a file, while the file is open it passes on it's av frames to the output instead of passing through the input. Once that file EOFs it falls back to passing through the inputs
[10:39:19 CET] <BtbN> philipl, seems fine to me as one change, but no strong opinion there
[10:41:19 CET] <durandal_1707> dualz: then you will need to always change frame pts, if you want to pts appear monotonous(no gaps) and increasing in output
[10:43:44 CET] <dualz> is there any filter I can look at that does similarly to what I need?
[10:45:22 CET] <cone-674> ffmpeg 03Steven Liu 07master:43cc2e39c009: avformat/hlsenc: check dirname and fix vtt problem
[10:45:29 CET] <durandal_1707> dualz: another issue are what about if videos are VFR 
[10:45:57 CET] <durandal_1707> dualz: look at tpad and loop filters how they change pts
[10:50:50 CET] <cone-674> ffmpeg 03Paul B Mahol 07master:29f2893318a2: avfilter/vf_alphamerge: switch to activate
[11:35:15 CET] <m2adave> Hello! For our project, we need ATSC AC3 descriptors in the MPEGTS output. This has been discussed before in https://trac.ffmpeg.org/ticket/5837 (associated discussion at http://ffmpeg.org/pipermail/ffmpeg-user/2016-September/033536.html), and https://trac.ffmpeg.org/ticket/2162.
[11:35:15 CET] <m2adave> I've started looking at mpegtsenc.c, and adding the registration descriptor is straightforward enough, but adding the AC-3_audio_stream_descriptor (0x81) is complicated because it needs bitstream parameters (bsid, bsmod, acmod etc), and there's no extradata available for AC-3.
[11:35:15 CET] <m2adave> Can anyone suggest a way I can access the required parameters? I note that movenc waits for a packet of AC3 and then parses the header, which seems reasonable, but I'm not sure how this works in a streaming scenario where the header should be available before the data. In MPEGTS, the PMT is potentially sent before the first AC3 packet has arrived anyway, so this doesn't seem like an option.
[11:35:15 CET] <m2adave> It would be easy to stick the AC3 bsi in extradata or something, but I guess this isn't the right solution.
[11:35:15 CET] <m2adave> Thanks in advance for your help.
[11:37:21 CET] <nevcairiel> mpegts doesnt have any global headers anyway, its all  in-stream, so waiting for data seems trivial to me
[11:42:21 CET] <m2adave> @nevcairiel, thanks. That is an option but the problem is that a PMT will be sent at the beginning which does not correctly describe the stream (unless the first data packet sent is an AC3 packet). Then later, when the first AC3 packet arrives, either a forced SI update needs to occur at the first AC3 PES packet, or some packets would be missed.
[12:14:48 CET] <cone-674> ffmpeg 03Jun Zhao 07master:991cd7915537: fate: Add test for vc1test demuxer
[12:33:43 CET] <cone-674> ffmpeg 03Akemi 07master:233cd8905640: lavc/videotoolbox: Fix cropping with HEVC and H264 videos
[12:35:39 CET] <cone-674> ffmpeg 03Paul B Mahol 07master:e96742dd3bdf: avfilter/af_afftfilt: use first input frame timestamp
[12:43:50 CET] <cone-674> ffmpeg 03Mark Harris 07master:ae4323548ae8: avfilter/vf_fade: fix start/duration max value
[12:49:09 CET] <dualz> durandal_1707: I'm looking at the loop filter and how it keeps the PTS in the context then increments it depending on the number of samples or duration of a frame
[12:50:28 CET] <dualz> would I increment it by nb_samples every audio frame and pkt_duration every video?
[12:53:08 CET] <durandal_1707> dualz: your case is simpler imho, you just output first inlink with pts from 0 and than when you receive input file you just offset input file pts with last pts you received from inlink
[13:13:01 CET] <dualz> so in it's original state the audio and video should be in sync, it's only when I open files do I need to offset the PTS?
[13:13:15 CET] <dualz> or am I confused
[13:20:34 CET] <durandal_1707> you are not going to compare audio and video pts for sync
[13:20:53 CET] <durandal_1707> this could be just V->V and A->A filter
[13:22:53 CET] <durandal_1707> offset pts = increase evvery pts received from input file by same ammount received from last inlink, similar pts from inlink after input file finished would be increased by last pts of output frame
[14:00:46 CET] <durandal_1707> so we want DOS support but not XP support?
[15:09:37 CET] <j-b> Tested-by: ponpon
[15:09:38 CET] <j-b> wtf
[15:10:46 CET] <J_Darnley> Is there an x86 SIMD instruction that does both pshufd and blendps together
[15:13:43 CET] <J_Darnley> A note for others: avoid opening the intel instruction set reference in LibreOffice Draw
[15:15:17 CET] <atomnuker> J_Darnley: welp, you can shuffle in zeroes and OR whatever you need on there
[15:20:58 CET] <J_Darnley> yeah I could
[15:21:28 CET] <J_Darnley> probably best I keep it simple
[15:21:52 CET] <J_Darnley> a pair of pshufd and movq
[15:24:34 CET] <philipl> BtbN: https://github.com/philipl/mpv/tree/cuda-vkimage
[15:25:23 CET] <philipl> BtbN: This is VkImage based interop. I think it should work on windows with 416.xx drivers, if you want to try it out.
[15:35:49 CET] <BtbN> philipl, Does that allow bi-directional stuff? Probably now?
[15:35:52 CET] <BtbN> *not
[15:39:07 CET] <philipl> no
[16:31:16 CET] <J_Darnley> what the hell?  where is my return instruction?
[16:51:25 CET] <Gramner> J_Darnley: shufps may be what you're looking for depending on what order you need the elements to be in
[17:16:28 CET] <dualz> durandal_1707: taking it back a step to the original pass through, I am noticing a max of 10FPS to my output, this is my activate() logic: https://gist.github.com/ryanmarin/6b9e12d24b720ae8e485c497948a2926
[17:17:01 CET] <dualz> is there any reason i should be seeing a reduction in framerate
[18:51:15 CET] <durandal_1707> dualz: no reduction in framerate for simple pass should happen
[18:58:58 CET] <durandal_1707> no comments for av_sscanf expect usual suspects, so i can push it asap?
[19:00:52 CET] <jamrial> durandal_1707: add a proper copyright and resubmit
[19:00:57 CET] <jamrial> otherwise there will be drama
[19:01:49 CET] <jamrial> don't mention every author if it's an impossible task, just state it's from musl
[19:20:13 CET] <dualz> durandal_1707: I pasted the two commands I used to get different framerates: https://gist.github.com/ryanmarin/a8ef8cc5d7d8f9b74b2abd4d8b8b696a
[19:48:12 CET] <durandal_1707> jamrial: done
[19:49:47 CET] <durandal_1707> dualz: and what is CPU usage with feed filter?
[19:52:32 CET] <atomnuker> durandal_1707: that'll fail fate, since fate checks for license header
[19:53:09 CET] <durandal_1707> what? how? fix it how?
[19:53:34 CET] <atomnuker> http://ffmpeg.org/pipermail/ffmpeg-devel/2016-January/186280.html
[19:53:42 CET] <atomnuker> look at how I did the license header at the top
[19:54:16 CET] <atomnuker> Just replace the xiph license with whatever musl had
[19:54:33 CET] <durandal_1707> fate source passed here....
[19:54:52 CET] <durandal_1707> is not smart enough to detect dual license
[20:19:48 CET] <durandal_1707> do we need %m in av_sscanf() ?
[20:21:59 CET] <durandal_1707> atomnuker: jamrial said it maybe should be better to put this function in separate file, what you think?
[20:23:45 CET] <atomnuker> that'd be fine, as long as its still exposed in avstring.h
[22:10:25 CET] <cone-728> ffmpeg 03Paul B Mahol 07master:23f589e07340: avfilter/vf_alphamerge: do not check for ret value if all wanted frames are present
[00:00:00 CET] --- Tue Nov 13 2018

More information about the Ffmpeg-devel-irc mailing list