Ffmpeg-devel-irc
Threads by month
- ----- 2026 -----
- July
- June
- May
- April
- March
- February
- January
- ----- 2025 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2024 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2023 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2022 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2021 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2020 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2019 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2018 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2017 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2016 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2015 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2014 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2013 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2012 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2011 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2010 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
June 2018
- 1 participants
- 60 discussions
[04:54:41 CEST] <atomnuker> why the hell is av_rescale_q outputting INT64_MIN? this makes no sense, all my timebases are in order and my timestamps are fine, monotonically incrementing
[04:59:53 CEST] <atomnuker> oh come on, swr_next_pts() requires input tb of 1/in_rate*out_rate, and if in_rate == out_rate == 48000 the result overflows the AVRational int and becomes negative
[05:10:59 CEST] <atomnuker> and now pulseaudio is giving me non-monotonic timestamps despite I explicitly asking it to give me monotonic timestamps
[05:11:15 CEST] <atomnuker> audio timestamps are hell
[05:22:21 CEST] <atomnuker> ^^ I'm using nut, my timestamps are in microseconds from av_gettime, my timebase is in miscroseconds, nothing complains, and I'm still getting junk timestamps
[07:18:52 CEST] <kierank> atomnuker: remember when I told you libswr was crap
[07:19:27 CEST] <atomnuker> yes, and I still say you're wrong and you wish it was crap!
[07:19:48 CEST] <atomnuker> its well designed, and it does make sense for the tb to be the common multiple of the samplerates
[07:19:50 CEST] <kierank> 10:59:54 AM <"atomnuker> oh come on, swr_next_pts() requires input tb of 1/in_rate*out_rate, and if in_rate == out_rate == 48000 the result overflows the AVRational int and becomes negative
[07:19:53 CEST] <kierank> lol
[07:20:00 CEST] <atomnuker> are you even reading?!?
[07:20:09 CEST] <atomnuker> I was complaining about avrational using ints rather than 64bit ints
[07:20:13 CEST] <kierank> so you've got to come up with some new random timebase
[07:20:19 CEST] <kierank> instead of the one you get from a file
[07:20:49 CEST] <atomnuker> its not random, its the common one between both samplerates
[07:21:18 CEST] <atomnuker> to get what you need you divide what you get by the other samplerate
[11:14:46 CEST] <niemand> Hi, I want to write a filter which duplicates frames if a certain condition applies. Is there a way to access the previous frame from inside the filter_frame function?
[11:25:18 CEST] <durandal_1707> niemand: only by caching it
[11:26:18 CEST] <niemand> durandal_1707, okay :/, thanks. Do you know an existing filter that does that?
[11:27:45 CEST] <durandal_1707> tmix,reverse,atadenoise ...
[11:28:01 CEST] <niemand> thanks, I will look at them
[11:28:07 CEST] <atomnuker> its not hard, just av_frame_ref() the current frame to your context and then move the ref if you want to duplicate it to a new frame
[11:28:22 CEST] <atomnuker> make sure to unref the frame you're replacing so you don't leak
[13:09:55 CEST] <January> atomnuker: why are you using microsecond timebase if youre using NUT
[13:10:24 CEST] <January> Just use the native timebase from each stream?
[13:15:19 CEST] <JEEB> I think he just wants to use current timestamp I guess
[16:19:00 CEST] <JEEB> fun
[16:19:09 CEST] <JEEB> sure seems to be plenty of API changes in vmaf
[17:57:33 CEST] <c3r1c3-Win> When it comes to multi-threading codecs in FFMPEG is there any criteria or rules or minimum gains that must be exhibited for a patch to be considered?
[17:58:17 CEST] <thardin> some sensible amount of speedup perhaps?
[17:58:36 CEST] <thardin> like if you add three extra cores but only get 10% faster then maybe that's not so useful
[17:59:22 CEST] <JEEB> also the added complexity I guess
[17:59:23 CEST] <c3r1c3-Win> ^ Yes, I'm looking for something along those lines.
[18:00:39 CEST] <c3r1c3-Win> If it doesn't exist, I completely understand, and will attempt to do so and publish my tests/findings, but if there are any guidelines/docs/criteria about, I'd love to read them before starting so I can provide proper test coverage.
[18:02:39 CEST] <atomnuker> if you do frame threading you can't really lose out on performance or make things more complex
[18:03:02 CEST] <atomnuker> slice threading should do well too, but combining them is sketch territory as only vp9 does that currently
[18:03:08 CEST] <c3r1c3-Win> I think it would be frame slices first (and possibly only).
[18:03:17 CEST] <atomnuker> which codec?
[18:03:36 CEST] <c3r1c3-Win> Also if I were to multi-thread the compressor and decompressor, should those be submitted as 2 patches or 1?
[18:03:42 CEST] <nevcairiel> 2
[18:03:50 CEST] <c3r1c3-Win> Excellent. Thank you.
[18:04:29 CEST] <c3r1c3-Win> atomnuker: I'm actually pulling up the source code right now to look, but I was thinking SpeedHq (if it isn't already).
[18:04:41 CEST] <atomnuker> we have a speedhq encoder?
[18:04:42 CEST] <c3r1c3-Win> I figured that would be a good start for me.
[18:07:10 CEST] <c3r1c3-Win> I only see a decoder.
[18:10:15 CEST] <c3r1c3-Win> Interesting, given that NDI uses SpeedHQ as it's codec...
[19:40:07 CEST] <Compn> c3r1c3-Win : do you have NDI source / spec ?
[19:40:17 CEST] <Compn> its possible that no one really asked us to do a speedhq encoder,
[19:40:26 CEST] <Compn> e.g. apple prores was infininitely more popular
[20:42:09 CEST] <cone-043> ffmpeg 03Mark Thompson 07master:7ff5310068d9: hwcontext_opencl: Remove unused variable
[20:42:09 CEST] <cone-043> ffmpeg 03Mark Thompson 07master:d4d29052c3ce: lavfi/framesync: Add namespace prefix to framesync_get_class
[20:44:26 CEST] <cone-043> ffmpeg 03Marton Balint 07master:bfa0b5044178: avformat/mxfdec: store next_klv in KLVPacket
[20:44:27 CEST] <cone-043> ffmpeg 03Marton Balint 07master:7ec90b168b9a: avformat/mxfdec: add support for determining essence wrapping scheme
[20:44:28 CEST] <cone-043> ffmpeg 03Marton Balint 07master:3cb19ba97e68: avformat/mxfdec: add some essence container uls from SMPTE draft
[20:44:29 CEST] <cone-043> ffmpeg 03Marton Balint 07master:459282389c40: avformat/mxfdec: extend mxf_handle_missing_index_segment for all clip wrapped essences
[20:44:30 CEST] <cone-043> ffmpeg 03Marton Balint 07master:6345770eeb97: avformat/mxfdec: compute both essence_offset and essence_length in mxf_compute_essence_containers
[20:44:32 CEST] <cone-043> ffmpeg 03Marton Balint 07master:f217be2cb8d0: avformat/mxfdec: simply use the first essence element for non frame-wrapped partition essence offset
[20:44:33 CEST] <cone-043> ffmpeg 03Marton Balint 07master:ae64c682084b: avformat/mxfdec: make edit_units_per_packet a track property
[20:44:33 CEST] <cone-043> ffmpeg 03Marton Balint 07master:1cea0e73d2b7: avformat/mxfdec: make current_edit_unit a parameter of mxf_compute_samples
[20:44:34 CEST] <cone-043> ffmpeg 03Marton Balint 07master:e7b1a8371878: avformat/mxfdec: add support for returning the partition for mxf_edit_unit_absolute_offset and mxf_absolute_bodysid_offset
[20:44:35 CEST] <cone-043> ffmpeg 03Marton Balint 07master:865e0c2d66d9: avformat/mxfdec: compute sample_count for all streams on seek
[20:44:37 CEST] <cone-043> ffmpeg 03Marton Balint 07master:404dc6bab5cd: avformat/mxfdec: avoid index_table->nb_ptses overflow in mxf_compute_ptses_fake_index
[20:56:35 CEST] <atomnuker> jkqxz: ping, could you look at my lavfi vulkan filters, I fixed the issues with the hwcontext
[21:00:30 CEST] <jkqxz> Not easily right now - I'm currently away from most of my test kit.
[21:03:09 CEST] <jkqxz> Well, I can have a look. Not much testing though.
[21:20:03 CEST] <atomnuker> oh, ok, whenever you can then
[22:19:54 CEST] <kierank> c3r1c3-Win: you should reverse engineer nda
[22:19:55 CEST] <kierank> ndi
[22:20:00 CEST] <kierank> and i think they are moving to h264
[22:20:49 CEST] <JEEB> how utterly not surprising :)
[22:21:15 CEST] <JEEB> and yea I really dislike how they're calling themselves a standard while there's no spec nor an open implementation
[22:21:33 CEST] <JEEB> I'd expect at least one thing of those as a "standard"
[00:00:00 CEST] --- Mon Jun 25 2018
1
0
[00:26:43 CEST] <hiihiii> hello
[00:27:27 CEST] <hiihiii> I've got two inputs that are recorded in VFR
[00:27:40 CEST] <hiihiii> I want to overlay one on top of the other
[00:28:47 CEST] <hiihiii> but since they are in VFR I get a very bad case of desync, where even if I sync one part I end up with a new part out of sync
[00:32:40 CEST] <hiihiii> reading the answers here https://superuser.com/questions/1150276/trim-video-and-concatenate-using-ff…
[00:33:15 CEST] <hiihiii> I understand that I should find the PTS of my two inputs and regulate them before I do anything
[04:19:08 CEST] <Una-Rogg> Hello peoples
[10:32:57 CEST] <tomf> can ffmpeg stretch audio ripped from a PAL source so it matches with NTSC?
[10:49:42 CEST] <keglevich_> hey all...I'm using CasparCG with ffmpeg udp multicast mpegts output (mpeg2video, mp2audio)... If I try to use "-muxrate" parameter as well to produce CBR stream and right pcr interval, I get "DTS<PCR: TS in invalid" errors all the time in ffmpeg output console. Why is this warning/error, and how to avoid it? Thank you
[11:03:29 CEST] <keglevich> hey all...I'm using CasparCG with ffmpeg udp multicast mpegts output (mpeg2video, mp2audio)... If I try to use "-muxrate" parameter as well to produce CBR stream and right pcr interval, I get "DTS<PCR: TS in invalid" errors all the time in ffmpeg output console. Why is this warning/error, and how to avoid it? Thank you
[11:47:35 CEST] <diego4> hello I've noticed that sometimes when running ffmpeg (version 3.2.10-1) from beets (convert command) the console disables the echo, could someone please help me understanding this?
[13:02:36 CEST] <ralphcor> Hi, ffmpeg -i movie.mp4 frame-%04.png is creating png:pHYs: x_res=0, y_res=1, units=0 in the PNG header. x!=y so these are non-square pixels. What does an x_res of 0 mean? I suspect 0/1 is from the first entry in ff_h264_pixel_aspect[] pulled by decode_vui_parameters() that suggests the aspect_ratio_info_present_flag bit was set. I can -v 9 -loglevel 99 and see [graph 0 input from stream 0:0 @ 0x...]
[13:02:37 CEST] <ralphcor> Setting 'pixel_aspect' to value '0/1'. Is this a common value for MP4s or an indication of something wrong upstream?
[13:04:30 CEST] <JEEB> that is generally something like unset
[13:05:08 CEST] <ralphcor> I'm surprised `unset' doesn't mean 1/1 in a similar manner to PNG not having a pHYS header entry means 1/1 square pixels.
[13:05:46 CEST] <ralphcor> (Commands processing the PNGs downstream are complaining of non-square pixels.)
[13:10:13 CEST] <JEEB> anyways, not sure at which point that value gets set and due to which because I don't have magical pixie dust powers
[13:10:38 CEST] <JEEB> I just looked at my API code that was creating thumbnails from <random input> to f.ex. PNG or JPEG
[13:11:20 CEST] <JEEB> and I didn't really take care of aspect ratio at all. I seem to just take the values out of the input
[13:11:42 CEST] <JEEB> as in, the first input decoded AVFrame
[13:14:45 CEST] <JEEB> I could test ffmpeg.c and some random H.264 file I have around and see what it does with current master
[13:15:10 CEST] <ralphcor> I've just tried a different H264 video, this one off youtube, and 1/1 gets pulled from ff_h264_pixel_aspect[], so it seems to be something in the original. I think that came from a youtube-dl off a tweet URL, so probably involved ffmpeg there too. Will ask for the original URL.
[13:15:57 CEST] <ralphcor> ffmpeg 1:4.0.1-1 here on Arch Linux, though I don't think it's necessarily ffmpeg that's wrong, just trying to understand and how to remedy.
[13:16:43 CEST] <JEEB> well one of the simplest things is to try and just add a forced scaling to as close as possible to 1:1 SAR and then use the setsar filter to force that to 1:1 or something if you just want to work around it :P
[13:17:03 CEST] <ralphcor> Specifying sar with an explicit graph would seem to be the way. Does ffmpeg always construct a graph from the command-line options, and can it be displayed? It would be a starting point for augmenting it with sar.
[13:17:24 CEST] <JEEB> -v verbose and higher I think start showing the chain that's autogenerated
[13:17:56 CEST] <JEEB> basically there's an example I think in the docs to get SAR-applied output values, and then you just stick setsar at the end
[13:18:22 CEST] <JEEB> but the more interesting part is how do some values get through the whole thingamajig as-is
[13:18:34 CEST] <JEEB> sine 0/1 generally is the "unset" value for AVRationals
[13:18:44 CEST] <JEEB> because 0/0 can lead to division by zero things
[13:19:28 CEST] <JEEB> in my own API client I just wait all the way until I have an AVFrame in my hand and that way I know exactly what I'm building my filter chain with
[13:19:49 CEST] <JEEB> and I've tested it with random broadcast sources and mp4s and it seemed to work :P
[13:19:55 CEST] <JEEB> ffmpeg.c can be doing something completely different of course
[13:22:20 CEST] <ralphcor> Unrelated: -i foo-%06d.png tests for foo-000000.png to foo-000004.ng with access(2) and then errors if it starts at foo-000042.png. Unexpected from the man page for -pattern_type.
[13:23:02 CEST] <JEEB> yes, that stuff is very limited
[13:23:46 CEST] <JEEB> there's a separate start_number param
[13:23:52 CEST] <JEEB> https://www.ffmpeg.org/ffmpeg-all.html#image2-1
[13:24:07 CEST] <JEEB> ffmpeg-all.html is generally what I ctrl+F through when I'm a lazy git
[13:24:49 CEST] <ralphcor> Ta. Yes, that's what I've been using with man(1), but I didn't grasp the start_number it referred to in the formula was another option.
[13:25:13 CEST] <JEEB> all the base indentation level things are AVOptions
[13:25:32 CEST] <JEEB> values for AVOptions generally are +1 level indented
[13:38:51 CEST] <ralphcor> -aspect 1 looks convenient, but it's an output option that affects the container, but not the frames, so I guess that's why PNG's pHYS doesn't benefit.
[13:39:43 CEST] <JEEB> see the examples for the scale filter
[13:39:53 CEST] <JEEB> https://www.ffmpeg.org/ffmpeg-all.html#Examples-127
[13:39:55 CEST] <JEEB> last two
[13:41:04 CEST] <JEEB> add add a format=rgb24 in front of it to first convert to RGB
[14:32:38 CEST] <ralphcor> Interestingly, if I ffmpeg -i dodgy.mp4 -aspect 1 -c copy fixed.mp4 then the pixel_aspect is set to 16/9 when extracting PNGs, and pHYS is x_res=16, y_res=9, units=0. So still non-square. This is probably because fixed.mp4 is output as 720x1280 [SAR 16:9 DAR 1:1] whereas I'd expect SAR 1:1 DAR 16:9.
[17:06:09 CEST] <ariyasu> is "-http_proxy http://proxy:port" the correct format for setting a proxy?
[17:06:27 CEST] <ariyasu> because im doesn't appear to be using it, but im not getting any errors
[17:10:35 CEST] <ariyasu> Reading option '-http_proxy' ... matched as AVOption 'http_proxy' with argument 'http://45.32.254.19:443'.
[17:10:39 CEST] <ariyasu> hrm
[17:11:40 CEST] <JEEB> https://www.ffmpeg.org/ffmpeg-all.html#http if you are straightforwardly using the HTTP protocol, that probably matches, but sub-contexts might not get it for "meta" demuxers
[17:16:49 CEST] <ariyasu> yeah still not working :|
[17:17:46 CEST] <ariyasu> trying to download an m3u8 to mp4, but the content is geo locked to japan, ffmpeg gives 403 errors
[17:18:04 CEST] <ariyasu> firefox gives 403 also but when i set the proxy there, then it can download the ts segments
[17:18:16 CEST] <ariyasu> but for some reason ffmpeg is not routing through the proxy
[17:21:32 CEST] <ariyasu> if i set a jpn vpn at that same host and remove the "-http_proxy http://proxy:port" then it works, but would rather get it working with the proxy if possible
[17:21:49 CEST] <ralphcor> Is it HTTP that it's attempting?
[17:22:13 CEST] <JEEB> ariyasu: basically HLS is one of the "meta" demuxers which possibly will open other protocols
[17:22:14 CEST] <ralphcor> Perhaps strace -fe %network ffmpeg ... ?
[17:22:36 CEST] <JEEB> so I wouldn't be surprised if the proxy part doesn't get passed to the other requests, not that I'm sure :P
[17:23:09 CEST] <ariyasu> ahh i see
[17:23:19 CEST] <ariyasu> thats probably the issue
[17:24:10 CEST] <JEEB> you see various facepalm-inducing things in all of those meta things where people randomly copy things from the main lavf context to the one further
[17:24:18 CEST] <JEEB> because of how the meta stuff works right now
[17:24:26 CEST] <JEEB> and if what you're setting in the version you have at hand
[17:24:34 CEST] <JEEB> doesn't have that, then "lol u"
[17:53:41 CEST] <rahal_> Hi guys, I have a weird problem with ffmpeg in Windows Server 2012R , when creating a video from a jpeg sequence, the generated video is always squized to 1*1 Ratio, even if I specify a resize argument. The same command works perfectly on a macos, windows 8? I'm getting crazy.. does any body have any idea why this could happen? Thank you
[18:51:49 CEST] <rahal_> Nevermind.. It was about the SAR and DAR values, they were not the same in the different environments. ffmpeg picked SAR=3/4 for the output in windows server and 1/1 in mac and windows 8 which had the same SAR and DAR for the input files..
[19:01:11 CEST] <JEEB> rahal_: 100% up to the FFmpeg version or the input files
[19:01:20 CEST] <JEEB> match both to get exactly same results
[19:06:16 CEST] <rahal_> @JEED, thanks, I moved the images created in windows server to my laptop and my local ffmpeg output was the same as the one in the server, I need to make sure that the server generates the images in a good format...
[19:07:52 CEST] <rahal_> I don't understand why after effect ( with the same render settings and output modules ) will create images in a different SAR and DAR in winsrv.. maybe a media codec issue
[19:12:02 CEST] <kepstin> ffmpeg doesn't use system codecs on windows. if you're using the same static ffmpeg build on both systems, with the same input, it should give the same results.
[19:12:18 CEST] <JEEB> I think he was mentioning the thing that creates those images for him
[19:12:39 CEST] <kepstin> oh, the problem is the source images? :/
[19:12:42 CEST] <Celmor> I'm trying to convert a 2160p HEVC video but the result always has a lot of color removed (looks pale/faded), `... -map 0:0 -map 0:1 -c:v libx264 -b:v 10M -s:v 1920x1080 -filter:v "crop=3840:1609:0:275" -c:a ac3 -b:a 448k ...`, converted video vs original: https://puu.sh/ALbmv/1b34dcc37b.png
[19:14:01 CEST] <kepstin> Celmor: the original was probably HDR, and either you converted to 8bit without doing appropriate color mapping, or the hdr metadata wasn't preserved.
[19:14:30 CEST] Action: kepstin assumes this is an ultra-hd blu-ray rip.
[19:15:08 CEST] <JEEB> pretty sure currently with ffmpeg.c the metadata isn't preserved through lavfi and/or the encoder gets initialized before the first AVFrame is received
[19:15:29 CEST] <JEEB> and/or the encoders don't pass the data through
[19:15:39 CEST] <kepstin> when I was playing around with HDR source stuff and vp9, I had to add explicit encoder options to re-add the hdr metadata.
[19:15:57 CEST] <JEEB> s/encoders/encoder wrappers/
[19:16:11 CEST] <JEEB> basically if you see that BT.2020 / PQ get passed
[19:16:24 CEST] <JEEB> then that part is OK, and it's the HDR metadata side data that's not getting through
[19:17:52 CEST] <kepstin> if you're converting to 8 bit, you probably want to apply tone-mapping to the video stream and convert it to standard dynamic range. 8-bit would probably have lots of banding issues otherwise
[19:17:59 CEST] <Celmor> I don't need to "preserve" HDR, how do I tell ffmpeg to do 'appropriate color mapping'?
[19:20:32 CEST] <JEEB> there's two tone mapping filters in FFmpeg now
[19:20:46 CEST] <JEEB> the standard one which I'm not sure if it got updated with the later changes that mpv got
[19:20:46 CEST] <rahal_> @kepstin, yes, problem with the source images that I generate using after effect
[19:21:00 CEST] <JEEB> and then there's the opencl version by an intel guy that has the more up-to-date stuff that haasn did
[19:21:36 CEST] <JEEB> I think the tone mapping things require linear light with float tho
[19:21:45 CEST] <JEEB> so you need to first call zimg to convert the input to that
[19:21:50 CEST] <JEEB> well, zscale
[19:22:02 CEST] <JEEB> I think the tonemap filter has an example
[19:22:11 CEST] <kepstin> yeah, the example in the filter docs shows how to do that
[19:22:21 CEST] <JEEB> https://www.ffmpeg.org/ffmpeg-all.html#tonemap
[19:22:41 CEST] <JEEB> zscale that converts to floating point, linear light RGB
[19:22:48 CEST] <JEEB> or actually, not sure if RGB
[19:22:54 CEST] <JEEB> just linear light and float
[19:23:13 CEST] <JEEB> then the tonemap filter and finally zscale to BT.709
[19:24:35 CEST] <kepstin> tonemap filter works in linear RGB (actually planar 32-bit float GBR)
[19:24:50 CEST] <JEEB> yup, that's what I expected
[19:24:56 CEST] <JEEB> so yea
[19:25:21 CEST] <JEEB> will have to check if the "normal" filter got updated
[19:25:37 CEST] <JEEB> http://git.videolan.org/?p=ffmpeg.git;a=history;f=libavfilter/vf_tonemap.c;…
[19:25:40 CEST] <JEEB> nope
[20:18:39 CEST] <ariyasu> when using -report can you speify the location of the output file?
[20:37:26 CEST] <Hello71> probably
[20:37:29 CEST] <Hello71> did you read the man page
[00:00:00 CEST] --- Mon Jun 25 2018
1
0
[01:15:11 CEST] <cone-575> ffmpeg 03Michael Niedermayer 07master:a734ff4b0e7e: libavcodec/ffv1enc: minor cosmetic fix
[01:15:11 CEST] <cone-575> ffmpeg 03Michael Niedermayer 07master:540e8c2d641b: avcodec/mjpegdec: Check for end of bitstream in ljpeg_decode_rgb_scan()
[01:15:11 CEST] <cone-575> ffmpeg 03Hans Carlson 07master:a790813739a8: ffmpeg: Treat subtitles like audio and video for non-monotonic dts.
[01:15:11 CEST] <cone-575> ffmpeg 03Jacob Trimble 07master:b86c5757a2bf: libavutil/encryption_info: Allow multiple init info.
[01:21:22 CEST] <atomnuker> Shibe: yeah, I just wrote one
[01:22:04 CEST] <atomnuker> https://github.com/swaywm/wlroots/blob/master/examples/dmabuf-capture.c#L295
[01:22:23 CEST] <atomnuker> maps an avframe with a dmabuf to vaapi, then either downloads it or encodes it
[02:34:06 CEST] <atomnuker> why the hell does my hw_frames_ctx disappear after I put my frame in a fifo?
[02:34:50 CEST] <atomnuker> the pointer to the frame is identical on both ends, its just that it gets zero somehow
[02:35:44 CEST] <sploving> hello all, when I fuzzy the latest ffmpeg and have found a vulnerability. where should I report it?
[02:37:58 CEST] <sploving> Some develop told me ffmpeg-security(a)ffmpeg.org will not be used.
[02:50:28 CEST] <atomnuker> it will get used, send it there or make an issue on the issue tracker if its not that fatal
[02:51:47 CEST] <sploving> thx
[03:10:40 CEST] <Compn> i wonder if that was the same guy who just emailed me
[03:12:49 CEST] <iive> did you tell him that ffmpeg-security will not be used?
[03:12:56 CEST] <Compn> no
[12:54:02 CEST] <Mtcno> hello , I want to ask a simple question. There is a line code " int64_t duration = ic->duration + (ic->duration <= INT64_MAX - 5000 ? 5000 : 0); " in the "av_dump_format" function. What did here? I dont understand here.
[12:55:41 CEST] <JEEB> that seems like rather arbitrary
[12:56:19 CEST] <JEEB> so it has some duration and then adds 5000 (on some time base?) if it is smaller or exactly 5000 less than INT64_MAX
[13:03:13 CEST] <Mtcno> thx , After listening to you, I think i understood.
[13:04:30 CEST] <JEEB> now without context I have no idea *why* it's doing that
[13:42:39 CEST] <akravchenko188> jkqxz: Hello. it is just reminder to check comments in vf_scaler_amf filter thread. Thanks.
[15:29:45 CEST] <haasn> /var/tmp/portage/media-video/ffmpeg-9999/work/ffmpeg-9999/tools/cl2c: 27: /var/tmp/portage/media-video/ffmpeg-9999/work/ffmpeg-9999/tools/cl2c: cannot create libavfilter/opencl/tonemap.c: Directory nonexistent
[15:29:47 CEST] <haasn> wut
[15:32:37 CEST] <JEEB> that sounds like some sort of wrapper around some C preprocessor or compiler
[15:32:49 CEST] <JEEB> or wait, is that the opencl compiler?
[15:33:49 CEST] <atomnuker> its the tool which converts .cl code to a byte array header
[15:33:55 CEST] <JEEB> right
[15:46:39 CEST] <haasn> Hmm
[15:47:24 CEST] <haasn> I think the error has something to do with building on 32-bit platforms
[15:47:43 CEST] <haasn> I tried reproducing it in-tree and I got other errors with the opencl stuff
[15:47:49 CEST] <haasn> e.g. /usr/lib/gcc/x86_64-pc-linux-gnu/8.1.0/../../../../x86_64-pc-linux-gnu/bin/ld: i386:x86-64 architecture of input file `libavfilter/opencl/avgblur.o' is incompatible with i386 output
[15:48:35 CEST] <haasn> Yeah building for 64-bit only works
[15:48:36 CEST] Action: haasn runs multilib
[15:50:06 CEST] <haasn> I suggest either making opencl work for 32-bit or disabling building opencl on 32-bit
[15:51:11 CEST] <haasn> that said it's probably time for me to disable multilib now that it's the year 2018 :p
[21:25:38 CEST] <atomnuker> grr, I hate audio timestamps
[21:26:26 CEST] <atomnuker> video, no problem, but audio is pain, they're never right when you want them to be and when they're finally working they're fragile and prone to bugs
[21:26:38 CEST] <nevcairiel> but audio timestamps are so easy
[21:26:55 CEST] <nevcairiel> at least if you assume your audio has no gaps, because audio with gaps is broken anyway
[21:27:59 CEST] <atomnuker> they would be easy if everything operated with proper timestamps and timebases
[21:28:30 CEST] <atomnuker> pulseaudio gives you absolutely nothing so you're forced to get the current time, convert it from microseconds tb to 1/samplerate tb
[21:28:44 CEST] <January> poettering software tho
[21:29:02 CEST] <JEEB> pulse hasn't been under his domain for a long long time
[21:29:15 CEST] <JEEB> I've worked together with a PA maintainer and he was not poettering
[21:29:15 CEST] <atomnuker> its just misdesigned, it gives no relation to what you get to what the current delay status is
[21:29:35 CEST] <atomnuker> and also its not zero-copy, you always need to copy samples
[21:29:37 CEST] <January> JEEB: you got jebaited ( a° \ a°)
[21:30:32 CEST] <atomnuker> OH I know why my audio timestamps are bad
[21:30:37 CEST] <atomnuker> matroska
[21:30:43 CEST] <JEEB> extra layer of fun
[21:30:55 CEST] <atomnuker> I can't mux anything properly with a timebase with more than 1/1000 precision
[21:31:13 CEST] <atomnuker> my video tb is 1/1000 but my audio tb is 1/48000
[21:31:26 CEST] <nevcairiel> clearly your audio frames need to be a more appropriate size
[21:32:07 CEST] <atomnuker> welp, the pcm_f32le encoder accepts anything you give it :)
[21:33:14 CEST] <atomnuker> they are normal-ish, ~1200 samples, because pulse understands nothing of fixed frame sizes through the incredibly complex async api, while the simple sync api will give you constant frame sizes
[21:33:20 CEST] <BradleyS> iirc back in the day fiona was pretty critical of mkv for the relatively inaccurate timebase
[21:33:47 CEST] <atomnuker> everyone who's ever worked with it has been incredibly critical of this
[21:33:48 CEST] <nevcairiel> you can set the timebase
[21:33:50 CEST] <BradleyS> if i need to make mkv and mp4 of something, i usually make mp4 and then remux to mkv due to the 1/1000 being hrm
[21:33:56 CEST] <nevcairiel> the problem is of course that there is only one for all your streams
[21:34:15 CEST] <BradleyS> .mk2
[21:34:17 CEST] <nevcairiel> but you could use nanosecond precision if thats your cup of tea
[21:34:18 CEST] Action: BradleyS runs
[21:35:08 CEST] <atomnuker> nevcairiel: no, that was my first idea, just use nanoseconds and call it a day, everything in my program is in nanoseconds
[21:35:29 CEST] <atomnuker> but I kept getting invalid timestamps
[21:38:10 CEST] <January> just use NUT and have different time base for each stream
[21:39:10 CEST] <atomnuker> yeah, NUT was way ahead of its time
[21:39:33 CEST] <JEEB> isobmff also has per-stream time bases
[21:39:39 CEST] <JEEB> which bases on mov
[21:39:42 CEST] <JEEB> which is from the 1990s
[22:34:32 CEST] <January> how would you store colour information like range/primaries/colorspace/transfer function in NUT? In frame side data with something like a 'UserDataColourRange', etc? How are other people doing it?
[22:37:05 CEST] <JEEB> basically you need something to keep the values specified by ITU-T I'd guess (since they took those values out of H.264/H.265 and made their own spec for them)
[22:37:16 CEST] <JEEB> of course it's not perfect because you have to get the data to the decoder
[22:37:25 CEST] <JEEB> (in case of raw video it's still kind of a necessity)
[22:38:44 CEST] <January> I mean it's not like you'd be doing it any differently with another container (the side data still has to do to the 'decoder'). I guess UserData<whateveritscalledinanothercommonspec> would be a good idea
[22:39:54 CEST] <JEEB> as far as I know the thing just goes to the AVCodecContext since we have values for that there, IIRC. exceptions are stuff like HDR metadata which is another separate block of data
[22:40:08 CEST] <JEEB> with MaxFALL and MaxCLL
[22:40:09 CEST] <JEEB> &34
[00:00:00 CEST] --- Sun Jun 24 2018
1
0
[01:31:37 CEST] <Trel> I'm having an issue with mp3 tagging, command I'm using is this: https://pastebin.com/s5q5WNyR I get the art, but no tags.
[01:36:07 CEST] <Trel> (I did fix title->track since I did that paste, it makes no difference)
[01:39:05 CEST] <Trel> *try, not fix
[01:47:04 CEST] <Trel> Nevermind, sorry to have been a pain, I needed -id3v2_version 3
[02:05:17 CEST] <TheAMM> Does ffprobe (ffmpeg) differentiate between MPEG-TS and M2TS?
[02:05:33 CEST] <furq> no
[04:31:20 CEST] <ariyasu_> https://i.imgur.com/hCEZiiQ.png
[04:31:42 CEST] <ariyasu_> is there anyway to get subtitles to display at specific locations in .srt or .ass like in the .vtt ?
[04:32:05 CEST] <ariyasu_> im just doing "ffmpeg in.vtt out.srt" or "ffmpeg in.vtt out.ass" at the moment
[04:32:18 CEST] <ariyasu_> but subs loose there placement
[07:27:57 CEST] <teratorn> any techniques for profiling a filter-graph execution ?
[09:22:41 CEST] <Mavrik> I've just used standard CPU profilers and ffmpeg builds with debug symbols
[09:22:44 CEST] <Mavrik> If that's what you mean
[09:30:56 CEST] <kepstin> if you're at a higher level, and are just trying to figure out "which filter is slow?", I don't really know any way to do that without just profiling the code, yeah
[09:31:40 CEST] <Mavrik> But most filters aren't really that slow - the only one that rivals encoder CPU use is yadif
[10:45:28 CEST] <limbo_> What encoding settings should I use to make a streamable vp8 or vp9 .webm? i.e. so it can be played without being fully downloaded/encoded.
[10:47:03 CEST] <Mavrik> Just make sure your GOP is reasonable and it's fine
[10:47:10 CEST] <Mavrik> WebM is structured in a way that's streamable
[10:47:30 CEST] <Mavrik> mkclean can do some additional help apparently
[10:53:10 CEST] <limbo_> oh. Neat. Also looks like ffmpeg can use - as an input, meaning stdin.
[11:03:17 CEST] <JEEB> yes, that is more or less standard in multimedia tools. you might need to specify the i/o container in those cases with -f , though
[17:50:38 CEST] <fnstudio> hi all, tl;dr: how bad is two compress a file twice, quality-wise? more details follow
[17:51:02 CEST] <fnstudio> i have a large video file that i need to edit
[17:51:15 CEST] <fnstudio> the editing process is slowed down by the file size
[17:51:40 CEST] <fnstudio> the final (edited) video doesn't have to be very hi quality
[17:52:22 CEST] <fnstudio> so i was thinking of compressing it a first time -> doing the editing -> exporting it (and hence compressing it a second time)
[17:53:01 CEST] <fnstudio> but i'm afraid that combining two compressions might heavily affect the quality
[17:53:09 CEST] <fnstudio> am i making sense?
[17:53:43 CEST] <fnstudio> oh sorry, at the very top: s/two compress/to compress/
[20:48:19 CEST] <benlieb> what does a 'program' mean in a video container?
[20:48:37 CEST] <JEEB> a separate stream within a single mux
[20:48:45 CEST] <JEEB> most often seen in mpeg-ts
[20:49:20 CEST] <benlieb> hi jeeb
[20:49:30 CEST] <benlieb> sorry what is a mux exactly?
[20:49:35 CEST] <benlieb> I should know this probably.
[20:50:03 CEST] <benlieb> arent all streams "separate"
[20:50:05 CEST] <JEEB> single multiplex
[20:50:21 CEST] <JEEB> well yes, but a program is a group of streams
[20:50:34 CEST] <JEEB> like, in mpeg-ts it's usually completely separate channels
[20:50:42 CEST] <JEEB> or services
[20:50:52 CEST] <JEEB> like, you can have one program that is a data service
[20:50:58 CEST] <JEEB> and has a single data sstream
[20:51:00 CEST] <JEEB> *stream
[20:51:15 CEST] <JEEB> and another that is channel XYZ, which then contains the streams that are in that channel
[20:51:27 CEST] <JEEB> I can give you an example in a momento
[20:51:34 CEST] <benlieb> ok, I just read the wikipedia entry for multiplexing
[20:51:50 CEST] <benlieb> sounds like thats probably a tv broadcast thing that I wont encounter much
[20:51:53 CEST] <benlieb> or at all
[20:52:01 CEST] <JEEB> well, when you put stuff into a container
[20:52:04 CEST] <JEEB> that is multiplexing
[20:52:44 CEST] <JEEB> http://up-cat.net/p/44b45443
[20:53:06 CEST] <JEEB> this example has multiple programs, but only one has actual streams in it
[20:54:59 CEST] <benlieb> so a program can have many streams
[20:55:12 CEST] <JEEB> a program is a set of streams
[20:55:32 CEST] <furq> benlieb: https://trac.ffmpeg.org/wiki/Map#Example8
[20:55:36 CEST] <benlieb> another question& what is the difference between an audio channel and an audio stream?
[20:55:49 CEST] <furq> a stream contains one or more channels
[20:55:51 CEST] <JEEB> audio channel is a single channel from a stream
[20:56:01 CEST] <JEEB> in case of stereo you have two channels
[20:56:03 CEST] <benlieb> can streams have channels?
[20:56:14 CEST] <JEEB> *audio* channels in this context
[20:56:35 CEST] <furq> 5.1 has 6 channels, 7.1 has 8 channels, etc
[20:56:49 CEST] <furq> this is a separate thing really
[20:57:08 CEST] <JEEB> in TV you have channels, and in video context you could say the planes are "channels" as well (R, G, B or Y, Cb, Cr)
[20:57:13 CEST] <furq> right
[20:57:21 CEST] <JEEB> the word "channel" is very context specific in what it means :P
[20:57:40 CEST] <JEEB> although generally it means "a single set of something"
[20:58:01 CEST] <furq> this explains why i can never build a tunnel under the LFE channel
[20:58:15 CEST] <benlieb> Im talking in the context of streams and this:
[20:58:26 CEST] <benlieb> -map_channel [input_file_id.stream_specifier.channel_id|-1][?][:output_file_id.stream_specifier]
[20:58:27 CEST] <benlieb> Map an audio channel from a given input to an output. If output_file_id.stream_specifier is not set, the audio channel will be mapped on all the audio streams.
[20:58:39 CEST] <furq> yeah that extracts one channel from an audio stream
[20:58:46 CEST] <furq> so channel 0 in a stereo stream would be the left speaker
[20:59:12 CEST] <JEEB> also for programs, I think this is the best example I have :D http://up-cat.net/p/e1c01c3f
[20:59:19 CEST] <furq> if you wanted to split left and right speakers into two mono streams, that's one way of doing it
[20:59:20 CEST] <JEEB> of how convoluted MPEG-TS muxes can get
[21:00:04 CEST] <furq> does anything other than mpegts have a concept of programs
[21:00:14 CEST] <benlieb> how do I know how many channels are in a stream, or is only just 1 or 2?
[21:00:16 CEST] <benlieb> Stream #0:1(und): Audio: aac (LC) (mp4a / 0x6134706D), 48000 Hz, stereo, fltp, 135 kb/s (default)
[21:00:16 CEST] <benlieb>
[21:00:20 CEST] <furq> "stereo"
[21:00:25 CEST] <JEEB> stereo is the layout
[21:00:32 CEST] <JEEB> a layout has a number of channels
[21:01:01 CEST] <benlieb> but how can I see the channels?
[21:01:09 CEST] <benlieb> is 0 left and 1 right?
[21:01:15 CEST] <furq> ffmpeg -layouts
[21:01:25 CEST] <benlieb> I was using ffprobe
[21:01:37 CEST] <furq> -layouts just lists all audio layouts
[21:01:44 CEST] <JEEB> also which channel is which piece of data depends on the layout
[21:01:48 CEST] <furq> ^
[21:01:54 CEST] <furq> stereo is always left then right
[21:02:01 CEST] <furq> but e.g. with 5.1 there's more than one layout
[21:02:08 CEST] <benlieb> ok I see
[21:02:18 CEST] <benlieb> the layout is one of a set type
[21:02:28 CEST] <benlieb> and then ffprobe gives the layout, and I have to lookup what that means
[21:02:34 CEST] <benlieb> somewhat new to all this...
[21:02:45 CEST] <benlieb> is there a grood reference for all of this terminology?
[21:02:48 CEST] <furq> 99% of the time it'll be stereo, 5.1, or 5.1 (side)
[21:02:55 CEST] <benlieb> the ffmpeg docs just assume I know
[21:02:57 CEST] <furq> which is easy enough to memorise
[21:03:10 CEST] <JEEB> benlieb: if you actually use -of json -show_streams -show_programs you will actually get both channel count and layout
[21:03:24 CEST] <JEEB> of json outputs json
[21:03:26 CEST] <furq> you crazy for that json output
[21:03:41 CEST] <JEEB> it seems like the least insane thing to use with most scripting languages
[21:04:25 CEST] <JEEB> because it really sounds like benlieb is trying to parse what ffprobe gives out :P
[21:04:35 CEST] <benlieb> k@jeeb Unrecognized option 'of'
[21:04:42 CEST] <furq> ffprobe
[21:05:29 CEST] <benlieb> ooah
[21:05:31 CEST] <benlieb> got it
[21:05:46 CEST] <furq> -of csv is probably easier if you want this to be human readable
[21:06:14 CEST] <furq> or just -of default
[21:06:15 CEST] <benlieb> Im a software engineer so json is great for me ;)
[21:06:18 CEST] <furq> fair enough
[21:06:24 CEST] <furq> if you want to actually machine parse it then json is what you want
[21:06:52 CEST] <benlieb> json gives labels where the standard output doesnt
[21:06:59 CEST] <benlieb> which is good for a beginner
[21:07:03 CEST] <benlieb> or at least this one
[21:07:05 CEST] <furq> default output should give labels
[21:07:36 CEST] <furq> i wish it didn't because it'd save me having to explicitly turn them off every time i use it in a script
[00:00:00 CEST] --- Sun Jun 24 2018
1
0
[00:09:24 CEST] <cone-368> ffmpeg 03Carl Eugen Hoyos 07master:40b7e6071815: lavf/amr: Make the heuristic for auto-detection even stricter.
[00:24:58 CEST] <kierank> why is musl 32-bit undocumented
[01:08:31 CEST] <January> kierank: lol, musl is fun. They removed the float in malloc stuff iirc now btw
[01:19:20 CEST] <January> kierank: what you need docs with 32bit musl
[01:19:31 CEST] <kierank> no
[01:20:26 CEST] <January> they didnt remove the float stuff? i admit i didnt actually check the code
[09:44:34 CEST] <ubitux> /g 17
[09:44:36 CEST] <ubitux> oups
[13:20:41 CEST] <jdarnley> Can someone familiar with wavelets, dirac, and assembly point out why this commit gives an inverted/negative picture?
[13:20:44 CEST] <jdarnley> https://gitlab.com/J_Darnley/ffmpeg/commit/6fbb656dfcdf04c473645a67caa29156…
[13:21:13 CEST] <jdarnley> atomnuker: that ^^ might only be you. Can you have a look?
[13:27:46 CEST] <atomnuker> does multiplying by -1 fix the output?
[13:41:02 CEST] <jdarnley> Not completely. Still some problems but at least the picture isn't negative.
[13:41:58 CEST] <jdarnley> I must be loading the wrong data somewhere.
[13:44:52 CEST] <atomnuker> do you make any assumption about coefficient ranges?
[13:44:53 CEST] <jdarnley> And that is almost certainly in the high loop because the picture looks great if I return after the low loop.
[13:45:10 CEST] <jdarnley> None that the C isn't making.
[13:46:03 CEST] <jdarnley> But the coeffs shouldn't be that large because I'm only doing 1 decomposition(?)
[13:46:48 CEST] <jdarnley> Oh actually the C makes casts from int to unsigned but I think that was only to make fuzz testing happy.
[13:47:09 CEST] <jdarnley> or ubsan or whatever
[13:51:53 CEST] <atomnuker> yeah, I don't see anything wrong, you're doing ops on 32 bit ints
[13:52:07 CEST] <atomnuker> sounds like you might be loading the wrong data though
[13:52:47 CEST] <atomnuker> I'd implement the c version part by part in the wrapper code you have and see where they diverge
[18:29:58 CEST] <jerkoo> Compn: you need to get heic / hfif support in ffmpeg for the apple people with their apple photos. microsoft is charging people $1 to be able to decode this standard format in windows 10
[18:30:28 CEST] <jerkoo> maybe durandal_1707 will do this... there is a patch on the trac ?
[18:31:04 CEST] <jerkoo> https://trac.ffmpeg.org/ticket/6521
[18:32:07 CEST] <jerkoo> KODI is relying on usssssss
[18:32:18 CEST] <jerkoo> cant let kodi down
[18:32:41 CEST] <JEEB> the problem with HEIF is that it works against how the FFmpeg APIs work :P
[18:32:53 CEST] <JEEB> because they literally decided to stick separate videos
[18:33:13 CEST] <JEEB> in a single thing
[18:33:21 CEST] <jerkoo> so its like edit lists then
[18:33:38 CEST] <JEEB> except edit lists aren't about making a mosaic?
[18:33:43 CEST] <JEEB> they're just a time line
[18:34:05 CEST] <JEEB> although you can do a lot of random things in edit lists, yes
[18:34:07 CEST] <jerkoo> oh you mean the image is made up of different parts
[18:34:10 CEST] <JEEB> yes
[18:34:20 CEST] <JEEB> so if you've got an API that says "give me the decoded image"
[18:34:27 CEST] <JEEB> you've suddenly gotten an issue
[18:34:40 CEST] <JEEB> because you've got multiple images and if you decode one, you only get that tile
[18:34:59 CEST] <jerkoo> so decode all of the tiles in order then stitch them together
[18:35:15 CEST] <JEEB> looking at that mojing comment it just looks like he exports the separate images and then uses libavfilter to put them together :P
[18:35:25 CEST] <jerkoo> yep
[18:35:30 CEST] <jerkoo> hack city, here we come
[18:36:16 CEST] <JEEB> the problem is that as far as the decoder is concerned these are 100% separate NAL units with video content
[18:36:42 CEST] <JEEB> there's an actual tiling feature in HEVC which would actually be a spec-compliant way of doing it
[18:36:51 CEST] <JEEB> buuut HEIF decided to not do it
[18:37:17 CEST] <jerkoo> what about just supporting the iphone heic version ?
[18:37:23 CEST] <jerkoo> which should be the biggest use case anyway
[18:37:33 CEST] <JEEB> I'm pretty sure those had tiles, too?
[18:37:38 CEST] <jerkoo> yes probably
[18:38:29 CEST] <JEEB> things like imagemagick can get this easily because they have both demuxing and decoding and all that jazz under one API more or less. now with FFmpeg you end up with awkwardness with how they did it
[18:38:52 CEST] <JEEB> the simplest is to just export the separate images, but how do you tell the API user that he's supposed to stitch the things together
[18:39:23 CEST] <JEEB> or then you add side data to AVPackets that say the tiled image size and each decoded image gets the image filled
[18:39:46 CEST] <JEEB> so you literally would need to still call the decode API N times before you start getting non-gray in the whole image
[18:40:32 CEST] <JEEB> because those are not HEVC tiles, they're completely separate samples in some lolhacky way
[18:40:50 CEST] <JEEB> I really loved how the GPAC dude finally did say the spec was convoluted and complex at the end of his HEIF talk
[18:41:17 CEST] <JEEB> "you could say that" was probably the understatement of a while
[18:41:42 CEST] <JEEB> also then there's the problem that HEIF is not at all limited to HEVC, although it's right now mostly used with it
[18:41:56 CEST] <atomnuker> we talked about this with rcombs for a bit, maybe the heif stream could just be treated as a tiled hevc stream and processed by a bsf
[18:42:11 CEST] <JEEB> so if you add the HEIF-specific hacks to the HEVC decoder, then you suddenly need to add them elsewhere as well
[18:42:29 CEST] <JEEB> atomnuker: ok, that sounds like another relatively sane and less "insane hack flags in the decoder" way
[18:42:38 CEST] <JEEB> if the images can be turned into tiles
[19:06:05 CEST] <mateo`> I confirm that the iphone variant of heif (heic) uses a tiled format (and this is why I totally gave up on supporting the format)
[19:07:05 CEST] <jerkoo> humm
[19:07:25 CEST] <jerkoo> need support, don't care about how hacky it will be :D
[19:07:48 CEST] <jerkoo> NEWS HEADLINE: theres a format ffmpeg does not support!
[19:08:42 CEST] <jerkoo> are there any third party libs we can just call in ?
[19:09:09 CEST] <JEEB> yea but those most likely are gonna be just worse in the compatibility side regarding HEVC features
[19:09:19 CEST] <mateo`> AVFoundation ? :D
[19:09:21 CEST] <JEEB> like imagemagick picked some random hevc decoder lib
[19:10:44 CEST] <atomnuker> BBB: we froze av1
[19:10:59 CEST] <jerkoo> so you dont want to have a demuxer which sends info to a filter to piece it back together ??
[19:11:06 CEST] <jerkoo> extra ? not meant.
[19:12:52 CEST] <atomnuker> BBB: put your repo up somewhere, I demand
[19:13:01 CEST] <jamrial> \o/
[19:14:10 CEST] <JEEB> jerkoo: it sounds like heif demuxer adding a flag to add a special bit stream filter that makes all of those things a proper tiled HEVC image might be the least insane path
[19:14:20 CEST] <JEEB> although I've no idea how possible that is
[19:14:39 CEST] <JEEB> the other thing is to have some insane side dat that says this is tile X out of Y tiles
[19:14:44 CEST] <jerkoo> to save the photo, we must burn it.
[19:19:19 CEST] <daddesio> "BBB: we froze av1"
[19:19:21 CEST] <daddesio> when was this?
[19:19:29 CEST] <daddesio> atomnuker: ^
[19:20:15 CEST] <BBB> atomnuker: <3
[19:23:19 CEST] <atomnuker> daddesio: a few minutes ago
[19:23:31 CEST] <JEEB> nice
[19:24:38 CEST] <atomnuker> I shall celebrate by going to the nearby store and getting myself a bottle of dom
[19:24:47 CEST] <atomnuker> or failing to find one, a 4 pack of stella artois
[20:19:29 CEST] <j-b> Indeed.
[21:20:09 CEST] <Shibe> is there any example of importing a dmabuf in a zero-copy way to a vaapi AVFrame
[21:31:09 CEST] <BtbN> you map them to vaapi frames, not import
[21:31:21 CEST] <Shibe> BtbN: doesnt that create an additional copy though?
[21:31:28 CEST] <Shibe> first mapping the frame and then transfering?
[21:31:32 CEST] <BtbN> it wouldn't be called mapping then.
[21:31:58 CEST] <Shibe> BtbN: so it's zero-copy? how?
[21:32:03 CEST] <Shibe> ive never done something like this before
[21:32:31 CEST] <BtbN> by just not copying the frame, but mappingit
[21:32:52 CEST] <Shibe> oh
[00:00:00 CEST] --- Sat Jun 23 2018
1
0
[00:28:29 CEST] <boberz> Hello. I'm trying to connect an rtsp camera source to youtube live. ffmpeg seems to be running, but I'm not getting any video in youtube. In the console it's giving me what I think might be an error "Invalid UE golomb code". Any suggestions?
[04:41:45 CEST] <teratorn> trim filter is pretty fast right? like, way faster than anything that munges pixel data?
[04:41:57 CEST] <teratorn> is there any way to profile an ffmpeg filter-graph execution?
[07:05:00 CEST] <Hackerpcs> while trying to do a simple trimming, I want to cut from a key frame, using -ss before -i does start at a key frame but i can't specify end time, not output file duration with -t or -to
[07:06:12 CEST] <Hackerpcs> so cutting from 00:27 to 00:54 with -ss 00:27 before -i and -to/-t 00:54 after -i it results in a 54 second output file, not the desired 27sec one
[07:07:16 CEST] <Hackerpcs> putting -ss 0:27 after -i it does result in a 27sec file put it's cutting without regard to key frames so it may result in non-playable video in the start
[07:09:55 CEST] <Hackerpcs> i mean not non-playable video at all, just the time before the first key frame which may be some seconds
[07:10:07 CEST] <Hackerpcs> when the audio is playing only
[07:14:51 CEST] <Hackerpcs> also -copyts option as said here https://trac.ffmpeg.org/wiki/Seeking#Cuttingsmallsections results in wrong timestamps
[07:29:10 CEST] <Hackerpcs> so summarizing I want to cut with the faster option (ss before input) but specify end cutting time from the input, not the -to option working as duration
[09:59:46 CEST] <dragmore88> Hi, im looking at encoding longgops (4sec) for a little project here using ffmpeg/x264, and i also want to shoot in I frames when needed during hard scene changes. "rc-lookahead=48:keyint=96:min-keyint=48" gives me at 24fps what i need, but when i double the values i get wild results.. any tips ?
[11:36:43 CEST] <sk_tandt> Greetings! I'm trying to build a video out of some images, but for some reason I'm only seeing a black screen for the given framerate (e.g. 1.27s) and what I assume is the first pic of the glob for the rest of the video
[11:36:56 CEST] <sk_tandt> (Which does, however, have the correct duration)
[11:56:31 CEST] <zerodefect> As part of the build step, is there anyway to export the ff_draw famliy of functions from libavfilter?
[13:20:10 CEST] <barhom> Is "-s" a shortcut to "-vf scale=" ?
[13:20:17 CEST] <barhom> or what is the difference between the two?
[13:20:52 CEST] <barhom> Because I currently use "-s 720x576" to scale something. I dont use "-vf scale=720:576"
[13:26:52 CEST] <ariyasu_> you can use either
[13:53:25 CEST] <paulk-gagarine> hi there
[13:53:48 CEST] <paulk-gagarine> jkqxz, I'm wondering, what is the purpose of "av_opt_set_int(decoder_ctx, "refcounted_frames", 1, 0);" exactly?
[13:53:55 CEST] <paulk-gagarine> it's in the hw_decode example
[13:56:16 CEST] <barhom> ariyasu_: sure, but what is the difference?
[14:11:07 CEST] <kepstin> barhom: the -s option basically just ends up sticking a scale filter on the end of the filter chain
[14:11:21 CEST] <barhom> so its a shortcut
[14:11:33 CEST] <barhom> kinda
[14:11:58 CEST] <kepstin> pretty much, yeah.
[14:12:37 CEST] <kepstin> if you want the scale to happen at a particular spot in your filter chain, use the filter.
[14:18:52 CEST] <barhom> kepstin: Im changing now to filter because "-s" doesnt support keep aspect ratio
[14:19:03 CEST] <barhom> -1:720 is an invalid frame size
[15:05:47 CEST] <sk_tandt> Mh, I don't get why ffmpeg is generating a file which only shows the first of the images
[15:06:00 CEST] <sk_tandt> I've run the command with -loglevel debug, and it is opening every file
[17:34:29 CEST] <relaxed> sk_tandt: what's your command?
[17:36:06 CEST] <sk_tandt> The glob one was ffmpeg -framerate $(echo "$(find . | wc -l)/180" | bc -l) -pattern_type glob -i '*.jpg' -c:v libx264 -profile:v high -crf 20 -pix_fmt yuv420p ../video.mp4
[17:36:07 CEST] <sk_tandt> , but I tried a concat version too
[17:37:25 CEST] <kepstin> sk_tandt: and the output from the encode command? (probably with verbose loglevel is best, debug's kinda noisy)
[17:41:19 CEST] <sk_tandt> Just a second, I'll run it at verbose
[17:42:02 CEST] <sk_tandt> Where should I paste it?
[17:42:43 CEST] <kepstin> pastebin site of your choice, github gist, whatever.
[17:48:16 CEST] <sk_tandt> https://ghostbin.com/paste/f3g8q
[17:51:40 CEST] <kepstin> that's not from the command you said - this log is from something using concat input
[17:51:49 CEST] <kepstin> but that said, it looks like it's all working fine...
[17:57:27 CEST] <sk_tandt> Ops, sorry, launched the wrong version! Here's the glob one https://ghostbin.com/paste/7a5rh
[17:59:07 CEST] <kepstin> right, and that also seems fine. are you sure you're playing back the correct video, and that all of the input .jpg files are actually distinct? :)
[17:59:23 CEST] <sk_tandt> Yep, unfortunately
[17:59:44 CEST] <sk_tandt> I'll try playing the video on another pc
[18:00:08 CEST] <kepstin> it is actually inputting and encoding all the input frames, otherwise it would have stopped after encoding 1 frame
[18:01:18 CEST] <kepstin> 1.36fps is kinda low, but i wouldn't expect it to be an issue with most players
[18:44:31 CEST] <sk_tandt> And in the end, it was the playing PC
[18:44:36 CEST] <sk_tandt> Thanks for the rubber ducking!
[18:54:36 CEST] <saml> is there example of how to read two videos and feed them to filter graph that starts with overlay or scale2ref that takes two inputs?
[18:54:50 CEST] <saml> using C programming interface
[18:56:24 CEST] <JEEB> you have two lavf and lavc contexts and try to somehow sync their decoded sample PTS (if their clocks are already sync'd, great - otherwise you need to think of something)
[18:56:49 CEST] <JEEB> then for lavfi you can either use the examples that parse a string, or do it the long way where you init all filters separately by their IDs etc
[18:57:11 CEST] <JEEB> site:ffmpeg.org doxygen trunk KEYWORD is also recommended
[18:57:28 CEST] <saml> JEEB, oh you're in mpv as well
[18:57:47 CEST] <saml> thanks
[18:58:20 CEST] <JEEB> although if you just want to have two videos that are assumed to be synchronized, you might just want to look into vapoursynth and ffms2
[18:58:24 CEST] <JEEB> or just ffms2
[18:58:35 CEST] <JEEB> ffms2 is a frame-exact API on top of FFmpeg APIs
[18:58:43 CEST] <JEEB> as in, it creates and index
[18:58:46 CEST] <JEEB> *an index
[18:59:01 CEST] <JEEB> and then it's often used as a source filter in things like avisynth or vapoursynth
[18:59:04 CEST] <JEEB> -32
[18:59:45 CEST] <saml> hrm my goal is to send command to a filter (crop) inside filter graph
[19:01:18 CEST] <JEEB> so this is in the context of what exactly? since you usually then want to render that thing etc
[19:01:35 CEST] <saml> https://people.xiph.org/~xiphmont/demo/daala/update1-tool2b.shtml i'm trying to build this for videos
[19:02:58 CEST] <saml> i started with mpv scripting. but found no way to send filter command inside filter graph. or translate filter graph to plain --vf lists (problem is that first filter is scale2ref and mpv does not accept a filter that takes two inputs in --vf)
[19:03:10 CEST] <saml> so, i'm headed to write my own video player
[19:03:40 CEST] <saml> i'm referencing https://github.com/pockethook/player and ffmpeg doc/example
[19:04:08 CEST] <saml> and ffplay code. but they are all geared towards playing a single video
[19:04:31 CEST] <JEEB> you really don't want to create a Yet Another Player
[19:04:44 CEST] <JEEB> also pretty sure mpv had stuff to create a "complex" filter chain with lavfi
[19:05:12 CEST] <saml> JEEB, yeah, there is --lavfi-complex. But I cannot send filter command to a filter within the graph
[19:05:33 CEST] <saml> and re-setting filter graph is too laggy
[19:05:50 CEST] <JEEB> I'd say that probably is less bad of a problem to solve if you can at all send commands to lavfi filter chains
[19:06:12 CEST] <JEEB> and sometimes lavfi filter chains just have to be reset, yes. not sure if you are hitting that case, but sometimes it just needs that
[19:06:31 CEST] <saml> --lavfi-complex '[vid1][vid2]scale2ref[main][ref]; [main]crop@xcrop=w=200:x=0:y=0:keep_aspect=1[cropped]; [ref][cropped]overlay[vo]'
[19:06:56 CEST] <saml> that's the graph, and I tried to send filter command to crop filter (labeled xcrop)
[19:08:05 CEST] <JEEB> since it most likely wasn't implemented in the mpv filtering messaging stuff, I guess you found the required APIs to be able to pass the message through lavfi?
[19:08:14 CEST] <JEEB> because otherwise no matter what you're doing you're going to have that problem :P
[19:09:21 CEST] <saml> reading mpv source, I have a hard time where I get entry to lavfi graph. I do get mp_filter*, but not sure if it's lavfi
[19:10:42 CEST] <saml> anyways, maybe sending filter command to crop differently every time mouse moves, can be too slow
[19:10:46 CEST] <JEEB> you need to find the lavfi-bridging filter entry, and then somehow make it possible to message a filter in the chain of that filter in the mpv filter chain :P
[19:11:40 CEST] <saml> ah lavfi-bridging. that tells me something. thanks
[19:12:54 CEST] <JEEB> also I'm pretty sure at least partially the lavfi filter chain will have to be reset if the output frame size will change. although I'm not 100% sure. I know ffmpeg.c resets/re-inits the filter chain if resolution/pix_fmt etc change
[19:15:45 CEST] <saml> ah resolution won't change, i think. I'm cropping video A and overlaying it on video B. A and B are of same dimension
[19:16:03 CEST] <JEEB> yea but if your crop width/height/position changes :P
[19:16:09 CEST] <JEEB> then the output of the thing changes, no?
[19:18:52 CEST] <saml> oh maybe. i'll have to see. Maybe I'll make sure A and B have same dimension, crop A and B both so that A.width + B.width is always constant. then apply hstack
[19:29:34 CEST] <BovineOne> does ffmpeg support injecting "Spatial Media Metadata" into videos, or is using Google's python tool still the only way? https://github.com/google/spatial-media
[19:52:33 CEST] <boberz> Good day. I'm having a bit of a problem trying to use ffmpeg, getting "Too many packets buffered for output stream 0:0.", all search results indicate using -max_muxing_queue_size to work around this, but I've tried various values up to the maximum 2147483647; and I'm still receiving the error. Any suggestions? I'm using ffmpeg N-46347-g649d7ca47-static from yesterdays' git build.
[19:53:41 CEST] <boberz> on CentOS 7 with x264-0.148-11.20160614gita5e06b9.el7.x86_64 in case that matters
[20:09:10 CEST] <relaxed> boberz: command?
[20:22:24 CEST] <boberz> ffmpeg -i "$SOURCE" -deinterlace -vcodec libx264 -pix_fmt yuv420p -preset $QUAL -r $FPS -g $(($FPS * 2)) -b:v $VBR -acodec libmp3lame -ar 8000 -threads 6 -crf 23 -b:a 128k -bufsize 512k -max_muxing_queue_size 1024 -f flv "$YOUTUBE_URL/$KEY"
[20:23:15 CEST] <boberz> $VBR="1000k", $FPS ="30", $QUAL="medium"
[20:27:44 CEST] <kepstin> boberz: what's "$SOURCE"? is it a local file?
[20:28:00 CEST] <boberz> it's an rtsp URL
[20:29:00 CEST] <^Neo> hello friends, I see there's a EIA-608 codec, so given an H.264 with EIA-608 in EIA-708 in ITU-T user data, is there a way to extract the captions out using FFmpeg command line?
[20:29:42 CEST] <kepstin> boberz: can you pastebin the console output from running the command please? (remove your youtube key, of course)
[20:30:35 CEST] <boberz> yes, https://pastebin.com/cXf42XmE
[20:31:08 CEST] <JEEB> ^Neo: you mean the ATSC stuff? they're handled as side data, you get them either in the AVFrames out of the decoder or AVPackets in the demuxer
[20:31:37 CEST] <JEEB> so you then have to initialize the EIA-608/708 decoder and feed that side data to that decoder
[20:32:25 CEST] <kepstin> boberz: hmm, i wonder if the issue is that the framerate from the source camera is too low
[20:32:37 CEST] <^Neo> JEEB: Yes, ATSC A35 stuff. I see that for H.264 that's where it gets parsed, but there is a EIA-608 standalone decoder that I thought would have been usable.
[20:32:40 CEST] <boberz> kepstin, I'll try increasing it, that's easy enough to do :D
[20:32:57 CEST] <JEEB> ^Neo: the decoder is 100% stand-alone in libavcodec
[20:33:04 CEST] <boberz> oh. or not, 30 is the maximum value. at 720p
[20:33:05 CEST] <JEEB> so if you have valid data in the format that decoder takes in
[20:33:19 CEST] <JEEB> you can initialize the decoder and just feed those packets in
[20:33:19 CEST] <^Neo> JEEB: ok, but is it invokable from the CLI FFmpeg?
[20:33:30 CEST] <JEEB> ffmpeg.c you mean
[20:33:34 CEST] <JEEB> as opposed to the APIs
[20:33:35 CEST] <^Neo> yes
[20:33:41 CEST] <JEEB> probably not :P
[20:33:44 CEST] <^Neo> :D
[20:33:44 CEST] <boberz> Doesn't look like any option allows for more than 30 fps.
[20:33:59 CEST] <JEEB> ^Neo: ffmpeg.c is /really/ static
[20:34:23 CEST] <JEEB> also I'm not sure which input format raw ATSC captions would be in :P
[20:34:33 CEST] <JEEB> usually you have to extract them either from text files or scc or whatever
[20:35:37 CEST] <kepstin> boberz: hmm, 30fps should have been fine
[20:36:00 CEST] <boberz> Sometimes the youtube dashboard will show "starting" before ffmpeg dumps out, if that matters.
[20:36:04 CEST] <kepstin> i was thinking it might be really low (like <1fps) or something
[20:36:46 CEST] <boberz> before it drops out there's a status indicator with a frame count: frame= 103 fps= 61 q=0.0 size= 0kB time=-577014:32:22.77 bitrate= -0.0kbits/s dup=0 drop=54 speed=N/A
[20:37:00 CEST] <boberz> drops increments until it fails
[20:38:03 CEST] <kepstin> interesting. I thought you said the camera was 30fps, so why is it running at 60 there...
[20:38:55 CEST] <^Neo> JEEB: Roger that
[20:40:16 CEST] <boberz> I can say that the camera UI doesn't let me choose more than 30, and watching that status line it starts at a high number then falls with each update and when it hits approximately 30, that's when ffmpeg quits with 'conversion failed'
[20:41:05 CEST] <boberz> weird, that time the fps went *up* to ~160 before stopping
[20:41:15 CEST] <boberz> I don't know what that status indicator is really saying, though.
[20:41:26 CEST] <boberz> Would my key frame interval matter?
[20:41:30 CEST] <boberz> It's 30 right now.
[20:41:45 CEST] <boberz> It can be as low as 10 or as high as 100.
[20:43:07 CEST] <kepstin> boberz: hmm. that's the other thing, x264 can buffer a lot of frames internally. Maybe try it with "-tune zerolatency" and see if that helps
[20:45:23 CEST] <boberz> It appears to be running without stopping at the moment
[20:45:39 CEST] <boberz> now it stopped
[20:45:55 CEST] <boberz> it went a good 30-40 seconds instead of ~5
[20:46:35 CEST] <kepstin> hmm.
[20:47:02 CEST] <kepstin> "Too many packets buffered for output stream 0" implies that it's not getting packets fast enough from the other stream
[20:47:05 CEST] <boberz> I had tried the sub stream (VGA/15fps) as well, trying again with the main stream (720p/30)
[20:47:15 CEST] <kepstin> where 0 appears to be the video, so the audio might be the problem
[20:47:32 CEST] <boberz> There's no mic so the audio would just be dead air
[20:47:54 CEST] <boberz> but it does actually transmit an audio stream of dead air
[20:48:00 CEST] <kepstin> you should try using a generated silence stream (made with a filter) instead of the camera audio then
[20:49:41 CEST] <boberz> I turned the audio sample parameter up to 44100 from 8000, and got some different errors. "mb_type 52 in P slice too large at 51 12" and "error while decoding MB 51 12"
[20:50:27 CEST] <kepstin> hmm. those should just be warnings, i'd expect ffmpeg to error-conceal that and keep going.
[20:50:35 CEST] <boberz> it did seem to do so
[20:50:52 CEST] <boberz> Can I just drop the audio completely instead of generating silence?
[20:51:01 CEST] <kepstin> youtube live requires an audio stream
[20:53:10 CEST] <boberz> http://ffmpeg.org/ffmpeg-filters.html#anullsrc is this what i should be referencing?
[20:55:53 CEST] <saml> https://gist.github.com/saml/d32bb239825723ff83e76e9cd75164c6 how do I read this dump from avfilter_graph_dump()? I'm programmically creating filter graph "crop@xcrop=w=100:x=0:y=0" (plus buffer and buffersink)
[20:56:50 CEST] <JEEB> there's a buffer connected to an automatically inserted scaler
[20:57:02 CEST] <kepstin> boberz: the way I normally do it is to add an extra input to the ffmpeg command: "-f lavfi -i aevalsrc=0" will add an input that's just a silent audio stream
[20:57:04 CEST] <JEEB> then that is connected to crop
[20:57:19 CEST] <kepstin> boberz: then you can use the -map option to select the video from input 0 and audio from input 1
[20:57:42 CEST] <JEEB> crop is then connected to output
[20:58:22 CEST] <JEEB> saml: that function is indeed useful but it can indeed be hard to read. it lists each filter in the chain (as a box), and then the previous/next thing in the chain
[20:59:42 CEST] <JEEB> [in:buffer]-[auto_scaler_0:scale]-[xcrop:crop]-[out:buffersink]
[20:59:52 CEST] <JEEB> that's the full four filters in a single line :P
[21:02:06 CEST] <saml> ah so i'm doing it right. just crop doesn't seem to be working as I expected
[21:02:55 CEST] <boberz> trying that now kepstin, Option b:v (video bitrate (please use -b:v)) cannot be applied to input url aevalsrc=0
[21:03:46 CEST] <kepstin> boberz: you have some options out of order. general format is ffmpeg [input options] -i [input] [input options] -i [input] [output options] [output]
[21:05:18 CEST] <boberz> oh, I didn't understand that the order of options mattered.
[21:06:09 CEST] <kepstin> how else would it know which options belong to which input? (or which output, you can have multiple outputs too)
[21:06:34 CEST] <kepstin> and some options have the same name when used on an input or output, but do different things in each place.
[21:06:37 CEST] <boberz> I would assume by not duplicating parameters for input and output, but i don't know much aobut this software.
[21:06:47 CEST] <boberz> OK, I have video on youtube now!
[21:06:54 CEST] <boberz> huzzah!
[21:07:09 CEST] <boberz> So, it was the audio stream causing the problem.
[21:07:21 CEST] <kepstin> yeah, seems to be the case
[21:09:05 CEST] <boberz> The question now is whether I need to optimize this command any. For example, perhaps I don't need "-tune zerolatency -max_muxing_queue_size 1024"
[21:10:13 CEST] <kepstin> boberz: the -tune zerolatency may be helpful in reducing stream latency and avoiding buffering issues. The muxing queue size is probably unneeded.
[21:11:24 CEST] <boberz> https://pastebin.com/af5tqDuw that's my command as it stands currently
[21:12:07 CEST] <furq> don't use zerolatency for youtube
[21:12:31 CEST] <furq> also use aac, not mp3
[21:12:36 CEST] <^Neo> JEEB: riddle me this, do you know how to extract both fields of CC data from A53 SEI metadata for interlaced content?
[21:12:46 CEST] <^Neo> I see that I only get one field's worth of data
[21:12:50 CEST] <boberz> furq that'd be "libaac"?
[21:12:54 CEST] <kepstin> hmm, is it not helpful? I would have thought that x264's default buffering makes the stream kind of bursty which could cause issues
[21:12:59 CEST] <furq> boberz: just aac
[21:13:33 CEST] <kepstin> I suppose if you're using a sufficiently low gop size, zerolatency isn't that useful
[21:13:45 CEST] <furq> kepstin: youtube is turning it into hls anyway, so with bufsize set i don't see how it'd make any difference
[21:14:07 CEST] <boberz> is "medium" a sane -preset?
[21:14:08 CEST] <furq> other than the obvious difference that your rate-limited stream now has no cabac or bframes
[21:14:31 CEST] <furq> boberz: generally you should use the slowest thing you can tolerate
[21:14:34 CEST] <furq> but medium is ok
[21:14:37 CEST] <kepstin> boberz: it's the default, and it's pretty reasonable. If you have lots of idle cpu you can consider using a slower preset
[21:14:48 CEST] <boberz> I don't know enough to know what "you should use the slowest thing you can tolerate" means.
[21:15:02 CEST] <furq> -preset slow/slower/veryslow
[21:15:17 CEST] <boberz> "slow" as in the delay from camera to youtube?
[21:15:20 CEST] <furq> no
[21:15:21 CEST] <boberz> slow as in framerate?
[21:15:23 CEST] <furq> no
[21:15:27 CEST] <kepstin> boberz: for this case, that means "use the slowest preset where your computer can still encode at realtime speed"
[21:15:30 CEST] <furq> preset is the encoding complexity
[21:15:49 CEST] <furq> slower presets will spend more cpu time trying to compress the stream better
[21:16:02 CEST] <boberz> So slower would be higher compression ratios
[21:16:06 CEST] <furq> basically yeah
[21:17:05 CEST] <boberz> The machine is a vm guest, 8 vcpu on E5620 2.4Ghz processors, and I plan on running four streams.
[21:17:27 CEST] <furq> what resolution is the input
[21:17:27 CEST] <kepstin> well, you're using a target bitrate, so in theory the video might look a bit better while at the same compression ratio if you use a slower preset.
[21:17:48 CEST] <boberz> Should I not use a target bitrate?
[21:17:49 CEST] <kepstin> furq: 720p
[21:17:49 CEST] <saml> hrm, so crop filter outputs 100x270 but when I receive from buffersink, the frame dimension is 480x270
[21:18:15 CEST] <furq> also i take it you can't just send the input directly to youtube without reencoding
[21:18:22 CEST] <boberz> 720p30
[21:18:28 CEST] <saml> I wrote C. I'm leet https://github.com/saml/vabslider/blob/master/main.c
[21:18:28 CEST] <kepstin> furq: input is rtsp ip camera :/
[21:18:46 CEST] <kepstin> it might work with -c:v copy, could be worth a try actually
[21:19:00 CEST] <furq> i mean you wouldn't be able to deinterlace it then, but i'd still try that
[21:19:26 CEST] <kepstin> i'm curious about that, i've never seen any interlaced 720 line stuff
[21:19:44 CEST] <boberz> furq, no I think I have to have a layer to pull from the camera then push to youtube. The camera can't push, and youtube can't pull.
[21:19:53 CEST] <kepstin> boberz: are you sure the camera's actually giving you interlaced video?
[21:19:57 CEST] <furq> boberz: that doesn't mean you have to reencode
[21:20:07 CEST] <furq> if your camera outputs h264 then you can just have ffmpeg push that stream to youtube
[21:20:09 CEST] <boberz> I would assum eit's not
[21:20:19 CEST] <boberz> that probably means i should remove -deinterlace
[21:20:37 CEST] <kepstin> boberz: right, then you don't need the "-deinterlace" option, and you should try replacing all the video codec options with "-c:v copy"
[21:21:05 CEST] <furq> ffmpeg -i $SOURCE -f lavfi -i anullsrc -c:v copy -c:a aac -f flv $YOUTUBE_URL/$KEY
[21:21:13 CEST] <furq> it's worth a try
[21:21:47 CEST] <boberz> giving it a stab
[21:22:24 CEST] <boberz> haven't seen this one before [rtsp @ 0x613cc40] Thread message queue blocking; consider raising the thread_queue_size option
[21:22:37 CEST] <boberz> but it's pushing to youtube, quality is quite poor though.
[21:22:39 CEST] <furq> you can usually ignore that message
[21:22:53 CEST] <boberz> oh, my player went to 144
[21:22:54 CEST] <boberz> lol
[21:23:05 CEST] <boberz> putting it back to 720p it looks good
[21:23:30 CEST] <furq> well yeah you'll notice that's hardly using any cpu
[21:23:32 CEST] <boberz> 4-8% cpu load
[21:23:38 CEST] <boberz> yeah very little, that's excellent
[21:23:39 CEST] <kepstin> this stream is probably somewhat higher bitrate than you were using before, but as long as your connection's fast enough that's not an issue.
[21:23:56 CEST] <boberz> Yes, the server is in my datacenter... we're an ISP
[21:24:34 CEST] <boberz> so, 1G AT&T MIS fiber ought to do it. The only choke point is the wireless link down to where the cameras are, but it's still pretty fast
[21:24:50 CEST] <boberz> (as in around 100Mbps)
[21:25:16 CEST] <boberz> A yellow dot on stream health is probably because there's no audio, i'd guess?
[21:25:26 CEST] <boberz> or rather, silent audio.
[21:26:35 CEST] <furq> youtube is a mystery
[21:26:49 CEST] <kepstin> https://support.google.com/youtube/answer/3006768?hl=en has some discussion of possible causes
[21:27:06 CEST] <kepstin> it looks like it should have an actual error message somewhere on the management panel
[21:27:22 CEST] <boberz> [flv @ 0x619ed00] Non-monotonous DTS in output stream 0:0; previous: 280566, current: 280546; changing to 280566. This may result in incorrect timestamps in the output file.
[21:27:35 CEST] <boberz> i'm seeing this ocassionally and it seems to be accompanied by a video glitch in the player
[21:31:20 CEST] <kepstin> boberz: that's likely a problem with out-of-order frames received from the camera. You could try setting the -record_queue_size option in the input.
[21:31:41 CEST] <kepstin> (takes a number of packets to buffer)
[21:34:09 CEST] <boberz> that option appears to not be valid
[21:34:48 CEST] <boberz> "Unrecognized option 'record_queue_size'."
[21:35:46 CEST] <kepstin> er, typo
[21:35:52 CEST] <kepstin> "-reorder_queue_size" :)
[21:35:59 CEST] <kepstin> see https://www.ffmpeg.org/ffmpeg-protocols.html#rtsp
[21:42:18 CEST] <^Neo> what's the preferred way of programming avcodecontext flags?
[21:42:26 CEST] <^Neo> just |'ing them?
[21:42:29 CEST] <^Neo> or is there a set?
[21:43:35 CEST] <JEEB> you mean setting AVOptions?
[21:43:51 CEST] <JEEB> I haven't really had to set too many things at least in decoding
[21:47:51 CEST] <boberz> I think the video hitches are either the cameras or the network, because i see it in the camera direct admin player
[21:48:48 CEST] <JEEB> sounds like you need something dynamic that tries to figure out how insane your input is and tries to normalize it
[21:49:08 CEST] <JEEB> and also tries to just output something pre-generated if the input signal goes wo-hoops
[21:49:28 CEST] Action: JEEB has been looking into upipe for some use cases
[21:49:32 CEST] <boberz> i wonder if it's unhappy to be sending multiple streams, i should try stopping wowza
[21:52:40 CEST] <boberz> There was mention of multiple outputs earlier. Could I also output to a file in order to archive?
[21:53:37 CEST] <furq> -i foo -c copy output1 -c copy output2 ...
[21:53:55 CEST] <furq> bear in mind both outputs will drop if one of them does
[21:54:29 CEST] <boberz> so a full disk would make the livestream stop, and a drop in connectivity to the googleplex would cause the disk output to stop
[21:54:34 CEST] <furq> right
[21:54:54 CEST] <boberz> Not unreasonable for my use case
[21:55:59 CEST] <boberz> I might need to put some more research in to that though, such as chunking the output to filesystem by hour, file rotation, etc, etc
[21:56:41 CEST] <boberz> that'd just be handy, though; it's not a use case requirement.
[22:02:50 CEST] <kepstin> ffmpeg's segment muxer can be used for chunked output
[22:19:56 CEST] <clovisw> Hi exists any cookbook with ready commands to test transcoding? like got one source and convert to 1080p, 720p, 480p and 360p 16:9 ?
[22:28:14 CEST] <boberz> furq, JEEB, kepstin thank you for your help in getting ffmpeg camera->youtube live up and running
[22:28:32 CEST] <boberz> It appears to be working as well as the cameras are (they're not exactly high end)
[22:44:19 CEST] <boberz> Should I be able to use this same mechanism to go to facebook live as well?
[22:44:45 CEST] <kepstin> it's probably fairly similar, but you'd have to look up if they have any specific requirements
[23:24:35 CEST] <saml> https://github.com/saml/vabslider/blob/38f70f8cd65e8349d227ad9f5d5800b88dd2… what's difference between av_buffersrc_add_frame and *_flags with AV_BUFFERSRC_FLAG_KEEP_REF ?
[23:54:35 CEST] <SoItBegins> Has anyone made a FFMPEG codec module for Mobiclip videos?
[23:54:53 CEST] <SoItBegins> (Note: Mobiclip is a video format used by various Nintendo video games.)
[23:56:10 CEST] <furq> doesn't look like it
[23:56:33 CEST] <SoItBegins> Thats a shame. Thank you.
[00:00:00 CEST] --- Sat Jun 23 2018
1
0
[01:39:08 CEST] <cone-912> ffmpeg 03Danil Iashchenko 07master:714da1fd898f: lavfi: Add boxblur_opencl filter
[02:23:33 CEST] <cone-912> ffmpeg 03Ruiling Song 07master:8b8b0e2cd26c: lavfi: add opencl tonemap filter
[02:23:34 CEST] <cone-912> ffmpeg 03Ruiling Song 07master:649d7ca47780: lavfi: make vf_colorspace use functions from colorspace.c
[04:36:00 CEST] <Compn> https://answers.microsoft.com/en-us/windows/forum/windows_10-networking-win…
[04:36:02 CEST] <Compn> hah
[06:15:16 CEST] <atomnuker> jkqxz: what was I supposed to do to finish the vulkan patchset?
[06:15:27 CEST] <atomnuker> also could you please review the rest of the patches?
[08:05:21 CEST] <cone-532> ffmpeg 03Gyan Doshi 07master:deb9a04d5404: avformat/movenc: allow hdlr name field to be empty
[12:29:53 CEST] <January> Compn: it's really annoying that you have to have a microsoft account to check answers.microsoft.com
[12:45:16 CEST] <jdarnley> January: are you sure about that? I can see that question and 3 replies.
[12:45:56 CEST] <January> jdarnley: doesnt let me past without loggin in
[12:46:41 CEST] <jdarnley> Shame.
[12:46:50 CEST] <jdarnley> > Also, it is best if you only download files, apps, and plugins from trusted sources to help protect your computer and your data on it.
[12:46:57 CEST] <jdarnley> I trust ffmpeg more than MSFT
[12:48:35 CEST] <jdarnley> Typical user support rubbish. "You are doing something you shouldn't be. Please hold to sactioned actions. Thank you."
[14:07:51 CEST] <KGB> [13FFV1] 15retokromer opened pull request #117: update link (06master...06patch-1) 02https://git.io/fWbil
[16:01:27 CEST] <mateo`> Hello there, i'm currently looking at the code handling the display matrices in lavf/mov.c: it looks like we apply the movie display matrix after the track display matrix, is it something said by the spec ?
[16:01:42 CEST] <mateo`> this behaviour has been introduced by 7010ebdf1ff7514fa505ff166fb60ce762a46b8b
[17:36:50 CEST] <cone-934> ffmpeg 03Rostislav Pehlivanov 07master:7062e4dbc824: hwcontext_internal: add ff_hwframe_map_replace
[17:36:51 CEST] <cone-934> ffmpeg 03Rostislav Pehlivanov 07master:a2613647c4f4: hwcontext_opencl: use ff_hwframe_map_replace()
[17:44:18 CEST] <atomnuker> grr, when will someone fix ffmpeg.c pre-skip handling
[17:44:19 CEST] <atomnuker> honestly
[17:44:30 CEST] <atomnuker> we're getting bugs opened once every few months
[17:44:34 CEST] <atomnuker> people are getting confused too
[17:45:05 CEST] <nevcairiel> patches go that way ->
[17:45:21 CEST] <atomnuker> don't tell me that as if I haven't tried!
[17:45:29 CEST] <atomnuker> I did try a year ago and I couldn't
[17:45:44 CEST] <nevcairiel> that guy claims it doesnt affect libopus, so what is that doing right
[17:46:29 CEST] <atomnuker> libopus handles preskip for you rather than using side data and letting users handle it
[17:46:54 CEST] <nevcairiel> doesnt the generic avcodec decoding code handle that anyway
[17:47:19 CEST] <atomnuker> no, I don't think so
[17:47:39 CEST] <nevcairiel> my avcodec decoder implementation definitely works though, and i dont have any manual handling of pre skip or endtrimming in my code
[17:47:47 CEST] <nevcairiel> no beepings
[17:48:00 CEST] <atomnuker> with that sample?
[17:48:02 CEST] <nevcairiel> but maybe ffmpeg.c specifically disables that for arcane reasons
[17:48:02 CEST] <nevcairiel> yea
[17:48:37 CEST] <atomnuker> I don't think its able to be disabled
[17:49:38 CEST] <nevcairiel> you can set AV_CODEC_FLAG2_SKIP_MANUAL to disable the automatic
[17:50:30 CEST] <atomnuker> well, ffmpeg.c doesn't set it
[17:51:23 CEST] <JEEB> I think ffmpeg.c fully looks at the starting timestamp, and if it's negative AND the output container (f.ex. wav) doesn't support negative timestamps it will laugh and start the whole thing at zero
[17:51:38 CEST] <JEEB> instead of skipping until zero PTS
[17:51:50 CEST] <nevcairiel> that might be possible
[17:52:20 CEST] <nevcairiel> although the decode.c logic seems to physically eat the samples
[17:54:15 CEST] <JEEB> ok, not sure then - I just remember that being how the ffmpeg.c behavior looked like
[17:56:32 CEST] <atomnuker> btw jkqxz: do you have me on ignore or something?
[18:52:05 CEST] <Compn> January : really? lol
[18:52:18 CEST] <Compn> 11:56] <atomnuker> btw jkqxz: do you have me on ignore or something?
[19:07:39 CEST] <January> Compn: yeah it's super weird
[19:41:58 CEST] <cone-934> ffmpeg 03Carl Eugen Hoyos 07master:af1e70dd664e: lavc/dpx: Support 12-bit packing method b (msbpad).
[19:41:59 CEST] <cone-934> ffmpeg 03Carl Eugen Hoyos 07master:061e326b60ea: lavc/dpx: Support 10-bit packing method b (msbpad).
[22:11:29 CEST] <uau> an mpv crash that a user hit brought up that libsmbclient is not thread safe, and actually very likely to crash if used from multiple threads (it has global state that easily causes a crash if accessed from multiple threads)
[22:12:23 CEST] <uau> that makes its use in a library like ffmpeg especially questionable (since it'll conflict with libsmbclient use anywhere else in the program)
[22:27:46 CEST] <thardin> can it be plugged with mutexes?
[22:30:17 CEST] <uau> multiple uses of the ffmpeg avio layer could be fixed by a global mutex - but for a library that would not be a full solution, since the mutex could not affect uses elsewhere
[22:31:57 CEST] <thardin> just thinking a stop gap
[22:32:14 CEST] <thardin> better would of course be to fix libsmbclient
[22:33:17 CEST] <uau> for example even if mpv added a mutex workaround to make sure its own stream layer did not trigger the issue, ffmpeg using libsmbclient would likely still trigger the issue if someone tried to use a command like "mpv smb://file1.mkv --o=smb://file2.mkv"
[22:34:14 CEST] <uau> the --o means encoding the output, and since this uses ffmpeg encoders, it also uses avio output - so this would still likely cause a crash, since no one mutex would cover both the reading of file file1.mkv with mpv stream layer and writing of file2.mkv through ffmpeg
[22:35:56 CEST] <uau> looking at libsmbclient code, it seems to be a fairly thin wrapper around other samba code which does not have the thread-safety issue
[22:36:19 CEST] <uau> so from that perspective a fix should be pretty easy
[22:37:04 CEST] <uau> but on the other hand, it seems that the software i checked in debian all seems to depend on libsmbclient rather than using samba through any other API
[22:37:36 CEST] <uau> so maybe there could be some issues with the availability/standardization or whatever of the other samba libs?
[22:37:43 CEST] <JEEB> could be
[22:37:45 CEST] <uau> of course it could just be people being stupid too
[22:37:50 CEST] <JEEB> or that
[22:38:01 CEST] <JEEB> "I mean it's the client library, right?"
[23:05:37 CEST] <uau> actually it looks like libsmbclient actually implements a saner API with context variables, and internally uses that
[23:05:57 CEST] <uau> but then there's a old=compatibility wrapper that is a thin layer which adds the globals and makes it thread-unsafe
[23:06:04 CEST] <uau> and that wrapper is the only part exported???
[23:10:19 CEST] <uau> or do you have to use those weird get/set functions but can still access the functionality through those...
[23:15:15 CEST] <uau> ok seems that the ffmpeg implementation is just using the wrong API - you can access then context-using functions (though for some reason the public API hides them behind clumsy getter functions)
[23:17:59 CEST] <uau> smbc_open = smbc_getFunctionOpen(smb_context);
[23:18:24 CEST] <uau> smbc_open(smb_context, url, access, 0666);
[23:18:32 CEST] <uau> instead of current
[23:18:38 CEST] <uau> smbc_open(url, access, 0666);
[00:00:00 CEST] --- Fri Jun 22 2018
1
0
[00:15:55 CEST] <Elronnd\srn> does anyone know how I can extract frames of a video with ffmpeg's c api? Googling only shows how to do it from the cli
[00:21:39 CEST] <JEEB> 1) open lavf context for reading the coded stuff (streams) from a file (AVPackets received) 2) open lavc context for the format in lavf context and use the feed/receive API to get AVFrames
[00:21:46 CEST] <JEEB> see under docs/examples
[00:21:51 CEST] <JEEB> the transcoding one for example
[00:26:16 CEST] <Elronnd\srn> ok
[00:30:51 CEST] <JEEB> and before you find "av_read_frame"
[00:30:59 CEST] <JEEB> that, yes, is a very misleading name
[00:31:04 CEST] <JEEB> since it returns AVPackets
[00:31:39 CEST] <JEEB> https://ffmpeg.org/doxygen/trunk/group__lavf__decoding.html#details
[00:31:41 CEST] <JEEB> lavf
[00:32:32 CEST] <JEEB> and then the actual lavc decoding/encoding (AVpackets to AVFrames and back) part https://www.ffmpeg.org/doxygen/trunk/group__lavc__encdec.html
[01:51:36 CEST] <kevev> Howdy
[01:52:20 CEST] <kevev> Any way to send a text stream of closed captioning to ffmpeg for embedding in a video stream? This will need to be closed captioning and not open captioning.
[01:52:36 CEST] <kevev> cea-708/eia-708
[01:52:42 CEST] <kevev> Thanks in advance :)
[01:58:39 CEST] <jkqxz> kevev: Make the CEA-708 stream (at the cc_data_pkt level), attach it to your input frames as AV_FRAME_DATA_A53_CC, then encode with an encoder supporting that (libx264) and you'll get A/53-style closed captions in the output.
[02:00:58 CEST] <kevev> jkqxz: Thanks, but I don't understand. :(
[02:04:11 CEST] <jkqxz> Which part?
[02:08:55 CEST] <kevev> jkqxz: cc_data_pkt level, AV_FRAME_DATA_A53_CC
[02:10:20 CEST] <jkqxz> Is your input just text associated with frames, or do you have it in CEA-708 packets?
[02:11:55 CEST] <jkqxz> You need to get it into the CEA-708 packet format, specifically a series of the 3-byte cc_data_pkt elements.
[02:13:30 CEST] <jkqxz> You then attach it to the input frames using the side-data API, the type of that side-data being AV_FRAME_DATA_A53_CC.
[02:18:41 CEST] <kevev> jkqxz: We output SDI or h264 stream.
[02:19:14 CEST] <kevev> Hoping to use https://webcaptioner.com/
[02:19:59 CEST] <kevev> Working with the developer of Web Captioner to see if it can output a text stream that is compatible.
[02:37:13 CEST] <jkqxz> That site isn't doing anything with video, right? So you want to get the text stream from it to add to a video stream you already have?
[02:48:57 CEST] <kevev> jkqxz: Yes correct.
[03:13:16 CEST] <YokoBR> hi there
[03:13:48 CEST] <YokoBR> is there any way to generate an mp4 file by inserting chunks on the ffmpeg proccess?
[03:14:17 CEST] <YokoBR> I mean, spawn a proccess and inject stdin with vp8 or vp9 webm to generate a mp4 file
[03:15:09 CEST] <YokoBR> currently I'm doing this by inserting the chunks on an open file, then converting it to mp4.
[03:15:23 CEST] <YokoBR> but it takes more time than I've expected
[03:35:19 CEST] <kevev> jkqxz: Did you see my message?
[04:33:05 CEST] <hotbobby> is there any way to continue streaming even if you get a "WriteN, RTMP send error 104 "
[04:33:27 CEST] <hotbobby> it doesnt make sense this error is fatal because its not as though the server is no longer available
[07:56:08 CEST] <squ> how to record video from .jpg file from webcam
[07:56:51 CEST] <squ> http://abell.as.arizona.edu/~hill/AllSkyCurrentImage.JPG
[08:29:05 CEST] <Jonno_FTW> anyone got experience running ffmpeg on an rpi3?
[08:29:38 CEST] <Jonno_FTW> I'm trying to do a youtube livestream from an ip camera but it's stuck at "Starting"
[09:07:16 CEST] <squ> I think odroid would be more appropriate
[09:08:20 CEST] <kalidasya> hi, is there a way to get info with ffmpeg about non media streams? I have a TS with a custom stream in it (with psi only) and I want to at least see it if its there
[09:08:27 CEST] <kalidasya> I meant ffprobe
[09:08:31 CEST] <kalidasya> its morning here :)
[09:08:50 CEST] <Mavrik> It should show it as at least "unknown"
[09:09:39 CEST] <kalidasya> really? but it does not. I see it sees the PID
[09:10:11 CEST] <kalidasya> its PSI packets only
[09:10:56 CEST] <kalidasya> the only indication I see that it is there if I change the loglevel: `[mpegts @ 0xf26be0] Filter: pid=0x46
[09:10:56 CEST] <kalidasya> `
[09:11:12 CEST] <kalidasya> but nothing listed at the end
[09:11:37 CEST] <kalidasya> maybe because it has no pes packet?
[11:12:34 CEST] <squ> repeating my question
[11:12:57 CEST] <squ> how to make video from .jpg http://abell.as.arizona.edu/~hill/AllSkyCurrentImage.JPG
[11:13:23 CEST] <squ> I'm using -loop 1 and -framerate at the moment
[11:16:24 CEST] <squ> how are -rate and -framerate different?
[11:16:54 CEST] <squ> let's say I want it to request webcam 1 time each second
[11:17:17 CEST] <squ> and make video where that 1 frame is 1 second
[11:17:39 CEST] <squ> or 2 frames is 1 second
[11:20:46 CEST] <paulk-gagarine> hi there
[11:21:03 CEST] <paulk-gagarine> is anyone around here familiar with using hwdevice/hwframe for VAAPI
[11:21:15 CEST] <paulk-gagarine> in order to do DRM_PRIME mapping
[11:21:24 CEST] <paulk-gagarine> by any chance?
[11:21:45 CEST] <paulk-gagarine> I'm not really sure about the sequence of calls and I can't really find any example out there
[11:21:52 CEST] <jkqxz> Yes.
[11:22:45 CEST] <jkqxz> What do you want to do?
[11:24:25 CEST] <paulk-gagarine> one sec, pasting code
[11:24:54 CEST] <paulk-gagarine> jkqxz, the idea is to end up with a DRM Prime ffmpeg format
[11:24:59 CEST] <paulk-gagarine> for vaapi
[11:25:11 CEST] <paulk-gagarine> jkqxz, I'm doing this: http://leonov.paulk.fr/collins/~paulk/paste/index.php?paste=51a291824b73ad8…
[11:26:51 CEST] <jkqxz> How are you setting up the AVCodecContext?
[11:27:20 CEST] <paulk-gagarine> m_pCodecContext = avcodec_alloc_context3(pCodec);
[11:27:34 CEST] <jkqxz> If you set AVCodecContext.hw_device_ctx only then libavcodec creates the output frames context internally on that device.
[11:28:07 CEST] <jkqxz> If you want to use a frames context you created yourself then you need to set AVCodecContext.hw_frames_ctx in the get_format() callback.
[11:28:07 CEST] <paulk-gagarine> oh so that's one part I'm missing already!
[11:28:26 CEST] <paulk-gagarine> jkqxz, can the frames context be created automatically for me?
[11:29:39 CEST] <jkqxz> Yes.
[11:30:27 CEST] <jkqxz> I suggest looking at the hw_decode example in doc/examples/hw_decode.c for that case.
[11:38:22 CEST] <paulk-gagarine> will do, thanks jkqxz
[11:38:29 CEST] <paulk-gagarine> I'll get back to you if I have more questions :)
[11:55:29 CEST] <sado> Hello, where I can download the source of ffmpeg without git and it's possible to compile a ffmpeg version with all libraries, which exist for ffmpeg ?
[11:56:49 CEST] <twnqx> i am for some annoying reason trying to convert my flac collection to alac. the flacs all have cover art embedded. ffmpeg can read cover art from existing alac files, where it has been added with itunes. however, it claims it doesn't know a codec id for mjpeg cover art in .m4a when writing: https://pastebin.com/BCi8SNYR - any ideas?
[12:01:28 CEST] <twnqx> oh, i see there's an open issue that has been closed 2 months ago...
[12:03:32 CEST] <twnqx> well, and fixed last friday.
[12:03:45 CEST] <twnqx> is there already a release out with that, or do i have to switch to git?
[12:05:42 CEST] <sado> Are these the supported libs only ? --> https://www.ffmpeg.org/general.html
[12:09:51 CEST] <sado> Can I get an answer pls ?
[12:29:55 CEST] <hao> how to compile ffmpeg with enabling ffmpeg?
[12:30:03 CEST] <hao> ./configure --prefix=/home/hao/repo/Transcoder/Release/ffmpeg --enable-shared --enable-demuxer='mpegts,mpegvideo,image2' --enable-muxer=mpegts --enable-protocol='file,udp,rtp,srt' --enable-filter=overlay --enable-zlib --enable-libsrt --disable-doc
[12:30:13 CEST] <hao> libavformat/libsrt.c:24:10: fatal error: srt/srt.h: No such file or directory #include <srt/srt.h>
[12:30:29 CEST] <hao> how to compile ffmpeg with enabling libsrt
[13:32:18 CEST] <sado> Are these the supported libs only ? --> https://www.ffmpeg.org/general.html
[13:38:19 CEST] <jkqxz> Supported in what sense? There are a lot of usable external libraries; "configure --help" should list everything.
[13:48:23 CEST] <sado> ah thy :D
[13:51:32 CEST] <paulk-gagarine> jkqxz, I'm still very confused about the API and the example does not cover my use case :(
[13:51:41 CEST] <paulk-gagarine> jkqxz, more specifically, am I supposed to use av_hwframe_get_buffer for my use case?
[13:52:02 CEST] <paulk-gagarine> and if so, should I do it every time I want to decode a frame, or just once at first?
[13:52:14 CEST] <paulk-gagarine> It's rather unclear what role each function plays
[13:58:16 CEST] <jkqxz> If you use the method where you only provide the device (as in that example), then the decoder will return AV_PIX_FMT_VAAPI frames from a frames context it created internally on the device you gave it.
[13:58:26 CEST] <jkqxz> You don't need to deal with get_buffer in that case.
[14:00:15 CEST] <paulk-gagarine> jkqxz, but I can't do that if I want DRM_PRIME format in the end, right>
[14:00:17 CEST] <paulk-gagarine> ?
[14:00:32 CEST] <paulk-gagarine> my whole goal is to use the map function to translate AV_PIX_FMT_VAAPI to AV_PIX_FMT_DRM_PRIME
[14:01:03 CEST] <paulk-gagarine> sofar, I understood that I need hw device and hw frames
[14:01:05 CEST] <paulk-gagarine> for that
[14:01:56 CEST] <atomnuker> yes, the most correct way is to create a device ref and frames ref, attach them to an avframe with pix format of drm_prime and them map the vaapi frame to the drm frame
[14:02:13 CEST] <jkqxz> You want AV_PIX_FMT_VAAPI frames out of the decoder. You then map them to AV_PIX_FMT_DRM_PRIME after.
[14:02:22 CEST] <jkqxz> Or at least, that's what you'll get in this case.
[14:02:31 CEST] <paulk-gagarine> do I need two distinct frames then?
[14:02:45 CEST] <paulk-gagarine> one for getting VAAPI out of the encoder and one for the mapping result?
[14:03:02 CEST] <jkqxz> If you need the mapping the other way around (you start with DRM objects and want to VAAPI decode to them) that is also possible but needs to use a slightly different API.
[14:03:03 CEST] <paulk-gagarine> (two distinct AVFrame)
[14:03:15 CEST] <paulk-gagarine> right, I'm only interested in decode at this point
[14:03:22 CEST] <paulk-gagarine> so one way will do
[14:03:51 CEST] <jkqxz> Yes, you have two distinct AVFrame structures, one of each type. (Which you pass to av_hwframe_map().)
[14:04:58 CEST] <paulk-gagarine> and in order to set the type, I just have to alloc and manually set frame->format for the dst frame?
[14:05:10 CEST] <paulk-gagarine> (to DRM_PRIME)
[14:07:14 CEST] <atomnuker> yes
[14:08:38 CEST] <paulk-gagarine> thanks
[14:08:43 CEST] <paulk-gagarine> and which frame needs hw_frames_ctx set?
[14:11:21 CEST] <atomnuker> both, the vaapi one with vaapi's hw_frames_ctx and the drm one with the drm frames context
[14:11:53 CEST] <paulk-gagarine> wait, so I need two hw frame context?
[14:12:43 CEST] <paulk-gagarine> I only have one for VAAPI
[14:12:51 CEST] <paulk-gagarine> or do I just take two refs
[14:12:55 CEST] <paulk-gagarine> from the VAAPI one
[14:14:48 CEST] <paulk-gagarine> I definitely don't need to mmap the frame in the end
[14:15:29 CEST] <paulk-gagarine> atomnuker, jkqxz: is a drm hw frame context required, even if only to satisfy API requirements?
[14:15:37 CEST] <paulk-gagarine> I supposed I had misunderstood what mapping does
[14:15:54 CEST] <paulk-gagarine> I thought it was mapping between formats, but maybe it's mapping between hw frame contexts?
[14:16:30 CEST] <paulk-gagarine> I'd love some clarification here, sorry I'm so confused about all this :)
[14:20:07 CEST] <atomnuker> for maximum correctness, yes, its required, though you should be able to just set the drm prime pixformat on the second frame and map it
[14:21:37 CEST] <ariyasu_> https://i.imgur.com/LYE0aIx.jpg
[14:21:47 CEST] <ariyasu_> anyone know why my subs display out of order?
[14:22:04 CEST] <ariyasu_> using ffmpeg to go from .vtt to .srt or .ass causes them to display like this
[14:26:23 CEST] <paulk-gagarine> atomnuker, thanks -- also, what should I set as sw_format and format for the DRM hw frames context? both to AV_PIX_FMT_DRM_PRIME?
[14:28:43 CEST] <atomnuker> no, the sw format should match the vaapi swformat
[14:29:37 CEST] <paulk-gagarine> ok
[14:29:38 CEST] <paulk-gagarine> thanks
[14:29:42 CEST] <CoreX> ariyasu_ have you tried using subtitle edit
[14:29:54 CEST] <CoreX> also what version of ffmpeg are you using
[14:30:13 CEST] <ariyasu_> just testing with subtitle edit now
[14:30:44 CEST] <ariyasu_> im using the latest windows build from zeranoe
[14:30:46 CEST] <paulk-gagarine> atomnuker, is there a way to enumerate what mappings exist between two hw frame contexts?
[14:30:48 CEST] <jkqxz> paulk-gagarine: If you need the matching DRM device/frames contexts they can be made with av_hwdevice_ctx_create_derived() / av_hwframe_ctx_create_derived().
[14:31:15 CEST] <CoreX> if you use an older build and its fine then its something to do with the newer build
[14:31:23 CEST] <jkqxz> In the general case that is required, but since DRM doesn't need it you can shortcut it if you never intend to use this code for anything else.
[14:31:57 CEST] <paulk-gagarine> jkqxz, ahh, so I can create a hwframe context for VAAPI and then derive it with the drm hw device?
[14:32:02 CEST] <jkqxz> There is no way to enumerate what mappings are supported in general - it's basically just "try it and see".
[14:32:11 CEST] <jkqxz> Yes.
[14:32:54 CEST] <paulk-gagarine> jkqxz, alright, noted
[14:34:37 CEST] <atomnuker> you should really avoid deriving any devices from the drm device context
[14:34:48 CEST] <atomnuker> because for the drm device context you need to be root
[14:36:03 CEST] <paulk-gagarine> atomnuker, that's the case here
[14:37:44 CEST] <atomnuker> well, if you've got the display fd open go ahead and populate it
[14:38:07 CEST] <atomnuker> alloc a drm device context via av_hwdevice_ctx_alloc(), plug the fd in hwctx->fd and call init av_hwdevice_ctx_init
[14:41:20 CEST] <ariyasu_> i got it working with subtitle edit and merging same timestamps, https://i.imgur.com/frQ2cGW.png
[14:41:20 CEST] <jkqxz> [That fd isn't actually necessary for this case, you can just not set it.]
[14:41:22 CEST] <ariyasu_> thaniks CoreX
[14:45:55 CEST] <atomnuker> jkqxz: yes, I already menioned that 2 times
[14:46:05 CEST] <atomnuker> plz review my patches
[14:53:02 CEST] <paulk-gagarine> ok so with all that stuff setup, I'm now at avcodec_receive_frame
[14:53:16 CEST] <paulk-gagarine> and the populated frame has ->format == 0
[14:58:11 CEST] <paulk-gagarine> atomnuker, jkqxz: anything else I should be doing?
[14:58:29 CEST] <paulk-gagarine> between avcodec_receive_frame and av_hwframe_map
[14:59:19 CEST] <paulk-gagarine> oh wait, I think I inverted something
[15:30:13 CEST] <jkqxz> paulk-gagarine: Have you set a get_format() callback like the example does? That is required, because it doesn't know it has to give you VAAPI frames unless you tell it.
[15:30:55 CEST] <jkqxz> (Make sure the VAAPI format is actually in the list - if you give it an unsupported stream then it won't be (e.g. 10-bit H.264), and only software decode will work in that case.)
[15:38:18 CEST] <paulk-gagarine> jkqxz, oh okay, I wasn't doing that
[15:38:18 CEST] <paulk-gagarine> thanks
[15:40:38 CEST] <MindSpark> hi, I tried asking this in mplayer, but this channel seems to be more active. I have a very slow CPU and a GoPro video which I would like to play using mplayer. It plays very slowly and I am thinking if I can scale down the video before playing it that would help.
[15:41:00 CEST] <MindSpark> Does anyone know what options I should pass to lessen the processing to render it as much as possible?
[15:41:45 CEST] <Mavrik> You'd like to do that in realtime?
[15:45:11 CEST] <iive> that's not what you asked in mplayer :P
[16:26:18 CEST] <MindSpark> Mavrik, what I mean is that I don't want to convert to another file and then [;lay that file, but rather encode it and play it at the same time
[16:26:45 CEST] <Mavrik> MindSpark: yeah, decoding and resampling will be more expensive than just decoding and playing it :)
[16:26:55 CEST] <Mavrik> MindSpark: don't you have a hardware video decoder in your machine?
[16:28:51 CEST] <MindSpark> I doubt it. It's a EEE Pc, probably first gen, with a 1.6Gh Atom processor
[16:30:00 CEST] <Mavrik> uhh.
[16:30:08 CEST] <Mavrik> Yeah, that won't work.
[16:35:04 CEST] <kepstin> first gen eeepc had a pentium 3 mobile, so that's a somewhat newer system ;)
[16:40:36 CEST] <MindSpark> So the processor is simply too weak?
[16:43:17 CEST] <kepstin> processor is too weak, and the igpu is too old to be able to hardware decode, yeah.
[17:06:57 CEST] <MindSpark> alright, thanks
[19:26:01 CEST] <TheAMM> Is there some flag to fix seeking in the broken 10bit 444 x264 encodes?
[19:26:50 CEST] <TheAMM> I mean, seeking works, but the input data is jumbled because some packet about the 10bit or the 444 (I don't know the specific details) is skipped when seeking directly into the file
[19:27:19 CEST] <TheAMM> Looks like this https://mygi.ga/rrn/adSLX.webm
[19:27:29 CEST] <kepstin> TheAMM: what container format?
[19:27:46 CEST] <TheAMM> mkv in this instance
[19:28:15 CEST] <kepstin> very strange, I'd expect seeking to work fine in that assuming keyframes are correctly marked
[19:28:31 CEST] <TheAMM> wm4 made a patch for mpv to go back and read the tidbit
[19:29:12 CEST] <kepstin> what tool was used to make the file in the first place? ffmpeg?
[19:29:28 CEST] <TheAMM> Probably
[19:29:35 CEST] <TheAMM> Not my file
[19:29:39 CEST] <kepstin> (if not, does simply remuxing the file with ffmpeg -c copy fix it?)
[19:29:44 CEST] <TheAMM> Nope
[19:29:55 CEST] <TheAMM> I don't have an issue with it
[19:30:00 CEST] <TheAMM> mpv handles it, that's enough for me
[19:30:13 CEST] <TheAMM> But I want to know if there's a flag to fix it that I'm unaware of
[19:30:35 CEST] <TheAMM> I can get you a sample if you want to take a look
[19:31:50 CEST] <kepstin> i haven't heard of this issue before, and I doubt there's anything specific for fixing this. It sounds like a buggy muxer :/
[19:32:34 CEST] <kepstin> if ffmpeg's seeking (with -ss) is also broken with this file - or if this broken file was made with ffmpeg, a sample and bug report would be helpful.
[19:35:13 CEST] <TheAMM> Eh, I don't care enough to do a full bug report
[19:35:23 CEST] <TheAMM> I'll get you a dd'd sample in a minute
[19:35:58 CEST] Action: kepstin doesn't really know enough about codec/format internals to do much about this issue himself.
[19:38:53 CEST] <TheAMM> https://mygi.ga/pyA/aecCO.mkv
[19:39:16 CEST] <TheAMM> Works: ffmpeg -i broken_x264_10b_444.mkv -t 2 -pix_fmt yuv422p -y out.mkv
[19:39:28 CEST] <TheAMM> Breaks: ffmpeg -ss 30 -i broken_x264_10b_444.mkv -t 2 -pix_fmt yuv422p -y out.mkv
[19:39:57 CEST] <kepstin> hmm, and that was muxed with mkvmerge (presumably to add the attachments, set metadata, etc.)
[19:42:05 CEST] <TheAMM> Here's wm4's PR for mpv https://github.com/mpv-player/mpv/pull/5290
[19:42:27 CEST] <TheAMM> The one that got merged is linked below
[19:51:37 CEST] <kepstin> oh, this is a workaround for a buggy version of libx264 :/
[19:53:06 CEST] <kepstin> adding the "-x264_build 150" option on the ffmpeg command line, like mpv does internally, appears to work for allowing ffmpeg to decode it
[19:53:13 CEST] <kepstin> (input option)
[19:53:51 CEST] <TheAMM> ere we go en
[19:55:53 CEST] <kepstin> the real way to fix the file would be to re-encode it with a non-buggy version of x264 :/
[20:01:54 CEST] <kepstin> I wonder why that's a 4:4:4 encode in the first place, I can't think of any video source for anime that would give you anything other than 4:2:0
[20:01:58 CEST] <kepstin> very strange.
[20:02:11 CEST] <TheAMM> 1080p downscaled to 720p
[20:04:27 CEST] <kepstin> so yeah. summary of the bug: "old x264 versions are buggy at encoding 10bit 4:4:4. ffmpeg's decoder has a workaround, but it only applies the workaround automatically if it sees the first stream packet - which has the x264 version in an info element. therefore starting playback at a seeked position doesn't apply the workaround"
[20:07:14 CEST] <kepstin> i don't think there's any way to modify the file - short of re-encoding the video - that would fix the issue in all players.
[20:07:49 CEST] <TheAMM> I don't mind it
[22:45:47 CEST] <remlap> hi does anyone have any av1 samples, can only find some on elecards site in webm and ffplay doesnt seem to like those
[22:49:00 CEST] <kepstin> have they actually finalized the bitstream now? Last I heard they were still making incompatible changes
[22:49:12 CEST] <TheAMM> haha, kepstin, went to look how the x264_build acts (ie. can I specify it as a precaution and not break stuff [yes, I can]) and wm4 made the commit on ffmpeg, too
[22:50:22 CEST] <JEEB> yup
[22:50:34 CEST] <JEEB> kepstin: it is not finished
[22:50:53 CEST] <JEEB> just for the (non-)amusement of poor GSoC students who were tasked to make an AV1 parser for gstreamer
[22:51:11 CEST] <JEEB> remlap: but yea basically to play AV1 you need the decoder to be the exact same version as the encoder
[22:51:14 CEST] <kepstin> remlap: if you want samples that work with your av1 decoder, encode them with the matching encoder :)
[22:51:16 CEST] <JEEB> otherwise ain't gonna work
[22:51:31 CEST] <JEEB> rav1e is one alternative encoder that can currently do 4fps at 480p
[22:51:38 CEST] <JEEB> https://github.com/xiph/rav1e
[22:51:50 CEST] <JEEB> has the same limitation that it's sync'd for some things against libaom
[22:51:58 CEST] <JEEB> so those need to match hash-wise
[22:52:13 CEST] <JEEB> but it's at least not libaom slow
[22:54:01 CEST] <someuser> Does anyone know why when I use -c:a aac -b:a 128k i am getting a 8kb output?
[22:54:16 CEST] <kepstin> someuser: are you encoding silence? :)
[22:54:17 CEST] <JEEB> post full command line and log into pastebin or so
[22:54:20 CEST] <JEEB> and link here
[22:55:06 CEST] <someuser> https://pastebin.com/raw/Kc50P0TH
[22:55:27 CEST] <kepstin> well, that's neither the full command line nor the log
[22:56:04 CEST] <JEEB> also adding -v verbose is probably a good thing, too
[23:00:34 CEST] <ntd> can ffmpeg do channel-switching on v4l2/bt878/bttv devices, deinterlace the input and make it available as h264 through rtsp on localhost?
[23:00:35 CEST] <someuser> kepstin: how is that not the full command?
[23:01:49 CEST] <kepstin> someuser: at a minimum, missing the "ffmpeg" executable, and the input and output filenames.
[23:02:07 CEST] <someuser> i didnt think that was relevant to the question.
[23:02:19 CEST] <kepstin> someuser: but the log output would probably be more helpful than that info
[23:02:55 CEST] <someuser> how do i export a log file on conversion? i am using windows.
[23:03:16 CEST] <kepstin> someuser: run ffmpeg in a console window, copy/paste the output
[23:03:26 CEST] <JEEB> at the end of the command | 2> ffmpeg_sucks.log|
[23:03:29 CEST] <kepstin> (i think that's easier to do now that windows 10 improved the console)
[23:03:33 CEST] <JEEB> without the |
[23:03:51 CEST] <someuser> so add 2> ffmpeg_sucks.log to the end?
[23:03:59 CEST] <JEEB> without the spacing but yes
[23:04:06 CEST] <JEEB> 2> is "redirect stderr"
[23:04:14 CEST] <kepstin> does that even work on windows?
[23:04:16 CEST] <JEEB> and then the file name to which to redirect
[23:04:17 CEST] <JEEB> yes
[23:04:19 CEST] <JEEB> yes it does
[23:04:25 CEST] <kepstin> huh, cool.
[23:04:33 CEST] <JEEB> it will give you unix endlines since CRLF is not needed in terminal
[23:04:52 CEST] <JEEB> but I think even notepad in windows can now handle it :P
[23:05:00 CEST] <JEEB> *windows 10
[23:05:11 CEST] <remlap> kepstin: thanks very much thought as much
[23:05:21 CEST] <remlap> RE: av1
[23:05:34 CEST] <JEEB> ntd: not sure, esp. dynamically
[23:05:51 CEST] <JEEB> ntd: I would just make a simple application based on the FFmpeg APIs
[23:06:07 CEST] <remlap> libaom is teeth grindingly slow as JEEB said
[23:06:17 CEST] <someuser> https://pastebin.com/raw/yXWZkCt0
[23:06:19 CEST] <someuser> log
[23:06:40 CEST] <JEEB> that didn't finish yet
[23:06:48 CEST] <JEEB> and yea, you get a lot of stats
[23:07:08 CEST] <JEEB> also are you sure you want 5.1 at 128kbps?
[23:07:26 CEST] <someuser> what would be an ideal value
[23:07:37 CEST] <JEEB> dunno, I wonder if the AAC encoder supports quantizers
[23:07:45 CEST] <kepstin> ideal would be to just do -c:a copy if possible
[23:07:50 CEST] <JEEB> or that yes
[23:07:53 CEST] <JEEB> it's just 384kbps
[23:07:59 CEST] <kepstin> but i assume you might want aac for device support or something
[23:08:10 CEST] <someuser> yeah i prefer aac
[23:08:23 CEST] <kepstin> in which case, consider downmixing to stereo with "-ac 2"
[23:08:44 CEST] <kepstin> if you just "prefer aac", well, don't - avoid doing lossy transcodes unless you have a really good reason ;)
[23:09:04 CEST] <someuser> :D
[23:09:56 CEST] Last message repeated 1 time(s).
[23:09:56 CEST] <kepstin> i suppose the only real reason to re-encode a file like this would be to make it smaller, so downmixing to stereo and using aac at 128kbit might make sense then
[23:10:22 CEST] <someuser> what would i change in my command line for that
[23:10:47 CEST] <kepstin> add the output option "-ac 2"
[23:11:05 CEST] <someuser> -ac 2 aac -b:a 128k
[23:11:08 CEST] <someuser> i assume?
[23:11:17 CEST] <JEEB> -c:a aac -b:a 128k and the thing
[23:11:34 CEST] <JEEB> although to be honest the AAC encoder (internal) has a logic by default
[23:11:36 CEST] <JEEB> to pick a bit rate
[23:11:49 CEST] <JEEB> which is for each pair channel it adds 128kbps
[23:12:11 CEST] <JEEB> so not setting a bit rate seems OK?
[23:12:19 CEST] <someuser> i was already using -c:a aac -b:a 128k
[23:12:30 CEST] <someuser> unless i need to add the -ac 2 in there as well
[23:13:00 CEST] <kepstin> someuser: right now it's encoding 5.1 at 128kbps, which is probably gonna give poor results. adding "-ac 2" will downmix to stereo.
[23:13:04 CEST] <JEEB> I'd prefer aformat with mapping set to stereo, but that will set the output context -ac
[23:13:20 CEST] <JEEB> whihc by default has the channel mapping of stereo
[23:13:30 CEST] <kepstin> that said, what were you using to find the audio bitrate originally, when you said it was only 8kbps?
[23:13:49 CEST] <kepstin> because that does seem kind of odd, and nothing in the log you pasted explains it
[23:14:01 CEST] <someuser> right clicking and viewing the settings
[23:14:35 CEST] <kepstin> err, viewing the settings with what tool?
[23:15:13 CEST] <someuser> Windows right click file -> settings -> details
[23:15:41 CEST] <JEEB> try ffprobe
[23:15:47 CEST] <JEEB> ffprobe -v verbose file
[23:15:52 CEST] <JEEB> file being the file you created
[23:16:24 CEST] <kepstin> yeah, i wouldn't be surprised if the windows thing is only looking at the first packet or is otherwise just wrong
[23:17:04 CEST] <kepstin> i mean, the exact output bitrate doesn't really matter as long as it sounds ok
[23:17:48 CEST] <kepstin> if the problem you had was "it doesn't sound very good", switching to stereo instead of 5.1 while keeping the bitrate at 128k should fix it.
[23:20:08 CEST] <someuser> https://pastebin.com/raw/iW7vLyBT
[23:24:27 CEST] <JEEB> could be the result of the encoder not having enough bits for 5.1, or if the 5.1 content is very simple (not sure if it does bit filling for no need)
[23:25:43 CEST] <someuser> not sure what that means but i assume the file origionally created is the issue?
[23:29:38 CEST] <JEEB> well that ffprobe shows it still being 5.1
[23:29:44 CEST] <JEEB> so you clearly haven't downmixed it
[23:29:56 CEST] <someuser> so is my command wrong then?
[23:30:52 CEST] <JEEB> "-af 'aformat=sample_fmts=fltp:channel_layouts=stereo'"
[23:31:03 CEST] <JEEB> try this in addition to your current parameters, post log
[23:31:08 CEST] <someuser> ok
[23:31:22 CEST] <JEEB> (I know this is longer than -ac 2, but I want my specific channel layout dang it 8))
[23:31:48 CEST] <JEEB> it might work without the sample_fmts part, but I just copied the parameters off of documentation :P
[23:32:14 CEST] <JEEB> anyways, I'm going to go sleep since in 5.5 hours I've seemingly going to be woken up
[23:32:21 CEST] <someuser> No such filter: 'aformat=sample_fmts=fltp:channel_layouts=stereo'
[23:42:41 CEST] <JOGARA> have they taken out Decklink output support with the Windows builds at zeranoe.com?
[00:00:00 CEST] --- Fri Jun 22 2018
1
0
[09:15:16 CEST] <atomnuker> I'm thinking of writing a text editor which I'll never finish because everything sucks
[09:16:49 CEST] <atomnuker> gedit is slow and dumb, you can't just doubleclick a variable and have it highlighted across the file, autoindentation never works, searching is slow and limited, replace is slow, limited, and you can't replace in a single region
[09:18:18 CEST] <atomnuker> kate is extremely bloated and needs VLC or gstreamer (because its obviously a text editor), doesn't support wayland well (looks horrible and crashes), doesn't have sub-char scrolling so you're limited to scrolling by integer amount of lines (not a big deal), autoindentation never works
[09:18:33 CEST] <atomnuker> (neither can syntax highlight asm files too)
[09:20:16 CEST] <atomnuker> vim is slow (because it runs in a terminal emulator, which is usually slow because its not meant for graphics), you can't really use a mouse with it and even if you spend years working with it its just not as comfortable as quickly scrolling up and down with a touchpad, selecting a region and moving it about
[09:20:53 CEST] <atomnuker> (also needs life-support plugins to stay relevant and you need a NIH package manager to keep them up to date and sometimes even compile them)
[09:21:32 CEST] <atomnuker> (also has no minimap, I can't live without a minimap nowadays)
[09:22:00 CEST] <atomnuker> sublime text is closed source junk, its no faster than kate, doesn't support wayland and looks worse
[09:29:50 CEST] <atomnuker> (also infuriating about kate: you can't just alt+<number> to switch between tabs unlike every other text editor ever, you can only bind to switch to the tab to the left or to the right)
[09:30:15 CEST] <mateo`> vs code maybe ?
[09:57:01 CEST] <atomnuker> mateo`: I didn't even list atom or vs code because they're electron based
[10:53:54 CEST] <__tim> atomnuker, have you tried gnome-builder? it does the double-click variable highlight thing at least :)
[10:54:57 CEST] <__tim> it's not light in terms of deps though
[10:59:22 CEST] <atomnuker> it takes 27 seconds to launch if it was just closed on a pcie SSD
[11:00:01 CEST] <atomnuker> it also uses 90 gig of virtual memory, so it seems to do the electron-style allocation where it nihs malloc and relies of lazy kernel alloc
[11:04:23 CEST] <__tim> strange, starts in <2 seconds here on a 5-year old laptop
[11:20:53 CEST] <atomnuker> FUCK
[11:21:02 CEST] <atomnuker> article 13 vote passed, 15 to 10
[12:10:46 CEST] <durandal_1707> atomnuker: ?
[12:14:38 CEST] <atomnuker> you know, upload filters
[14:49:33 CEST] <atomnuker> IBM have been very keen lately to get altivec code in all kinds of projects through their bounty program
[14:50:19 CEST] <atomnuker> too bad if you look at them you'll notice they're literaly paying people peanuts for what is potentially a lot of work
[15:15:28 CEST] <SuperHenkie> Hi, is anyone here familiar with building/installing FFmpeg through Homebrew on macOS ?
[15:16:11 CEST] <SuperHenkie> More specifically, I just tried to get the new FFmpeg 4.0.1 through Homebrew but I noticed it says it now needs Java to build :(
[15:17:25 CEST] <SuperHenkie> What I did was: brew cask install java && brew install ffmpeg && brew cask uninstall java; and that works, but it seems kinda unnecessary to install java juist for building a shell tool..??
[15:18:55 CEST] <January> SuperHenkie: wrong channel, but just check `brew edit ffmpeg` and see why tf it wants java, it shouldn't...
[15:21:54 CEST] <SuperHenkie> @January Thanks, what would be the right channel for this question btw?
[15:22:11 CEST] <SuperHenkie> Anyway I just did `brew edit ffmpeg` and I get the formula, but there is no reference to "java" in there whatsoever..?
[15:22:43 CEST] <January> SuperHenkie: well not the development channel. It's literally in the topic: 'Questions about using FFmpeg or developing with libav* libs should be asked in #ffmpeg'
[15:23:41 CEST] <January> and it's not really much of an ffmpeg related question either, it should probably be redirected to a homebrew related channel. But my assumption here is that there's something wrong with your homebrew setup
[15:24:00 CEST] <January> SuperHenkie: `brew doctor` might help here
[15:25:30 CEST] <SuperHenkie> @January I see, ok thanks, will ask around in a homebrew channel
[15:30:35 CEST] Action: BradleyS suspects cmake dep
[15:30:56 CEST] <BradleyS> building cmake pops up a java dialog on macos that can be ignored
[15:31:32 CEST] <BradleyS> used for building x265 and possibly other libs
[15:32:30 CEST] <January> SuperHenkie: ^
[15:32:31 CEST] <BradleyS> SuperHenkie: ^
[15:32:50 CEST] <BradleyS> echo :P
[15:50:39 CEST] <January> BradleyS: wow, we in sync
[15:51:45 CEST] <BradleyS> down to the second
[16:02:23 CEST] <debianuser> (atomnuker: Yeah, some terminals are faster than the others. I've tested some with `time seq 2000000`, the fastest were: urxvt, xterm (with fastscroll enabled), roxterm... But if you prefer GUI for mouse navigation anyway...)
[16:02:26 CEST] <debianuser> atomnuker: What about gvim, emacs/xemacs, or... Atom? ;)
[16:08:57 CEST] <atomnuker> emacs has no proper gui with wayland support, gvim doesn't support wayland, urxvt and xterm are x11 only, atom is like I said electron
[16:09:26 CEST] <atomnuker> I agree, some terminals are faster, but in general the faster ones are also the most wasteful ones
[16:09:48 CEST] <atomnuker> in that they don't implement partial updates and instead upload their entire window to the gpu on every event
[16:10:20 CEST] <atomnuker> gnome-terminal is very conservative and does the proper thing by only updating individual chars (its a nice sight to see it with htop)
[16:10:47 CEST] <atomnuker> sadly its not very fast and vim feels sluggish
[16:11:01 CEST] <atomnuker> (besides, vim has other issues like no mouse support like I said)
[16:11:08 CEST] <atomnuker> also don't get me started on alacritty
[16:11:33 CEST] <atomnuker> rusty piece of junk with 200+ dependencies taking a gig or so in your home dir for a terminal
[16:12:44 CEST] <atomnuker> which looks worse than gnome-terminal, has inexcusably poor wayland support and isn't all that fast anyway (the only reason its popular is because OH LOOK ITS A RUST PROJECT HOW AWESOME UPVOTED)
[16:17:50 CEST] <debianuser> By the way, both gnome-terminal and roxterm were based on gtk2+libvte back when I tested, but somehow roxterm was many times faster than gnome-terminal in `time seq 2000000` test.
[22:43:14 CEST] <cone-912> ffmpeg 03Marton Balint 07master:b1e0e216462a: avcodec/libzvbi-teletextdec: propagate ERASE_PAGE flag for repeated subtitle page headers
[22:43:14 CEST] <cone-912> ffmpeg 03Marton Balint 07master:e8050aa79152: ffplay: ignore keypress events before a window is created
[23:22:34 CEST] <akravchenko188> jkqxz: hello, could you please check my comments and questions in thread http://ffmpeg.org/pipermail/ffmpeg-devel/2018-June/231503.html ? Thanks
[00:00:00 CEST] --- Thu Jun 21 2018
1
0
[00:54:15 CEST] <anonffmpeg> Hi there. I have a weird issue for sometime now. I m a restreamer for many year, and I never had problems. I do it using livestreamer, then I pipe the data to ffmpeg, that send it to my rtmp server. But with the latest releases of ffmpeg, the processus get stalled after a while, cpu is maxing out, streams aren't working obviously. When I do a strace I see only x32 mode / 32bit mode.
[00:54:30 CEST] <anonffmpeg> I am using ubuntu xenial.
[00:55:05 CEST] <anonffmpeg> So the only work around I have is to use a previous version (from october 2017 I had in one of my server) so I can keep the work done..
[00:57:09 CEST] <anonffmpeg> https://i.gyazo.com/d55de5315b52c73559f4e976aec47352.png you can see how I started the cron at 11 and they all crash at 12. I then restart and same happen
[00:57:29 CEST] <anonffmpeg> last run seems stable, but this is with old version of ffmpeg
[00:58:57 CEST] <Cracki> that's nice but you should provide logs with useful verbosity level
[00:59:59 CEST] <anonffmpeg> right
[01:00:05 CEST] <Cracki> you could also name the affected/unaffected version numbers
[01:02:46 CEST] <anonffmpeg> my guess is this isn't just a version
[01:03:21 CEST] <anonffmpeg> except yes, yesterday I couldn't download a snapshot because it was offline, so I used the same version I used in february
[01:03:28 CEST] <anonffmpeg> maybe there is no issue anymore.. very possible
[01:04:31 CEST] <Cracki> just tell us which version works and which doesn
[01:04:33 CEST] <Cracki> t
[01:05:26 CEST] <Cracki> you have to give hard facts or it's impossible to help
[01:05:27 CEST] <anonffmpeg> ffmpeg version N-87723-gffc58b2 Copyright (c) 2000-2017 the FFmpeg developers . this one works, from server I installed in october
[01:05:35 CEST] <anonffmpeg> yea I know, I m not being precise enough
[01:05:55 CEST] <Cracki> precise, but more importantly, *forthcoming*
[01:06:05 CEST] <anonffmpeg> it's critical to me so I fix it the best way I could, as fast as possible, so no verbose logging etc..
[01:06:15 CEST] <anonffmpeg> and yea, I m unlucky I couldn't try the last snapshot
[01:06:28 CEST] <anonffmpeg> could be solved since february.. could be a broken release
[01:07:16 CEST] <Cracki> see if you can narrow down the range between working and broken versions
[01:08:17 CEST] <anonffmpeg> didn't install many server, just one in october , one in february and one emergency yesterday. When I saw the process stalled in the morning, it remembers me what happens in february..
[01:08:31 CEST] <Cracki> get binaries, try them
[01:08:34 CEST] <Cracki> reproduce the bug
[01:09:22 CEST] <anonffmpeg> I compile ffmpeg
[01:09:29 CEST] <anonffmpeg> i don't use binaries
[01:09:35 CEST] <Cracki> that then
[01:10:44 CEST] <anonffmpeg> basically I m kinda afraid that some new changes in ffmpeg make my system not functional anymore and then I always have to use old version
[01:11:12 CEST] <furq> https://www.johnvansickle.com/ffmpeg/
[01:11:14 CEST] <furq> use those then
[01:11:36 CEST] <Cracki> determine the *steps to reproduce* the issue
[01:11:39 CEST] <anonffmpeg> I don't do anything special , just like : livestramer hls://streamurl.m3u8 best -O | ffmpeg -i pipe:0 -c copy -f flv "rtmp:destination-server"
[01:12:14 CEST] <furq> why are you piping from livestreamer and not just using ffmpeg's hls demuxer
[01:12:17 CEST] <anonffmpeg> never had issue.. now I get this x32 mode in strace, cpu is at max, if I kill one instance of ffmpeg, the other one will just use more of the cpu lol
[01:12:38 CEST] <anonffmpeg> well, livestreamer or streamlink. that brings some helpful plugin for specific sites
[01:13:17 CEST] <anonffmpeg> I would try this demuxer
[01:13:20 CEST] <furq> well yeah try using git head or something close to it before anything else
[01:13:31 CEST] <anonffmpeg> I m doing this for many years now and maybe there has been some improvement with ffmpeg
[01:13:47 CEST] <furq> then if it breaks again try attaching gdb to it or something like that
[01:13:49 CEST] <anonffmpeg> how would it looks like to use ffmpeg to grab that source
[01:14:09 CEST] <anonffmpeg> ffmpeg -re -i "hls:url.m3u8"
[01:14:10 CEST] <furq> there's not much we can really do with "an ffmpeg build from months ago stops working"
[01:14:30 CEST] <furq> ffmpeg -i http://foo.m3u8 -c copy -f flv rtmp://bar
[01:14:39 CEST] <anonffmpeg> yea
[01:14:49 CEST] <anonffmpeg> does it retry if one segment fail?
[01:15:09 CEST] <anonffmpeg> i always considered than livestreamer was built for that specific purpose
[01:15:16 CEST] <furq> i mean maybe livestreamer is better, idk
[01:15:22 CEST] <furq> but it's one less thing to worry about
[01:15:47 CEST] <anonffmpeg> never had issues with piping data?. I m doing it right now with 60 channels
[01:16:14 CEST] <anonffmpeg> well it's weird anyway, but yea, I cannot provide good infos..
[01:32:13 CEST] <FishPencil> Is there a way to extract without converting the forced subtitles from a bluray with ffmpeg? I'm aware of the -forced_subs_only 1 option, but with -c:s copy, will that extract only the forced images and copy them to the output?
[01:57:29 CEST] <thexa4> Hi, I have copied streams from an rtsp stream to disk and am trying to downscale the video. Fmpeg seems to hang at a certain point of the stream with no output and 0% cpu. I've tried changing the output format but that didn't seem to help. Does anyone know how I can figure out what might cause this?
[01:57:38 CEST] <thexa4> The command I'm using is this: ffmpeg -i $1 -an -filter:v "scale=w=64:h=36:force_original_aspect_ratio=increase" -c:v libvpx-vp9 -lossless 1 $2/source/$1.webm
[02:00:28 CEST] <fengshaun> where can I read more about how html5 video works?
[02:00:58 CEST] <fengshaun> as in, what kind of data does it expect (e.g. chunk starting with I-frame, raw or encoded, what encoding)
[02:02:38 CEST] <fengshaun> I'm trying to write a live-transcoder with libav{format,codec,*} and trying to figure out how to play well with html5 video tag
[02:03:48 CEST] <bashprogfortysix> startx
[02:04:00 CEST] Last message repeated 1 time(s).
[02:04:33 CEST] <fengshaun> In a previous attempt, I tried to create a m3u8 playlist on keyframes with byterange (m3u8 v4) and serve an mp4 file by transcoding whatever byterange is requested on the fly
[02:04:37 CEST] <fengshaun> by that doesn't seem to work
[02:04:51 CEST] <fengshaun> ffmpeg generates a mpegts file to do that
[02:05:02 CEST] <fengshaun> but I want to keep the original mp4
[02:05:11 CEST] <fengshaun> without adding storage requirements
[02:08:19 CEST] <thexa4> @fengshaun: have you seen this? https://developer.mozilla.org/en-US/docs/Web/HTML/Supported_media_formats
[02:12:45 CEST] <fengshaun> thexa4, yes, but I haven't been able to find info on what payload is expected for each format
[02:13:06 CEST] <fengshaun> e.g. what does the browser expect when it requests byteranges?
[02:13:27 CEST] <fengshaun> does it want a chunk of data starting with an encoded I-frame or does it want something else?
[02:14:47 CEST] <fengshaun> or does it do its own decoding and really want a specific byte range
[02:17:29 CEST] <thexa4> As far as I know it mostly uses the byterange to seek to a specific time, then it searches for a keyframe. I'm not sure if you can generate an arbitrary file based on the offset without having trouble with caches etc
[02:19:42 CEST] <thexa4> Doesn't serving the mp4 directly work?
[02:21:13 CEST] <fengshaun> well, I was hoping to add transcoding to it
[02:21:58 CEST] <fengshaun> I can try mpeg-dash with fragmented mp4s and then transcode the fragments
[02:21:59 CEST] <thexa4> I know Emby does something similar but I'm not sure if that's because they have javascript support
[02:22:29 CEST] <fengshaun> I think emby just uses ffmpeg the commandline to transcode
[02:22:34 CEST] <fengshaun> they have their own player
[02:22:42 CEST] <fengshaun> so it's hard to know what parts do what
[02:23:13 CEST] <fengshaun> with fmp4 I would just need to add moof+mdata atoms with fragments before hand which ffmpeg can do
[02:23:44 CEST] <thexa4> I'm not sure how that works so I don't think I can help you with that
[02:44:36 CEST] <AuroraAvenue> I need to load rte radio player in my radio browser,
[02:44:45 CEST] <AuroraAvenue> I use Solus Os
[02:44:46 CEST] <AuroraAvenue> ,
[02:45:04 CEST] <AuroraAvenue> which is a linux baby operating system
[02:56:06 CEST] <chrysalis> im getting some warnings when using aac encoder - Qavg: 166
[02:56:14 CEST] <chrysalis> what does it mean?
[03:23:39 CEST] <fengshaun> hmm looks like MediaSourceExtension can decode stuff
[03:23:50 CEST] <fengshaun> so it'd need moof+mdata fragments to be able to decode
[03:24:23 CEST] <fengshaun> so if I take my fragments in 1s or 2s chunks, then I can re-encode and manipulate the fragment as I wish on the server and then feed it to MSE
[03:43:07 CEST] <Cracki> chrysalis, what do you encode?
[03:43:09 CEST] <Cracki> silence?
[05:57:46 CEST] <chrysalis> Cracki, encoding works fine, but ffmpeg spits that Qavg message everytime with the native aac encoder, just wondering what it means
[05:58:08 CEST] <Cracki> chrysalis, what do you encode?
[05:58:09 CEST] <Cracki> silence?
[05:59:04 CEST] <chrysalis> Cracki, audio files obviously, flacs
[05:59:23 CEST] <Cracki> dude, I'm asking about the content
[05:59:27 CEST] <Cracki> describe it
[05:59:43 CEST] <Cracki> low Qavg could indicate low complexity content
[05:59:43 CEST] <chrysalis> music?
[05:59:45 CEST] <atomnuker> chrysalis: its just debug info, generally more means more rate
[05:59:47 CEST] <Cracki> nevermind.
[05:59:57 CEST] <Cracki> *low/high
[05:59:58 CEST] <atomnuker> its the same with libx264 and libx265
[06:00:28 CEST] <Cracki> q stands for quantizer, so high quantizer means stronger compression
[06:02:01 CEST] <Cracki> might be mistaken :S https://slhck.info/video/2017/02/24/vbr-settings.html
[06:02:33 CEST] <Cracki> or the meaning of Qmin is worst value (largest)
[06:03:15 CEST] <chrysalis> trying to find something loud to encode end test
[06:03:28 CEST] <furq> chrysalis: -f lavfi -i anoisesrc
[06:07:44 CEST] <chrysalis> same thing and i dont think jimmi hendrix qualifies as 'quiet'
[06:08:01 CEST] <chrysalis> Qavg went from like 100-200, now 1000
[06:09:09 CEST] <furq> it's really not worth worrying about
[06:51:32 CEST] <Cracki> if you wanna explore: https://github.com/FFmpeg/FFmpeg/blob/master/libavcodec/aacenc.c#L903
[06:57:28 CEST] <Cracki> so that value doesn't really have to do with qscale/-q, it seems to be a measure of data complexity
[14:47:25 CEST] <Zexaron> Hello
[14:47:42 CEST] <Zexaron> Does anyone know if ffmpeg is able to burn-in DVB subtitles ?
[14:48:05 CEST] <Zexaron> they can be text, but the ones broadcast here are many times bitmap
[14:48:34 CEST] <Zexaron> generally, conversion tools take a lot of time and rare, since this is mostly europe only thing
[14:50:01 CEST] <Zexaron> MPEG-2 bitrates they use are so high compared to the quality, I found out compresing to H264 at 80% quality reduces size by 8 times, that makes it a lot easier for the PVR feature
[14:54:38 CEST] <Mavrik> IIRC yes
[14:55:08 CEST] <Mavrik> overlay filter should be able to burn in DVB subtitles
[14:55:13 CEST] <Mavrik> it's on the wiki
[15:22:04 CEST] <Zexaron> Mavrik: mentions only DVD not DVB
[15:22:17 CEST] <Mavrik> Same principle.
[15:22:20 CEST] <Zexaron> But I guess it could apply, if you know
[15:22:23 CEST] <Mavrik> Same subtitles really.
[15:22:42 CEST] <Mavrik> You pipe video and subtitle streams into the overlay filter and it does its magic.
[16:21:59 CEST] <Zexaron> Mavrik: What about scaling the subtitle layer, is that working properly, just found out some stuff about a bug, but it may be obsolete
[16:26:32 CEST] <Bombo> can ffmpeg use libdvdread? like for 'ffmpeg -i dvd://2 -c copy title2.mpg'
[16:36:09 CEST] <paulk-gagarine> hi
[16:36:18 CEST] <paulk-gagarine> first off, ffmpeg's great!
[16:36:45 CEST] <paulk-gagarine> second: does anyone have a clue about the encoding options to generate B frames with MPEG2?
[16:36:57 CEST] <paulk-gagarine> I tried messing with the levels but no luck
[16:37:54 CEST] <paulk-gagarine> I'm working on the Sunxi-Cedrus V4L2 M2M linux driver (for Allwinner hardware) and I'd like to encode a video with B frames
[16:38:00 CEST] <paulk-gagarine> to add to our standalone testing tool
[16:38:11 CEST] <Mavrik> paulk-gagarine: hmm, -bf 2 should work no?
[16:39:25 CEST] <paulk-gagarine> Mavrik, yay, it does!
[16:39:29 CEST] <paulk-gagarine> I just didn't know about that option
[16:39:32 CEST] <paulk-gagarine> thanks a lot
[16:40:03 CEST] <Mavrik> It seems like it's not well documented :)
[16:40:26 CEST] <Mavrik> paulk-gagarine: https://ffmpeg.org/faq.html#Which-are-good-parameters-for-encoding-high-qua… :)
[16:40:50 CEST] <YokoBR> hi folks
[16:41:16 CEST] <YokoBR> I'm converting on a server like ffmpeg -i /tmp/82c61456-b77e-43ad-9358-b2c1a2d4ebb3.webm -preset veryfast -movflags faststart -f mp4 /tmp/82c61456-b77e-43ad-9358-b2c1a2d4ebb3
[16:41:23 CEST] <YokoBR> from webm to mp4
[16:41:32 CEST] <YokoBR> is there a faster way to do that?
[16:41:56 CEST] <YokoBR> they're aways vp8 or vp9 vcode
[16:41:58 CEST] <YokoBR> codec
[16:42:35 CEST] <Mavrik> You can buy a faster CPU I guess
[16:42:54 CEST] <Mavrik> Also you're not setting any output quality, why?
[16:49:20 CEST] <paulk-gagarine> Mavrik, very nice
[16:55:45 CEST] <kalidasya> hey
[17:18:33 CEST] <YokoBR> Mavrik: how do I set the output quality?
[17:43:07 CEST] <jrf22> I'm using a wecam with a hardware encoder to stream with. Youtube takes the stream but complains about frequency of keyframes. I've tried adjusting -g but that doesn't seem to be fix the issue. I'm not encoding the webcams hardware h264 stream just passing it to youtube with FFMPEG. Is there any way to adjust keyframes or would I have to re-encode to do that?
[17:45:21 CEST] <Mavrik> Keyframes are a core of each encoded stream
[17:45:28 CEST] <Mavrik> So changing them requires full reencode by definition :P
[17:52:27 CEST] <jrf22> That's what I thought. Using a Rasp Pi so I don't have enough horsepower to re-encode the 1080p stream. I'll just leave it alone. Thanks for your response.
[17:58:14 CEST] <Mavrik> Rpi does have a HW encoder tho :/
[18:10:03 CEST] <chocolate-elvis> Hi, anyone know of any trouble with ffmpeg sourcing from s3 for files 3GB and larger? (other than painful, and slow )
[20:41:01 CEST] <Bombo> i'm trying to concat 3 vob files (ffmpeg -i "concat:VTS_01_1.VOB|VTS_01_2.VOB|VTS_01_3.VOB" -c copy -f mpeg out.mpg), what does this mean "[mpeg @ 0x5568bb632980] buffer underflow st=0 bufi=1270 size=15152"
[20:42:04 CEST] <Bombo> does that just mean it was not able to read enough bytes? 'i need 15152 bytes, but was just able to get 1270'?
[20:42:29 CEST] <Bombo> is this a hdd speed issue?
[20:45:13 CEST] <JEEB> Bombo: the MPEG-PS muxer bby default has some mux bufsize and maxrate
[20:45:34 CEST] <JEEB> it just means that whatever default limits there are were broken when muxing those streams
[20:45:45 CEST] <furq> Bombo: there's no real reason to use the mpegps muxer there
[20:45:49 CEST] <furq> use mkv or something
[20:48:02 CEST] <ChocolateArmpits> when concating vob files I use -f vob, gets around some errors
[20:49:23 CEST] <Bombo> hmmkay i get no errors when i directly encode to x264.mkv
[20:49:57 CEST] <Bombo> i just thought i shoult first have one .mpg file before encoding
[20:50:51 CEST] <furq> i meant you can just copy the streams into mkv
[20:50:57 CEST] <furq> and then work with that
[20:51:18 CEST] <Bombo> the mpeg streams?
[20:51:20 CEST] <furq> yes
[20:51:33 CEST] <furq> but you might as well just concat and encode in the same step if you didn't have any plans that depend on having a single mpeg file
[20:52:07 CEST] <Bombo> ffmpeg -i "concat:VTS_01_1.VOB|VTS_01_2.VOB|VTS_01_3.VOB" -c copy out.mkv?
[20:52:58 CEST] <furq> sure
[20:53:06 CEST] <Bombo> i get the same underflows with -f mpeg or -f vob
[20:53:36 CEST] <furq> those are basically the same muxer iirc
[20:53:39 CEST] <Bombo> [matroska @ 0x55abd8067100] Timestamps are unset in a packet for stream 0. This is deprecated and will stop working in the future. Fix your code to set the timestamps properly
[20:53:40 CEST] <furq> except with different defaults
[20:53:42 CEST] <Bombo> [matroska @ 0x55abd8067100] Can't write packet with unknown timestamp
[20:53:45 CEST] <furq> oh fun
[20:53:46 CEST] <Bombo> without -f
[20:54:16 CEST] <ChocolateArmpits> try -f vob then :3
[20:54:39 CEST] <Bombo> i did, same underflow msgs
[20:55:11 CEST] <ChocolateArmpits> I've had some vobs that had different format frames at the beginning, the file would continue with different format after that
[20:55:20 CEST] <Bombo> (ffmpeg version git-2018-06-18-e85c608)
[20:55:40 CEST] <furq> yeah i would normally pipe from tccat if i was working with dvd stuff
[21:01:23 CEST] <Bombo> debian doesn't have that cat
[21:01:47 CEST] <Bombo> i'll try that tomorrow ;)
[21:02:07 CEST] <Bombo> for now directly encoding to x264 will do
[21:02:23 CEST] <Bombo> thx guys
[21:05:16 CEST] <saml> https://www.ffmpeg.org/ffmpeg-all.html#Commands-12 hey what are commands in crop filter?
[21:05:27 CEST] <saml> can I send commands to the filter once filter graph is initialized?
[21:15:02 CEST] <ChocolateArmpits> saml, best way is to use zmq and azmq
[21:15:28 CEST] <ChocolateArmpits> You then use sendzmq found in the tools folder to send text commands to the corresponding address:port
[21:16:22 CEST] <saml> hrm i see. t hanks
[21:16:34 CEST] <ChocolateArmpits> check out https://ffmpeg.org/ffmpeg-filters.html#toc-Timeline-editing as well
[21:17:09 CEST] <ChocolateArmpits> I've used 'enable' command with overlay and volume, however some filters may not support it
[21:17:50 CEST] <ChocolateArmpits> some filter specific parameters may not be toggleable either
[21:34:18 CEST] <furq> Bombo: tccat is part of transcode, although for some reason debian pulled it from the repos
[21:35:08 CEST] <furq> https://bitbucket.org/france/transcode-tcforge/
[21:52:00 CEST] <lex> I am doing the following ffmpeg -i redSangria20180620.mp4 -filter:v "setpts=.35*PTS" slow.mp4 but the length of the video remains the same. The video is being speed up. But the play time remains the same,
[21:53:14 CEST] <furq> audio?
[21:53:58 CEST] <lex> OHHH the audio. Yes it has. I should remove it?
[21:54:18 CEST] <furq> if you don't want it, sure
[21:54:22 CEST] <furq> otherwise -af atempo
[21:54:47 CEST] <lex> Thanks you are the best. I will check.
[21:55:09 CEST] <lex> furq : it works perfectly!
[21:56:53 CEST] <lex> furq : does this speed up the audio to match the video -af atempo
[21:56:59 CEST] <lex> I tried it and it did nothing.
[21:57:12 CEST] <lex> Sorry it kept the audio there.
[21:57:28 CEST] <kepstin> lex: you'd have to give it some options to say the speed adjustment you want, it doesn't have any way to know what you did to the video.
[21:57:29 CEST] <lex> Making the video the original length.
[21:58:27 CEST] <furq> you'd normally do atempo=1/.35
[21:58:37 CEST] <furq> but that's more than 2, and atempo doesn't like that
[21:58:53 CEST] <furq> so you'd need to chain two together
[21:59:27 CEST] <lex> How can speed up the audioOne sec I think I solved it.
[21:59:39 CEST] <lex> One sec I think I solved it.
[22:00:10 CEST] <furq> oh nvm i guess atempo takes values >2 now
[22:00:17 CEST] <furq> just atempo=1/.35 then
[22:01:31 CEST] <kepstin> if your ffmpeg build has the 'rubberband' filter, you might want to try it instead.
[22:02:05 CEST] <furq> if you want to change the pitch and speed, then asetrate=48000/.35,aresample=48000
[22:02:15 CEST] <furq> where the first 48000 should be the sample rate of the input
[22:07:22 CEST] <lex> I tried this and it did not work : ffmpeg -i redSangria20180620.mp4 -filter_complex "[0:v]setpts=0.35*PTS[v];[0:a]atempo=1/.35[a]" -map "[v]" -map "[a]" -y slow.mp4
[00:00:00 CEST] --- Thu Jun 21 2018
1
0