[Ffmpeg-devel-irc] ffmpeg.log.20161201
burek
burek021 at gmail.com
Fri Dec 2 03:05:01 EET 2016
[05:18:50 CET] <ryan_turner> Hi, I have two commands; one takes an RTSP input and sends it to youtube live. The other takes a webcam input and sends it to a Dash webm stream. I want to take parts of each: I want to send an RTSP input to a Dash webm stream. Both of my commands are here: https://gist.githubusercontent.com/ryanturner/071b3a81e3b556e65d611151e52853fa/raw/4b2d099780c023d54edeed062fa498ef1be47586/gistfile1.txt
[05:19:08 CET] <ryan_turner> I've tried for about 3 hours to sort this out, but I really dont know enough about how this works to make sense of it.
[05:20:57 CET] <ryan_turner> Is anyone willing to help?
[05:44:05 CET] <ryan_turner> Here, this is much more readable: https://gist.github.com/ryanturner/071b3a81e3b556e65d611151e52853fa
[06:31:48 CET] <AssPirate> Not at my computer right now, but look for a verbose/debug option that'll show you the arguments ffmpeg is parsing.
[06:36:41 CET] <tomed> what would be harder to tell the difference with blind test? crf 20 very slow vs crf 20 fast or crf 20 medium vs crf 21 medium ?
[06:44:01 CET] <xintox> does anyone know what these "sdk://" urls are in some m3u8 streams I'm seeing?
[06:44:06 CET] <xintox> I can't find anything online about it
[06:47:24 CET] <tomed> what would be harder to tell the difference with blind test? crf 20 very slow vs crf 20 fast or crf 20 medium vs crf 21 medium ?
[07:00:00 CET] Last message repeated 1 time(s).
[07:13:54 CET] <thebombzen> tomed: if you ask three times in one hour it's probably not going to change the answer
[07:14:10 CET] <tomed> nobody answered though
[07:14:22 CET] <thebombzen> but asking again with literally no messages in between won't change that
[07:14:46 CET] <tomed> ok
[07:15:27 CET] <Kuukunen> thebombzen: he was also spamming the same question on #x264 btw :P
[07:15:52 CET] <thebombzen> good to know because I'm not in #x264 and I was about to forward the question
[07:16:42 CET] <thebombzen> this seems like one of those awkward "what happened when you tried it" questions. like instead of waiting an hour for an answer to "what happens when you do some test"
[07:16:52 CET] <thebombzen> why not just like do the test
[07:17:25 CET] <Kuukunen> thebombzen: that's what I told him too
[07:17:30 CET] <thebombzen> haha
[07:19:35 CET] <tomed> Kuukunen why do you feel the need to tell that in here?
[07:20:20 CET] <Kuukunen> tomed: to give context to your spam
[08:33:53 CET] <thebombzen> does anyone know any creative ways to combine the hstack and stereo3d filters? I feel like you could do something really cool with those
[09:13:40 CET] <IchGucksLive> Good morning from germany
[09:14:35 CET] <IchGucksLive> if i do a encoding on a Video that has AUDIO Stream #0:2: Audio: vorbis, 22050 Hz, mono, fltp, 50 kb/s
[09:14:49 CET] <IchGucksLive> ffmpeg -i styro_problem.ogv -c:v libx264 -preset veryfast -crf 28 -vf scale=640:-1 -pix_fmt yuv420p -c:a libfdk_aac -strict -2 -an styro_problem.mp4
[09:14:56 CET] <IchGucksLive> no audio works
[09:15:02 CET] <IchGucksLive> but how do i get audio
[09:15:49 CET] <IchGucksLive> removing -an will fail in AVFrame.width or height is not set Input picture width (640) is greater than stride (0)
[09:16:18 CET] <IchGucksLive> i get a video fail on a Audio issue
[09:16:21 CET] <IchGucksLive> seams to me
[09:17:34 CET] <IchGucksLive> ffmpeg version 2.6.git
[09:23:57 CET] <IchGucksLive> ok i use audio copy that works
[10:17:33 CET] <thebombzen> welp, apparently the filter -vf stereo3d=al:ar has some funr esults
[10:17:43 CET] <thebombzen> it's like an instant spaz-ifier
[10:18:26 CET] <ferdna> how do you tell vlc to keep up with the live stream?
[10:18:33 CET] <ferdna> it is behind a lot...
[10:18:52 CET] <ferdna> if i move the position of the sliding bar to the end it will be behing like 2 secs which is okay..
[10:19:25 CET] <ferdna> "seeking" is the word
[10:19:36 CET] <ferdna> how do i seek to the end of the file generated by ffmpeg?
[10:51:01 CET] <thebombzen> so afaik ffmpeg will try to match the input framerate. but what if I drop frames with select? i.e. what is the general behavior of -vf select='mod(n,2)'
[10:57:31 CET] <durandal_1707> thebombzen: framerate stays same, basically creating vfr content
[10:58:04 CET] <thebombzen> is there a way to drop every other frame and halve the framerate (assuming cfr input)
[10:58:15 CET] <thebombzen> I know I can use stereo3d=al:ml but that seems suboptimal
[10:58:30 CET] <thebombzen> as in, I feel that I shouldn't have to use the stereo3d filter to do something simple like that
[10:58:45 CET] <thebombzen> also ideally without an explicit -r
[10:58:50 CET] <thebombzen> or an explicit -vf framerate
[11:02:04 CET] <DHE> why not? -framerate or -r sounds like exactly what you want.
[11:02:42 CET] <thebombzen> the issue is I'm trying to write a script to halve the framerate. using -r or -vf framerate= both require me to probe the input file for its framerate
[11:03:06 CET] <thebombzen> as a human, yes -r is fine. but I'm trying to reduce the script complexity.
[11:04:24 CET] <thebombzen> this is also useful if I cannot probe the input file in advance, such as with a livestream or a webcam or whatever. halving the framerate without having an explicit number is useful sometimes.
[11:04:24 CET] <furq> thebombzen: -vf decimate=2
[11:04:42 CET] <thebombzen> I didn't know about decimate. one sec, checking docs.
[11:07:14 CET] <DHE> I thought decimate was meant for dropping identical frames...
[11:07:32 CET] <DHE> which could work if your video had double the framerate because every 2 consecutive frames are always identical
[11:07:37 CET] <thebombzen> that's what it says on the docs, but it also doesn't say what happens if it doesn't find a duplicate.
[11:07:45 CET] <DHE> it does nothing
[11:08:00 CET] <DHE> but it still leaves you with variable framerate like select does
[11:08:30 CET] <thebombzen> I can achieve what I want with stereo3d=al:ml but that sounds so dumb
[11:08:35 CET] <thebombzen> there has to be a real way to do this
[11:10:14 CET] <thebombzen> DHE: decimate does let you change the threshold for duplicate detection. If you set it to FLOAT_MAX then all frames are duplicates, so decimate=cycle=2 should work.
[11:10:19 CET] <thebombzen> I still don't know if that halves the framerate though.
[11:11:33 CET] <furq> afaik decimate will always drop one of every n frames
[11:11:38 CET] <furq> but it might not be every other frame
[11:12:05 CET] <furq> mpdecimate is the one that gives you vfr output
[11:18:00 CET] <thebombzen> hm
[11:18:09 CET] <thebombzen> it appears that tinterlace=drop_even does the trick
[11:18:11 CET] <thebombzen> I have to test it though
[11:28:49 CET] <KidBeta> so I have weird problem happening, im trying to convert a MKV file to a MP4 using ffmpeg and I dont get any sound as output, I have done this for a number of other files before and it worked fine. I also get no warnings when I run it or anything like that.
[11:30:08 CET] <thebombzen> no sound? as in the output file has no audio stream or it doesn't play in any player?
[12:22:20 CET] <barhom> Can anyone point to a guide for getting ffmpeg to work with qsv (intel quic sync)? Im using one of the newer xeons E3-1245v5
[12:22:46 CET] <barhom> I know how to compile with qsv support but Im unsure what kind of intel drivers I need to install, do I need a patched kernel? (Using deb8)
[12:25:02 CET] <jkqxz> Do you actually need to use the qsv (libmfx, Intel proprietary) driver, or are you just wanting to use the Quick Sync hardware?
[12:31:42 CET] <mpsag> is there a way to get only specific values out of ffprobe? making it return duration and dimensions only?
[12:33:36 CET] <JEEB> mpsag: use json output and parse what you need
[12:35:29 CET] <barhom> jkqxz: Im not sure of the difference
[12:35:40 CET] <barhom> jkqxz: I want to use the hardware accelerated x264 transcoding
[12:35:54 CET] <barhom> so I believe it is qsv (libmfx) that I need to use, or?
[12:39:34 CET] <jkqxz> Not necessarily. qsv/libmfx is the Intel proprietary driver, which does work but you want to avoid if at all possible.
[12:39:42 CET] <trullox> hi, i'm working on a c++ code with ffmpeg not written by me. It use CODEC_ID_H264. I need to modify the code and set a bitrate. I try to set the AVCodecContext but without result.
[12:39:57 CET] <jkqxz> The same hardware is accessible through the open-source VAAPI driver, which does not require installing weird binary blobs or recompiling your kernel with lots of patches.
[12:40:13 CET] <trullox> I try with x264opts but i dont see expected result.
[12:41:08 CET] <trullox> I dont want a fixed bitrate, but only a max bitrate
[12:41:31 CET] <jkqxz> barhom: In Debian you want to install libva-dev and i965-va-driver, then build ffmpeg and it should work with VAAPI.
[13:07:56 CET] <barhom> jkqxz and that would give me the same kind of accelerated x264 transcoding capabilities ?
[13:10:40 CET] <jkqxz> If you mean H.264, yes. (H.264 is a codec standard. x264 is a software encoder for that codec.)
[13:15:47 CET] <barhom> I will give it a try, I still want to know the different capabilities between vaapi/qsv though
[13:21:25 CET] <jkqxz> QSV is more inconvenient to install and use, has worse codec support and doesn't work on older devices.
[13:22:07 CET] <jkqxz> On the other hand, it is more heavily optimised by Intel (with secret proprietary magic, presumably) and therefore can give greater throughput on some CPUs (Iris/Iris Pro).
[13:26:16 CET] <barhom> Then it sounds like it is QSV that I want, I need to get as much throughput as possible
[14:30:53 CET] <Filarius22> I wounder if somebody can point me where is information about FFMpeg "area" scaling algorithm
[14:31:43 CET] <Filarius22> I did my algorithm for scaling, somebody said "area" is average, but I see different results
[14:32:44 CET] <Filarius22> ...i did average on square for scaling down, and i'm sure its not like "area"
[15:06:22 CET] <fling> h264 + ac3 (avchd) remuxed from m2ts to mp4 does not play with sound on windows. What should I do? Is there a proper video player for windows? mplayer?
[15:06:30 CET] <fling> smplayer?
[15:06:37 CET] <fling> Or should I mux into something else?
[15:08:57 CET] <tdr> fling, vlc with the codecs packs it supports
[15:09:40 CET] <trullox> is it possible to use ffpreset file with c++?
[15:10:11 CET] <trullox> i want try to change codec parameters without recompiling my software
[15:13:14 CET] <fling> tdr: codecs packs?
[15:13:44 CET] <tdr> fling, k-lite codec pack may work for you too
[15:14:00 CET] <furq_> don't install a codec pack
[15:14:01 CET] <fling> Why not smplayer?
[15:14:08 CET] <furq_> use mpc-hc or mpv
[15:20:05 CET] <fling> Is there something special about avchd?
[15:20:18 CET] <fling> I thought it will be just a regular mp4 file if I remux
[15:21:02 CET] <fling> afaik it is just about the file layout mostly. It has additional external metadata etc
[15:21:13 CET] <fling> Am I wrong?
[15:21:38 CET] <fling> Or is it just whatever they use on their windows boxen suck?
[15:30:25 CET] <furq_> it's probably ac3 in mp4
[15:30:36 CET] <furq_> that's not always supported
[15:48:10 CET] <fling> furq: thanks for the tip, I will try putting everything in mkv.
[15:48:35 CET] <fling> I will also reencode everything to webm as a fallback.
[15:49:05 CET] <furq> is this for browsers or something
[15:51:11 CET] <fling> For windows users
[15:51:21 CET] <fling> They will upload this atleast to vk and ok
[15:51:34 CET] <fling> vk.com and ok.ru social networks :>
[16:58:43 CET] <kerio> fling: do those not reencode stuff anyway?
[16:59:30 CET] <kerio> anyway, i'd be wary of using anything but h264+aac or vp8+vorbis, for browser stuff
[17:06:38 CET] <fling> kerio: the sites will probably reencode.
[17:07:37 CET] <fling> kerio: so what to use for better compatibility?
[17:07:56 CET] <kerio> h264+aac
[17:08:01 CET] <fling> In mkv?
[17:08:04 CET] <kerio> yuv420p
[17:08:06 CET] <kerio> dear god no
[17:08:07 CET] <kerio> in mp4
[17:08:17 CET] <kerio> stereo aac 44100hz or 48000hz
[17:09:04 CET] <fling> Ok, will reencode.
[17:09:22 CET] <fling> I will need to overlay video with an image to hide a head from audience anyway :P
[17:09:56 CET] <kerio> i wonder if that can be done losslessly
[17:11:37 CET] <fling> kerio: it is possible but not with ffmpeg :<
[17:12:01 CET] <kerio> there's an h264 encoder that can cover parts of the video losslessly?
[17:12:03 CET] <fling> as it does not support to crop h264 losslessly
[17:12:06 CET] <kerio> oic
[17:12:35 CET] <fling> If you could crop then you could probably join but not really
[17:12:43 CET] <kerio> something something motion vectors
[17:14:47 CET] <fling> kerio: is it possible to bend the image using video filter?
[17:14:54 CET] <fling> I need a keystone distortion.
[17:15:15 CET] <fling> The action was captured from an angle so I want to bend the image a bit&
[17:35:18 CET] <barhom> --enable-vaapi --enable-vdpau --enable-nvenc, Unknown encoder 'h264_vaapi'
[17:35:26 CET] <barhom> what else do I need to enable to get h264_vaapi?
[17:36:40 CET] <fling> How to get ffplay?
[17:38:09 CET] <__jack__> aptitude install ffmpeg
[17:39:06 CET] <jkqxz> barhom: Just --enable-vaapi, but it should be autodetected by default even without it. Look in config.log.
[17:41:23 CET] <barhom> jkqxz: compilation is working just fine with "--enable-vaapi", but I dont see the encoder option in ./ffmpeg -full or ./ffmpeg -encoders
[17:42:31 CET] <fling> __jack__: I'm missing sdl :>
[17:42:49 CET] <barhom> I can also see "h264_vaapi_encoder" in config.log
[17:44:09 CET] <jkqxz> Put your config.log somewhere and give a link to it?
[18:58:23 CET] <DelphiWorld> SUP everyone
[18:58:33 CET] <DelphiWorld> do fdk_aac decode all kind of aac profiles?
[19:01:37 CET] <fling> How do I specify times for overlay filter?
[19:03:16 CET] <fling> I need to overlay few seconds here and there
[19:14:44 CET] <kerio> DelphiWorld: i thought aac decoding was deterministic
[19:15:36 CET] <furq> fdk is an encoder, not a decoder
[19:15:40 CET] <furq> the decoder is builtin
[19:16:20 CET] <fling> DelphiWorld: https://trac.ffmpeg.org/wiki/Encode/AAC
[19:16:49 CET] <DelphiWorld> ah
[19:17:03 CET] <DelphiWorld> furq: sbr not supported?
[19:17:43 CET] <fling> DelphiWorld: also this -> https://trac.ffmpeg.org/wiki/Encode/HighQualityAudio
[19:18:05 CET] <DelphiWorld> thx fling
[19:18:11 CET] <DelphiWorld> my issue is with live youtube stream
[19:18:21 CET] <fling> yw, tell me more
[19:18:52 CET] <kerio> >livestream
[19:18:54 CET] <kerio> >high quality audio
[19:19:01 CET] <kerio> ayy lmao
[19:19:23 CET] <fling> why not?
[19:19:27 CET] <DelphiWorld> fling: see this stream?
[19:19:27 CET] <DelphiWorld> rtmp://live.ditve.tv:1935/AlOmahaTV/AlOmahaTV.stream_360hp
[19:19:28 CET] <fling> opus is good for realtime
[19:19:31 CET] <DelphiWorld> can't decode the aac
[19:19:49 CET] <DelphiWorld> fling: love opus
[19:19:54 CET] <kerio> Audio object type SBR+0 is not implemented. Update your FFmpeg version to the newest one from Git. If the problem still occurs, it means that your file has a feature which has not been implemented. :(
[19:20:13 CET] <DelphiWorld> yes
[19:20:17 CET] <DelphiWorld> isn't decoding it
[19:20:27 CET] <fling> DelphiWorld: it is not implemented in git version.
[19:20:57 CET] <DelphiWorld> so it's not implemented at all in ffmpeg?
[19:22:08 CET] <DelphiWorld> such a bad luck
[19:22:47 CET] <kerio> try --aac-is-sbr 0
[19:23:13 CET] <kerio> or something
[19:26:41 CET] <DelphiWorld> fling: i want to restream that url to youtube
[19:27:14 CET] <fling> DelphiWorld: do what kerio says
[19:27:26 CET] <DelphiWorld> where should i put that
[19:27:32 CET] <fling> I have no idea
[19:27:36 CET] <kerio> me neither \o/
[19:27:45 CET] <DelphiWorld> lol
[19:27:45 CET] <fling> \o so helpful!
[19:28:06 CET] <fling> Also is it possible to overlay with a half transparent image?
[19:28:23 CET] <furq> if it's a decoder option it goes before -i
[19:28:25 CET] <fling> I mean is it possible to have an image with a variable transparency over the video?
[19:29:13 CET] <fling> the image will be fully transparent at the top, half-transparent in the middle et
[19:29:26 CET] <fling> cetera
[19:29:58 CET] <kerio> DelphiWorld: i would help you but i told brew to upgrade
[19:30:03 CET] <kerio> and it recompiled my ffmpeg
[19:30:06 CET] <kerio> and now i have to recompile my mpv :(
[19:30:16 CET] <DelphiWorld> oki;)
[19:32:48 CET] <fling> DelphiWorld: try puttin an overlay image over it.
[19:32:52 CET] <fling> A transparent one :P
[19:33:07 CET] <DelphiWorld> fling: why the image?
[19:33:22 CET] <fling> DelphiWorld: fine, put a transparent video over it.
[19:33:36 CET] <DelphiWorld> fling: i realy didnt get what you're talking about :-P
[19:33:59 CET] Action: fling needs more sleep
[19:34:43 CET] <DelphiWorld> fling joking?
[19:34:59 CET] <fling> DelphiWorld: no.
[19:36:12 CET] <DelphiWorld> fling: but why a image?
[19:37:30 CET] <fling> DelphiWorld: I thought you might be interested in this too as you are about to restream something
[19:37:39 CET] <fling> DelphiWorld: you could put your logo over it.
[19:37:58 CET] <DelphiWorld> see pm fling :P
[19:38:15 CET] <fling> DelphiWorld: I have a video here of a dancing contest with a nasty human head from audience appearing here and there.
[19:38:22 CET] <fling> I need to hide/cover it somehow.
[19:38:33 CET] <DelphiWorld> haha
[19:38:40 CET] <fling> Someone here suggested to overlay it with an image which is an appropriate thing
[19:39:33 CET] <fling> I could just take a frame from the different time of the video, crop it a bit, make some of the parts (semi-)transparent and then I will be able to hide the head by just overlaying it with the crafted image.
[19:40:04 CET] <fling> But I'm not sure about the transparency support. Ofc ffmpeg can make the image transparent itself but this is not what I want.
[19:40:25 CET] <DelphiWorld> fling: tbh i'm blind so i'm videoless :P
[19:40:26 CET] <fling> DelphiWorld: so I asked you because you might want to put a transparent logo or something over the stream :D
[19:40:33 CET] <fling> ohh!
[19:41:02 CET] <fling> DelphiWorld: is fdk really _that_ good?
[19:41:22 CET] <DelphiWorld> fling: for aac encoding, without any doubt
[19:42:14 CET] <fling> I've used to determine lame bitrate with my bare ears in the past but now I'm too old for this, can't always hear the difference between 128kbps mp3 and flac :P
[19:42:47 CET] <furq> well lame got a lot better in recent years
[19:43:24 CET] <furq> it used to be possible to identify specific mp3 decoders by the artifacts at 128k
[19:43:34 CET] <furq> s/dec/enc/
[19:43:49 CET] <fling> omg so this is not just me!
[19:44:02 CET] <furq> i mean your ears have probably got worse as well
[19:44:07 CET] <furq> mine certainly have
[19:44:22 CET] <furq> but lame has massively improved, and aac is a generation newer than mp3
[19:44:43 CET] <furq> opus and apple aac are hard to distinguish from lossless at 96k
[19:44:52 CET] <fling> I just encoded ac3 to aac and there is no much difference
[19:45:39 CET] <DelphiWorld> i honestly can't diferentiate at all
[19:45:59 CET] <furq> it depends on the source
[19:46:34 CET] <DelphiWorld> true
[19:50:20 CET] <fling> Is not 1600x680 a common DAR?
[19:55:00 CET] <fling> 2.35/1 or 2.39/1? is not 1600x670 more common? No.
[20:00:33 CET] <maxpaj> Hey guys, I've done a little fiddling with ffmpeg lately. I'm using the eq video filter so adjust some of the colors in a video. The documentation says the filter has limits to what values you can enter. For example, saturation only accept values between 0 and 3. Is there any clear explanation as to why there is the upper limit 3?
[20:01:14 CET] <fling> maxpaj: you should probably look into the source.
[20:04:41 CET] <maxpaj> Yeah, I'm looking at it right now. Is it okay to paste code here?
[20:06:33 CET] <maxpaj> https://github.com/FFmpeg/FFmpeg/blob/be37a669714094b9321f9f6f2947a296fe020483/libavfilter/vf_eq.c#L144-L155
[20:10:53 CET] <maxpaj> It doesn't say clearly why the limit is there. Maybe hidden in the details of the actual calculation performed later. But I'm not familiar with that code - I just started looking at this repo.
[20:13:19 CET] <pgorley> hi, i want to convert the pixel format using the libav* libraries, are there any examples for this?
[20:13:34 CET] <ferdna> i need help undestanding this line:
[20:13:35 CET] <ferdna> ffmpeg -i rtmp://server/live/originalStream -c:a copy -c:v libx264 -vpre slow -f flv rtmp://server/live/h264Stream
[20:13:40 CET] <pgorley> i'm looking at the format filter and can't figure it out
[20:13:46 CET] <ferdna> specifically this part:
[20:13:46 CET] <ferdna> -f flv rtmp://server/live/h264Stream
[20:13:56 CET] <ferdna> what do i need to change server to?
[20:14:30 CET] <Mavrik> pgorley, hmm, that's not all that simple
[20:14:39 CET] <Mavrik> pgorley, are you sure you can't just invoke ffmpeg? :)
[20:14:48 CET] <pgorley> nope, unfortunately :(
[20:14:54 CET] <pgorley> that'd be too simple lol
[20:15:13 CET] <Mavrik> Then you'll either have to use sws_scale directly to filter frames
[20:15:19 CET] <Mavrik> Or setup a filter chain using "format"
[20:15:22 CET] <Mavrik> (I suggest the latter)
[20:15:39 CET] <pgorley> hmm, i'll figure it out then, thanks
[20:15:39 CET] <Mavrik> There should be an example in doc/examples on how to use filters
[20:15:59 CET] <Mavrik> But you'll have to decode the video, push it into the filter than, pull out the changed frame and encode + mux it again
[20:16:26 CET] <pgorley> well, i've got yuv420p frames as input and want nv12
[20:16:40 CET] <Mavrik> hmm
[20:16:50 CET] <Mavrik> I'd use swscale then I guess
[20:16:55 CET] <Mavrik> Just to avoid the datastructures
[20:17:02 CET] <Mavrik> You don't have to encode nv12 right_
[20:17:05 CET] <Mavrik> _
[20:17:46 CET] <pgorley> i have to implement hardware encoding, so i'm grabbing h264_vaapi as a test, which needs nv12
[20:46:48 CET] <pgorley> thanks, Mavrik, i figured out how to use libswscale to do what i need :)
[00:00:00 CET] --- Fri Dec 2 2016
More information about the Ffmpeg-devel-irc
mailing list