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

burek burek021 at gmail.com
Sat Dec 31 03:05:01 EET 2016


[00:41:54 CET] <rjp421> JEEB, tried with a vid file too, same thing.. http://pastebin.com/raw/VdRKu8fz
[00:50:00 CET] <JEEB> yeah, it just creates a lot less unrelated input logging
[00:50:18 CET] <JEEB> but yea, the output URL of yours is getting incorrectly parsed
[00:50:23 CET] <ZexaronS> hey JEEB, youtube-dl has a major lack of ability, there's no real FMT code selection, according to the master readme, only some "format" setting which says only supports downloading best or worst video or audio, but i'll still try it readme could be old
[00:50:39 CET] <JEEB> ZexaronS: -F lists all formats for a video
[00:50:48 CET] <JEEB> youtube-dl -F "youtube url"
[00:51:16 CET] <JEEB> and usually with command line apps you read the output of --help :P
[00:51:36 CET] <ZexaronS> Yeah but I asked the guys on the channel if it's possible to pre-set the FMT option so it starts downloading that one by default into a default folder for the session
[00:52:02 CET] <ZexaronS> looking at the readme didn't give me an impression there's actuall all the fmt codes available but yes i'll try it now
[00:52:40 CET] <kepstin> the format codes available - at least on youtube, dunno about other sites - depends on the video
[00:52:49 CET] <kepstin> google generates different formats for different uploads
[00:57:02 CET] <ZexaronS> JEEB, I never found an utility to download fragmented videos efficiently, if this does the trick and combines them into a proper video file, i'll be very happy at least nonyoutube stuff
[00:57:20 CET] <ZexaronS> a lot of  US local news uses fragmentation
[00:57:51 CET] <JEEB> ZexaronS: if you have ffmpeg in your PATH it can put the audio and video stuff together :P
[00:58:13 CET] <JEEB> you should see regarding the sites youtube-dl supports of course
[00:59:24 CET] <ZexaronS> your command doesn't work, says no url
[01:01:35 CET] <ZexaronS> I'll probably need a separate utility imputting a lot of urls into the batch commands anyway
[01:01:54 CET] <ZexaronS> or some batch script to take the list and run for-each
[01:02:16 CET] <rjp421> JEEB, ohh i finally see what you mean by Parsed protocol/host/app.. sry lol
[01:04:09 CET] <rjp421> i guess theres no way to trick it into parsing correctly, by escaping or nested escaped quotes
[01:04:13 CET] <ZexaronS> JEEB, error downloading webpage, <urlopen error [SSL: CERTIFICATE_VERIFY_FAILED] certificate verify failed (_ssl.c:600)>
[04:07:46 CET] <JonFreed> Hello -   Does this look like a good command line for having ffmpeg listen for a stream that I will be having OBS send to it?
[04:08:39 CET] <JonFreed> ffmpeg -loglevel trace -listen 1 -timeout 60 -i rtmp://localhost/live/mystream rtmp://a.rtmp.youtube.com/live2/abcxyzabcxyz
[04:14:45 CET] <JonFreed> That command seems to work just fine.  But when I tell OBS to stream to it, then OBS just says <ip address>:1935 is offline.  Try a different server.  (ECONNREFUSED).
[04:16:15 CET] <c_14> is obs running on the same computer?
[04:18:18 CET] <JonFreed> Nope.  OBS is on my laptop that I'm typing on.   ffmpeg is running on an Amazon ec2 instance.  I have "all [inbound] traffic" enabled for the instance, so I'm pretty sure the firewall isn't the problem.
[04:18:26 CET] <c_14> then you can't use localhost
[04:18:44 CET] <c_14> you have to bind to an address reachable from the outside
[04:18:53 CET] <c_14> or 0.0.0.0 or ::
[04:20:38 CET] <JonFreed> Oh..... ok.     For the ffmpeg -i address I had only tried "localhost" and then also the ip address that I am entering into OBS.
[04:20:56 CET] <JonFreed> (Incidentally, the latter resulted in this error message:    Cannot assign requested address)
[04:22:20 CET] <c_14> depending on magic" the internal address may not be the external one
[04:22:29 CET] <c_14> check ifconfig or `ip l'
[04:22:31 CET] <JonFreed> TADA!  That works.  Thank you so much @c_14.    That's a pretty obvious solution, in retrospect.
[04:22:32 CET] <c_14> or use 0.0.0.0
[04:22:57 CET] <JonFreed> I mean that 0.0.0.0 works
[04:43:12 CET] <JeffATL> can someone explain to me about mpeg2 files coming right out my cap card have this artifact where edges that move from side to side seem to be different in time on alternating scan lines?
[04:46:47 CET] <c_14> interlacing?
[04:47:37 CET] <JeffATL> c_14: let me show a pic, hang on
[04:51:06 CET] <JeffATL> c_14: have a look at this: http://picpaste.com/pics/XaF23vDE.1483069835.JPG
[04:51:49 CET] <furq> yeah that's interlacing
[04:52:23 CET] <JeffATL> is it because while field A and field B of each frame were scanned in the video camera 1/60th sec apart, the computer isn't displaying it that way?
[04:53:06 CET] <furq> it's playing back 60i footage at 30p
[04:53:48 CET] <furq> most players can deinterlace but i prefer to do it when encoding
[04:53:55 CET] <furq> realtime deinterlacers usually aren't very good
[04:54:49 CET] <JeffATL> furq: atm i'm trying to reencode with "yadif" included in the filter string - yea/nay?
[04:55:06 CET] <furq> it's up to you
[04:55:24 CET] <furq> yadif mode 1 is probably the best option available in ffmpeg
[04:56:38 CET] <furq> i see a lot of people on forums insisting you should encode interlaced, but curiously i've never seen that in here
[04:56:46 CET] <furq> and i trust people in here more than randos on videohelp or doom9 or whatever
[04:57:03 CET] <c_14> there's plenty of deinterlacing filters to try out in ffmpeg, yadif is usually a decent choice
[04:57:27 CET] <furq> yadif mode 0 (the default) looks pretty bad in my experience
[04:57:30 CET] <furq> mode 1 is much better
[04:57:43 CET] <furq> half-rate deinterlacers usually look pretty crap though
[04:57:55 CET] <c_14> mode 1 should be default
[04:58:09 CET] <furq> it isn't
[04:58:11 CET] <furq> https://ffmpeg.org/ffmpeg-filters.html#yadif-1
[04:58:15 CET] <furq> The default value is send_frame.
[04:59:11 CET] <c_14> Oh, I was reading the docs for bwdif because the description has the first match for yadif in the manpage...
[04:59:38 CET] <furq> i don't think i've tried bwdif yet actually
[04:59:48 CET] <c_14> nnedi is also in recent versions of ffmpeg if you're into that
[04:59:55 CET] <furq> w3fdif looked much worse than yadif to me, so idk why you'd use parts of that
[05:00:06 CET] <furq> also if that is what the bbc use internally then it definitely sucks
[05:00:20 CET] <furq> lots of their iplayer stuff has terrible interlacing artifacts
[05:01:00 CET] <furq> and yeah nnedi is good but the ffmpeg implementation is unusably slow
[05:01:30 CET] <furq> and most people don't want to go through the hassle of setting up vapoursynth
[05:04:11 CET] <JeffATL> oh wow - i think i have some pretty good-looking resukts here
[05:04:56 CET] <JeffATL> movement interlace is gone
[05:06:17 CET] <JeffATL> getting almost exactly 3:1 file compression
[05:09:07 CET] <JeffATL> i have another thing going on maybe you can help me understand better
[05:09:26 CET] <JeffATL> same rig but a different source beta tape
[05:14:40 CET] <bornpilot> I am getting this error [nut @ 0x7fd22e01d600] No codec tag defined for stream 0 - with the follwing command
[05:14:51 CET] <bornpilot> ffmpeg -i Canon/00011.MTS -f nut -c:v libx265 -preset medium  -crf 28  -c:a copy nutty_test/nutty_test.nut
[05:15:42 CET] <JeffATL> see how everything gets warped over to the right at the top of the image: http://picpaste.com/pics/mRcLS7zC.1483071277.JPG - that's how it comes out of the TBC. turn the TBC off and that goes away,
[05:17:09 CET] <JeffATL> it also seems like the fields get swapped intermittently, as though something can't decide which is supposed to be which and there'll be a vertical interlacy-loking jitter
[05:19:05 CET] <furq> i've never done any analog capture but apparently sometimes it's better to disable the tbc
[05:19:06 CET] <JeffATL> needless to say, i can't really go forward with the TBC-on versioin but i was hoping to better understand the reasons behind it
[05:36:19 CET] <JeffATL> sadly it looks like the vp8 encoder is not multithreaded
[05:45:18 CET] <Jinx> i'm using ffmpeg 2.8.4 (win32 static) to try to convert video to thumbnail/slideshow GIFs... and i can't seem to get the framerate to convert just right; i can get it to output a frame every X seconds... but can't seem to speed up the GIF to play back those outputted frames much faster (e.g. extracting 1 frame every 60 seconds of source, but playing back each of those extracted frames at 1fps)
[05:46:42 CET] <Jinx> i've looked here already: https://trac.ffmpeg.org/wiki/Create%20a%20thumbnail%20image%20every%20X%20seconds%20of%20the%20video
[05:46:50 CET] <Jinx> any assistance would be appreciated :)
[05:57:19 CET] <JeffATL> i'm gonna need a lot more CPU.
[06:15:58 CET] <Kirito> Is there not a basic list of id3 metadata tags for video/audio somewhere out there? Somewhere. Anywhere.
[06:16:01 CET] <Kirito> I ahve looked everywhere I can
[06:16:19 CET] <furq> http://wiki.hydrogenaud.io/index.php?title=Tag_Mapping#Mapping_Tables
[06:16:23 CET] <furq> for a given definition of "basic"
[06:17:03 CET] <llamapixel> um Kirito http://id3.org/
[06:17:44 CET] <Kirito> So, what, do I just use "TENC" as the metadata key for "Encoded By"? I thought that was just "encoded_by", that's what I always see used in practice
[06:17:58 CET] <Kirito> but if those acronym identifiers work sure, whatever works
[06:18:11 CET] <furq> TENC is what's stored in the actual tag
[06:18:21 CET] <furq> whatever editor you're using is probably giving you some human-readable alternative
[06:19:27 CET] <Kirito> I'm encoding the video with -metadata encoded_by="John Doe", and it's being parsed by Windows and other video players as a valid attribute for the "Encoded By" property
[06:20:01 CET] <Kirito> So maybe it is just some unofficial alternative, I just assumed each tag had some human readable key that is to be used
[06:20:07 CET] <furq> http://jonhall.info/how_to/create_id3_tags_using_ffmpeg
[06:20:13 CET] <furq> idk how authoritative that is but i don't see anything on ffmpeg.org
[06:20:47 CET] <Kirito> I found that, but it's missing some of the more detailed/newer ones, like Encoder Settings
[06:21:47 CET] <furq> oh
[06:21:48 CET] <furq> https://github.com/FFmpeg/FFmpeg/blob/master/libavformat/id3v2.c#L43-L84
[06:21:58 CET] <furq> that's probably as authoritative as you'll get
[06:22:31 CET] <furq> i assume you can just use TSSE for encoder settings
[06:22:52 CET] <Kirito> oh, okay, now that makes sense. FFMpeg is just mapping them to user friendly terms. I didn't realize that. I just thought the acronyms were for someting else entirely. Thank you
[06:23:57 CET] <furq> yeah those names are the same for all tag formats afaik
[08:28:07 CET] <Yen> I use "ffmpeg -i input0.webm -hls_segment_filename latest_%03d.ts out.m3u8" to make HLS playlist. Then I use Video.js on Chrome to play it. Only the first segment is playable.
[08:28:17 CET] <Yen> Please help me
[08:49:14 CET] <AlbertLu> I build ffmpeg on Ubuntu 16.04 LTS
[08:49:59 CET] <AlbertLu> LD libavcodec/libavcodec.so.57 /usr/bin/ld: libavcodec/mqc.o: relocation R_X86_64_32 against `.rodata' can not be used when making a shared object; recompile with -fPIC libavcodec/mqc.o: error adding symbols: Bad value collect2: error: ld returned 1 exit status library.mak:102: recipe for target 'libavcodec/libavcodec.so.57' failed make: *** [libavcodec/libavcodec.so.57] Error 1
[08:50:50 CET] <AlbertLu> I have change config.mak, HOSTCFLAGS=-O3 -g -std=c99 -Wall -fPIC
[08:50:57 CET] <AlbertLu> but not work
[08:51:42 CET] <tdr> dont use -O3 for one thing
[08:51:58 CET] <tdr> messes up way more than the "tweaks" you'd think you're getting from it
[08:52:56 CET] <tdr> its not the cause of this error, but -O2 is way more likely to give you a binary without hidden broken/bad pieces
[08:54:47 CET] <JeffATL> AlbertLu: i use gentoo linux almost exclusively and best practices among gentoo folks is, -O3 is almost never justified
[08:55:52 CET] <tdr> same, it used to be fine, but many yrs ago that changed with a gcc version
[08:57:23 CET] <JeffATL> basically if there is like *one binary* and every fraction of a second matters. try -O3 and test its brains out
[08:58:41 CET] <tdr> test it against an -O2 one tho too because sometime -O3 makes bins that are slower
[08:58:52 CET] <JeffATL> yes to that
[08:59:59 CET] <JeffATL> if it's revenue-generating and it's the difference between a 3-bedroom in Monaco and a 4-bedroom in Monaco, then yes, go there :)
[09:01:20 CET] <AlbertLu> :)
[09:42:35 CET] <kerio> also try -Os
[09:42:48 CET] <kerio> sometimes staying in cache is more important than anything else
[10:46:08 CET] <sh3llc0d3> Hello guys
[10:46:14 CET] <sh3llc0d3> some active users right now ?
[10:46:26 CET] <kerio> nope
[10:46:39 CET] <sh3llc0d3> Damn it, I'll try next time
[10:46:44 CET] <sh3llc0d3> ... :)
[10:47:35 CET] <sh3llc0d3> Well I got a simple question, I'm actually encoding stuff with libx264 to get mp4 containers, I'm looking to get the best quality possible on output, but without actually do the encoding in two phases
[10:48:07 CET] <sh3llc0d3> is there any recommanded preset or something for this ? Or should I simply try and find what fits the best to me ?
[12:03:26 CET] <zoli> hello
[12:03:48 CET] <zoli> I would like to get hardware encoding work under Ubuntu 16.04 with nvidia gtx 770
[12:04:20 CET] <zoli> I tried it with ffmpeg as well directly after Handbrake and Transmageddon
[12:04:50 CET] <zoli> ffmpeg tells me that: Unknown encoder 'libnvenc'
[12:05:03 CET] <BtbN> nvenc
[12:06:26 CET] <zoli> BtbN: if i change libnvenc to nvenc, it tells the same: Unknown encoder 'nvenc'
[12:06:50 CET] <BtbN> Use an ffmpeg build which has the nvenc encoder enabled then.
[12:06:57 CET] <zoli> ffmpeg -i file  -c:v nvenc -profile:a high444p -pixel_format yuv444p -preset default output.mp4
[12:07:01 CET] <zoli> this is the command
[12:07:07 CET] <BtbN> Which should be any somewhat recent one, as it's enabled by default.
[12:07:43 CET] <zoli> ffmpeg version N-79139-gde1a0d4
[12:08:39 CET] <zoli> is it also enabled by default in the nvidia propriatery driver? I have this version: 367.57
[12:10:32 CET] <BtbN> There is nothing to be enabled/disabled in the driver. And the error is quite clear. Update your ffmpeg.
[12:14:12 CET] <zoli> at pacckage level, I have 3.0.0, as I see the newest is 3.2.2
[12:14:33 CET] <zoli> trying to find a repo
[12:40:55 CET] <DHE> high444p is not an audio profile
[12:58:53 CET] <zoli> ok, thanks it seems to be working now
[12:59:39 CET] <zoli> needed indeed the latest 3.2.2 ffmpeg, plus also needed to install one package: libcuda1-367
[13:00:13 CET] <BtbN> that's entirely up to the packager of your driver.
[13:01:55 CET] <zoli> I wonder though why my gpu was only used till 8% and video engine utilization: 1005?
[13:01:59 CET] <zoli> 100%*
[13:02:14 CET] <zoli> I have checked it in nvidia-settings
[13:04:15 CET] <BtbN> what's to wonder about that? Seems like what would happen if you fully use the video engine?
[13:08:20 CET] <zoli> what is video engine exactly here?
[13:08:43 CET] <zoli> and how can it be the bottleneck?
[13:09:16 CET] <zoli> ffmpeg itself is the video engine?
[13:12:10 CET] <darsain> how can one map streams based on language code? the docs say that to pick english audio, you do: -map 0:m:language:eng
[13:12:40 CET] <darsain> but that leaves me baffled, since I'd expect it to be -map 0:a:language:eng, why is it 0:m... ?
[13:12:54 CET] <darsain> and how do I adapt it for subtitle stream?
[13:22:04 CET] <BtbN> zoli, it's the part of the card that does the video de/encoding.
[13:29:27 CET] <zoli> is vp9 also supported by ffmpeg with hardware encoding?
[13:39:08 CET] <olgson> Hello FFMPEG people. I've small problem with http://pastebin.com/ZRwWtg1Q OVERLAY. I was able to make video with avectorscope and sound / image and sound but I'm not able to combine them together.
[13:39:14 CET] <olgson> Happy New Year! :)
[13:41:24 CET] <olgson> I'm completely green in ffmpeg field. I believe I've lost some bitrate command / codec or sth else...
[13:51:14 CET] <kepstin> olgson: what does ffmpeg print when you run it?
[13:51:24 CET] <olgson> One sec
[13:51:48 CET] <kepstin> hmm, you're overlaying a 1920x1080 thing on top of a 1920x120 thing, i'm not sure what you're expecting to happen...
[13:52:53 CET] <olgson> http://pastebin.com/qjkUBiDh
[13:53:00 CET] <olgson> nono - I've changed that to x1080
[13:53:31 CET] <olgson> anyway what I want to do is : Take MP3 -> create GenScope overlay that over image ;)
[13:53:42 CET] <olgson> *AVectorScope
[13:54:10 CET] <kepstin> ok, so it looks like the issue is that you're just not looping the image frame, so it's stopping encoding early
[13:54:16 CET] <markvandenborre> zoli: kaby lake intel procs combined with... what was it again
[13:54:27 CET] <markvandenborre> for hardware encoding at least have some patches ready
[13:54:28 CET] <kepstin> add "-loop 1" before the image input, and "-shortest" before the output filename
[13:54:51 CET] <kepstin> you might also want to set '-framerate' on the image input too
[13:55:15 CET] <kepstin> (default is 25, and you might get weirdness if it doesn't match the overlayed stuff)
[13:56:35 CET] <olgson> looks better with loop option (generation time is longer :D ) lets see ;)
[13:56:45 CET] <olgson> 32 fps :)
[13:57:12 CET] <kepstin> olgson: also you're using x264, so you should use '-crf' not '-q:v' (default is 23, lower values are higher quality/bigger)
[14:11:39 CET] <olgson> kepstin, it loops whole video ;) and it's generated without stopping :)
[14:17:22 CET] <zoli> markvandenborre: only for intel, not for nvidia?
[14:18:30 CET] <zoli> markvandenborre: I have nvidia gtx770, I guess it wont support vp9 anyway, but only the latest pascal architecture?
[14:18:40 CET] <olgson> kepstin, maybe it's there but there is transparency set and BG is just coverd with FG :)
[14:19:14 CET] <olgson> kepstin, f... yeah ! was right :)
[14:19:17 CET] <markvandenborre> zoli: kaby lake intel procs only, yes...
[14:19:28 CET] <markvandenborre> and even then, the process is not very straightforward
[14:19:29 CET] <olgson> kepstin, https://www.youtube.com/watch?v=QqNZ-KdHNqM :)
[14:19:43 CET] <olgson> but still not an effect I wanted ... but I know it's working so I can play more around with it ;)
[14:20:12 CET] <kepstin> olgson: maybe try the 'blend' filter instead of 'overlay' - you can get some neat effects with that
[14:21:38 CET] <kepstin> 'lighten' or 'addition' blend modes would be good ones to try
[14:23:18 CET] <markvandenborre> zoli: gstreamer-vaapi with intel kaby lake processors
[14:24:24 CET] <zoli> markvandenborre: https://developer.nvidia.com/ffmpeg There is nice table, which says pascal should have vp9 encoding with ffmpeg?
[14:26:31 CET] <ritsuka> I see only vp9 decoding in that table
[14:30:44 CET] <markvandenborre> zoli: indeed; the only way right now seems to be gstreamer vaapi on kaby lake
[14:30:55 CET] <markvandenborre> and good luck getting hold of those processors
[14:32:20 CET] <markvandenborre> and libav does do it too it seems
[14:32:23 CET] <markvandenborre> https://wiki.libav.org/Hardware/vaapi
[14:35:36 CET] <zoli> what is the difference between vp9 and libvpx-vp9 coders?
[14:35:56 CET] <BtbN> Isn't one the decoder?
[14:37:09 CET] <zoli> (decoders: vp9 libvpx-vp9 ) (encoders: libvpx-vp9 )
[14:37:19 CET] <markvandenborre> vp9 is the codec, libvpx is a reference implementation in software
[14:37:37 CET] <zoli> for decoders there is both
[14:38:02 CET] <zoli> or is it just an alias?
[14:42:27 CET] <BtbN> there is a native vp9 decoder in ffmpeg
[14:42:32 CET] <BtbN> usually those are just named like the codec.
[14:42:46 CET] <sh3llc0d3> it's like aac and libfdk_aac
[14:42:57 CET] <sh3llc0d3> oh, hi :)
[14:57:39 CET] <Dexstair> quick question - may be part of a larger question. What does -map do. Is it deprecated?
[15:02:33 CET] <klaxa> it maps input streams to output streams, it is not deprecated
[15:03:20 CET] <DHE> it lets you build your outputs using components of the inputs
[15:03:22 CET] <klaxa> https://ffmpeg.org/ffmpeg.html#Advanced-options
[15:12:42 CET] <Dexstair> Okay, when using tragtor with H264_nvenc it causes an error, but removing the -map option allows the encode to continue.
[15:14:27 CET] <DHE> then it is likely using the map command incorrectly
[15:18:11 CET] <Dexstair>  -map 0.0 -map 0.1 -y -f matroska -ab 128k -ar 48000 -ac 2 -vcodec h264_nvenc is what Tragtor wants to do by default, and throws out "Stream map '0.0' matches no streams. To ignore this, add a trailing '?' to the map."
[15:20:19 CET] <Dexstair> Vaapi used to take the stress off of the processor, but it seems that NVENC assists the encoding process rather than takes it off of the processor
[15:20:35 CET] <Tom_B_> I'm trying to implement a 60 minute timeshift of a live HTTP stream. I've managed to get the stream recorded into multiple hour long segments (mpeg2-ts files) and I can open these in vlc/mplayer/whatever. The problems are 1) I can only rewind to the beginning of the file, 2) VLC will only play the stream for an hour because the next segment is in a different file. Is there any way to get ffmpeg to provide all the files as a single stream to vlc (an
[15:20:35 CET] <Tom_B_> d allow rewinding back to the beginning of the first segment?... and not cause a problem when a segment is deleted?)
[15:28:11 CET] <BtbN> nvenc is an asic on the nvidia GPU. It takes 100% of the load from the CPU.
[15:28:33 CET] <BtbN> If you still have high CPU usage, that's something else doing stuff on it.
[15:28:48 CET] <DHE> Dexstair: the -map syntax uses :colons:, not .periods.
[15:32:35 CET] <Dexstair> ffmpeg -i "/mnt/f892940f-33f7-47ae-9fd5-140c53b4b697/Videos/Anime/DVD Rips/Manga Force/Urot/LOO.mp4" -map 0.0 -map 0.1 -y -f matroska -ab 128k -ar 48000 -ac 2 -vcodec nvenc_h264 "/home/dexter/Downloads/anime.mkv" is what is being passed to ffmpeg
[15:33:16 CET] <Dexstair> my cpu usage is around 150% but on FFMPEG
[15:34:34 CET] <Metamorfer> Hi, I'm having issues compiling ffmpeg latest version on OSX for distribution
[15:34:59 CET] <Metamorfer> It works on the host machine and I can either manually compile it or use brew with no surprises
[15:35:20 CET] <Dexstair> https://s28.postimg.org/nojj32zyl/Screenshot_from_2016_12_30_14_33_42.png encoding settings
[15:35:25 CET] <Metamorfer> but when I move the libs to another mac with different hardware it crashes
[15:35:43 CET] <DHE> Dexstair: well you still need to decode the video on the CPU, and encode the audio. for HD and better-than-realtime encoding you might be pushing the CPU there.
[15:35:50 CET] <Metamorfer> I've been reading a lot and playing with ./configure but nothing so far
[15:36:42 CET] <Dexstair> Ahh, my intel chip can decode the video too. I think ffmpeg can via nvenc with the right setting too. I'm having a dumb moment
[15:36:52 CET] <Metamorfer> is there any recommendation/guide I can follow to compile ffmpeg that minimizes compatibility issues when running on a different machine?
[15:37:12 CET] <DHE> Metamorfer: crashes how? illegal CPU instruction?
[15:37:18 CET] <Metamorfer> yes
[15:37:32 CET] <Metamorfer>  libavcodec.57.dylib           	0x000000010a7cf9d1 0x10a521000 + 2812369 1   libavcodec.57.dylib           	0x000000010a99a408 avcodec_register + 26
[15:37:57 CET] <DHE> that shouldn't happen unless you used a custom configure line with -march=...
[15:38:29 CET] <DHE> it's possible to force a compiler to target certain CPUs as well, but I'm not aware of any system that defaults to non-compatible settings
[15:39:47 CET] <Metamorfer> I'm compiling OBS which relies on ffmpeg for most of the encoding/decoding processes.
[15:40:11 CET] <Metamorfer> it's OBS the one making calls to the lib so maybe the problem is there.
[15:41:48 CET] <JEEB> time to make sure you have enable-debug set in your configure
[15:41:54 CET] <JEEB> and then oppan debugger time
[15:42:22 CET] <Metamorfer> That's a good point JEEB
[15:42:58 CET] <Metamorfer> I was wondering if someone else has more experience with OSX and point me to the right direction.
[15:45:45 CET] <Metamorfer> to summarize, ffmpeg 3.x lib libavcodec.57.dylib crashes when executed on a mac with different hardware than the host used to compile the library. I want to fix that.
[15:48:09 CET] <darsain> is it possible to configure libvpx to encode only based on quality level? i.e. something like crf, without me having to also configure a specific bitrate target?
[15:49:09 CET] <darsain> bitrate is dependent on video dimensions, and I want to create a universal script into which I can throw videos of any size to be recoded, so I don't want to be setting bitrate targets anywhere
[15:50:22 CET] <darsain> I've tried -b:v 0 as you do in libvpx-vp9, but that produces constantly giant videos, no matter what crf is set
[15:53:07 CET] <kerio> Metamorfer: how different
[15:53:49 CET] <kerio> and i second what DHE said, that sounds like a -march issue
[15:55:05 CET] <JonFreed> Hello -   What's the secret on a Windows box to getting ffmpeg to listen?    The following works on Linux, but it does not work on Windows:    ffmpeg -listen 1 -timeout 60 -i rtmp://0.0.0.0/live/mystream -c copy -f flv rtmp://us-east.restream.io/live/mysecretstreamkey
[16:11:15 CET] <Metamorfer> not very different, both macs are running OSX 10.12, the biggest difference is the GPU one has an AMD and the other has an NVidia
[16:16:52 CET] <kerio> which models are those?
[16:23:25 CET] <spl33n> hello i need to mute audi file using ffmpeg but i dont know how i do this. someone help me ?
[16:23:44 CET] <ritsuka> Metamorfer: same os version? what does it say in the crashlog?
[16:27:00 CET] <kerio> Metamorfer: was it compiled on a newer model
[16:39:36 CET] <hashworks> Hi! I'm currently encoding 4K x265 files with a bitrate of 18 Mbit/s to HEVC. What is a bitrate I should expect? I'm using the medium preset and a CRF of 17, and the current output is ~17 Mbit/s. Can I go for a much lower bitrate to get the same quality in HEVC?
[16:40:41 CET] <DHE> so input is 18 megabit, and output is crf that turns out to be ~17 megabit?
[16:41:12 CET] <hashworks> With -crf 17, yes, seems so frame= 1930 fps=3.7 q=-0.0 size=  174206kB time=00:01:20.69 bitrate=17685.5kbits/s speed=0.156x
[16:42:49 CET] <hashworks> I'm not really sure what to expect from HEVC, I guess I just have to try out multiple settings. What is a good way to compare the quality of two files without watching them on a 4K monitor and "guessing it"?
[16:43:25 CET] <kerio> crf 18 is supposed to be super good for x264
[16:43:46 CET] <hashworks> Ok, so 17 might be a overkill?
[16:44:32 CET] <DHE> I wouldn't compare x264 and x265 too closely
[16:47:13 CET] <kerio> yeah
[16:47:28 CET] <kerio> but still, at the same crf x265 should look better
[16:48:56 CET] <kerio> (slightly better, but still)
[16:49:05 CET] <kerio> hashworks: i'd make some tests actually
[16:49:49 CET] <hashworks> How would you compare those? By eye? I don't have a 4K monitor arround, and the only 4K monitor I have access to (in the next weeks) is only playing 4K content with HEVC codec
[16:51:11 CET] <DHE> there are official metrics like PSNR but computer measurements don't usually directly equate to human perception. at the end of the day, it's human eyes watching the video
[16:51:46 CET] <hashworks> Hm. I guess I'll have to with comparing them downscaled on a 1080p screen
[16:51:52 CET] <hashworks> *go with
[16:52:13 CET] <JEEB> kerio: you should never compare two different sets of settings or encoders at the same crf
[16:52:55 CET] <kerio> hashworks: play it cropped, not downscaled
[16:53:14 CET] <hashworks> hm good idea
[16:53:32 CET] <JEEB> first of all with the same encoder the analysing parts differ between settings, and between two very different encoders that makes even less sense
[16:55:15 CET] <JEEB> x was bigger or smaller file size wise with the same crf between settings or encoders just has nothing you can compare because crf just can't be compared that way
[16:55:48 CET] <kerio> JEEB: but they're called in the same way ;<
[16:55:55 CET] <kerio> and the encoder names are very very similar
[16:56:05 CET] <JEEB> yes, but that means nothing.
[16:56:27 CET] <JEEB> even between presets in one encoder the crf result is not stable
[16:56:48 CET] <JEEB> and x265 is completely different to x264
[16:57:10 CET] <JEEB> so, uh, yeah. that's not how you compare
[16:59:24 CET] <JEEB> what I did when I was doing testing is I maximized both encoders (to make something static), then encoded three crf values with x265 (as that is slow as molasses), and then I did 2pass encodes to the same file size with x264 (although the proper way woild have been to find the crf value that gives the same file size)
[17:00:11 CET] <JEEB> the other alternative is to match speeds, and then encode to the same bit rate and compare (but that is much harder)
[17:00:42 CET] <JEEB> because you have to find a spot where both encoders have very close speed
[17:02:38 CET] <JEEB> naturally in both cases you also have to match stuff like max gop length etc
[17:33:11 CET] <kepstin> JEEB: note that doing a 2-pass encode with x264 is literally the same as finding a crf value that gives the same file size
[17:33:24 CET] <JEEB> not 100% the same
[17:33:46 CET] <JEEB> but close enough that I consider it a valid alternative
[17:33:50 CET] <kepstin> well, certainly very close. the crf mechanism is derived from the second pass of 2-pass mode.
[17:33:59 CET] <JEEB> yes
[17:34:33 CET] <JEEB> I mean, I've seen the bit allocations be different but in general if it's not a very specific type of content they should be similar enough
[17:34:47 CET] <kepstin> iirc at the end of the first pass, it even prints out the selected crf value for the second pass
[17:35:21 CET] <JEEB> but the analysis pass does affect the bit allocations and in certain cases it can be quite different
[17:35:40 CET] <JEEB> but yeah, you're right that the results usually are quite close enough
[17:36:40 CET] <JEEB> if I look at my old logs @ #x264 I'd probably be able to point towards some samples where it becomes evident, although I think you'll be able to see differences in overall bit allocation with pretty much everything
[17:37:20 CET] <Threads> any reason why old ffmpeg versions write the x264 headers in the mkv but with ffmpeg 3.2.2 it doesnt
[17:37:29 CET] <kagami_> Hi. Can ffprobe display bit_rate information per stream? Seems like it could before, but not anymore? I can't find bit_rate field for my test files.
[17:37:36 CET] <Threads> i use to be able to preview the encoding settings while encoding
[17:38:08 CET] <kagami_> Threads: seems like the same for libvpx.
[17:38:20 CET] <kagami_> I can't play files while encoding to vp9.
[17:39:04 CET] <JonFreed> Any ideas why I am getting the error "RTMP_Connect0, failed to connect socket. 10061 (Unknown error)" when I try the following command on Windows?  (The same command works on Linux without any problems.)  ffmpeg -listen 1 -timeout 60 -i rtmp://0.0.0.0/live/mystream -c copy -f flv rtmp://us-east.restream.io/live/mysecretstreamkey
[17:39:30 CET] <kepstin> iirc not being able to play mkv/webm as it's being encoded is a pretty recent change, annoys me too. there's a couple of commits you can revert to get the old behaviour :/
[17:40:21 CET] <JEEB> I think it was brought up on the ML
[17:42:20 CET] <kepstin> one of my friends says reverting commits 8c1342e631d6 and ee888cfbe777 would do the trick
[17:42:58 CET] <kagami_> kepstin: cool, thanks
[17:43:30 CET] <JonFreed> @spl33n , you said "i need to mute audi file".   I think you meant that you want to mute the audio?  If yes, then try the "-an" option before the output file.  Your need was addressed on Stack Exchange here:  http://superuser.com/a/268986/598718
[18:11:41 CET] <spl33n> JonFreed: yes i mean audio
[18:53:55 CET] <JonFreed> Besides sneaker net, what encoding, muxing/container-format, and protocol would use the least amount of network bandwidth if you want to stream from ffmpeg on one box to ffmpeg on a second box?
[20:01:56 CET] <DHE> so if encoding time were a non-issue, -threads 1 is the ideal setting for x264 encoding quality, right? (all other things being equal)
[20:14:57 CET] <JEEB> DHE: it really doesn't affect quality with x264. disabling threads does make VBV/HRD work exactly the same way every time with the same clip, though
[20:17:07 CET] <DHE> JonFreed: there's not much that meets all criteria ideally. mpegts over tcp is fairly reliable but mpegts overhead is pretty bad compared to other options
[20:17:36 CET] <kerio> nut!
[20:18:26 CET] <DHE> is that streamable?
[20:18:40 CET] <kerio> i thought so
[20:23:23 CET] <Threads> DHE tried auto instead of using a certain number ?
[20:25:34 CET] <flux> dhe, how much is the mpegts overhead? I didn't know it was noticeale.
[20:26:39 CET] <furq> about 10% or so
[20:27:15 CET] <kerio> damn
[20:27:24 CET] <furq> Threads: he's asking if frame multithreading results in quality loss
[20:27:33 CET] <furq> i don't think it does
[20:27:56 CET] <furq> slice multithreading definitely does, but you wouldn't use that unless you needed it anyway
[20:28:14 CET] <kerio> for that 0 lag encoding
[20:28:17 CET] <kerio> ;o
[20:32:27 CET] <DHE> Threads: it's a machine two E5-2698v4 CPUs. that's 20 cores * hyperthreading (2) * sockets (2) = 80
[20:32:36 CET] <DHE> I am NOT allowing autodetection on this thing
[20:33:21 CET] <kerio> DHE: that's a sweet-ass machine
[20:33:24 CET] <kerio> ;o
[20:33:41 CET] <kerio> i mean
[20:33:46 CET] <kerio> if you're fine with only 20 cores
[20:34:27 CET] <DHE> kerio: oh? you got something better?
[20:34:42 CET] <kerio> well, the e7-8890v4 has 24 cores
[20:34:44 CET] <kerio> :>
[20:34:54 CET] <kerio> for only 7k monies
[20:35:00 CET] <DHE> and the incremental 2699 with 22 cores also exists
[20:35:20 CET] <kerio> the 8890 can be 8-socketed i think
[20:35:21 CET] <DHE> but unless it has a base clock of 3 GHz (unlikely) along with all those cores, the price point is pretty bad
[20:35:37 CET] <DHE> oh good, 56k monies for a full machine
[20:41:16 CET] <DHE> Keridos: looked up that CPU on ark.intel.com. holy hell
[20:41:37 CET] <nolaan> hello, I'm using ffmpeg to stream a webcam with rtp and ffplay to receive it. Can somebody tell me why ffplay is opening port+1 and how to avoid this behavior?
[20:46:15 CET] <jkqxz> nolaan:  RTP always uses two consecutive ports, the upper one is used for RTCP.
[20:50:10 CET] <nolaan> okay my bad, thankss jkqxz
[20:58:55 CET] <kerio> DHE: i want 8 of those ;-;
[20:59:11 CET] <kerio> there's a supermicro mobo that can handle 8 of those at full ram
[20:59:18 CET] <kerio> 192TB of ram ;Q_______
[20:59:20 CET] <DHE> kerio: I dunno, it's expensive as hell, needs a lot of RAM just to make it work properly
[20:59:26 CET] <DHE> really? most I got was 24 TB
[20:59:53 CET] <kerio> oh wait hm
[20:59:56 CET] <kerio> maybe it's 24?
[21:00:25 CET] <kerio> yeah i'm misremembering
[21:00:32 CET] <kerio> it's 192 *cores*
[21:00:39 CET] <kerio> 3TB per socket
[21:00:46 CET] <kerio> so 24TB yea
[21:02:13 CET] <DHE> it's like, i want one, but at the same time I don't want to have to pay for it or the upkeep (power, cooling, etc) for it.
[21:12:33 CET] <JeffATL> pulled the audio off a vid and modified it in audacity (normalize, EQ, noise reduction - NOT timing). replaced it via "ffmpeg -i input.mkv -i modified_audio.mp2 -acodec copy -vcodec copy -map 0:v -map 1:a output.mkv" but now the a/v sync is off by about a second. why would this be, and is there a fix?
[21:19:40 CET] <JeffATL> ffprobe says stream 0 duration is 42m02.586s, stream 1 is 49m49.032s
[21:22:50 CET] <BtbN> maybe the audio stream starts late in the original file, and you didn't account for that?
[21:25:26 CET] <furq> if nothing else you should have audacity export to wav and reencode it with ffmpeg
[21:25:29 CET] <JeffATL> BtbN: i suppose that's possible. should i perhaps trim some unnecessary seconds off my input file?
[21:25:49 CET] <furq> and if you're reencoding you might as well take the opportunity to use something that sucks less than mp2
[21:26:11 CET] <furq> ffprobe -show_streams (on the source file) will show track delays iirc
[21:26:28 CET] <furq> i forget how you replicate those when remuxing, maybe -itsoffset or something
[21:26:37 CET] <JeffATL> furq: for all i know audacity is using ffmpeg internally to export audio as mp2
[21:26:52 CET] <BtbN> you still don't want to encode anything as mp2.
[21:27:03 CET] <furq> in my experience it's better to let ffmpeg do that while remuxing
[21:27:15 CET] <furq> i've had some av sync issues in the past with stream copying that went away if i reencoded the audio at the same time
[21:27:44 CET] <furq> and yeah mp2 is pretty awful
[21:28:09 CET] <furq> if you're encoding the video to h264 then use aac audio
[21:28:42 CET] <JeffATL> BtbN: that's how the a dn v come out of the cap card. mp2 is only "awful" for my purposes if it becomes impossible to read with future software/players or mangles the quality
[21:29:03 CET] <furq> well yeah mp2 is the best option if you don't touch the audio after it comes out of the card
[21:29:09 CET] <furq> but if you do, there's no reason to go back to it
[21:34:37 CET] <JeffATL> when i use ffprobe -show_streams, stream 0 (v) has a start time of 0.400433 and stream 1 (a) has a start time of 0.189356
[21:34:59 CET] <JeffATL> that's on the file that came right out of the card
[21:38:04 CET] <JeffATL> heck, let's see what happens if i pad the replacement audio in front by the sifference
[21:38:08 CET] <JeffATL> difference
[21:45:40 CET] <tab1293> im transcoding on the fly with ffmpeg and streaming directly to a browsers media source element using the x264 codec
[21:46:17 CET] <tab1293> playback works but there are some stuttering happening. the odd thing is, the video only stutters as ffmpeg transcodes, once the transcoding completes the stuttering stops
[21:46:48 CET] <tab1293> I know this is a pretty general question, but can anyone think of why this may be happening?
[21:47:04 CET] <JeffATL> tab1293: how many cores you got?
[21:47:27 CET] <tab1293> im running ffmpeg in the cloud on a two core machine, playback and transcoding are happening on separate machines
[21:48:21 CET] <JeffATL> ah thank ah foun yer problum
[21:48:38 CET] <tab1293> what the two core machine?
[21:49:15 CET] <BtbN> what speed is ffmpeg running at?
[21:49:25 CET] <BtbN> If it's not at 1x, you're going to get trouble
[21:49:27 CET] <tab1293> averages at like 1.2x
[21:49:47 CET] <JeffATL> you've got trans-internet hops in your ffmpeg i/o
[21:49:48 CET] <tab1293> no it is, im using ultrafast preset, ive even seen it at 2x and the stuttering still occurs
[21:50:29 CET] <tab1293> JeffATL: why would that not happen after the ffmpeg proccess finishes though?
[21:50:54 CET] <tab1293> the packets are still being sent over the wire after the transcoding stops. the stuttering stops like immediately after ffmpeg finishes
[21:53:19 CET] <JeffATL> tab1293: when ffmpeg is still running, there's still bidirectional traffic and those packets have to get acknowledged in some fashion, don't they? just the latency alone seems like enough to cause what you're seeing
[21:54:48 CET] <tab1293> hmm Ive tested locally (both playback and transcoding on same machine) and still saw the stuttering, but that mightve just been because my cpu was at like 90%
[21:55:25 CET] <tab1293> I guess I can test with a transcoding machine on my lan
[21:57:40 CET] <tab1293> but im still not 100% convinced its internet latency. like ffmpeg is writing to stdout, which is piped to a websocket and then ingested by the client
[21:58:03 CET] <tab1293> even when ffmpeg finishes, there is still data going across the wire
[21:58:48 CET] <tab1293> so if it was a latency issue, wouldnt i still see the stuttering? i dont get what you mean by bidrectional traffice JeffATL
[22:02:02 CET] <JeffATL> tab1293: my understanding of higher-level internet function is a little foggy but if you're using some sort of cloud service your packets are very likely getting there and back via multiple paths that are always shifting - packets arrive out of order and get reordered - delays accumulate while the reorderingn accumulates
[22:04:19 CET] <JeffATL> tab1293: and while ffmpeg is running that process is taking place in TX and RCV at once on both ends - it's just not something i'd trust the timing for. also, that same 2-core VM, wherever/whatever it is , is trying to do a lot at once
[22:05:12 CET] <JeffATL> AND do it with virtualized interfaces, which may mean that the packet reordering and so forth is happening in software, not interface firmware
[22:05:28 CET] <tab1293> okay Im going to test right now on my LAN and see what playback looks like
[22:07:42 CET] <JeffATL> tab1293: watch the stress on the ffmpeg machine as you do so.
[22:07:59 CET] <tab1293> will do
[22:11:37 CET] Action: JeffATL likes to have xosview up on everything he touches
[22:18:24 CET] <JeffATL> well, that was a good try re delaying the audio but it's still not synced up. back to drawing board
[22:25:48 CET] <tab1293> JeffATL: so my transcoding machine was fine and still seeing that stuttering across the LAN
[22:25:57 CET] <tab1293> as soon as ffmpeg finishes stuttering gone
[22:26:01 CET] <tab1293> like instantaneously
[22:26:35 CET] <tab1293> on the end of the transcode, is anything sent that may have an effect on the stream?
[22:28:19 CET] <tab1293> and to be clear, its not like the stuttering is super intense, just the occasional stutter. still very annoying though
[22:33:56 CET] <JeffATL> tab1293: okay. how railed up was the ffmpegging machine while this was happening?
[22:34:33 CET] <tab1293> around 80% cpu
[22:34:43 CET] <tab1293> but it was going at +2x rate
[22:35:54 CET] <JeffATL> i'd like to know what was taking up the 80%
[00:00:00 CET] --- Sat Dec 31 2016



More information about the Ffmpeg-devel-irc mailing list