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

burek burek021 at gmail.com
Sun Nov 19 03:05:01 EET 2017


[00:52:27 CET] <FurretUber> Hi, to encode losslessy libx264 should I set -qp 0, -crf 0 or both?
[00:53:18 CET] <DHE> I was taught qp=0, but the other thing to watch out for is the colourspace involved
[00:56:29 CET] <FurretUber> Seeing the results of using -vcodec libx264rgb -preset:v ultrafast -pix_fmt bgr0 -qp 0 it is nearly perfect, but somehow the mouse cursor's shadow has suffered some degradation
[00:59:55 CET] <FurretUber> It happened with rawvideo  and libvpx-vp9 too, strange
[01:45:31 CET] <mrjayviper> hello. need help with stream selection using language please. For testing I'm using an MKV file I have in my laptop.
[01:45:43 CET] <mrjayviper> It has a single audio stream + many subtitle streams. English (labeled as default) at Stream #0:2. To test language selection, I chose the Italian (ita) subtitle which is located at Stream #0:6. I used ffprobe to get the stream info.
[01:46:09 CET] <mrjayviper> I tried: ffmpeg -i input.mkv -map 0:v -map 0:a -map 0:s:m:language:ita? -c:v copy -c:a copy -c:s copy input.mkv
[01:46:16 CET] <mrjayviper> and ffmpeg -i input.mkv -map 0:v -map 0:a -map 0:s:language:ita? -c:v copy -c:a copy -c:s copy input.mkv
[01:46:22 CET] <mrjayviper> I also tried without the ?
[01:46:45 CET] <mrjayviper> in all cases, the output video has the English subtitle.
[01:46:58 CET] <mrjayviper> Any ideas what I could be doing wrong? Thanks
[01:48:16 CET] <c_14> Isn't it 0:m:s ?
[01:48:49 CET] <c_14> rather
[01:48:53 CET] <c_14> 0:m:language:ita
[01:53:02 CET] <mrjayviper> I tried your suggestion on a Windows box running ffmpeg 3.4.x and it seems to work!
[01:53:07 CET] <mrjayviper> let me try on linux :)
[01:53:26 CET] <mrjayviper> before this, I have been using ffmpeg commandline via linux
[01:53:50 CET] <mrjayviper> from what I can see, my Ubuntu 17.10 setup is using ffmpeg 3.3.x
[01:54:51 CET] <c_14> I don't think anything's changed in the syntax for that recently
[01:55:07 CET] <c_14> The ? is relatively recent, but I think even that's ~2 years old now
[01:56:18 CET] <mrjayviper> just a question though.
[01:56:36 CET] <mrjayviper> is 0:m:language specific to subtitles or both audio and subtitles?
[01:57:34 CET] <mrjayviper> what if my input video has multiple audio streams (English, Italian and Spanish) and multiple subtitle streams (English, German and Italian).
[01:57:35 CET] <c_14> both iirc
[01:58:07 CET] <mrjayviper> English audio is the default and German subtitle is the default.
[01:58:17 CET] <c_14> I think I wanted to look into getting 0:s:m working, but don't think I ever progressed very far
[01:58:20 CET] <mrjayviper> I want Italian audio and English subtitles.
[01:58:39 CET] <c_14> I usually fall back to ffprobe (with json output) and then script around it
[01:59:31 CET] <mrjayviper> thumbs up
[02:00:27 CET] <c_14> (which is definitely a thing you can do and if metadata matching isn't working out perfectly maybe you have to)
[02:01:11 CET] <mrjayviper> in my 2nd example (multiple audio and subtitles), how do I extract just the Italian audio when there's Italian for both audio and subtitles?
[02:04:49 CET] <c_14> maaaybe 0:m:language:ita:s ?
[02:08:57 CET] <mrjayviper> let me try that. thanks a lot! :)
[02:19:25 CET] <TheRock2> Is there a prebuilt static version for x86?
[02:19:49 CET] <TheRock2> not just the binary, also the libs/includes
[02:22:13 CET] <DHE> it would require (preferably?) versions of any external libs as well, such as libx264 to be useful. or not support them
[02:23:56 CET] <TheRock2> --enable-static should do this
[02:23:57 CET] <TheRock2> ?
[02:24:32 CET] <c_14> TheRock2: https://www.johnvansickle.com/ffmpeg/ ?
[02:24:39 CET] <c_14> oh, libs
[02:24:40 CET] <c_14> eeeh
[02:24:42 CET] <c_14> probably not
[02:24:44 CET] <TheRock2> yeah it's just the binary
[02:28:44 CET] <c_14> probably have to build it yourself
[02:31:28 CET] <TheRock2> probably
[02:32:00 CET] <mrjayviper> what compiler option should be enabled if I want to use mov_text subtitles into my M4V output video?
[02:32:32 CET] <mrjayviper> getting this error on Windows: Unable to find a suitable output format for 'mov_text'
[02:34:51 CET] <c_14> it should just work
[02:34:55 CET] <c_14> your command is probably wrong
[02:38:58 CET] <mrjayviper> https://pastebin.com/ffRANpVK
[02:39:01 CET] <mrjayviper> Thanks!
[02:39:31 CET] <mrjayviper> ignore what I type! :)
[02:39:37 CET] <c_14> and the console output?
[02:39:48 CET] <c_14> oh
[02:39:50 CET] <c_14> I see
[02:39:56 CET] <c_14> you have a rogue -c:a in there
[02:40:01 CET] <c_14> that doesn't have a codec with it
[02:40:04 CET] <c_14> that's messing up the parser
[02:40:16 CET] <c_14> get rid of it or set it to an audio codec (-c:a copy for example)
[02:44:57 CET] <mrjayviper> -thumbs up-
[02:48:06 CET] <TheRock2> ./configure takes a while ?
[02:48:14 CET] <c_14> yeah
[02:48:24 CET] <c_14> mainly IO limited
[02:48:28 CET] <c_14> it does a lot of test compilations
[02:48:46 CET] <c_14> you can run a tail -f on build/config.log or wherever
[02:48:48 CET] <c_14> to see what it's doing
[02:51:53 CET] <Johnjay> or use hastebin, the open source alternative to paste bin
[02:52:02 CET] <TheRock2> Ah, okay. How about the codecs?
[02:52:23 CET] <TheRock2> they are not build by default?
[02:52:43 CET] <TheRock2> for example h264
[02:53:57 CET] <c_14> you have to enable those
[02:54:05 CET] <TheRock2> I see x264 needs to be built statically before ffmpeg build and then enable in ffmpeg ./configure
[02:54:12 CET] <c_14> and you'll need the dependencies installed somewhere where pkg-config will find them
[02:54:58 CET] <TheRock2> I'll go without them first to test the build
[03:06:41 CET] <TheRock2> kind of challenge to build it
[03:08:46 CET] <mrjayviper> thanks again! :)
[03:34:10 CET] <TheRock2> ffbuild/config.mak(2) : fatal error U1034: syntax error : separator missing
[03:34:10 CET] <TheRock2> Stop.
[03:34:13 CET] <TheRock2> what's that?
[03:34:18 CET] <TheRock2> i typed nmake after configure
[04:19:54 CET] <FurretUber> I'm trying to use FFmpeg in the following way: it runs in one computer, then it makes a low-CPU, lossless encoding on it, then this first computer send the output though SSH to a second computer, which should then do the final encoding and then return this final encode to the first computer with FFmpeg just copying the streams. The problem is that the second machine is using much more CPU power than expected, and the results are being i
[04:19:54 CET] <FurretUber> consistent
[04:25:03 CET] <FurretUber> The command I'm using is:
[04:25:03 CET] <FurretUber> ffmpeg -framerate 59.8 -thread_queue_size 512 -f x11grab -s 1366x768 -i :0 -thread_queue_size 512 -f openal -i "Monitor of Áudio interno Estéreo analógico" -acodec copy -vcodec libx264rgb -preset:v ultrafast -qp 0 -f nut - | ssh desktop "~/ffmpeg10bit -i - -acodec libfdk_aac -b:a 128k -vcodec libx264 -preset:v ultrafast -f nut -" | ffmpeg10bit -i - -acodec copy -vcodec copy saida2.mp4
[04:47:10 CET] <TheRock2> looks like it compiles now
[04:47:15 CET] <TheRock2> but lots of warnings
[04:47:26 CET] <TheRock2> but thats probably normal for ffmpeg
[06:19:22 CET] <TheRock2> libavcodec/dxva2.c(518) : error C2440: 'initializing' : cannot convert from 'GUI
[06:19:22 CET] <TheRock2> D' to 'unsigned long'
[06:19:22 CET] <TheRock2> make: *** [libavcodec/dxva2.o] Error 2
[06:19:26 CET] <TheRock2> do you know how to solve this?
[06:19:36 CET] <TheRock2> when building ffmpeg
[07:01:07 CET] <TikityTik> Is it possible for me to encode a video that's 1 hour to be less than 4 MB if it has low enough framerate?
[07:01:08 CET] <XLS202> Hey :) I am tryieng to make some low latancy streaming with rtmp and a nginx server. But now I have the Problem that ffmpeg introduces a 2 second delay. Has anyone an idea what i could try? (here is an example pic of my problem (the time since the streams are running) http://ww1.sinaimg.cn/large/79565610gw1f0fe2zusbdj213108o0w8.jpg)
[07:01:39 CET] <TikityTik> XLS202, it's probably something to do with the buffer?
[07:01:55 CET] <TikityTik> cache/buffer
[07:02:26 CET] <XLS202> Also my command is this: exec ffmpeg -fflags nobuffer -i rtmp://localhost/live/test -c:v libx264 -x264-params "nal-hrd=cbr" -fflags nobuffer -preset fast -b:v 2M -minrate 2M -maxrate 2M -bufsize 1M -tune zerolatency -an -vf scale=854x480 -r 60 -f flv rtmp://localhost/julia/854x480;
[07:02:36 CET] <XLS202> So i thought the nobuffer disables the buffer..
[07:03:11 CET] <TikityTik> just a guess
[07:04:28 CET] <XLS202> I dont know too... thats because i am here :D
[07:15:10 CET] <furq> fflags nobuffer doesn't actually do anything with ffmpeg iirc
[07:15:12 CET] <furq> it's just for ffplay
[07:17:33 CET] <furq> TikityTik: i don't see why not
[07:23:46 CET] <TheRock2> is dxva2 important
[07:23:50 CET] <TheRock2> to play videos
[07:24:05 CET] <TheRock2> it cannot build past this
[07:46:24 CET] <TikityTik> can you hack the metadata of the duration of a video?
[07:47:10 CET] <TikityTik> like can you spoof the duration of a video?
[13:15:02 CET] <XLS202> furq are you still here? Because i fell a sleep sorry.. but what would you use instead of fflags nobuffer?
[15:52:14 CET] <TheRock> You guys added nice error
[15:52:19 CET] <TheRock> during ffmpeg compliation
[15:52:40 CET] <TheRock> Is it extra candy for the developer to fix them?
[15:52:55 CET] <TheRock> libavcodec/dxva2.c(518) : error C2440: 'initializing' : cannot convert from 'GUI
[15:52:57 CET] <TheRock> make: *** [libavcodec/dxva2.o] Error 2
[16:32:54 CET] <TheSov> is there any way to get ffmpeg to accept and RTMP stream and output it as a virtual webcam on windows?
[16:42:56 CET] <TheRock> ffbuild/common.mak:174: *** missing separator.  Stop.
[16:42:56 CET] <TheRock> really
[16:43:09 CET] <JEEB> sounds like you've cloned it with windows endlines
[16:43:28 CET] <JEEB> also I just built for windows
[16:43:31 CET] <JEEB> and it worked
[16:43:36 CET] <TheRock> which compiler ?
[16:43:50 CET] <JEEB> mingw-w64 GCC 7.2.0, the last time I built with MSVC was some months ago
[16:43:57 CET] <JEEB> but we have a constant MSVC FATE box running
[16:44:20 CET] <JEEB> http://fate.ffmpeg.org/report.cgi?time=20171118133004&slot=x86_32-msvc15-windows-native
[16:44:23 CET] <JEEB> latest MSVC 2017
[16:45:45 CET] <TheRock> i'm not too familiar with git. How would i turn off the windows endlines
[16:45:56 CET] <TheRock> i turned off cldr before running configure, but that seems not enough
[16:46:29 CET] <JEEB> https://git-scm.com/book/gr/v2/Customizing-Git-Git-Configuration
[16:46:34 CET] <JEEB> the autocrlf thing
[16:46:38 CET] <JEEB> you will have to reset the tree or re-clone
[16:48:08 CET] <TheRock> Ah, ok
[16:48:24 CET] <TheRock> I was usin VC 2013 before, it gaves strange errors during compile
[16:48:34 CET] <TheRock> Now i'm trying with MSVC 2015
[16:48:49 CET] <JEEB> http://fate.ffmpeg.org/report.cgi?slot=x86_32-msvc12-windows-native&time=20171118122959
[16:48:52 CET] <JEEB> 2013
[16:49:07 CET] <JEEB> although the newer the better
[16:51:43 CET] <TheRock> thanks for the info
[16:51:51 CET] <TheRock> FFmpeg does support fully static, right?
[16:52:15 CET] <JEEB> if deps are, yes
[16:56:13 CET] <TheRock> is there any option for a tiny build?
[16:56:36 CET] <TheRock> I actually only need to for QtAv to play some videos
[16:57:09 CET] <TheRock> Probably --disable-xxx
[16:57:17 CET] <JEEB> the best way is to test your app with a normal build first, and then start disabling decoders and encoders
[16:57:31 CET] <JEEB> and only enabling what you need
[16:57:51 CET] <JEEB> otherwise you might get stuck in the beginning
[16:58:14 CET] <TheRock> yeah, i just have a plain static build now
[16:58:17 CET] <TheRock> it compiles so far
[17:00:18 CET] <TheRock> lots of warnings
[17:00:23 CET] <TheRock> but i guess, they're normal
[17:01:08 CET] <JEEB> internal warnings are OK. I mean not OK OK, but they're not from your code
[17:05:31 CET] <SortaCore> is there a way to make an accelerated colorspace conversion from YUV420P to BGR24?
[17:06:12 CET] <JEEB> yes, although there are already two optimized code paths for that. one in swscale (which is what the scale filter does, and another in zimg which is what the zscale filter uses(
[17:06:27 CET] <JEEB> although if you want to use opengl or so you'll want to look at libplacebo or so
[17:06:59 CET] <SortaCore> I get a warning for it not existing though
[17:07:07 CET] <SortaCore> hold up I'll double-check
[17:07:42 CET] <JEEB> SortaCore: does it say that it's due to alignment?
[17:07:46 CET] <JEEB> oh wait
[17:07:50 CET] <JEEB> BGR24
[17:07:50 CET] <SortaCore> no, just none existing
[17:08:03 CET] <SortaCore> yea, to match with standard Windoze bitmaps
[17:08:30 CET] <JEEB> hmm, wonder what I used in my thumbnailer
[17:08:58 CET] <JEEB> (also I didn't use libavfilter which probably was a mistake back then)
[17:09:20 CET] <JEEB> https://github.com/jeeb/matroska_thumbnails/blob/master/src/matroska_thumbnailer.cpp#L321..L338
[17:09:27 CET] <JEEB> right, I used BGRA
[17:10:09 CET] <SortaCore> hmm, I guess I could use that?
[17:10:21 CET] <SortaCore> but it'd be adding an alpha out of nowhere so it's not great
[17:11:07 CET] <JEEB> also it uses swscale itself which isn't always recommended, even though swscale is what's the scale filter is using in the background
[17:12:01 CET] <SortaCore> atm I have a converter from RTSP source to BGR24 for display, and one to GREY8 for motion detect
[17:12:26 CET] <JEEB> for display you might want to look into libplacebo for hw accelerated rendering
[17:12:31 CET] <SortaCore> both call the scale, I think I read for tutorial
[17:12:32 CET] <JEEB> instead of doing it in the sw
[17:13:07 CET] <SortaCore> I'm making a dll for an app-creating app, so not sure if I can use that
[17:13:11 CET] <SortaCore> but I'll check it out
[17:15:56 CET] <SortaCore> it should be able to output to a Direct3D 9 surface, if I figure out how to get the app's surface and ffmpeg to share nicely
[17:31:06 CET] <SortaCore> but er, if I did have BGR24 wanted, could I make a colorspace?
[17:31:11 CET] <SortaCore> +converter
[17:33:38 CET] <SortaCore> I'm not sure how those are made at all
[17:39:13 CET] <JEEB> well, yes - you could add whatever the "optimized" path means into swscale, but I'm not sure if you're speed limited even now
[17:44:32 CET] <sd3dxw> how can i stream rtsp over http ??
[17:45:08 CET] <SortaCore> rtsp_transport = http?
[17:45:46 CET] <JEEB> how do you even
[17:45:56 CET] <JEEB> RTSP is a protocol, HTTP is a protocol
[17:46:04 CET] <SortaCore> there was a http tunnel option altho that could just be receiving
[17:46:08 CET] <JEEB> the transports are either TCP or UDP
[17:46:32 CET] <sd3dxw> JEEB i mean http tunnl
[17:47:19 CET] <sd3dxw> SortaCore , that how can i watch, i want to stream it ....
[17:47:30 CET] <SortaCore> generally http and rtsp aren't mixed
[17:47:42 CET] <JEEB> sd3dxw: if you need HTTP based streaming use something like nginx-rtmp
[17:47:46 CET] <SortaCore> you would connect to rtsp://site instead of http://site
[17:47:47 CET] <JEEB> feed rtmp into it, get HLS/DASH
[17:48:01 CET] <sd3dxw> sorry i not get you
[17:48:12 CET] <JEEB> then too bad
[17:48:13 CET] <sd3dxw> i use now ffmpeg & ffserver
[17:48:44 CET] <sd3dxw> can i use with them to stream it? ( i can stream rtsp and watch via tcp/udp)
[17:49:14 CET] <sd3dxw> but when i choose Http Tunneling i can't watch
[17:50:13 CET] <SortaCore> you probably want a http webpage with an rtsp player embedded?
[17:50:28 CET] <sd3dxw> SortaCore no man....
[17:50:44 CET] <sd3dxw> do you knowwhat is http tunnel ?(rtsp over http)?
[17:50:49 CET] <SortaCore> http tunnel is a workaround
[17:51:05 CET] <SortaCore> you should avoid it if you can
[17:51:08 CET] <sd3dxw> I know but i want it , rtsp over http
[17:51:21 CET] <SortaCore> why?
[17:51:30 CET] <sd3dxw> that for my project
[17:51:37 CET] <sd3dxw> i student on collage
[17:51:58 CET] <SortaCore> that didn't answer my question
[17:52:05 CET] <SortaCore> why do you need http?
[17:52:10 CET] <SortaCore> what is playing it?
[17:52:13 CET] <sd3dxw> that what to ticher want....
[17:52:17 CET] <sd3dxw> ISpy
[17:52:25 CET] <SortaCore> iSpy can use rtsp without http
[17:52:34 CET] <sd3dxw> on ISpy there is a option to look on rtsp(h264) via http tunnel
[17:52:51 CET] <sd3dxw> i know that , but i need only that
[17:53:08 CET] <SortaCore> rtsp via http tunnel is bad, a teacher should not be telling you to use it
[17:53:19 CET] <sd3dxw> i know it man i tell that for ticher
[17:53:36 CET] <sd3dxw> my only problem if i can do it with ffmpeg & ffserver please
[17:53:45 CET] <JEEB> no
[17:53:54 CET] <JEEB> also congratulations on even getting ffserver to work for you
[17:53:59 CET] <JEEB> it's 100% unsupported
[17:54:11 CET] <SortaCore> ffserver is old and was stopped years ago
[17:54:37 CET] <JEEB> only times when people poke it is when someone says we should remove it after APIs change
[17:54:40 CET] <sd3dxw> there i another option how can i do it with ffmpeg (with onther lib ,not ffserver?)
[17:54:42 CET] <JEEB> and then it gets minimally changed
[17:54:50 CET] <JEEB> and then again nobody works on it
[17:55:10 CET] <JEEB> sd3dxw: well your specifics of RTSP over HTTP are bonkers so (´4@)
[17:55:37 CET] <SortaCore> ffmpeg is for receiving media, not for sending
[17:55:47 CET] <SortaCore> it can convert but it's not a server
[17:55:50 CET] <JEEB> it can
[17:55:59 CET] <SortaCore> not just transcoding?
[17:56:03 CET] <JEEB> libavformat can push a lot of stuff out
[17:56:15 CET] <JEEB> it has multiple writing protocols and you can push multiple formats through it
[17:56:27 CET] <JEEB> UDP/HTTP PUT|POST/etc
[17:56:41 CET] <JEEB> it is not a media server, though.
[17:56:55 CET] <sd3dxw> ok so ffserver can't send rtsp over http?
[17:56:57 CET] <JEEB> it is your transcoding tool that feeds into a media server if you require some specific thing
[17:57:09 CET] <JEEB> sd3dxw: what does that even mean?!
[17:57:25 CET] <JEEB> if you need a proxy you use a separate HTTP proxy or something
[17:57:38 CET] <sd3dxw> i can't stream rtsp over http with ffserver & ffmpeg ?
[17:58:03 CET] <JEEB> I mean, I don't understand WTF RTSP over HTTP is
[17:58:10 CET] <JEEB> it's not a thing as far as I can tell
[17:58:18 CET] <JEEB> RTSP is a protocol over TCP or UDP
[17:58:29 CET] <JEEB> adding HTTP is another layer which makes no sense
[17:59:05 CET] <SortaCore> I found some code for PUTBGR24() already in swscale\yuv2rgb.c
[17:59:10 CET] <sd3dxw> JEEB you can read about it , but there is a thing like that
[17:59:14 CET] <SortaCore> so I'm guessing the warning is wrong?
[17:59:28 CET] <JEEB> SortaCore: you should rather look why that warning comes up and you understand if it's correct or not
[17:59:36 CET] <sd3dxw> ok, another problem please .......
[17:59:38 CET] <JEEB> also it might be a speedy way from RGB24 to BGR24
[17:59:48 CET] <JEEB> swapping the bytes
[17:59:50 CET] <SortaCore> hm alright
[17:59:52 CET] <sd3dxw> ffserver is good for streaming?
[18:00:03 CET] <JEEB> at the point where it's not supported it's not "good" for anything
[18:00:10 CET] <JEEB> if it works for you, good.
[18:00:16 CET] <JEEB> but don't expect any support. period.
[18:00:30 CET] <sd3dxw> becuase when i stream rtsp and watch over udp i get low qualityt
[18:00:43 CET] <sd3dxw> can but i stream with openRtsp i get much better .. why?
[18:00:46 CET] <JEEB> that is mostly because your network sucks
[18:01:01 CET] <JEEB> or that the bits go through too fast, which I've had with UDP
[18:01:06 CET] <sd3dxw> openRtsp do itbetter on same network
[18:01:35 CET] <SortaCore> UDP is not great for quality, it's good for speed
[18:01:35 CET] <grummund> When s
[18:01:35 CET] <JEEB> well yea, not sure how optimized the UDP sending is in libavformat. I know the UDP protocol has a "bitrate" option
[18:01:51 CET] <JEEB> SortaCore: it is more suspectible for crappy switches
[18:01:56 CET] <JEEB> otherwise the quality should be the same
[18:02:05 CET] <JEEB> and of course as soon as you leave LANs it goes wee-wee
[18:02:12 CET] <grummund> oops, hi :)
[18:02:18 CET] <JEEB> speaking as someone who has broken switches with 40mbps multicast
[18:02:21 CET] <sd3dxw> so i need to  get to ffserver lower bitrate ?
[18:02:21 CET] <JEEB> :P
[18:02:37 CET] <JEEB> sd3dxw: no, you need to limit the UDP protocol with its bitrate option
[18:02:41 CET] <SortaCore> yea, I was doing it international >.>
[18:03:00 CET] <sd3dxw> JEEB what do you mean?
[18:03:05 CET] <sd3dxw> when i configure it?
[18:03:21 CET] <JEEB> in ffmpeg.c it's -bitrate after -i INPUT
[18:03:35 CET] <JEEB> also remember to set maxrate and bufsize for your video encoder
[18:03:42 CET] <JEEB> (maxrate over bufsize)
[18:04:29 CET] <grummund> When bursting a movie into images frames, say at fps=1/10, can ffmpeg number name the files with actual frame number rather than serially?
[18:05:35 CET] <furq> grummund: you can get the frame pts with -frame_pts 1
[18:05:40 CET] <furq> not the actual frame number though
[18:06:09 CET] <sd3dxw> JEEB , what the max i get give to bufsize?
[18:06:15 CET] <sd3dxw> i not get the max?
[18:06:30 CET] <JEEB> it depends on your stuff :P
[18:06:36 CET] <JEEB> maxrate is always calculated over bufsize
[18:06:52 CET] <sd3dxw> so i need to limit the max  rate?
[18:06:54 CET] <JEEB> so the smaller the bufsize is, the more the encoder is constrained. and the bigger it is, the less constrained it is
[18:07:11 CET] <JEEB> ok, sorry. I'm going back to watching cartoons
[18:08:04 CET] <sd3dxw> there is bufsize to input and for output?
[18:08:33 CET] <grummund> furq: thanks, looking....
[18:08:47 CET] <TheRock> Seems liek the build worked
[18:09:58 CET] <sd3dxw> how can i stream with ffmpeg rtst udp multycast?
[18:11:21 CET] <TheRock> JEEB: do you know where i can find /bin /include /lib after build?
[18:11:36 CET] <TheRock> I did make install w/o prefix
[18:17:00 CET] <sfan5> most likely /usr/local
[18:17:16 CET] <TheRock> grml, i'm on windows
[18:17:27 CET] <JEEB> yea, that is why you always set --prefix when configuring
[18:17:37 CET] <JEEB> and msys2 has its own /usr/local if you're using that
[18:18:06 CET] <TheRock> yeah
[18:18:08 CET] <TheRock> just found it there
[18:18:17 CET] <TheRock>   /usr/local/
[18:18:22 CET] <grummund> furq: my version doesn't seem to support that, but if i understand correctly pts number would be consistent regardless of which fps is used.
[18:19:08 CET] <JEEB> TheRock: I usually just do --prefix="${HOME}/ownapps/msvc_prefix" or so
[18:19:25 CET] <JEEB> which goes under the home dir of my msys2 user
[18:20:41 CET] <TheRock> just one thing
[18:20:44 CET] <TheRock> i found it already
[18:20:52 CET] <TheRock> but the files are *.a extension
[18:20:56 CET] <JEEB> that's OK
[18:20:57 CET] <TheRock> for msvc build/windows
[18:21:02 CET] <JEEB> MSVC will still link against them
[18:21:47 CET] <TheRock> i see, i found a prebuilt package it has .lib extensions
[18:21:54 CET] <TheRock> did they rename probably?
[18:22:00 CET] <JEEB> most likely
[18:22:34 CET] <sd3dxw> JEEB so about rtsp via udp if i limit the bitrate i will not get the error of  " "RTP: missed 8 packets   error while decoding MB 54 30, bytestream"
[18:23:04 CET] <sd3dxw> linit bitrate/ increase bufsize
[18:25:43 CET] <SortaCore> quick rename on windows is just cmd on the dir, ren *.a *.lib
[18:26:20 CET] <JEEB> yea, if you want to have .lib. I think I've linked .a just fine with MSVC, even ones built with mingw-w64
[18:27:28 CET] <sd3dxw> JEEB so about rtsp via udp if i limit the bitrate i will not get the error of  " "RTP: missed 8 packets   error while decoding MB 54 30, bytestream"
[18:27:59 CET] <JEEB> sd3dxw: I am actively ignoring you because you seem to be :effort: to deal with
[18:28:01 CET] <JEEB> sorry
[18:28:03 CET] <quup> I have a mkv container with some vobsub subtitles, in hopes of OCR'ing them to .srt I wish to extract (start_pos, end_pos, image_data) for each entry in the subtitles. Is this possible?
[18:28:16 CET] <ciloj> hi all ! how can i stream rtsp udp multi cast with ffmpeg please?
[18:28:17 CET] <JEEB> quup: with the API yes
[18:28:37 CET] <quup> JEEB: thanks, know where in the code I should start looking?
[18:28:57 CET] <JEEB> you should look into the examples that do demuxing and decoding
[18:29:01 CET] <JEEB> since that's what you would be doing
[18:29:05 CET] <quup> cool, thanks!
[18:29:15 CET] <JEEB> then you should get RGB8 (?) AVFrames from the decoder with the PTS
[18:29:25 CET] <JEEB> and depending on the format you might or might not get the duration
[18:29:34 CET] <JEEB> and container, of course
[18:29:47 CET] <JEEB> many broadcast subtitle formats do not have a concept of "duration" field
[18:30:05 CET] <JEEB> instead the image would be shown until a new packet comes
[18:30:18 CET] <JEEB> with matroska you should at least be having all packets and their indices
[18:30:21 CET] <quup> so I assume they have empty images to signal stopping then?
[18:30:29 CET] <JEEB> yes
[18:30:30 CET] <ciloj> witch format is better to stream with rtsp? h264 or mjpeg ??
[18:30:46 CET] <quup> JEEB: neato, thanks for the pointers, I'll start playing around
[18:31:11 CET] <JEEB> I would have poked tesseract into libavfilter or something, but unfortunately AVFrames and avfilter doesn't support subtitles yet
[18:31:25 CET] <JEEB> (you would feed the subpicture AVFrames and get subtitle text AVFrames out)
[18:31:31 CET] <JEEB> so right now you have to handle that in your API client
[18:33:03 CET] <ciloj>  witch format is better to stream with rtsp? h264 or mjpeg ??
[18:33:16 CET] <JEEB> much better compression with H.264 with libx264
[18:33:23 CET] <JEEB> and it has proper bandwidth limitations
[18:33:33 CET] <JEEB> but on the other hand it requires more CPU
[18:41:57 CET] <ciloj> becausae when i save stream rtsp to file h264 i get lot of decode error
[18:42:19 CET] <ciloj> why is that? the decoder not so good? i don't want to use copy option...
[18:42:35 CET] <ciloj> i i think the codec not so fast (-tune or -preset not help)
[18:44:44 CET] <ciloj> so mybe i need to choose another codec ??? (ffmpeg -i rtsp://..... file.h264)
[18:45:30 CET] <SortaCore> did you stream over tcp?
[18:46:07 CET] <SortaCore> ffmpeg -rtsp_transport tcp -i rtsp://
[18:47:11 CET] <ciloj> i can't this sever support only on udp
[18:47:38 CET] <ciloj> SortaCore(by the way, witch with server you stream???)
[18:49:28 CET] <SonicTheHedgehog> ffmpeg -i input.avi -c:v libxvid output.avi  <<< Does this command default to "-qscale:v 31" ?
[18:49:44 CET] <JEEB> no
[18:49:49 CET] <JEEB> it defaults to 200kbps or something most likely
[18:49:52 CET] <JEEB> which is the global default
[18:49:54 CET] <SonicTheHedgehog> I see.
[18:50:04 CET] <JEEB> you'd have to look at the code to see if it overrides the default
[18:51:43 CET] <SonicTheHedgehog> Mhm.
[18:52:03 CET] <JEEB> but expect the worst, aka 200kbps
[18:52:10 CET] <SonicTheHedgehog> Yeah. :|
[18:52:32 CET] <JEEB> I think libx264 is one of the few things that overrides the defaults
[18:52:53 CET] <ciloj> how can i stream rtsp udp multi cast with ffmpeg please?
[18:52:53 CET] <JEEB> so if you are doing lossy coding with libavcodec, remember to set the rate control yourself
[18:53:05 CET] <SonicTheHedgehog> JEEB: Good call.
[18:53:26 CET] <JEEB> so -q:v or -b:v with mpeg4
[18:53:29 CET] <JEEB> or xvid
[18:53:46 CET] <JEEB> (for quantizer or bit rate)
[18:54:52 CET] <SonicTheHedgehog> Makes sense.
[20:14:08 CET] <Fiji_> holy shit, sonic is on IRC!
[20:27:52 CET] <durandal_1707> who?
[20:41:48 CET] <TheSov> does anyone of a free program that will take rtmp or rtsp and pump it into a virtual webcam?
[21:07:11 CET] <ciloj> how can i stream rtsp udp multi cast with ffmpeg please?
[21:57:41 CET] <TikityTik> I'm combining an animated gif with a song, how can I make the gif loop itself with the song's duration?
[22:09:15 CET] <SortaCore>  VS is disabling most of swscale due to missing #defines
[22:09:32 CET] <SortaCore> even setting statement to start of function doesn't work, it jumps right to the end statement "return null"
[22:10:21 CET] <SortaCore> when is HAVE_MMX_INLINE and HAVE_6REGS defined?
[22:14:31 CET] <SortaCore> ok, 6REGS should be defined since it checks arch is x86_64, which it is
[22:14:48 CET] <SortaCore> HAVE_MMX_INLINE is inside config.h so I'll look for option
[22:16:54 CET] <SortaCore> don't see one
[22:20:13 CET] <TikityTik> why is -ignore_loop missing from https://ffmpeg.org/ffmpeg.html?
[22:44:11 CET] <SortaCore> well, BGR should be coming up as accelerated
[23:01:30 CET] <TikityTik> How do I use the make file properly where it updates the code I changed?
[23:01:46 CET] <c_14> you just run `make' again
[23:01:47 CET] <TikityTik> i don't want to build everything from scratch each time
[23:01:57 CET] <TikityTik> c_14: it didn't work for me when I changed a .c file
[23:01:57 CET] <c_14> it does that automagically
[23:02:04 CET] <c_14> should just work"
[23:02:14 CET] <c_14> did you re-run configure?
[23:02:21 CET] <TikityTik> no, do i need to when i change code?
[23:02:23 CET] <JEEB> it does re-poke everything it found changed (timestamp-wise) and then things it depends
[23:02:26 CET] <c_14> no
[23:02:32 CET] <c_14> (normally)
[23:02:45 CET] <JEEB> it's dumb but often works, but if you actually changed the timestamps unnecessarily it will do a lot extra
[23:02:54 CET] <JEEB> or if whatever you poked actually is used by a lot of stuff :P
[23:03:04 CET] <JEEB> of course make is not perfect, but it should Just Work
[23:06:20 CET] <sfan5> doesn't make break if you mount with noatime?
[23:07:02 CET] <JEEB> probably
[23:07:03 CET] <quup> sfan5: atime doesn't matter, that's just for last access
[23:07:10 CET] <JEEB> oh right
[23:07:13 CET] <sfan5> right
[23:07:13 CET] <JEEB> last modified is what matters
[23:47:26 CET] <TikityTik> where the definition of AVRational?
[23:48:19 CET] <JEEB> https://www.ffmpeg.org/doxygen/trunk/structAVRational.html
[23:49:05 CET] <JEEB> and the stuff in that file otherwise https://www.ffmpeg.org/doxygen/trunk/rational_8h.html
[23:52:12 CET] <TikityTik> what sets the duration metadata?
[23:52:55 CET] <TikityTik> when you encode a file
[23:53:09 CET] <JEEB> you set it for the AVFrames you pass to the encoder
[23:53:20 CET] <JEEB> then that gets made into AVPackets
[23:53:36 CET] <JEEB> and then finally written by the muxer if the format has a concept of "duration"
[23:54:37 CET] <TikityTik> so what file would be in charge of the muxer for webm?
[23:55:42 CET] <JEEB> matroskaenc.c
[23:55:51 CET] <JEEB> since webm is a limited subset of matroska
[23:56:00 CET] <TikityTik> what? matrosk is in charge of webm where it's associated with vp8+vp9?
[23:56:09 CET] <JEEB> webm = matroska
[23:56:15 CET] <JEEB> just that it's a limited "profile"
[23:56:22 CET] <JEEB> as in, not all of the formats are allowed etc
[23:56:35 CET] <JEEB> technically, it's just a matroska file with a different extension
[23:57:04 CET] <TikityTik> wow
[00:00:00 CET] --- Sun Nov 19 2017


More information about the Ffmpeg-devel-irc mailing list