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

burek burek021 at gmail.com
Wed Apr 17 03:05:02 EEST 2019


[00:25:27 CEST] <phinxy> I'd like to know if any of the libav* libraries uses libmp3lame.  Maybe that's what you are trying to say.
[00:26:33 CEST] <c_14> No, the problem is that the ffmpeg you built is being linked at runtime to your system's libav* libraries which aren't linked against lame
[00:27:04 CEST] <c_14> So you either need to link the binary statically, or make sure they're linked at runtime to the libraries you built and not the system ones
[00:58:52 CEST] <jamie_1> hey im trying to compile ffmpeg with nvidia and the script im using is https://pastebin.com/raw/AKvCRuHf but i keep getting ERROR: nvenc requested, but not all dependencies are satisfied: ffnvcodec
[00:59:04 CEST] <jamie_1> anyone know what im missing?
[00:59:38 CEST] <cehoyos> You have to install https://git.videolan.org/?p=ffmpeg/nv-codec-headers.git;a=summary
[01:00:18 CEST] <jamie_1> im going and getting the nv headers and setting up the the nvcodec includes but it doesnt seem to recognise the nvcodec
[01:01:28 CEST] <jamie_1> roughly lines 70-80
[01:01:44 CEST] <jamie_1> sorry roughly lines 60-70
[01:02:12 CEST] <cehoyos> Did you see the link that I posted?
[01:02:18 CEST] <jamie_1> function InstallNvcoedIncluedERROR: nvenc requested, but not all dependencies are satisfied: ffnvcodec
[01:02:27 CEST] <jamie_1> sorry
[01:02:47 CEST] <jamie_1> didnt mean to send that again... scrolled in my terminal and bumped enter
[01:04:24 CEST] <jamie_1> cehoyos: ill aim at that git instead and see how it goes
[01:07:11 CEST] <Atlenohen> kepstin: gop size of 0 didn't made a difference with x264
[01:08:05 CEST] <Atlenohen> Ofcourse with other codecs such as FFV1 it's all fine, and by the way FFV1 is being described as an intra-frame codec, doesn't that mean that setting GOP anything higher than 0 for FFV1 doesn't make any sense?
[01:08:43 CEST] <cehoyos> FFV1 allows setting gop-size but ths usually makes no difference for the output file, it may make a difference in the future
[01:09:09 CEST] <jamie_1> any suggestions on how to point that scrip to use that source? i know how to do it from the videolan github but not sure how to do it from that git
[01:09:11 CEST] <cehoyos> It is very hard to believe that setting a gop size to different values makes no difference with x264...
[01:09:40 CEST] <Atlenohen> cehoyos: the x264 case was a context from 1 to 0
[01:09:55 CEST] <Atlenohen> probably is a difference, i meant practically no difference
[01:10:40 CEST] <Atlenohen> The video quality gets horrible after a few seconds and progressively turns more murky even starting to look like weird corruption, even tho the bitrate is like 10K
[01:10:40 CEST] <jamie_1> nvm... got it
[01:11:45 CEST] <jamie_1> i will win against this ffmpeg compile XD
[01:15:13 CEST] <jamie_1> even pointed and using that as the compile header for ffmpeg it still fails
[01:17:55 CEST] <cehoyos> Yes, gop size 0 and 1 (both very unusual values) have the same effect with x264
[01:19:04 CEST] <cehoyos> jamie_1: "still fails" is not a very useful description of your issue. Please understand that scripts (and FFmpeg) are generally not supported. Install the nvheaders, run configure with current FFmpeg git head and tell us if nvenc gets enabled.
[01:19:57 CEST] <jamie_1> oaky, ill go back and start there
[01:27:18 CEST] <another> cehoyos: setting the gop for FFV1 absolutely makes a difference
[01:28:16 CEST] <another> a larger gop compresses better
[01:40:00 CEST] <cehoyos> another: I heard that but I never found an input sample that allowed me to reproduce.
[01:41:39 CEST] <another> really? i'm pretty sure i have
[01:45:06 CEST] <another> just did a quick encode of the sintel trailer in 480p
[01:46:19 CEST] <another> with default GOP of 12: 84137977 bytes
[01:46:32 CEST] <another> GOP 1: 85146234 bytes
[01:49:05 CEST] <cehoyos> Good to know, thank you!
[01:52:09 CEST] <another> there's also a wiki page which explicitly mentions GOP: https://trac.ffmpeg.org/wiki/Encode/FFV1
[02:01:28 CEST] <jamie_1> cehoyos: do i need to enable it in the config for nvcodec or will it do it based on that it's installed already
[02:03:21 CEST] <cehoyos> It should be auto-detected.
[02:03:47 CEST] <cehoyos>  --disable-nvdec          disable Nvidia video decoding acceleration (via hwaccel) [autodetect]
[02:03:54 CEST] <cehoyos> Similar for nvenc
[02:04:13 CEST] <jamie_1> okay
[02:04:43 CEST] <jamie_1> running now :D
[02:05:23 CEST] <jamie_1> thanks for the help btw cehoyos
[02:05:31 CEST] <cehoyos> Was the detection successful?
[02:05:58 CEST] <jamie_1> well see
[02:06:02 CEST] <jamie_1> im compiling now
[02:06:14 CEST] <cehoyos> You don't have to compile, didn't I write that above?
[02:06:24 CEST] <jamie_1> i might have missed it... sorry
[02:06:28 CEST] <cehoyos> run configure with current FFmpeg git head and tell us if nvenc gets enabled
[02:07:04 CEST] <cehoyos> grep CONFIG_NVDEC config.h
[02:07:20 CEST] <cehoyos> grep CONFIG_NVENC config.h
[02:07:45 CEST] <cehoyos> ?
[02:09:05 CEST] <jamie_1> cehoyos: i was reading the console output and it is there
[02:09:07 CEST] <jamie_1> :D
[02:09:10 CEST] <jamie_1> thanks!
[02:09:34 CEST] <jamie_1> i also added/made all the extra packages, any i could make from source resonable i did
[02:09:40 CEST] <jamie_1> and it looks like all of them are there
[02:32:39 CEST] <jamie_1> so the only issue im having now is when i go to reference ffmpeg for compile i get recompile with -fPIC how would i do that with ffmpeg?
[02:38:47 CEST] <furq> jamie_1: you build all the external libs you're trying to link to with fPIC
[02:39:45 CEST] <jamie_1> ooff... so i have to go back to the beginning
[02:40:48 CEST] <jamie_1> furq: is it possible to pass the --enable-static in the build config and do it that way?
[02:41:32 CEST] <furq> maybe
[02:42:00 CEST] <jamie_1> ehh, ill give it a go and find ouyt
[02:42:17 CEST] <furq> if you actually want a fully static build then that should work
[02:42:32 CEST] <furq> it'll be a lot quicker to find that out anyway
[02:42:50 CEST] <jamie_1> furq: obs doesnt like the shared libraries
[02:43:57 CEST] <jamie_1> furq: ill let you know
[02:55:44 CEST] <jamie_1> furq: no good :(
[02:56:04 CEST] <jamie_1> any ideas how to overcome the relocation R_X86_64_PC32 against symbol `ff_pw_9' can not be used when making a shared object; recompile with -fPIC without having to recompile EVERYTHING
[02:56:19 CEST] <jamie_1> like the deps i have
[02:56:31 CEST] <jamie_1> i dont mind compiling ffmpeg again... but all the deps would take a good minute
[05:24:43 CEST] <unlord> I'm sure you all saw https://www.reddit.com/r/AV1/comments/bdmk6h/32bit_ffmpeg_and_libaom_currently_crashes_64bit/
[05:35:22 CEST] <furq> i don't think that many people are really concerned about whether av1 and avisynth work properly together
[05:35:49 CEST] <furq> Well there are plenty of filters that don't work with Vapoursynth. Like QTGMC,
[05:35:53 CEST] <furq> this guy's done his homework
[07:34:09 CEST] <Atlenohen> Hmm, weird, on windows libavutil/avconfig.h and libavutil/ffversion.h are not CRFL but LF ... this intended or just forgoten to be converted ?
[07:37:16 CEST] <Atlenohen> Not sure if it's Git on windows or MSYS2 or the make build process responsible for this, these are include headers that are part of the finished build (make install) but maybe .h just get copied as is, not sure yet,
[08:02:16 CEST] <Atlenohen> Wait so what's on the ffmpeg's repo in previous releases aren't the stable ones, only the tarball links on the front page are regarded stable?
[08:03:08 CEST] <Atlenohen> For example 4.1.3-3 state which is like 2 weeks old from the release of 4.1.3, is not considered stable ?
[08:04:35 CEST] <furq> huh
[08:07:41 CEST] <Atlenohen> I cloned from 4.1, not from master, built and got the full version as 4.1.3-3-abcabcabc
[08:09:14 CEST] <Atlenohen> A stable 4.1.3 was released on 4th April, today is 16 april and 4.1 branch has received more commits, is 4.1.3-3 right now considered stable or not?
[08:09:54 CEST] <Atlenohen> My guess is not, by pure logic, but I'm just double checking
[08:15:52 CEST] <furq> the 4.1 branch isn't stable, no
[08:15:56 CEST] <furq> there's a tag for 4.1.3
[08:16:57 CEST] <furq> old branches don't get any new features but they are still actively worked on for bugfixes
[08:18:41 CEST] <Atlenohen> Oh tags, right. Well in this case the difference shouldn't be that big to bother, but just to be sure, thanks.
[08:29:23 CEST] <Atlenohen> Thanks guys for all the help, pretty much done with this chore, I'll probably be more personally interested in getting to know FFmpeg deeper later on when I'll be doing some of my own projects/ideas for myself that I've been having in the past, glad I got this job which finally got me over the hardest part that I kept delaying.
[13:49:19 CEST] <Zucca> Hi. I have a looooooong video. I'd like to convert it to a time-lapse video. The video has 30fps frame rate, and I'd like to only take every 30th frame (essentially convert it to 1fps video) and then speed it up to 60fps so that one second is one minute in video.
[13:49:35 CEST] <Zucca> Can this archieved losslessly?
[13:51:01 CEST] <Zucca> When I think of it: drop 29 of 30 frames, then speed up by x60. That should not need any re-enconding. Right?
[13:52:10 CEST] <Zucca> Also I don't have any audio to consider.
[13:57:15 CEST] <cehoyos> Zucca: Please provide "ffmpeg -i" console ouput for your video.
[13:57:20 CEST] <cehoyos> In most cases, this cannot be done.
[13:57:37 CEST] <cehoyos> In most cases, what you ask for cannot be done.
[13:58:08 CEST] <DHE> making a video of only keyframes might be doable, but it will at best constrain the speedup and/or output framerate. and the video bitrate will be rather high
[13:58:51 CEST] <Zucca> It's ffv1 encoded.
[13:58:54 CEST] <Zucca> Stream #0:0: Video: ffv1 (FFV1 / 0x31564646), yuv422p(progressive), 640x480, 30 fps, 30 tbr, 1k tbn, 1k tbc (default)
[14:00:15 CEST] <Zucca> To to be able to do this I'd need to choose kayframing and codec propely or capture 1fps to begin with?
[14:01:07 CEST] <DHE> a bit of both. there's -skip_frames nokey but that'll just produce a stuttering video
[14:01:45 CEST] <cehoyos> Where is the problem? Simply re-encode to ffv1 (you cannot do codec copy for your usecase)
[14:01:45 CEST] <Zucca> But since I have it as ffv1 already I can just re-encode it as ffv1 and lose onlt the dropped frames.
[14:02:07 CEST] <DHE> yeah, being ffv1 at least you're not losing image quality here
[14:02:47 CEST] <Zucca> cehoyos: I thought to get some speedups by doing stream copy. ;) But I'll go with re-encoding since it's the easiest way.
[14:03:01 CEST] <DHE> so... ffmpeg -skip_frames nokey -r 3600 -i input.mkv -c ffv1 -r 30 output.mkv
[14:03:10 CEST] <cehoyos> It is the only way because there is no raw ffv1 that you can feed into image2
[14:03:14 CEST] <DHE> I think... never tried this before
[14:03:24 CEST] <cehoyos> This is not related to skip_frames
[14:03:41 CEST] <DHE> but it would speed up the decoding step, hopefully providing at least some speedup
[14:03:46 CEST] <DHE> assuming your GOP setting is sane-ish
[14:04:35 CEST] <DHE> it may make the output video less consistent though
[14:04:46 CEST] <Zucca> I have only used -c:v ffv1 when creating the video.
[14:05:00 CEST] <furq> does -skip_frame nokey speed up ffv1 noticeably
[14:05:19 CEST] <Zucca> I could test it...
[14:05:41 CEST] <DHE> it's described as "skip decoding for the selected frames", so if you're dropping 90%+ of all frames, it sounds worthwhile
[14:06:19 CEST] <cehoyos> Can we please agree that this is not the use-case for skip_frame?
[14:06:35 CEST] <furq> it's not that uncommon of a use for skip_frame really
[14:06:38 CEST] <furq> it is a hack though
[14:07:05 CEST] <DHE> there's definite unknowns that prevent us from being sure it's a good idea
[14:07:19 CEST] <Zucca> Sure it is. The only reason I like it a bit is the speedup... But I think I'll avoid it.
[14:07:28 CEST] <furq> what is even the default gop size for ffv1
[14:08:37 CEST] <furq> apparently 12
[14:10:59 CEST] <King_DuckZ> hi, I have an AVCodecContext c on which I set c->profile = 1 and c->profile = 4, but that doesn't seem to have any effect on the output file
[14:11:05 CEST] <King_DuckZ> codec is prores_ks
[14:11:30 CEST] <King_DuckZ> how can I achieve the same effect that -profile:v X on the command line would have?
[14:13:50 CEST] <cehoyos> It is supposed to work with prores_aw
[14:14:16 CEST] <King_DuckZ> ah, so is it just not supported by prores_ks?
[14:15:21 CEST] <cehoyos> Not in the way you tested it.
[14:17:41 CEST] <King_DuckZ> ffprobe -show_streams is still reporting profile=unknown tho, even if I use prores_aw
[14:18:03 CEST] <King_DuckZ> but I mean, if it can be made to work with prores_ks, then how do I do it?
[14:18:26 CEST] <durandal_1707> via AVOptions
[14:20:00 CEST] <DHE> AVDictionary *dict = NULL;    av_dict_set(&dict, "profile", "auto", 0);   avcodec_open2(avc_ctx, codec, &dict);
[14:20:23 CEST] <DHE> (yes, AVDictionary** is intentional)
[14:20:51 CEST] <King_DuckZ> DHE: ah I think I understand that, thanks
[14:21:07 CEST] <King_DuckZ> so should I just leave c->profile to just 0 all the time?
[14:21:57 CEST] <DHE> setting c->profile manually requires knowing the numerical codes for the profiles and they're not exported in a user header file. I would use the dictionary method
[14:24:15 CEST] <DHE> (a very large number of options can be set this way - both codec-specific and otherwise)
[14:25:02 CEST] <King_DuckZ> ah, I thought it was the constants from FF_PROFILE_* macros
[14:25:15 CEST] <King_DuckZ> damn ok, I'll delete that and use the dictionary approach
[14:26:38 CEST] <DHE> https://github.com/FFmpeg/FFmpeg/blob/master/libavcodec/proresenc_kostya.c#L43  Oh? That's kinda interesting, because the source includes these duplicates.
[14:26:55 CEST] <DHE> and those are what the AVDictionary code will expand them out to...
[14:27:31 CEST] <DHE> at least they seem to be in the same order and all that
[14:27:50 CEST] <King_DuckZ> T_T
[14:27:54 CEST] <DHE> ikr
[14:42:37 CEST] <Zucca> Since I still need to re-encode my video to get the time-lapse... I could set "keyframerate" to a very low value to save space. Right?
[14:43:14 CEST] <Zucca> I ment for the video when I'm doing the initial capturing.
[14:46:47 CEST] <furq> Zucca: a lower gop size will use more space
[14:46:55 CEST] <furq> also it doesn't make a huge amount of difference with ffv1
[14:47:06 CEST] <Zucca> Hm.
[14:47:10 CEST] <Zucca> Ok.
[14:47:22 CEST] <furq> it obviously depends a lot on the content so you might as well try it on a short chunk
[14:47:32 CEST] <furq> but i wouldn't expect more than a few percent
[14:47:33 CEST] <Zucca> furq:
[14:47:39 CEST] <Zucca> Well it's static mostly.
[14:47:53 CEST] <Zucca> Timelapse from my yard.
[14:48:12 CEST] <furq> you might want to use something like x264 lossless then
[14:48:16 CEST] <furq> since that actually does inter compression
[14:48:48 CEST] <Zucca> I've been trying out with vp9. But eventually went with ffv1.
[14:49:28 CEST] <furq> i would definitely use x264 over vp9 for this
[14:49:42 CEST] <Zucca> Why's so?
[14:49:53 CEST] <furq> speed, mostly
[14:50:12 CEST] <furq> also i know x264's lossless mode is fairly widely used whereas i don't think vp9's is
[14:50:22 CEST] <furq> or libvpx's is rather
[14:50:55 CEST] <furq> ffv1 is pretty nice but if you have a mostly static image then x264 should compress a lot better
[14:51:27 CEST] <Zucca> Yeah. With vp9 I need to drop then capturing frame rate a bit. Although I might do it anyway. Since I'm doing timelapse I really don't need 30fps input.
[14:52:22 CEST] <Zucca> 30fps is there because if somathing interesting happens I could extract it from the "master" and still get 30fps.
[14:52:57 CEST] <Zucca> Oh well... I'll test out different options and see what suits the best.
[14:53:25 CEST] <furq> if you don't get a decent size reduction with x264 then just stick with ffv1
[14:54:11 CEST] <Zucca> Yeah. ffv1 is suprisingly light with this task. Although the resolution isn't high. :P
[15:00:15 CEST] <nicoulaj> could anyone tell me if HEVC hardware encoding is possible on Linux + AMD ? looks like AMF does not support Linux, and VAAPI/MESA only supports H264 if I'm reading the wiki correctly ?
[15:50:06 CEST] <faLUCE> hello, are there cases in which AVFrame->pkt_duration of a demuxed packet is wrong?
[15:51:25 CEST] <faLUCE> (pts are right, and evaluating the duration with pts - prev_pts gives ~3000, which is 33,3ms (30fps) if rescaled according to the demuxer time_base)
[15:51:34 CEST] <faLUCE> but pkt_duration gives 6000
[15:52:10 CEST] <JEEB> generally that means that the value in the container might be incorrect (otherwise a bug)
[15:53:07 CEST] <faLUCE> JEEB: ok, thanks. I wondered if there could be other reasons
[15:54:55 CEST] <JEEB> I'm not sure if lavf tries to guesstimate you a value if the demuxer doesn't give you one. but I would think it wouldn't
[15:56:11 CEST] <faLUCE> do you mean "if the muxer doesn't give you one" ?
[15:56:26 CEST] <JEEB> if the muxer itself doesn't set the field
[15:56:32 CEST] <faLUCE> ok
[15:56:40 CEST] <JEEB> I recall MPEG-TS not setting pkt_duration so I would guess not :P
[16:04:17 CEST] <kepstin> nicoulaj: vaapi can to hevc, needs fairly recent mesa i think. On nvidia cards with the binary driver, nvenc can do hevc
[16:04:38 CEST] <Numline1> Hey folks, I suck at ffmpeg. Can someone please help me with this command, so it extracts an image about every 5 seconds? ffmpeg -i AMBA0273.MOV -vf thumbnail=100 -frames:v 1 thumb%04d.jpg
[16:04:50 CEST] Action: kepstin has done some test hevc encodes w/vaapi on his rx 560 and they worked fine, better than the h264 encoder in fact :/
[16:04:59 CEST] <cehoyos> Why did you choose 100? Why vframes 1?
[16:05:32 CEST] <Numline1> cehoyos I wasn't sure how to combine that. 100 was supposed to be every x frames, vframes was in the original command and I wasn't sure what to do with it
[16:05:58 CEST] <kepstin> Numline1: "-vframes 1" means "output a single frame then exit"
[16:06:06 CEST] <Numline1> oh
[16:06:17 CEST] <Numline1> well okay, I removed it :) Now it seems to create a thumbnail every 100 frames
[16:06:37 CEST] <Numline1> I'm trying to find a way to extract a reasonable amount of images for each video
[16:06:57 CEST] <Numline1> I'm not exactly sure how to scale it properly
[16:10:53 CEST] <cehoyos> Only you know the input video, only you can decide what is "reasonable"
[16:12:02 CEST] <Numline1> Yeah I was thinking - 10 "thumbnails" for first 10 seconds, then 1 thumbnail every 5 seconds
[16:12:13 CEST] <Numline1> although I'm not sure if that's even possible in a single command
[16:12:23 CEST] <Numline1> I assume I'd have to set -ss for the second part
[16:12:43 CEST] <Numline1> cehoyos btw, just to verify - the thumbnail filter thingie - does it take 100 frames and looks for the best one?
[16:14:10 CEST] <cehoyos> https://ffmpeg.org/ffmpeg-filters.html#thumbnail
[16:14:16 CEST] <cehoyos> It picks one of 100
[16:17:15 CEST] <Numline1> okay, thanks
[16:17:19 CEST] <Numline1> one more thing I'm wondering about
[16:17:20 CEST] <Numline1> ffmpeg -ss 00:00:10 -i AMBA0273.MOV -t 1 -vf thumbnail thumb%04d.jpg
[16:17:35 CEST] <Numline1> This creates 30 thumbnails, probably one for each frame. Why;s that?
[16:21:30 CEST] <furq> you need to set the output framerate to match
[16:22:45 CEST] <Numline1> oh, I removed the =100
[16:22:48 CEST] <Numline1> I'm a dumbass
[16:22:48 CEST] <Numline1> thanks
[16:23:47 CEST] <furq> it defaults to 100 anyway
[16:24:05 CEST] <Numline1> oh. Then I'm not sure I follow
[16:25:05 CEST] <furq> the thumbnail filter doesn't actually change the output framerate so it just outputs a bunch of duplicate frames
[16:25:16 CEST] <furq> you want something like -vf thumbnail,fps=30/100
[16:25:38 CEST] <kepstin> I think "-vsync 0" would work here as well
[16:26:01 CEST] <cehoyos> Yes, and it is recommended
[16:26:07 CEST] <furq> oh yeah that's a less dumb way of doing it
[16:27:49 CEST] <Numline1> I'll go with the less dumb way then :) Thanks folks
[16:28:11 CEST] <Numline1> ffmpeg -ss 00:00:10 -i AMBA0273.MOV -t 10 -vf thumbnail=50 -vsync 0 thumb%04d.jpg is the final version, seems to be fine
[17:05:59 CEST] <superware> can an AVPacket contain more than a single video frame?
[17:14:32 CEST] <kepstin> superware: i think with most video codecs that'll hold, although there might be some cases where a parser of some sort has to be run before that's true
[17:14:53 CEST] <kepstin> (and I'm not sure how things like vp9's alternate reference frame, which is decoded but not displayed, is handled)
[17:15:28 CEST] <kepstin> in general, when decoding video, you cannot assume that if you pass one packet to the decoder, that it'll give you one frame back
[18:01:57 CEST] <King_DuckZ> DHE: I fixed my program, I get different file sizes now depending on which profile I set
[18:02:26 CEST] <King_DuckZ> but if I run ffprobe -show_streams myfile.mov the profile field shown there is always set to unknown, is that normal?
[18:13:17 CEST] <Cracki> cheers. I can't be assed to deal with understanding and using the library, but I'd like to generate a video from specified bitmaps at specified times, and pipe that to ffmpeg for compression. I remember there was a binary format for just such purposes... anyone remember it? haven't found it yet in the docs
[18:14:09 CEST] <Cracki> my source material is quite sparse, maybe a few hundred different pictures over an hour. ATM I'm piping in raw bitmaps at a fixed frame rate, which is very very wasteful.
[18:14:33 CEST] <King_DuckZ> yeah I did something like that myself, it's called y4m
[18:15:33 CEST] <King_DuckZ> Cracki: https://wiki.multimedia.cx/index.php?title=YUV4MPEG2 this was my source of wisdom, plus some gotchas that are not clear from there and I found out by reading the code from some other project on the internet
[18:16:17 CEST] <Cracki> I would prefer a variable frame rate, i.e. just PTS
[18:16:38 CEST] <Cracki> I already have a solution for fixed frame rate
[18:19:03 CEST] <King_DuckZ> https://alarmpi.no-ip.org/kamokan/fo?cpp this is my code for the header, you'll have to work out the details for yourself
[18:19:15 CEST] Action: King_DuckZ shrugs
[18:19:29 CEST] <King_DuckZ> that's the y4m specs
[18:20:33 CEST] <Cracki> uh no thanks, I think I'm not making myself clear
[18:20:42 CEST] <Cracki> I do NOT want fixed frame rate
[18:21:36 CEST] <King_DuckZ> yeah, and what I said is that's what the y4m specs look like, wheter it supports that or not my fault
[18:22:13 CEST] <Cracki> I never mentioned y4m, I am just looking for a better solution than I have
[18:22:21 CEST] <Cracki> if that isn't a solution, fine?
[18:22:26 CEST] <King_DuckZ> maybe you want to dig if there's anything else than y4m then
[18:22:35 CEST] <Cracki> we're in #ffmpeg, right?
[18:22:48 CEST] <King_DuckZ> yes?
[18:23:47 CEST] <Cracki> ah, there it is https://ffmpeg.org/nut.html
[19:01:10 CEST] <yug_blop> Hi, is there a device like gdigrab for macos that allows you to specify a window title to record?
[19:12:20 CEST] <coolhp48> Whould anyone know when I might find some documentation or an example of resampling using the AVSAMPLE API ?
[19:13:03 CEST] <JEEB> doc/examples
[19:13:27 CEST] <JEEB> that has swresample example, although I think it doesn't utilize the AVFrame-based API
[19:14:33 CEST] <coolhp48> Hi Jeeb. You are correct. That's the example I was reading but it doesnt use AVFrame-based API calls.
[19:16:13 CEST] <coolhp48> I think I might have found something in the group_lavr documentation (detailed description section). Its still sample based and not frame based but it seems simpler than the resample example from the doc folder.
[19:26:31 CEST] <tablerice> trying to convert .R3D footage into anything else (prores MOV, h264 mp4) but I'm getting an error "Invalid data found when processing input". How can I find more info about the error?
[19:30:08 CEST] <JEEB> tablerice: just `ffprobe -v verbose -i "FILE"` and pastebin that. then link here. might just be that the file is in a format that's not supported by FFmpeg (yet)
[19:33:35 CEST] <tablerice> https://pastebin.com/kf4q1G4W
[19:33:57 CEST] <JEEB> that's an older version of FFmpeg, but yea - exactly what I thought :)
[19:34:12 CEST] <JEEB> FFmpeg couldn't figure out what that is
[19:34:14 CEST] <tablerice> I saw something while researching, ffpmeg only supports a certain version of red footage?
[19:34:23 CEST] <tablerice> version 3 i think?
[19:34:25 CEST] <JEEB> it supports exactly what was reverse engineered ;)
[19:34:35 CEST] <tablerice> Ha ha no worries
[19:34:37 CEST] <JEEB> it's not like R3D publishes what they create
[19:34:53 CEST] <tablerice> Nah, they're proprietary to the max
[19:36:41 CEST] <JEEB> check if there's any similar ticket on trac.ffmpeg.org. if there isn't and you have some samples you can share, feel free to upload some short sample that you can share somewhere sane (like f.ex. 0x0.st with curl - curl -F'file=@FILE' https://0x0.st ) and make an issue
[19:36:48 CEST] <JEEB> (or well, feature request to be exact)
[19:37:11 CEST] <JEEB> https://wiki.videolan.org/Bounties
[19:37:20 CEST] <JEEB> videolan bounty page doesn't seem to have one for modern R3D
[19:37:48 CEST] <JEEB> it has contact info if you or your employer might be interested in sponsoring a bounty
[19:39:28 CEST] <tablerice> Sounds good. Thanks for the help JEEB!
[19:57:44 CEST] <tablerice> Okay so apparently the team at RED has some linux users because I just came across this little gem for anyone else trying to convert R3d footage on linux while keeping all the raw goodness: https://www.red.com/downloads/options?itemInternalId=16146&version=1
[21:30:22 CEST] <TheSashmo> has anyone at all ever seen a player that can support mpeg2 in browser other than vlc plugin?
[22:16:05 CEST] <ChocolateArmpits> TheSashmo, windows media player embed supports it
[22:16:17 CEST] <ChocolateArmpits> but of course only on internet exploder
[22:18:23 CEST] <ChocolateArmpits> quicktime browser plugin should also support it
[22:18:34 CEST] <TheSashmo> ChocolateArmpits: oh snap! never thought of that
[22:32:17 CEST] <TheSashmo> ChocolateArmpits: but chrome and firefox are my go to browsers obv....
[22:32:35 CEST] <ChocolateArmpits> What's so bad about VLC then?
[22:32:50 CEST] <ChocolateArmpits> Maybe there are some proprietary solutions for this, but I really can't name any more
[22:40:10 CEST] <ChocolateArmpits> I can only guess what you're doing, but usually for large collections of videos that need to be previewed in the browser a compatible format version is transcoded
[22:53:56 CEST] <alexozer> ffmpeg seems to output the entire video starting at "-ss" instead of ending at "-to":
[22:53:58 CEST] <alexozer> ffmpeg -ss 929.363 -noaccurate_seek -i practice1.mp4 -to 939.681 -c copy -y part-1-practice1.mp4
[22:54:11 CEST] <alexozer> so in this case, the video should only be 10 seconds long but it's much longer than that
[22:54:37 CEST] <c_14> either use -t and a duration or add -copyts
[22:55:11 CEST] <kepstin> TheSashmo: you could always compile ffmpeg to wasm and run a decoder in the browser that way
[22:56:54 CEST] <kepstin> alexozer: when you use -ss before the -i, ffmpeg cli runs some timestamp cleanup code that changes the timestamps to start at 0
[22:57:18 CEST] <kepstin> alexozer: so that command will grab 939.681s of video starting at 929.363 seconds in
[22:57:51 CEST] <alexozer> kepstin: ah interesting. Would providing -i before -ss work in this case as well then?
[22:58:16 CEST] <kepstin> alexozer: that would work, but it would be a *lot* slower, since -ss after -i has to decode the entire video up to the start point
[22:59:09 CEST] <alexozer> kepstin: interesting thank you!
[22:59:41 CEST] <kepstin> alexozer: there's some options to change the timestamp behaviour in ffmpeg, depending on what exactly you want to do
[22:59:59 CEST] <kepstin> (note that you generally do want the encoded output to have timestamps starting at 0)
[23:01:35 CEST] <kepstin> for example, the "-copyts" option disables the input timestamp processing, and the result will be 10 seconds of video - but the timestamps in the output will start at 939.681s
[23:03:39 CEST] <alexozer> so to get the optimal seek performance as well as zero-based timestamps for the output videos, I could provide the duration to -to in my command, correct?
[23:04:14 CEST] <kepstin> alexozer: the duration in the -to or -t option would work, yeah (with 0-based timestamps, both options have the same behaviour)
[23:04:34 CEST] <kepstin> alexozer: note that you can also use -to as an input option (before -i), and you might want to see how that compares as well
[23:07:53 CEST] <alexozer> kepstin: using -to before -i seems most reasonable I think
[23:09:25 CEST] <jamie_1> so i am working on compiling ffmpeg from scratch and i have done it fine before, but i nuked my dir since i made a few whoopsies i was having a hard time fixing, so im working on a 100% fresh install folling the ffmpeg compile instructions and i keep running into https://pastebin.com/S0EM508X
[23:10:39 CEST] <kepstin> jamie_1: please share your configure line, linux distro and arch, and more of the build log
[23:10:49 CEST] <jamie_1> okay one sec
[23:13:43 CEST] <irwiss> good time of day, i'm trying to figure out how to convert numeric pixel format into the short string identifier, looking at https://ffmpeg.org/doxygen/4.0/pixfmt_8h_source.html there seems to be an #ifdef block in the middle , do these numbers then float around as compiler defines are set or are they constants?
[23:14:10 CEST] <kepstin> jamie_1: I'm guessing a bit, but it looks like you're trying to build the ffmpeg libraries (libavcodec.so, etc.) but have it set to statically link in the C library, which isn't gonna work
[23:17:14 CEST] <kepstin> irwiss: the way to get the name from the number is to call https://ffmpeg.org/doxygen/4.0/pixdesc_8h.html#afe0c3e8aef5173de28bbdaea4298f5f0 which returns the descriptor structure, and that has a name string in it.
[23:18:36 CEST] <kepstin> irwiss: if the numbers change, the soversion of the ffmpeg libs will be changed as well, so you'd have to rebuild to link to the new lib
[23:18:40 CEST] <irwiss> that seems to be what i'm looking for, google for some reason referred to https://ffmpeg.org/doxygen/4.0/group__lavc__misc__pixfmt.html which hasn't got that method listed, thanks!
[23:18:54 CEST] <jamie_1> kepstin: how would have it not statically link the c libraies
[23:19:10 CEST] <kepstin> jamie_1: please share your configure line, linux distro and arch, and more of the build log
[23:19:17 CEST] <jamie_1> kepstin: im still working on it
[23:19:32 CEST] <kepstin> jamie_1: you probably have something on the configure line which is incorrect
[23:19:35 CEST] <jamie_1> i had to do a make clean and make to get the output again so i could link it
[23:19:51 CEST] <jamie_1> https://pastebin.com/pS5v47jy is my config line
[23:20:03 CEST] <jamie_1> im still working on getting a build log
[23:20:35 CEST] <jamie_1> thats gonna be a few minutes though
[23:21:29 CEST] <kepstin> jamie_1: hmm. that actually looks correct for the use of pkg-config; i'm guessing that some of the libraries you're trying to link into ffmpeg weren't built with -fPIC
[23:22:10 CEST] <jamie_1> kepstin: if you give me just a sec, i should be able to find out
[23:22:33 CEST] <jamie_1> its libaom but i honestly dont have a darn clue how to work with that one
[23:22:41 CEST] <kepstin> to build a library like libx264 statically, but in such a way that it can be linked into a shared library, often requires special prep
[23:23:26 CEST] <jamie_1> im trying to build one for obs that includes latest nvenc and nvida sdk
[23:23:27 CEST] <kepstin> (do you actually need the libavcodec.so, etc. libraries? or only the ffmpeg cli tool?)
[23:24:04 CEST] <jamie_1> im building for obs compile from scratch so it depends on libav for encoding in x264
[23:24:17 CEST] <jamie_1> at least from what i understand
[23:24:20 CEST] <kepstin> tbh, it would be easiest if you just remove the --pkg-config-flags="--static" and link to the various libraries dynamically
[23:24:27 CEST] <furq> jamie_1: if it helps you're not going to be needing libaom for obs
[23:24:30 CEST] <jamie_1> obs doesnt allow you to
[23:24:36 CEST] <furq> unless you want to capture your screen at 0.01fps
[23:24:43 CEST] <jamie_1> yeah no....
[23:24:56 CEST] <jamie_1> that would be pretty funny though
[23:25:00 CEST] <jamie_1> do that for a day
[23:25:33 CEST] <kepstin> it would certainly be a low bitrate livestream ;)
[23:25:57 CEST] <jamie_1> what would be the best way to dissable libaom?
[23:26:05 CEST] <furq> remove --enable-libaom from configure
[23:26:10 CEST] <jamie_1> im not sure exactly what it does to start with but it was listed as part of the standard ffmpeg
[23:26:30 CEST] <jamie_1> was hoenstly one of the few parts i didnt at least know what they do
[23:26:37 CEST] <furq> libaom encodes av1
[23:26:50 CEST] <kepstin> specifically, libaom encodes av1 very slowly
[23:26:53 CEST] <jamie_1> yeah... not planning on doing that any time soon
[23:27:15 CEST] <jamie_1> i have no use for av1 personnaly
[23:27:24 CEST] <furq> not many people do yet
[23:27:51 CEST] <jamie_1> would be cool to look into, still working on understand x264 and x265 better before that XD
[23:28:04 CEST] <jamie_1> *working on understanding
[23:28:38 CEST] <jamie_1> so im assuming the best course of action would be to remove libaom from my user libs?
[23:32:58 CEST] <jamie_1> just removed libaom from my config and removed it from my bin
[23:33:10 CEST] <jamie_1> didnt know if it would catch it in the autoconfigure so i wanted to make sure it didnt
[23:33:39 CEST] <jamie_1> thanks for the help kepstin snf furq
[23:33:46 CEST] <jamie_1> not sure where the snf came from
[23:41:01 CEST] <jamie_1> screwed up fdk-aac too :/ had to change that to --enable-shared
[00:00:00 CEST] --- Wed Apr 17 2019


More information about the Ffmpeg-devel-irc mailing list