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

burek burek021 at gmail.com
Thu Jan 5 03:05:01 EET 2017

[00:56:31 CET] <tab1293> how come even when I set ffmpeg to have a low niceness, it still will take up >100% of my cpu. I am trying to use one of the faster presets fyi
[00:56:45 CET] <furq> because that's how nice works
[00:56:57 CET] <tina> Hi there! I'm trying to install ffmpeg on my Raspbian Jessie 8.0 RPi and having a lot of difficulty. Came here to try to ask for help, is anyone able to give me some advice?
[00:57:03 CET] <tab1293> whoops meant high niceness, low priority
[00:57:06 CET] <furq> it's a priority system, if there are no higher-priority processes then ffmpeg will use 100%
[00:57:15 CET] <tina> FYI, I followed this reference in my attempt to install: https://www.assetbank.co.uk/support/documentation/install/ffmpeg-debian-squeeze/ffmpeg-debian-jessie/
[00:57:20 CET] <Maverick|MSG> -threads ?
[00:57:25 CET] <DHE> tab1293: niceness is how it interacts with other processes. but if there's still lots of free CPU, it'll take it
[00:57:35 CET] <furq> yeah if you're using x264 then -threads will limit usage
[00:57:42 CET] <furq> or some other codecs ofc
[00:57:42 CET] <tina> after several hours, all commands appeared to run successfully, but running 'ffmpeg' gives 'illegal instruction'
[00:57:52 CET] <tab1293> DHE hmm okay there isn't much else running on the machine
[00:58:10 CET] <tab1293> Maverick|MSG doesn't it automatically opt to threads = 0 which is use all cores?
[00:58:17 CET] <Maverick|MSG> exactly
[00:58:25 CET] <DHE> i would suggest using -threads 1 to limit it to a single core (note: command it context sensitive)
[00:58:31 CET] <Maverick|MSG> if you want it to use less then ^^
[00:58:38 CET] <furq> tina: that guide looks terrible
[00:58:50 CET] <DHE> you could also use CPU affinity or (under linux) the cpuset control group to artificially restrict it to certain CPUs. ffmpeg should comply
[00:58:56 CET] <furq> https://www.johnvansickle.com/ffmpeg/
[00:59:01 CET] <furq> just use the armhf build from there
[00:59:05 CET] <tina> furq: Oh no. Do you know any better? I specifically need to install on jessie 8.0
[00:59:11 CET] <furq> or the armel build if it's an rpi 1
[00:59:17 CET] <tina> It is an RPi Zero.
[00:59:22 CET] <tab1293> okay I will try setting the threads to 1, see how the cpu usage looks
[00:59:53 CET] <furq> the zero uses the same soc as the 1, so i guess you'll need the armel build
[01:00:27 CET] <tina> furq: gotcha. would it be safe to install the armel build on top of what I've already done?
[01:00:42 CET] <furq> probably
[01:00:55 CET] <tina> OK, giving it a shot now. Thank you!
[01:03:24 CET] <tab1293> -threads 1 still seeing 150% cpu usage on a two core machine
[01:10:13 CET] <Maverick|MSG> 150% is the total utilization or just ffmpeg's utilization?
[01:10:40 CET] <furq> -threads just covers x264's encode threads
[01:10:51 CET] <furq> it doesn't include ffmpeg's decoding thread or x264's lookahead threads
[01:11:08 CET] <tina> furq - that did the trick! Thanks, that was a life-saver, i spent many hours trying to install ffmpeg :)
[01:11:36 CET] <llogan> when did the arm builds show up?
[01:11:41 CET] <furq> a few months ago
[01:12:03 CET] <furq> idk if he ever fixed the omx support for the rpi builds
[01:14:12 CET] <llogan> now i can tell all of those arm users to stop using their broken libx264 "cpu capabilities: none!" builds.
[01:14:41 CET] <llogan> Android users specifically. mostly from india
[01:15:04 CET] <furq> will those builds run on android
[01:15:09 CET] <furq> i thought glibc was a requirement
[01:15:26 CET] <llogan> hm, i didn't think of that
[01:15:32 CET] <llogan> don't know
[01:16:04 CET] <furq> but yeah if you want usable h264 encoding on an rpi then you still need to build yourself
[01:16:16 CET] <furq> where "usable" means fast, not acceptable-looking
[01:16:26 CET] <tina> i'm now trying to stream from my rpi v2 camera to youtube via ffmpeg. i'm getting this error:
[01:16:31 CET] <tina> Problem accessing the DNS. (addr: a.rtmp.youtube.com) rtmp://a.rtmp.youtube.com/live2/xbjs-a3gp-0yvk-ftdg: Unknown error occurred
[01:17:09 CET] <furq> what does `nslookup a.rtmp.youtube.com` return
[01:17:24 CET] <tina> this is my full cmd line log: http://pastebin.com/QHPzCSmX
[01:17:55 CET] <tina> i don't think i have nslookup, says command not found
[01:18:20 CET] <llogan> then just try ping
[01:18:23 CET] <furq> ^
[01:19:31 CET] <tina> it works:
[01:19:33 CET] <tina> pi at raspberrypi:~ $ ping a.rtmp.youtube.com PING bartmp.l.google.com ( 56(84) bytes of data. 64 bytes from icmp_seq=1 ttl=56 time=19.9 ms
[01:20:52 CET] <furq> wait
[01:21:02 CET] <furq> `-re -ar 44100 -ac 2 -acodec pcm_s16le -f s16le -ac 2 -i /dev/zero`
[01:21:05 CET] <furq> what?
[01:21:45 CET] <llogan> by the way, jessie-backports provides ffmpeg. including armel i believe.
[01:21:57 CET] <tina> furq: sorry, not sure what you're asking?
[01:22:37 CET] <tina> followed instructions here: https://gist.github.com/maxogden/69e4ae18a32d7efd00d9
[01:23:04 CET] <furq> one of these days i'll see an ffmpeg howto which doesn't make me lose faith in humankind
[01:23:31 CET] <furq> idk how that would even work because it's applying -re to the wrong input
[01:23:37 CET] <tina> haha, i searched for an official one but just found these ....
[01:23:38 CET] <furq> actually nvm you don't need re anyway do you
[01:23:51 CET] <furq> but yeah you can replace all of that with `-f lavfi -i nullsrc`
[01:24:17 CET] <furq> that's a really stunning way to generate an empty audio track
[01:24:23 CET] <tina> lol
[01:24:33 CET] <llogan> you can also dump "-g 50 -strict experimental"
[01:24:57 CET] <furq> and yeah you probably don't want -ab 128k for silence
[01:25:10 CET] <furq> but anyway this is irrelevant if your dns lookups aren't working
[01:25:17 CET] <llogan> -g does nothing because you're stream copying instead of re-encoding. and -strict experimental was needed only for older ffmpeg
[01:25:20 CET] <tina> OK, my cmd is now: raspivid -o - -t 0 -vf -hf -fps 30 -b 6000000 | ./ffmpeg -f lavfi -i nullsrc -f h264 -i - -vcodec copy -acodec aac -f flv rtmp://a.rtmp.youtube.com/live2/xbjs-a3gp-0yvk-ftdg
[01:25:25 CET] <llogan> ...(for AAC encoding)
[01:25:44 CET] <tina> (same dns issue, but glad to know how to improve the command)
[01:26:27 CET] <furq> is that the actual address you're broadcasting to or is it user:pass at a.rtmp.youtube.com
[01:26:59 CET] <tina> in my youtube dashboard, it says the server URL is rtmp://a.rtmp.youtube.com/live2
[01:27:38 CET] <tina> doesn't say i need to prefix it with user:pass
[01:27:49 CET] <tina> but i could try
[01:28:10 CET] <furq> the user:pass thing is normally the cause of that error
[01:28:20 CET] <furq> librtmp has some weird issues around that
[01:28:54 CET] <llogan> shouldn't be a problem. apparently i'm able to broadcast to that URL. no use/pass needed.
[01:30:08 CET] <furq> yeah that works for me too
[01:31:08 CET] <furq> i'm using ffmpeg's native rtmp support though, not librtmp
[01:31:45 CET] <tina> i get protocol not found when i try to pass user:pass at ...
[01:31:58 CET] <furq> yeah that wasn't a suggestion
[01:32:20 CET] <furq> librtmp has issues with user:pass auth
[01:32:28 CET] <furq> but obviously it's not that
[01:34:01 CET] <furq> it's not a great solution but you could try rtmp://
[01:34:38 CET] <tina> oh hey, that seems to work..
[01:34:39 CET] <furq> or whatever ip you get by pinging it
[01:35:43 CET] <furq> that'll work but there's nothing to stop google from changing the IPs since you're not meant to use them directly
[01:38:43 CET] <tina> gotcha. i'm not managing to see anything on the youtube side, so trying to fix
[01:42:08 CET] <furq> weird
[01:42:17 CET] <furq> i get the same error with the armel build on my rpi
[01:42:25 CET] <tina> http://pastebin.com/gSwABajD
[01:42:34 CET] <furq> but not with the amd64 build on my vps
[01:42:45 CET] <tina> my logs (youtube live status is 'starting' and grey, meaning no data received, and video is blank)
[01:43:57 CET] <furq> it's guessing the input framerate wrong
[01:44:02 CET] <furq> [h264 @ 0x32f2e70] Stream #0: not enough frames to estimate rate; consider increasing probesize
[01:44:16 CET] <furq> try -probesize 10M
[01:44:29 CET] <furq> and/or -analyzeduration 10M
[01:44:52 CET] <furq> failing that, -framerate 5 -i -
[01:48:56 CET] <furq> lol nice
[01:49:02 CET] <furq> apparently that dns issue only affects the armel build
[01:49:25 CET] <furq> you might want to try the armhf build, idk if it'll work or not
[01:49:38 CET] <tina> oh, darn
[01:50:07 CET] <furq> i suspect it will tbh
[01:50:14 CET] <tina> i'm going through your suggestions. i set fps back to 30 and probesize to 10M. now 'receiving data' is flashing on and off. setting analyzeduration worsened things.
[01:51:01 CET] <furq> you should use the armhf build if it works, it should be faster
[01:51:11 CET] <tina> OK. i'll try installing it now.
[01:51:18 CET] <furq> the rpi 1 has hardfloat but "armhf" often means it was compiled for armv7
[01:51:29 CET] <furq> and the pi 1 is armv6
[01:55:09 CET] <tina> i just downloaded armhf. running ffmpeg gives a segfault
[01:56:10 CET] <tina> :(
[02:03:50 CET] <tina> in the cmd line output, what does 'speed' mean and should it ideally be around 1.0x? I'm seeing it fluctuate between 0.2x and 5.0x
[02:03:52 CET] <tina> frame=  995 fps= 26 q=-1.0 Lsize=   24308kB time=00:03:18.80 bitrate=1001.7kbits/s speed=5.27x
[02:26:59 CET] <phillipk> does exporting as  "-f mpegts" generally take forever vs., say, .mp4?
[02:28:48 CET] <mosb3rg> are you copying ?
[02:29:04 CET] <mosb3rg> the container honestly shouldnt make that much of a difference in the time the mux takes honestly.
[02:29:45 CET] <phillipk> I'm turning .png (+ a silent sound) into a .ts file of specific duration... using -loop 1
[02:30:39 CET] <mosb3rg> well thats encoding then not copying i would think.
[02:30:50 CET] <mosb3rg> show me your syntax.
[02:31:52 CET] <phillipk> ffmpeg -framerate 30 -loop 1 -i still.jpg -i silence.mp2 -y -vf scale=1920: 1080 -t 40.2 -vcodec mpeg2video -acodec mp2 -b:v 5000k -bt 5000k -f mpegts out.ts
[02:32:39 CET] <tina> i'm having a lot of trouble getting any stream to show up on youtube, the best i can get is 5-10s of green 'starting' (no video) before it turns grey once again. could this have to do with the fact that i'm using the armel build of ffmpeg with my Zero?
[02:32:46 CET] <tina> this is my command: raspivid -o - -t 0 -vf -hf -fps 30 -b 6000000 | ./ffmpeg -f lavfi -i nullsrc -f h264 -thread_queue_size 512  -i - -vcodec copy -acodec aac -f flv rtmp://
[02:33:19 CET] <tina> my cmd line logs are here, I'm not quite sure how to tell what's wrong: http://pastebin.com/J0rFfNqe
[02:33:38 CET] <tina> i've noticed that when i ctrl-c out of the stream these two error msgs pop up: flv @ 0x382cce0] Failed to update header with correct duration. [flv @ 0x382cce0] Failed to update header with correct filesize.
[02:34:16 CET] <tina> i'm trying to do things like set the size of the video, but getting error messages (Option video_size not found)
[02:34:28 CET] <tina> that's when I do this: 'raspivid -o - -t 0 -vf -hf -fps 30 -b 6000000 | ./ffmpeg -f lavfi -i nullsrc -f h264 -framerate 5 -video_size 1680x1050 -thread_queue_size 512  -i - -vcodec copy -acodec aac -f flv rtmp:// '
[02:34:41 CET] <furq> oh
[02:34:48 CET] <furq> that should have been -i anullsrc
[02:35:18 CET] <furq> if the input from raspivid is 1080p then you don't need -video_size
[02:36:54 CET] <tina> oh, thanks for spotting the typo! progress, now the youtube status is stable at 'green/starting'. there's still no video, though. i ran it for 1min
[02:37:14 CET] <tina> i thought i would try to change video_size to something lower, because i wondered if my Pi Zero couldn't handle a 1080 resolution
[02:39:08 CET] <furq> video_size sets the size of the input, it doesn't resize
[02:39:25 CET] <furq> but you're piping a format which contains the size in the header so it's not needed
[02:39:41 CET] <furq> you can't resize without reencoding and you don't want to do that on an rpi
[02:39:49 CET] <tina> gotcha. are these errors a problem?
[02:39:50 CET] <tina> [flv @ 0x407c580] Failed to update header with correct duration. [flv @ 0x407c580] Failed to update header with correct filesize.
[02:39:57 CET] <furq> i doubt it
[02:40:39 CET] <furq> you might also need -re before -i anullsrc
[02:41:04 CET] <furq> also you've got -fps 30 in raspivid but -framerate 5 in ffmpeg
[02:41:06 CET] <furq> those need to be the same
[02:41:52 CET] <furq> it should be able to handle 1080p30
[02:45:21 CET] <JonFreed> Why are there "recover" options for output, but not for input?  Particularly for rtmp with the -listen option.   Is there some technical reason?  Or has it just not been implemented?
[02:47:15 CET] <tina> furq - gotcha. looks like we have liftoff, I see a video on the youtube stream now :) thanks!!!
[02:47:30 CET] <tina> still seeing 10-15s of lag, will try to tweak
[02:51:34 CET] <thebombzen> I'm trying to scale 1920x1080 bgr0 to 1280x720 yuv420p. What I've been using is -vf format=yuv420p,scale=1280x720
[02:52:08 CET] <thebombzen> is there a way to do the swscaling with one video filter, or is this the best way? If so, should I scale before pixelspace conversion, or afterward?
[02:53:34 CET] <furq> i'd have thought you'd get better results doing the conversion after scaling
[02:53:58 CET] <furq> and you can try zscale
[03:08:16 CET] <thebombzen> but why would I want to use zimg's scaling over libswscale's?
[03:08:23 CET] <thebombzen> is it actually any better?
[03:09:15 CET] <furq> supposedly
[03:12:56 CET] <thebombzen> I don't see a way to set the pixel format explicitly in ffmpeg-filters.html
[03:13:05 CET] <thebombzen> just various forms of "color range" or matrix or whatever
[03:14:29 CET] <thebombzen> also if my goal is quality (not cpu usage) then is anything better than bicubic?
[03:15:42 CET] <thebombzen> the other options compared to bicubic are lanczos, spline16, and spline36 (possibly a typo for spline32?)
[03:17:33 CET] <furq> lanczos and spline should both look sharper than bicubic
[03:17:48 CET] <furq> also 36 is correct
[03:18:09 CET] <furq> 16 = sqrt(4), 36 = sqrt(6)
[03:18:21 CET] <furq> that's backwards but you get the idea
[03:19:20 CET] <furq> i only use bicubic for low-quality sources because it helps hide source artifacts
[03:19:29 CET] <tina> i'm seeing an initial delay of 15s between starting the stream and getting a video. about 300 frames are sent to youtube before anything appears (at 20fps)
[03:19:43 CET] <tina> i'm trying to set the number of initial frames, i read about an option called -g
[03:19:47 CET] <tina> but see no documentation for it here https://ffmpeg.org/ffmpeg.html
[03:19:56 CET] <furq> is the thing that appears 15 seconds behind
[03:20:04 CET] <furq> if so then that's the player buffering, there's not much you can do about that
[03:20:29 CET] <furq> youtube uses hls for live streams so 15 seconds seems pretty normal
[03:20:41 CET] <tina> yikes
[03:20:48 CET] <tina> there's 15s in between the ffmpeg command running
[03:20:54 CET] <tina> and the video appearing on the stream
[03:21:13 CET] <tina> so then everything that appears is 15s behind
[03:21:21 CET] <furq> yeah that's to be expected
[03:21:41 CET] <tina> is there any way to make it so that the video 'catches up' to real-time?
[03:21:51 CET] <furq> no
[03:21:55 CET] <tina> i don't mind an initial 15s delay but ultimately am hoping for the stream to have <5s of lag
[03:21:57 CET] <furq> hls inherently has a lot of latency
[03:22:40 CET] <tina> I see, guess there's nothing i can do if that's on the youtube side
[03:22:43 CET] <furq> you can't set the keyframe interval in ffmpeg anyway because you're not reencoding the video
[03:23:03 CET] <furq> but even if you could, it probably wouldn't help
[03:24:25 CET] <thebombzen> tina: that's somewhat typical
[03:24:41 CET] <thebombzen> 15 seconds is actually not bad.
[03:24:49 CET] <tina> hmm, what do facetime/google hangouts/skype use for realtime streaming?
[03:25:10 CET] <thebombzen> I don't know
[03:25:18 CET] <thebombzen> but also it's important to note that youtube transcodes its Stream Now input in realtime
[03:25:25 CET] <thebombzen> and trascoding can add buffer delays
[03:25:32 CET] <thebombzen> Twitch does not, so if you're interested in super low latency that might be a better option
[03:25:42 CET] <tina> yea, i am going to investigate twitch next
[03:25:44 CET] <tina> :)
[03:25:49 CET] <furq> that's about what i'd expect with 5-second gops
[03:25:49 CET] <furq> idk what they use but it's definitely not hls
[03:25:49 CET] <furq> i think hangouts uses webrtc
[03:25:49 CET] <furq> yeah
[03:25:49 CET] <furq> and even if it doesn't, it means you can't just use -g 1 to force short gops
[03:25:54 CET] <thebombzen> What exactly are you streaming? Because if you're streaming video games then twitch is better
[03:26:04 CET] <thebombzen> just cause the community is heavily catered toward it
[03:26:38 CET] <thebombzen> technical-wise, Twitch is mostly better than YouTube, but has the downside of not accepting as high of a bitrate as youtube does. which shouldn't be too much of an issue but keep that in mind
[03:26:55 CET] <tina> i'm building a livestreaming necklace, to stream myself out and about. i want low latency b/c i want to be able to chat with/see my audience's reactions in near real time
[03:27:13 CET] <tina> latency is more important to me than quality
[03:27:14 CET] <thebombzen> Ah okay live vlogging
[03:27:45 CET] <thebombzen> Yea in that case I'd go with Twitch over YouTube. Twitch has a lower max bitrate but won't transcode it for you
[03:27:55 CET] <thebombzen> which can trade off quality for latency reduction
[03:28:10 CET] <thebombzen> another important note is that YouTube archives its videos forever and Twitch doesn't
[03:28:13 CET] <thebombzen> if you don't care then whatever
[03:28:34 CET] <tina> yea, that's not too important to me. stored is preferable
[03:28:38 CET] <tina> i'll try out twitch to see what latency i can get
[03:45:54 CET] <tina> furq: do you think i'm screwed as far as having to send streams to IP addresses with this armel build?
[03:47:03 CET] <TD-Linux> tina, webrtc is used for realtime streaming
[03:48:22 CET] <TD-Linux> which is a collection of protocols, but within it RTP is used instead of HLS
[03:48:34 CET] <TD-Linux> you can get down to one frame of latency with it.
[03:50:32 CET] <tina> TD-Linux: i was originally thinking of webrtc and tried uv4l's webrtc streaming (which unfortunately is not compatible with my Zero)
[03:50:49 CET] <tina> but i'd like to stream on a popular streaming platform
[03:51:08 CET] <tina> rather than a webrtc portal or random one-off site i build
[03:52:11 CET] <TD-Linux> ok. yeah while you should be able to get a webrtc stream off the zero, there are no free webrtc streaming platforms that I know of
[03:53:24 CET] <furq> tina: the armhf build is newer and unaffected, so maybe you could just bug relaxed about it
[03:53:39 CET] <furq> (he's the one who makes those builds)
[03:54:13 CET] <tina> furq: i'll try that
[03:54:31 CET] <furq> you could also try cross-compiling it yourself
[03:54:53 CET] <tina> TD: yeah. i am hoping to get down to 5s of latency somehow, on twitch if possible
[03:54:55 CET] <furq> ffmpeg supports the rpi's hardware h264 encoder now so you can probably get rid of raspivid that way
[03:55:09 CET] <tina> OK, i'll look into that
[03:55:41 CET] <furq> it's pretty simple if you have a box running debian testing
[03:55:47 CET] <furq> or probably a recent ubuntu will do as well
[03:55:49 CET] <tina> i'm sort of unfamiliar with IRC, what's the best way to ping relaxed on or off of IRC?
[03:56:10 CET] <furq> relaxed: hi
[03:57:04 CET] <furq> i would suggest sending him a PM but a lot of people don't like that
[03:57:44 CET] <tdr> tina, if they have an irc account, could also leave a note with memoserv
[03:57:56 CET] <furq> i always forget that's a thing
[03:58:32 CET] <furq> but yeah i'd look into cross-compiling it yourself, it's not that hard
[03:58:48 CET] <furq> you don't need any external libs which makes it way easier
[03:59:19 CET] <tina> OK, i'll investigate :)
[03:59:40 CET] <furq> and like i said you can get rid of raspivid if you do that
[04:00:35 CET] <tina> i see, does getting rid of the raspivid have any effect on the stream?
[04:00:52 CET] <furq> it might get rid of a tiny bit of latency
[04:01:12 CET] <furq> i'd just generally prefer to use ffmpeg for that
[04:01:44 CET] <furq> i should really build a new copy since mine is broken
[04:02:15 CET] <tina> yea, more simple is always nice
[04:09:57 CET] <phillipk> anything I can do to speed up this command: http://pastebin.com/DKmmi37r
[04:10:07 CET] <phillipk> It takes minutes to generate one file
[04:16:34 CET] <thebombzen> speaking of latency reduction
[04:16:46 CET] <thebombzen> is RTP audio-only?
[04:16:51 CET] <thebombzen> for point-to-point
[04:17:01 CET] <thebombzen> I tried it and it didn't like it with video
[04:17:30 CET] <furq> tina: http://vpaste.net/MYzfn
[04:17:34 CET] <furq> that's pretty much all you need iirc
[04:17:35 CET] <c_14> thebombzen: should work with video
[04:17:49 CET] <furq> missing a cd in there but you get the idea
[04:17:56 CET] <thebombzen> is there any way for ffmpeg to list the codecs? cause it didn't like it for me
[04:18:16 CET] <tom____> hello
[04:18:45 CET] <tina> furq: trying it out
[04:19:11 CET] <furq> host is a debian testing vm here
[04:19:24 CET] <furq> crossbuild-essential-armhf is new in testing, so stable won't work
[04:19:37 CET] <furq> you can still do it but getting the cross compiler installed is more annoying
[04:19:43 CET] <tom____> When a video's first key frame 's dts = 1,  can not decode the key frame?
[04:19:47 CET] <c_14> thebombzen: https://git.videolan.org/?p=ffmpeg.git;a=blob;f=libavformat/rtpenc.c;h=efa63a55753cb404167ad0212f960979705a1943;hb=HEAD#l49
[04:19:58 CET] <tom____> When a video's first key frame 's dts = -1,  can not decode the key frame?
[04:20:24 CET] <thebombzen> c_14: thanks
[04:20:29 CET] <thebombzen> is there a way to do that from the binary though?
[04:20:29 CET] <furq> also replace 4 in make -j4 with however many cores you have
[04:20:39 CET] <thebombzen> like ffmpeg -codecs=<format> or something
[04:20:44 CET] <c_14> don't think so
[04:20:57 CET] <furq> not that i know of
[04:20:58 CET] <thebombzen> hm, now that would be nice
[04:21:11 CET] <furq> -h muxer=mp4 will show you the default codecs, but not a full list of supported codecs
[04:21:17 CET] <thebombzen> yea
[04:21:25 CET] <furq> and yeah it would be nice
[04:21:58 CET] <thebombzen> it took me forever to realize I could put vorbis in mp4
[04:22:07 CET] <furq> looks like a lot of manual rigging up would be needed though
[04:22:18 CET] <thebombzen> which is nice cause libvorbis is the best encoder out there other than libopus
[04:22:23 CET] <thebombzen> and mp4 can't take opus... yet
[04:22:34 CET] <tom____> why some video's first frame can not be decode?
[04:22:44 CET] <furq> fdk is probably on par with vorbis
[04:23:00 CET] <thebombzen> yea but fdk has the awkward downside of being nonfree and AAC
[04:23:13 CET] <thebombzen> libvorbis being "on par" makes it automatically better
[04:23:14 CET] <furq> yeah but it has the upside of being aac in mp4
[04:23:20 CET] <thebombzen> true
[04:23:35 CET] <tina> furq: sorry, bit of a noob, what is 'host:include/' here?
[04:23:35 CET] <thebombzen> speaking of which, when did libvorbis get listed as >= libfdk_aac on the trac wiki
[04:23:51 CET] <furq> tina: that copies the videocore includes to ~/include on the host machine
[04:24:07 CET] <furq> replace host with whatever that machine's hostname/ip is
[04:24:39 CET] <furq> you could do this on the rpi itself but it'll take ten million years
[04:24:43 CET] <tina> do i need to make a dir 'include'?
[04:24:49 CET] <furq> maybe
[04:24:53 CET] <furq> if it doesn't work then yes
[04:25:52 CET] <thebombzen> anyway, if my goal is point-to-point streaming where I have access to both machines
[04:25:58 CET] <thebombzen> and I need ultra-low-latency
[04:26:02 CET] <tina> you say crossbuild-essential-armhf is new in testing, i'm getting that it can't be located
[04:26:05 CET] <thebombzen> is there anything better than just udp://
[04:26:10 CET] <thebombzen> udp: //
[04:26:19 CET] <thebombzen> wow I have to disalble emoticons in KVIrc :P
[04:26:28 CET] <furq> what debian are you on
[04:26:29 CET] <furq> or ubuntu
[04:27:22 CET] <tina> jessie 8.0
[04:27:32 CET] <furq> yeah jessie is stable
[04:28:02 CET] <furq> you can still cross-compile from stable but i've never done it
[04:28:55 CET] <tina> so i can try it without running that command?
[04:29:12 CET] <furq> not unless you already have a cross toolchain installed
[04:30:37 CET] <furq> http://vpaste.net/DZr7h
[04:30:42 CET] <furq> if you want to run it on the rpi itself you can just do that
[04:30:46 CET] <furq> it's simpler but it'll take forever
[04:31:16 CET] <furq> it's bad enough on my overclocked pi 2
[04:32:26 CET] <tina> haha, oh man
[04:32:40 CET] <tina> my zero is already really hot from the streaming
[04:33:52 CET] <c_14> thebombzen: if udp works, probably not (no packet loss, etc)
[04:36:19 CET] <tom____> why ffmpeg can not demux the firest key frame?
[04:36:47 CET] <tom____> why ffmpeg can not demux the first key frame? the first key frame's dts = -1.
[04:38:33 CET] <thebombzen> tom____: asking the same question 4 times when there's several people in the chat isn't any better than once
[04:38:59 CET] <thebombzen> most likely we're not answering your question because we either don't know or it's phrased poorly or something
[04:39:06 CET] <thebombzen> asking three more times doesn't change either of those
[04:40:01 CET] <furq> i was waiting for the seventh time
[04:44:33 CET] <tom____> thebombzen: oh
[05:06:01 CET] <tom____> why the ffmpeg command can decode the first gop,but ffmpeg code can not decode the first gop?
[05:14:15 CET] <Seylerius> Okay. Can ffmpeg stick black bars around the edges of a video to bring it from 720x480 to 854x480?
[05:18:08 CET] <furq> https://ffmpeg.org/ffmpeg-filters.html#pad-1
[05:18:24 CET] <Seylerius> furq: Dude, you rock.
[05:48:23 CET] <phillipk> I figured out that my render is WAY slower when I put "-loop 1" before my "-i stillimage.jpg".  But, if I don't put it in that order, my .ts file is rendered without a video track... see:
[05:48:28 CET] <phillipk> MP4 (fast): http://pastebin.com/cikW3MRm
[05:48:40 CET] <phillipk> TS (slow) http://pastebin.com/0fjm8sBb
[05:55:12 CET] <furq> those aren't using the same video codec
[05:55:16 CET] <furq> why would you think the container was to blame
[05:55:30 CET] <furq> or audio codec, for that matter
[05:57:40 CET] <phillipk> when I was just doing mp4, I had "-loop 1" after the "-i still.jpg".  That didn't work when creating .ts files--so after moving it, the difference I focussed in on was the .ts.  I still want to see if there's a way to turn a still image into a .ts file of specified duration (with silence if necessary)
[05:58:24 CET] <phillipk> (I should say, I want to see if there's a way that doesn't take 5 minutes per file... where the mp4s were popping out in less than 1 second)
[05:58:52 CET] <furq> -loop doesn't do anything as an output option
[05:59:45 CET] <furq> it was probably doing whatever hack ffmpeg uses to put cover art into m4a
[06:00:21 CET] <furq> i doubt that'll work for any other container except maybe ogg
[06:00:55 CET] <furq> it probably also won't work in a lot of players
[06:03:02 CET] <furq> it definitely doesn't work in firefox or on youtube
[06:03:04 CET] <phillipk> okay, so... first, I think I NEED -loop because otherwise, the output is 0-seconds.  The big question to me is whether the slow encode is simply a fact of life or if I can optimize somehow
[06:03:15 CET] <furq> it's slow because it's actually encoding video
[06:03:38 CET] <furq> either way you almost certainly don't want to use mpeg2video
[06:03:39 CET] <tina> oh man .. this ffmpeg download is taking its sweet time :)
[06:03:45 CET] <furq> mpegts can contain h264 and aac
[06:04:03 CET] <furq> and x264 should be faster than ffmpeg's mpeg2video encoder on a modern cpu
[06:04:16 CET] <furq> and obviously much higher quality and smaller
[06:04:25 CET] <phillipk> ok, I'll try it.
[06:05:23 CET] <furq> http://vpaste.net/GoSt6
[06:05:27 CET] <furq> that's what i use for the same thing fwiw
[06:05:40 CET] <furq> you probably won't get any faster than that
[06:07:06 CET] <furq> if your source is mp2 then you can use -c:a copy instead
[06:07:11 CET] <furq> iirc the duration is more accurate if you do that
[06:19:08 CET] <Seylerius> Okay, this is weird: http://pastie.org/10987721
[06:19:39 CET] <Seylerius> Two 852x480 videos, one webm, one mp4
[06:19:45 CET] <c_14> you forgot the -filter_complex
[06:19:58 CET] <Seylerius> Lol, whoops.
[06:21:45 CET] <phillipk> thanks furq.  Your script is definitely making smaller files... but I'm still at several minutes for a 30 second video.  I think that's a FOL (fact of life) however
[06:27:43 CET] <furq> what cpu is that
[06:27:47 CET] <phillipk> ...also, what is the info that I see regarding "FFmpeg Digital television service", when I look at my rendered .ts file https://ibin.co/37gpSD7no8wb.png
[06:28:38 CET] <phillipk> the CPU is nothing special--intel core2 quad Q6600  2.4GHz
[06:29:08 CET] <phillipk> It's not on production yet--but for testing I have hundreds of segments all about 30 seconds long.
[06:29:23 CET] <furq> that seems way too slow
[06:29:41 CET] <phillipk>  of a CPU or just 5-minutes per video?
[06:29:51 CET] <furq> that command takes about three seconds for me with a 4:45 audio track
[06:29:54 CET] <furq> on a core 2 duo
[06:33:44 CET] <phillipk> my silent audio is not the same as my -t duration
[06:34:05 CET] <phillipk> (the -t duration is always less than the audio's duration)
[06:34:44 CET] <furq> are you seeking
[06:34:46 CET] <furq> that could explain it
[06:34:58 CET] <furq> -t should make no difference but -ss will definitely slow it down a lot
[06:36:14 CET] <TD-Linux> thebombzen, there is a spec for opus in mp4 supported in firefox... seems the patch for ffmpeg is currently stalled
[06:37:04 CET] <TD-Linux> thebombzen, also some video formats need data in the SDP to work over RTP... it's a bit complicated
[06:38:03 CET] <thebombzen> TD-Linux: well if the Lavf muxer doesn't support it then it essentially doesn't support it
[06:38:13 CET] <thebombzen> caues I don't think I ever mux an mp4 without using libavformat
[06:38:19 CET] <thebombzen> at least to me lol
[07:34:09 CET] <alesan> hello
[07:34:40 CET] <alesan> I have several .mkv files with mjpegs in it (no audio). I would like to concatenate them all (about 30 files) and have a single h.264 or something in output
[07:34:42 CET] <alesan> no audio
[07:34:54 CET] <alesan> I'm reading about the concatenation filter but it seems very complex
[07:36:21 CET] <tyng> how do i demux sacd iso files?
[08:15:10 CET] <tom____> AV_NOPTS_VALUE == -1???
[09:34:46 CET] <pi___> tina: A limitation of statically linking glibc is the loss of DNS resolution. Installing nscd through your package manager will fix this or you can use "ffmpeg -i http://<ip address here>/" instead of "ffmpeg -i http://example.com/"
[09:43:52 CET] <hargut> Hello.
[09:45:02 CET] <hargut> Is there a way to limit ffmpeg to a number of specified cpu-cores? Currently transcoding uses all available cpu's, but I'd rather have ffmpeg run on a single, or eventually two threads.
[09:47:01 CET] <hargut> Oh, -threads 1 works properly when placed as global option. Before I had it on the encoder, but that didn't work out with h264_nvenc.
[09:56:50 CET] <tina> furq: i finished downloading and compiling ffmpeg according to the code you sent me
[09:57:05 CET] <tina> now i'm trying to broadcast without sending to the IP address, it isn't working
[09:57:23 CET] <tina> http://vpaste.net/I3x0i
[09:58:06 CET] <tina> this is the code i ran beforehand: http://vpaste.net/DZr7h
[09:58:29 CET] <tina> my command: raspivid -o - -t 0 -vf -hf -fps 20 -b 6000000 | ./ffmpeg -f lavfi -re -i anullsrc -f h264 -thread_queue_size 512 -framerate 20  -probesize 100  -i - -vcodec copy -acodec aac   -f flv rtmp://live.twitch.tv/app/live_109737872_ER4YNwvMbSrwalvK8YU2WUMmohP6rv
[10:00:22 CET] <tina> this seems to have seriously messed up my other ffmpeg commands too
[10:00:43 CET] <tina> now if i go into my original ffmpeg folder and run what I ran before, I get the same hanging and errors (raspivid -o - -t 0 -vf -hf -fps 20 -b 6000000 | ./ffmpeg -f lavfi -re -i anullsrc -f h264 -thread_queue_size 512 -framerate 20  -probesize 100  -i - -vcodec copy -acodec aac -g 20  -f flv rtmp://
[10:07:56 CET] <tina> i'm not sure how to undo whatever was done when I tried to install that new version of ffmpeg :/
[10:13:24 CET] <tina> in fact, every command i try to run on my raspberry pi now hangs. including 'raspivid'. did i completely bork my pi?
[11:05:11 CET] <alesan> silly question. I am encoding some material that comes from good quality JPEG pictures. I'm using libx264. the whole footage is roughly 1h 30m long. With my settings, ffmpeg created a 11GB file
[11:05:57 CET] <alesan> I have seen stuff that is two hours long encoded in less than 2GB with a pretty decent quality - what kind of options should I use?
[11:15:28 CET] <Mavrik> can you pastebin what kind of options are you using right now (and if possible, ffmpeg output) ?
[11:28:46 CET] <alesan> sure
[11:32:26 CET] <alesan^> pastebin is extremely slow
[11:33:54 CET] <Mavrik> well, any kind of other text paste site will work :P
[11:33:57 CET] <alesan^> http://pastebin.ca/3753102 Mavrik
[11:34:01 CET] <alesan^> ye
[11:34:17 CET] <alesan^> as you can see I basically use no options :)
[11:34:30 CET] <alesan^> do you need more output from ffmpeg?
[11:34:38 CET] <Mavrik> nah, it's fine :)
[11:35:06 CET] <Mavrik> so if I remember correctly, it'll fall back to CRF quality setting
[11:35:19 CET] <alesan^> the input is roughyl 120GB of mjpeg files created by ffmpeg itself in another script
[11:35:26 CET] <Mavrik> and since you use ultrafast preset, it won't use a lot of CPU to try to make compression good
[11:35:32 CET] <alesan^> CRF is not good?
[11:35:36 CET] <Mavrik> CRF is the best option :)
[11:35:42 CET] <alesan> OK
[11:35:42 CET] <Mavrik> since it defines output video quality
[11:35:44 CET] <Mavrik> BUT
[11:35:56 CET] <Mavrik> you also need to give it enough CPU time to compress :P
[11:36:01 CET] <Mavrik> so first I'd suggest you use a slower preset
[11:36:06 CET] <Mavrik> (try with medium)
[11:36:15 CET] <alesan> oh I see
[11:36:21 CET] <Mavrik> you can also pass -crf directly to control quality
[11:36:25 CET] <Mavrik> -crf 24 is default I think
[11:36:32 CET] <Mavrik> bigger number means lower quality / smaller file
[11:36:42 CET] <alesan> time is not really a concern
[11:36:44 CET] <Mavrik> but I'd start with setting preset to medium and leaving everything else as it is
[11:37:01 CET] <Mavrik> then you can use -preset slow to get even more compression for the same quality
[11:37:22 CET] <Mavrik> also
[11:37:25 CET] <Mavrik> use -profile main
[11:37:25 CET] <alesan^> I'll just do slow and leave the PC running
[11:37:41 CET] <Mavrik> since right now it's encoding into baseline profile which will look like arse :)
[11:37:50 CET] <Mavrik> or even -profile high
[11:37:59 CET] <alesan^> why should I specify the profile?
[11:38:09 CET] <Mavrik> [libx264 @ 0xf1d9e0] profile Constrained Baseline, level 4.0
[11:38:14 CET] <Mavrik> right now it chooses baseline
[11:38:22 CET] <Mavrik> but that might be because of the ultrafast preset
[11:38:30 CET] <alesan^> really? the default is baseline?????
[11:38:32 CET] <Mavrik> try running with slow and see if it chooses a better profile chen :)
[11:38:35 CET] <alesan^> where do I look that
[11:39:00 CET] <alesan^> [libx264 @ 0x25fe9e0] profile High, level 5.0
[11:39:04 CET] <Mavrik> good
[11:39:05 CET] <Mavrik> :)
[11:39:41 CET] <alesan^> it is averaging 8000kb/s
[11:39:47 CET] <alesan^> I believe it was much higher before
[11:39:57 CET] <Mavrik> mhm
[11:40:03 CET] <Mavrik> that's about 1MB/s of video
[11:40:23 CET] <Mavrik> ~6GB at the end
[11:40:49 CET] <alesan^> still quite a bit, compared to movies downloaded from the internet as a reference
[11:41:00 CET] <alesan^> this is 1920x1080 stuff, not 4k or similar
[11:41:19 CET] <Mavrik> try adding -crf 24
[11:41:26 CET] <Mavrik> and increasing that number to get something decent
[11:41:41 CET] <alesan^> OK
[11:41:48 CET] <Mavrik> I wouldn't recommend going under about 4GB for a 90 minute video
[11:41:56 CET] <Mavrik> with H.264... the quality starts to suffer there
[11:42:07 CET] <Mavrik> for 90 minute 1080p video that is
[11:42:28 CET] <alesan^> but first: in the "live" output frame= 6988 fps= 22 q=28.0 size=  260905kB time=00:04:36.80 bitrate=7721.6kbits/s
[11:42:28 CET] <alesan^> q=28.0 means?
[11:44:20 CET] <alesan^> for example I have downloaded this movie as a test, from the yifi website
[11:44:31 CET] <alesan^> 1920x1080, 1.41GB, 1h 30m
[11:44:39 CET] <alesan^> the quality is actually pretty good
[11:44:54 CET] <alesan^> the original blue ray would probably be even better but
[11:48:07 CET] <Mavrik> q is quantizers, not really all that relevant
[11:48:30 CET] <alesan^> is it not that it is encoding that part at quality "28"
[11:48:31 CET] <alesan^> ???
[11:48:40 CET] <Mavrik> uhh, not quite
[11:49:07 CET] <Mavrik> What that number means depends on encoder and it's not connected to quality always :)
[11:49:16 CET] <alesan^> OK
[11:49:51 CET] <alesan^> so did you not say the CRF default is 24, but then suggest to add -crf 24
[11:49:59 CET] <alesan^> I'm confused about that part
[11:50:08 CET] <fritsch> it does not harm
[11:50:10 CET] <fritsch> :-)
[11:50:31 CET] <alesan^> well if it just recreates the exact same file size...
[11:50:33 CET] <Mavrik> yes, it's a good starting value :)
[11:50:46 CET] <Mavrik> and I don't really remember what the default is for your ffmpeg version
[11:50:49 CET] <alesan^> but I thought it was the default value
[11:50:53 CET] <alesan^> OK
[11:51:01 CET] <Mavrik> (it changed over versions)
[11:51:07 CET] <alesan^> I can compile the newest libx264/ffmpeg if needed
[11:51:12 CET] <alesan^> OKOK
[11:51:41 CET] <alesan^> another question I have a 4 core xeon (8cores with hyperthreading)
[11:51:58 CET] <alesan^> but it only gets one core to 100%, the other cores are quite lazy
[11:52:15 CET] <alesan^> wait
[11:52:15 CET] <alesan^> no,
[11:52:24 CET] <Mavrik> it should saturate all 8 of them :)
[11:52:44 CET] <alesan^> with -preset ultrafast it was like that
[11:52:51 CET] <alesan^> with slow it saturates them all
[11:54:55 CET] <alesan^> OK I go to bed bye! thanks.
[11:57:54 CET] <Kadigan> I find that ffmpeg doesn't really saturate my cores, but this is a 16-core Mac Pro
[12:00:00 CET] <hargut> Kadigan: try -threads 16
[12:01:46 CET] <Kadigan> No, it runs on all I think, but just not to 100%
[12:01:57 CET] <BtbN> you can't just throw more cores at it and it will scale infinitely.
[12:04:07 CET] <hargut> Kadigan: If it run on all, so all is fine?
[12:04:22 CET] <Kadigan> Yeah, I was just wondering why it runs on all at 30% or so :D
[12:04:48 CET] <BtbN> Because task schedulers exist
[12:05:06 CET] <Kadigan> Not really a problem, obviously, because I assume dividing it into 16 tasks that take 30% vs say 7 that take 100% core
[12:05:11 CET] <Kadigan> is much more efficient.
[12:05:29 CET] <Kadigan> (esp. when it would otherwise need to combine the tasks into some bastardized complex operations)
[12:06:21 CET] <BtbN> that's not how it works at all.
[12:06:39 CET] <hargut> Kadigan: Its really not the way it goes.
[12:06:52 CET] <BtbN> Doing everything in one thread would be way more simple. But obviously slower.
[12:07:45 CET] <Kadigan> True, but it's easier to split it into 4 tasks that run at 60% per core, rather than combining them in fractions so that cores are 100% 100% 40% 0%
[12:07:49 CET] <Kadigan> but bah, what do I know :D
[12:08:04 CET] <Kadigan> I accept I know nothing of this.
[12:08:11 CET] <hargut> It also depends on the point-of-view.
[12:08:46 CET] <BtbN> Even with just one task using one core, the OS will shift it around accross cores to evenly distribute the load and heat
[12:08:56 CET] <hargut> Kadigan: Somewhere the os-scheduler comes into place as well, and that one can handle things differently from os to os and or depends what scheduler is active.
[12:11:17 CET] <Kadigan> Ah. I once stumbled upon some out-of-context explanation as to how it's critical to correctly slice the work to be done, because things may go from bad to worse if the system scheduler in use takes a very different perspective on the queue...
[12:13:46 CET] <hargut> Kadigan: What's your point? That 7 cores at 100% will work more efficiently?
[12:14:59 CET] <Kadigan> No, I was just musing. Please don't read too much into it.
[12:15:24 CET] <Kadigan> (or, alternatively, please re-read what I wrote, because at no point did I say anything to that effect, or at least I don't believe I have)
[12:15:51 CET] <hargut> Ah...
[12:15:54 CET] <hargut> whatever.
[14:14:42 CET] <mbarisa> does anyone have an idea why I get CANNOT LINK EXECUTABLE: library "libssl.so.1.0.0" not found
[14:16:03 CET] <mbarisa> and I compiled that binary with openssl
[14:16:21 CET] <hargut> mbarisa: which distribution?
[14:16:26 CET] <mbarisa> android
[14:16:42 CET] <hargut> what does "find / -name libssl.so.1.0.0" say?
[14:17:33 CET] <mbarisa> http://pastebin.com/pEWccHiB
[14:18:05 CET] <mbarisa> I can find it in filesystem
[14:18:11 CET] <mbarisa> but I guess it is not linked in binary
[14:18:19 CET] <mbarisa> I want to have everything in my binary
[14:18:26 CET] <mbarisa> am I missing some flag in configure?
[14:19:31 CET] <mbarisa> these are my SSL extra flags
[14:19:32 CET] <mbarisa> SSL_EXTRA_LDFLAGS="-L$SSL_LD/openssl-android/$TARGET/lib"
[14:19:33 CET] <mbarisa> SSL_EXTRA_CFLAGS="-I$SSL_LD/openssl-android/$TARGET/include"
[14:20:13 CET] <mbarisa> and in /lib you can find libssl.so.1.0.0
[14:20:29 CET] <mbarisa> compilation goes well, but when using binary it blows with not finding executable
[14:20:36 CET] <mbarisa> but I think I can wrap it all in binary
[14:25:59 CET] <hargut> mbarisa: try to set LD_LIBRARY_PATH
[14:26:44 CET] <hargut> mbarisa: export LD_LIBRARY_PATH=$LD_LIBRARY_PATH:/your/path/your/libssl.so.1.0.0
[14:26:49 CET] <hargut> without the libssl part
[14:27:54 CET] <hargut> Don't know exactly if Android makes use of /etc/ld.so.conf or /etc/ld.so.conf.d could be a place for permanently setting that option.
[14:28:59 CET] <mbarisa> I do that outside the script? and it is not related
[14:32:18 CET] <mbarisa> hargut: trying it now
[14:33:40 CET] <hargut> mbarisa: http://www.tldp.org/HOWTO/Program-Library-HOWTO/shared-libraries.html
[14:37:05 CET] <mbarisa> I added that but same byte size of binary, so it did not help
[14:39:41 CET] <hargut> mbarisa: LD_LIBRARY_PATH is used at runtime, not at compiletime
[14:40:02 CET] <hargut> if compilation is fine, there is no need to do it again.
[14:40:42 CET] <hargut> LD_LIBRARY_PATH is the list of pathes where programs look for dynamically linked libraries during startup.
[14:41:15 CET] <mbarisa> ok, but I want to include it in binary, not load it from aside
[14:41:30 CET] <hargut> mbarisa: try to do static linking.
[14:41:37 CET] <mbarisa> because I want to use that binary in my app without having other dependencies
[14:41:45 CET] <mbarisa> I use flat --enable-static
[14:41:51 CET] <mbarisa> --disable-shared
[14:42:20 CET] <hargut> sounds good, but I've not tried to do a static binary with ffmpeg.
[14:43:08 CET] <mbarisa> is there some static linking
[14:43:31 CET] <mbarisa> I don't know, where I can say from where it should link
[14:44:09 CET] <hargut> mbarisa: look for LDFLAGS e.g.
[14:44:45 CET] <hargut> mbarisa: eventually like that: http://superuser.com/questions/270511/how-to-specify-search-folder-for-external-library-while-building-ffmpeg
[14:44:49 CET] <mbarisa> I have it included there as well
[15:07:15 CET] <erlapso> hello all!
[15:09:08 CET] <ripper17> hi all, I've created a (very) small video with ffmpeg from PNGs where there's very very little change between each frame. The resulting mp4 video is 8kB in size. If I re-encode to ogv (for html5 video) the resulting file is almos 80kB in size. Since there's a ton of those videos, the filesize (even though it is small) does matter. any quick settings that come to your mind?
[15:09:22 CET] <ripper17> input: h264 (High 4:4:4 Predictive) (avc1 / 0x31637661), yuv444p, 256x256 [SAR 1:1 DAR 1:1], 10 kb/s, 25 fps, 25 tbr, 12800 tbn, 50 tbc (default)
[15:09:34 CET] <ripper17> output; Video: theora (libtheora), yuv444p, 256x256 [SAR 1:1 DAR 1:1], q=2-31, 200 kb/s, 25 fps, 25 tbn, 25 tbc (default)
[15:09:54 CET] <ripper17> command used: ffmpeg -i nnn.mp4 -an nnn.ogv
[15:14:44 CET] <ripper17> if I run with -b:v 10k the quality is extremly low
[15:35:20 CET] <mbarisa> I hardcoded path to it and still it cannot find libssl.so.1.0.0 in binary, does anyone else have an idea maybe
[15:37:47 CET] <mosb3rg> 10k = 10kbps
[15:37:55 CET] <mosb3rg> ripper17
[15:38:01 CET] <mosb3rg> 10000k
[15:38:09 CET] <mosb3rg> would be if you wanted 10,000 kbps
[15:51:16 CET] <ripper17> mosb3rg, yes, but even with 200kb/s the OGG file already is 10 times as big as the mp4 (which has 10 kb/s)
[15:52:45 CET] <ripper17> I know that bitrate and quality are oposing each other, I'm just wandering why OGG is so much larger in filesize than MP4
[15:53:11 CET] <ripper17> wondering*
[17:07:09 CET] <chuprin> hi guys. is there any way to run volumedetect filter periodically (every minute, for example) and generate report for every period? i need to find silent parts in video
[18:12:48 CET] <Kleiner> Hello, I'm struggling with drawtext filter, especially when i try to use metadata.
[18:13:33 CET] <Kleiner> In the documentation I found that I have to use the correct key, but where to find the correct key?
[18:13:52 CET] <Kleiner> I like to get the information if it's a keyframe or not
[18:14:50 CET] <Kleiner> when I use the following command I get a the text "not defined"...
[18:15:01 CET] <Kleiner> ffplay -vf "scale=iw/2:-1,drawtext=fontfile='C\:\\Windows\\Fonts\\arial.ttf':fontsize=30:fontcolor=red:box=1:boxcolor=white:boxborderw=5:x=lh:y=x:text=\'%{metadata\:key_frame\:not defined}\'" -v trace a.ts
[18:15:20 CET] <Kleiner> any advices where I could find the key names?
[19:18:41 CET] <Arthur_D> hi, I need to copy a video file with pgssub subtitles, but since there is no pgssub encoder I am unsure what format I should convert it to (needs to work on a video DVD). Thanks for reading
[19:29:06 CET] <Phi_> yo
[19:29:32 CET] <Phi_> I'm attempting to get my favourite MinGW compiling with the current master branch, and make install is failing
[19:31:40 CET] <Phi_> https://bpaste.net/show/fc5a65b0e6f8
[19:32:09 CET] <Phi_> I'm updating to most recent master, but judging from edits, that won't change anything
[19:32:20 CET] <Phi_> Should I scurry into ffmpeg-dev?
[19:36:33 CET] <Phi_> ah, the ominous silence of IRC, I remember it now
[19:37:59 CET] <jkqxz> Does it happen if you configure and build in a new empty directory?
[20:07:01 CET] <Phi_> I imagine it would - I did a git clean --hard on it before I configured
[20:12:21 CET] <nolaan_> hello, I'm trying to setup a basic ffserver from the official tutorial and stream my webcam to it
[20:13:04 CET] <nolaan_> but I this error Unable to find a suitable output format for ''
[20:13:44 CET] <nolaan_> sorry
[20:13:47 CET] <nolaan_> av_interleaved_write_frame(): Connection reset by peer
[20:13:52 CET] <nolaan_> this is the actual error
[20:24:51 CET] <Phi_> *runs configure and waits patiently*
[20:28:23 CET] <c_14> nolaan_: firewall or routing issue (probably). otherwise check the logs
[20:32:57 CET] <nolaan_> c_14: where are the logs, when I provide loglevel verbose, the output is not much verbose
[20:34:01 CET] <c_14> try passing -d to ffserver
[20:36:11 CET] <acresearch> people i need help, i recorded a screen cast and it was saved an .ogv file, how can i convert it to a .avi?
[20:36:26 CET] <nolaan_> ok
[20:36:32 CET] <nolaan_> Error writing trailer of Connection reset by peer
[20:36:45 CET] <nolaan_> still the same error
[20:37:32 CET] <nolaan_> and yes forgot to mention that [POST] "/feed1.ffm HTTP/1.1" 200 4096
[20:38:26 CET] <nolaan_> that's what ffserver is saying, I came across a thread saying that ffserver was waiting for an ffm header otherwise it wont start
[20:38:29 CET] <nolaan_> :/
[20:40:17 CET] <Phi_> configure done, time to make
[20:40:25 CET] <Phi_> *makes patiently*
[20:41:23 CET] <acresearch> people i need help, i recorded a screen cast and it was saved an .ogv file, how can i convert it to a .avi?
[20:49:04 CET] <nolaan_> acresearch: ffmpeg -i file.ogv file.avi
[20:49:25 CET] <Phi_> ffmpeg -i yourvideoname.ogv -c:v avi outputfilename.avi?
[20:49:31 CET] <c_14> nolaan_: hmm, no clue. Don't know much about ffserver and never really got it working
[20:50:05 CET] <nolaan_> me neither long time ago I tried to play (more than 5 years)
[20:50:14 CET] <acresearch> thanks guys :-) it works
[20:50:14 CET] <nolaan_> but now I must make it work
[20:50:58 CET] <nolaan_> actually, just now I could make it work with the distributed ffserver.conf, not the one from internet
[20:51:16 CET] <nolaan_> So I'll try to dig in that direction and hopefully I'll succeed, thanks
[20:52:46 CET] <Phi_> you can do a google for simple uses of ffmpeg acresearch.......oh
[20:52:56 CET] <Phi_> whale den
[21:46:42 CET] <Arthur_D> what file extension do I use to encode to dvdsub? https://ffmpeg.org/ffmpeg-codecs.html#dvdsub-1 says it should be stored in .idx and .sub, so not sure what to do exactly
[21:53:28 CET] <c_14> ffmpeg doesn't have a vobsub muxer
[21:55:45 CET] <phillipk> update to my SLOW compress (turning a still into a silent video of specified duration).... ffmpeg was requesting the image (on remote server) for every frame!  http://pastebin.com/0fjm8sBb
[21:56:07 CET] <c_14> use the loop filter instead
[21:56:21 CET] <c_14> (needs ffmpeg > 3.1 afair)
[22:03:58 CET] <ghost1> i have some issues with a encode of a movie im trying to set some diff settings, but when encode is done its still like the source input file... sec and i will dig up the line and maybe someone can see what im making wrong
[22:04:44 CET] <ghost1> ffmpeg -i $path/to-encode/* -vcodec libx264 -crf 20 -preset slow -level 3.1 -x264opts force-cfr:stitchable -r 25 -vf yadif=0,crop=704:560:0:0,scale=704:404,setdar=16:9 $path/encoded/$lowrls.mkv
[22:09:26 CET] <furq> get rid of the setdar
[22:10:00 CET] <furq> also idk what force-cfr does in crf mode but i doubt it's anything good
[22:10:09 CET] <furq> and that option is a waste of time if you're not putting this on a bluray
[22:11:48 CET] <mbarisa_> does anyone have an idea why I get CANNOT LINK EXECUTABLE: library "libssl.so.1.0.0" not found"  - even tho I have it in ldflags path
[22:17:01 CET] <jkqxz> mbarisa_:  Do you definitely have a library called exactly that, for the right architecture, and with exactly that SONAME?
[22:18:19 CET] <mbarisa_> yes
[22:19:03 CET] <mbarisa_> I even hardcoded path so it doesn't look at wrong place for it, not using relative
[22:19:52 CET] <mbarisa_> and it compiles successfully, but once running library it says it is missing, but in "lib" folder I can see libssl.so.1.0.0
[22:19:56 CET] <mbarisa_> and some other files
[22:21:22 CET] <mbarisa_> jkqxz: this is my last configure http://pastebin.com/PtbrPJnq
[22:25:25 CET] <jkqxz> Does it run with the library in LD_PRELOAD?
[22:26:16 CET] <mbarisa_> it is for android, so I cannot add LD that easily .. I want to have all in one binary
[22:26:44 CET] <c_14> then don't link against shared libraries
[22:26:46 CET] <c_14> link statically
[22:28:16 CET] <mbarisa_> can you give me a hint how to achieve that
[22:28:57 CET] <mbarisa_> c_14: I already use --enable-static
[22:29:25 CET] <c_14> make sure you have static libraries of everything you need (.a instead of .so) then add --pkg-config-flags=--static --extra-ldflags='-static' --extra-cflags='-static'
[22:29:39 CET] <c_14> since you already have ldflags and cflags just add -static to those
[22:29:45 CET] <c_14> and don't forget the pkg-config-flags
[22:30:10 CET] <mbarisa_> c_14: lemme try
[22:37:28 CET] <mbarisa_> now it cannot find libssl on configure :/
[22:37:56 CET] <mbarisa_> but I do have .a files in same lib folder
[22:39:04 CET] <Phi_> .a is Unix equivalent of .lib
[22:39:58 CET] <Phi_> if you just compiled the source, you can run a command to rename *.a to *.lib
[22:40:26 CET] <c_14> Phi_: I think he's on linux
[22:40:26 CET] <mbarisa_> how would that help?
[22:40:37 CET] <mbarisa_> I am on linux yes
[22:40:52 CET] <c_14> mbarisa_: check pkg-config --exists --print-errors --static libssl
[22:41:56 CET] <mbarisa_> nothing printed
[22:43:45 CET] <mbarisa_> so I guess it is good, because if i write something random I get error that it doesn't exist
[22:45:03 CET] <c_14> check config.log
[22:45:08 CET] <c_14> should be in the last 50 or so lines
[22:48:01 CET] <Phi_> T_T RIP my advice
[22:48:16 CET] <Phi_> also RIP £500 on a new UPS
[22:53:27 CET] <mbarisa_> c_14: I cannot find config.log in neither /usr/share/pkgconfig or /usr/lib/pkgconfig
[22:57:20 CET] <c_14> mbarisa_: it's in the ffmpeg source dir
[22:57:27 CET] <c_14> or build dir in case of out-of-tree build
[23:18:26 CET] <mbarisa_> c_14: http://pastebin.com/qHL88QfA
[23:19:47 CET] <c_14> mbarisa_: add -ldl to LDFLAGs
[23:21:55 CET] <mbarisa_> http://pastebin.com/8mpZvAAS
[23:24:36 CET] <c_14> do you have a libdl.a ?
[23:26:36 CET] <mbarisa_> not in openssl/lib/
[23:27:16 CET] <c_14> should be part of your compiler afaik
[23:27:17 CET] <mbarisa_> I have it in /usr/lib/x86_64-linux-gnu/libdl.a
[23:27:39 CET] <c_14> or your libc
[23:28:09 CET] <c_14> mbarisa_: should be in your cross-prefix
[23:29:38 CET] <mbarisa_> ok
[23:29:43 CET] <mbarisa_> let me check
[23:32:36 CET] <mbarisa_> there is one but it is called a little different
[23:32:52 CET] <mbarisa_> arm-linux-androideabi-ld
[23:33:04 CET] <c_14> that's just the linker
[23:33:08 CET] <mbarisa_> /home/mbarisa/android-ndk-r13b/toolchains/arm-linux-androideabi-4.9/prebuilt/linux-x86_64/bin/arm-linux-androideabi-ld
[23:33:21 CET] <c_14> it shouldn't be in bin but lib or lib*
[23:34:50 CET] <mbarisa_> there is only libgcc.a  libgcov.a
[23:34:54 CET] <mbarisa_> that are .a files
[23:35:18 CET] <c_14> Is there at least a libdl.so?
[23:39:49 CET] <mbarisa_> there are both but in different folders
[23:40:20 CET] <mbarisa_> /home/mbarisa/android-ndk-r13b/platforms/android-16/arch-arm/usr/lib/libdl.so
[23:41:03 CET] <c_14> try adding that dir to your ldpath
[23:44:31 CET] <mbarisa_> you mean in extra-ldflags
[23:44:47 CET] <mbarisa_> but there is pointing to openssl
[23:44:51 CET] <c_14> just add another -L
[23:45:46 CET] <Phi_> a new git clone seems to have fixed it...
[23:45:54 CET] <Phi_> weird, I thought git was more reliable than this
[23:46:16 CET] <mbarisa_> c_14: http://pastebin.com/QH6hLMR3
[23:46:35 CET] <mbarisa_> this thing is crazy :D
[23:47:32 CET] <mbarisa_> sry, i think this i can fix
[23:48:44 CET] <mbarisa_> unfortunatelly we did not move from here http://pastebin.com/GxjvxZ6w
[23:49:25 CET] <c_14> You might have to get a static libdl.a
[23:55:45 CET] <mbarisa_> i made it pass -ldl flag
[23:55:59 CET] <mbarisa_> -static doesn't work actually
[23:56:09 CET] <mbarisa_> but I use --enable-static so might be good?
[23:57:07 CET] <furq> enable-static won't static link external libs
[23:57:18 CET] <furq> that's what --extra-ldflags="-static" is for
[23:57:53 CET] <furq> iirc in the absence of libdl.a it'll just dynamic link it even if that option is pased
[23:57:56 CET] <furq> +s
[23:59:13 CET] <mbarisa_> is there a way to get it working without libdl.a
[23:59:23 CET] <mbarisa_> because I don't have one on android compiler
[23:59:34 CET] <mbarisa_> only .so
[00:00:00 CET] --- Thu Jan  5 2017

More information about the Ffmpeg-devel-irc mailing list