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

burek burek021 at gmail.com
Fri Feb 24 03:05:02 EET 2017


[00:01:13 CET] <xhip> nice tips @furq
[00:01:28 CET] <llogan> I believe you'll want linux-headers-*-raspi2 for mmal and libomxil-bellagio-dev for omx
[00:02:39 CET] <xhip> I'm using this tut:  http://www.jeffreythompson.org/blog/2014/11/13/installing-ffmpeg-for-raspberry-pi/ but using: "git clone git://source.ffmpeg.org/ffmpeg.git ffmpeg" and "make -j4"
[00:02:47 CET] <xhip> is this right?
[00:05:59 CET] <furq> llogan: you shouldn't need anything for omx
[00:06:17 CET] <furq> just add --extra-cflags=/opt/vc/include/IL
[00:06:19 CET] <furq> er
[00:06:24 CET] <furq> --extra-cflags=-I/opt/vc/include/IL
[00:06:50 CET] <xhip> I'm downloading the lastest code
[00:06:54 CET] <furq> assuming you get your kernel with rpi-update
[00:07:13 CET] <llogan> ah, ok. i only did a search for what packages owned the required headers on a vanilla debian arm
[00:07:33 CET] <xhip> I tried using arecord and it works.. so the mic is working.. now I need to re-make and see if it works with ffmpeg
[00:08:21 CET] <furq> xhip: get rid of --arch=armel as well
[00:09:12 CET] <xhip> so: sudo ./configure --enable-gpl --enable-libx264 --enable-nonfree -enable-omx-rpi --enable-mmal
[00:09:21 CET] <furq> sure
[00:09:29 CET] <furq> although you're not going to be using x264 on a pi, and there's no need for nonfree
[00:09:38 CET] <furq> basically get rid of pretty much everything that tutorial tells you to do ;_;
[00:09:56 CET] <xhip> :)
[00:10:13 CET] <furq> i'm not sure what you'll need for mmal, but ./configure --enable-omx-rpi --enable-mmal --extra-cflags=-I/opt/vc/include/IL
[00:10:37 CET] <xhip> Unknown option "-enable-omx-rpi"
[00:11:16 CET] <xhip> my bad
[00:11:21 CET] <furq> oh nvm you don't even need the --extra-cflags
[00:11:31 CET] <furq> that should just work out of the box
[00:11:37 CET] <xhip> I forgot to copy a "-"
[00:12:20 CET] <xhip> so: sudo ./configure --enable-gpl --enable-omx-rpi --enable-mmal
[00:12:30 CET] <furq> i don't think you need enable-gpl
[00:12:51 CET] <xhip> :) ok I'll try using only: so: sudo ./configure --enable-omx-rpi --enable-mmal
[00:13:02 CET] <furq> looks good to me
[00:13:12 CET] <furq> like i say, check that alsa shows up in the configure output
[00:13:33 CET] <furq> and also use -c:v h264_omx instead of -c:v mpeg4 when encoding
[00:13:40 CET] <xhip> do I need to >> to a file so I can grep ?
[00:13:59 CET] <xhip> is h264_omx faster?
[00:14:00 CET] <furq> devices show up at the bottom iirc
[00:14:09 CET] <furq> and yeah h264_omx is the pi's hardware h264 encoder
[00:14:15 CET] <xhip> ohh cool
[00:14:16 CET] <furq> mmal is the hardare decoder
[00:14:26 CET] <furq> you won't be able to do much on a pi without those
[00:14:58 CET] <llogan> why are you using sude for configure?
[00:15:01 CET] <llogan> *sudo
[00:15:10 CET] <furq> yeah don't do that
[00:15:12 CET] <xhip> again tutorial :)
[00:15:13 CET] <furq> sudo is only for make install
[00:15:24 CET] <llogan> craptorial
[00:15:40 CET] <furq> i don't think i've ever seen anyone link a good tutorial in here
[00:15:48 CET] <furq> even the ones on the ffmpeg wiki are suspect
[00:15:59 CET] <xhip> yeh thats why I'm saving your tips on a note
[00:16:11 CET] <llogan> which ones and what's wrong with them?
[00:17:55 CET] <furq> mostly the streaming stuff is a mess
[00:18:13 CET] <furq> https://trac.ffmpeg.org/wiki/CompilationGuide/Ubuntu
[00:18:20 CET] <furq> this one is ok but seems overcomplicated
[00:18:29 CET] <furq> but then i'm generally pretty cavalier about throwing stuff in /usr/local
[00:18:40 CET] <furq> it's debian, that's what /usr/local is for
[00:18:53 CET] <furq> it's not the worst thing in the world to avoid that though
[00:19:47 CET] <xhip> Enabled indevs: alsa... Enabled outdevs: alsa ...
[00:19:53 CET] <furq> looks good
[00:20:18 CET] <furq> llogan: https://trac.ffmpeg.org/wiki/CompilationGuide/RaspberryPi
[00:20:24 CET] <furq> this one's not great
[00:20:27 CET] <llogan> oh, that...
[00:20:29 CET] <xhip> now I need to cook it :) make -j4
[00:20:53 CET] <llogan> and yeah, the "StreamingGuide" is just a stream of conciousness from rogerpack
[00:20:55 CET] <furq> tbh considering how much time i spend in here telling people how to do this, it'd probably save me time to rewrite it
[00:21:05 CET] <llogan> that would be nice
[00:21:08 CET] <furq> but then i'd have nothing to do at work
[00:21:17 CET] <xhip> ahah
[00:22:03 CET] <xhip> btw any good tutorial how to stream it? using ffmpeg? rstp? or using netcat? :)
[00:22:15 CET] <furq> most people are using nginx-rtmp for streaming
[00:22:24 CET] <furq> by "most people" i mean most people in here who have hobbyist setups
[00:22:48 CET] <xhip> :) cool
[00:22:53 CET] <xhip> btw: "src_movie.c:524:9: warning: avcodec_decode_video2 is deprecated (declared at ./libavcodec/avcodec.h:4857) [-Wdeprecated-declarations] ret = avcodec_decode_video2(st->codec_ctx, frame, &got_frame, pkt);"
[00:22:57 CET] <xhip> this is ok right
[00:23:15 CET] <JEEB> xhip: it will work, it just means that that thing is using a deprecated API
[00:23:16 CET] <furq> if you start pasting in all the warnings you'll be here all night
[00:23:16 CET] <xhip> I'm getting some deprecated msgs
[00:23:25 CET] <furq> as long as they're warnings and not errors, it's fine
[00:23:29 CET] <JEEB> if it's during building of FFmpeg itself, yes that's OK
[00:23:30 CET] <xhip> ok ok
[00:23:41 CET] <JEEB> if you make an app yourself and you start getting those you will need to look into it
[00:25:06 CET] <llogan> the ubuntu guide originally installed to /usr/local, and even integrated into package management system w/ checkinstall, but that led to other issues that the "local, not-really-installed" current method avoids. also, it is overly complicated to support all currently supported versions of ubuntu (i'm looking at you, old yasm). could be much simpler if it only targeted latest release.
[00:25:26 CET] <JEEB> checkinstall is godawful
[00:25:31 CET] <furq> tbh i think my objection to that ubuntu guide is that it doesn't recommend just debootstrapping debian testing into a chroot and installing the libs that way
[00:25:34 CET] <JEEB> I've used it in some cases but it makes me cry
[00:25:48 CET] <furq> since i would definitely have a testing/sid chroot if i was stuck on an old ubuntu
[00:26:07 CET] <JEEB> or just newer ubuntu since it's branched off of one of those anyways
[00:26:10 CET] <JEEB> every 6 months
[00:26:12 CET] <furq> but then if you're going to do that you might as well just install ffmpeg in there
[00:26:17 CET] <llogan> that too seems overcomplicated
[00:26:26 CET] <furq> probably
[00:26:32 CET] <llogan> so i just tell users to go to relaxed page
[00:26:34 CET] <furq> it saves rebuilding all the libs though
[00:26:46 CET] <furq> although yeah, if you don't need fdk then that page is pointless anyway
[00:26:47 CET] <JEEB> systemd-nspawn is pretty simple, at least simpler than a lot of those chroot applications
[00:27:00 CET] <JEEB> which was funny
[00:27:11 CET] <furq> JEEB: i'm thinking of people who are stuck on an ubuntu lts for some reason
[00:27:20 CET] <JEEB> which would be 16.04 nowadays
[00:27:32 CET] <furq> 14.04 is still supported for a couple more years isn't it
[00:27:35 CET] <JEEB> (and yes, I have some 14.04 machines under my administration)
[00:27:43 CET] <JEEB> (and yes, I fucking hate it)
[00:27:54 CET] <furq> didn't 12.04 only just get EOLed
[00:27:54 CET] <thebombzen> perhaps "the latest release" and then every LTS release
[00:27:55 CET] <JEEB> as someone who writes services
[00:28:01 CET] <JEEB> furq: yea
[00:28:04 CET] <JEEB> that's even worse
[00:28:09 CET] <furq> yeah fuck that
[00:28:13 CET] <thebombzen> 1404 is pretty sucky
[00:28:16 CET] <JEEB> thebombzen: VLC does latest LTS
[00:28:23 CET] <furq> debian stable is bad enough and that's only a couple of years old
[00:28:24 CET] <JEEB> they stopped it from building on 14.04
[00:28:27 CET] <furq> imagine using a distro from 2012
[00:28:35 CET] <thebombzen> Imagine using an OS from 2001
[00:28:46 CET] <furq> is this a windows xp joke
[00:28:49 CET] <thebombzen> It is
[00:28:57 CET] <JEEB> furq: I remember seeing a 10.04 server once and quickly checked the network graph. and then promptly shut the fucker down
[00:28:59 CET] <llogan> people still ask zeranoe why his builds won't work on XP no mo'
[00:29:17 CET] <JEEB> oh of course, I once for shits and giggles in like 2013 built FFmpeg for win2000
[00:29:20 CET] <JEEB> it was god-awful
[00:29:32 CET] <thebombzen> win2000 and winxp are sort of the same, right?
[00:29:33 CET] <xhip> btw this is not a 100% ffmpeg question.. but I never saw answer to this problem... So "can I use python to get a img from a webcam and still use it for video stream.. same time?" just a curiosity
[00:29:36 CET] <JEEB> thebombzen: no
[00:29:37 CET] <thebombzen> it's NT5 vs NT5.1
[00:29:46 CET] <JEEB> xp sp2 and newer have a lot of better APIs
[00:29:52 CET] <thebombzen> ah sp2 and sp3
[00:30:07 CET] <thebombzen> also, re: 1404, I used to use Linux Mint a few years ago when it was based on 1404
[00:30:09 CET] <furq> i built lua with turbo c 2.0 once
[00:30:10 CET] <furq> does that count
[00:30:11 CET] <thebombzen> I ended up getting fed up with it
[00:30:24 CET] <thebombzen> cause it was so awful
[00:30:35 CET] <thebombzen> I switched to Arch and now I feel like I actually have control over my OS
[00:30:35 CET] <JEEB> yes, the further you go from the release date of the LTS the more the downstream distro has to package shit or feel like shit
[00:30:41 CET] <furq> i briefly used LMDE
[00:30:44 CET] <furq> that seemed sort of ok
[00:30:51 CET] <furq> although at that point you might as well just use debian
[00:31:09 CET] <JEEB> also mint officially doesn't support upgrades, so I'd just much rather use mint's cinnamon desktop on a vanilla ubuntu
[00:31:18 CET] <JEEB> and upgrade every 6 months
[00:31:24 CET] <thebombzen> yea Mint really was a pos
[00:31:48 CET] <thebombzen> the two main advantages it had over Ubuntu were that it packaged MATE and proprietary drivers like nvidia
[00:31:58 CET] <JEEB> uhh, ubuntu also packages nvidia drivers
[00:32:05 CET] <thebombzen> if they do that's new
[00:32:08 CET] <JEEB> it even asks you during/after install
[00:32:10 CET] <JEEB> uhh
[00:32:14 CET] <JEEB> at least since 12.03
[00:32:16 CET] <JEEB> *04
[00:32:19 CET] <JEEB> if not before
[00:32:19 CET] <thebombzen> oh lol
[00:32:34 CET] <thebombzen> I hate "modern DEs" tho so the MATE was enough
[00:32:39 CET] <thebombzen> but given that I can do both on Arch, and I actually have control over my system, it's nice
[00:32:49 CET] <thebombzen> I feel that "control of my system" is really not something I should be worried about
[00:32:55 CET] <thebombzen> but Ubuntu just feels so hacked together
[00:33:04 CET] <llogan> i prefer arch as well
[00:33:06 CET] <JEEB> arch is something I happily leave to others who want to bite the bullet
[00:33:18 CET] <JEEB> I'm OK following in the second chain for stuff I don't develop
[00:33:43 CET] <thebombzen> with Ubuntu, I feel that, half of it is a direct copy of upstream, and half of it is LSB but mangled by canonical for no good reason
[00:34:03 CET] <thebombzen> it's extremely difficult to tell on Ubuntu what will work exactly like other distros and what will work nothing like other distros
[00:34:07 CET] <JEEB> thebombzen: ok, it was 12.04 it seems unless they're now hiding older versions' packages http://packages.ubuntu.com/precise/nvidia-current
[00:34:13 CET] <thebombzen> at least on Arch, the documentation of the quirks is really good
[00:34:21 CET] <furq> arch has a good wiki
[00:34:28 CET] <furq> and uh
[00:34:29 CET] <llogan> except their ffmpeg page
[00:34:29 CET] <thebombzen> yea that's the best part of it
[00:34:29 CET] <furq> it's not gentoo
[00:34:36 CET] <furq> those are two good things i can say about arch
[00:34:43 CET] <JEEB> yes, the arch wiki has some good stuff even if you're not on arch
[00:34:44 CET] <thebombzen> FFmpeg wiki pages are sucky 100% of the time
[00:34:49 CET] <thebombzen> including the FFmpeg's trac wiki
[00:34:54 CET] <JEEB> yup
[00:35:06 CET] <furq> i use the arch wiki a lot and i've never used arch
[00:35:07 CET] <thebombzen> yea but Arch has really good documentation and that's I think one of its biggest benefits
[00:35:14 CET] <llogan> i cleaned up some of the arch ffmpeg wiki page once but some mod or whatever bitched so i reverted it
[00:35:31 CET] <thebombzen> depends on what you "cleaned up"
[00:35:34 CET] <thebombzen> if you changed the style they won't like that
[00:35:38 CET] <xhip> I'm watching other video tuts on ffmpeg and maybe I'll try to convert a cvlc comand into ffmpeg
[00:35:44 CET] <thebombzen> if you just fix information to make it accurate according to the downstream package that should be fine
[00:35:45 CET] <xhip> cvlc -vvv v4l2:///dev/video1:chroma=mjpg :input-slave=alsa://hw:2,0 --sout "#transcode{vcodec=mp1v,vb=4096,acodec=mp3,ab=128,scale=2,channels=2}:rtp{dst=10.10.12.1,port=8080,sdp=rtsp://10.10.12.1:8080/cam.sdp}"
[00:35:49 CET] <thebombzen> (which is 3.2.? at this point)
[00:35:54 CET] <furq> it's good about mentioning "hey if you have x installed then this won't work, you have to do this instead"
[00:36:00 CET] <furq> which is the single most annoying thing about desktop linux
[00:36:07 CET] <thebombzen> oh yea pacman is great
[00:36:08 CET] <JEEB> xhip: sout in vlc is godawful, but do remember that shit like broadcast inputs can actually work better in vlc
[00:36:12 CET] <llogan> i mostly got rid of retarded examples
[00:36:14 CET] <furq> i mean the wiki
[00:36:34 CET] <thebombzen> oh yea it does that
[00:36:44 CET] <JEEB> I should probably go looking into how to handle PID switches in libavformat...
[00:36:47 CET] <furq> that is especially useful for people on other distros
[00:36:50 CET] <thebombzen> "You can't use a swap file on Btfs, use ext4 or a swap partition instead
[00:37:01 CET] <thebombzen> but yea telling you when something won't work is really nice
[00:37:15 CET] <thebombzen> "you need to do this with GPT or it own't work"
[00:37:38 CET] <furq> stuff like "if you're running gnome 3 then you can't put this in .xinitrc, it has to go in /etc/gnome/piss.rc"
[00:37:47 CET] <furq> paraphrased
[00:37:58 CET] <xhip> @JEEB my problem is always cpu and network.. I want to keep it fast (cpu lower and still a good video) but the codecs..
[00:38:20 CET] <xhip> I still need to learn the best one (quality/cpu)
[00:38:33 CET] <furq> xhip: your only real option on the pi is h264_omx
[00:38:36 CET] <furq> that won't touch the cpu at all
[00:38:53 CET] <xhip> yeh thats tru
[00:38:56 CET] <furq> if you mean on a real computer then x264 pretty much always wins
[00:39:07 CET] <xhip> but that cvlc thing is on a debian machine
[00:39:09 CET] <thebombzen> furq: unless you're encoding losslessly, then nvenc is nice
[00:39:24 CET] <xhip> but still the cpu is weak.. so
[00:39:28 CET] <thebombzen> but on rpi software encoding is too slow tbh
[00:40:03 CET] <xhip> ...still "compiling" the "make"
[00:40:20 CET] <furq> i still occasionally run x264 576p downscales on my nas, which is a core 2 duo at stock clocks
[00:40:32 CET] <furq> it'll do realtime at 576p with -preset fast
[00:40:55 CET] <thebombzen> with x264 I usually use -preset slow with -crf rather than -preset veryslow
[00:40:55 CET] <xhip> no 720p? :)
[00:40:56 CET] <furq> you'd need a really bad cpu to not be able to get realtime with x264's fast presets
[00:41:07 CET] <furq> unless it's 4k or something
[00:41:16 CET] <thebombzen> the file size will be larger but I don't have the patience
[00:41:26 CET] <furq> i don't actually use -preset fast fwiw
[00:41:45 CET] <thebombzen> furq: 60fps 1080p high-motion content can be hard to encode realtime if generated by a videogame
[00:41:59 CET] <thebombzen> simply because the game already is using your cpu
[00:42:07 CET] <thebombzen> so you generally use ultrafast there
[00:42:22 CET] <furq> yeah but most people who are encoding that aren't encoding 1080p60 because it's going to twitch and they have a 3.5mbit bandwidth limit
[00:42:29 CET] <furq> so 1080p60 is going to look like piss
[00:42:33 CET] <thebombzen> yea
[00:42:43 CET] <thebombzen> 720p30 is better for that
[00:42:55 CET] <thebombzen> I record to youtube private streams when I play vidya
[00:43:02 CET] <thebombzen> waste their harddrive space, not mine
[00:43:16 CET] <furq> what i do, and this is pretty revolutionary, is i play games and don't record myself doing it
[00:43:23 CET] <thebombzen> haha
[00:43:30 CET] <thebombzen> sometimes it's nice to send a clip to someone
[00:43:40 CET] <thebombzen> I don't have an egotistical "I want people to watch me play for hours" idea
[00:43:45 CET] <furq> i am sort of lying tbh
[00:43:51 CET] <furq> i play a lot of games which have server-side demo recording
[00:43:59 CET] <thebombzen> but parsing through 2 hours of gameplay video is annoying tbh
[00:44:04 CET] <thebombzen> recently I've just been using OBS's replay buffer feature
[00:44:12 CET] <furq> shadowplay seems nice but i've never really used it
[00:44:13 CET] <thebombzen> where it keeps like 1-minute encoded buffer
[00:44:28 CET] <thebombzen> and then by hotkey it can dump the 1-minute buffer to a file
[00:44:48 CET] <thebombzen> it'll be like 500 mb but you can downscale the filesize with x264 easily
[00:45:25 CET] <furq> it would have been nice to have recordings of the actual world records i have set in games
[00:45:43 CET] <furq> yeah that's right. you're looking at a world record holder, in the prestigious field of the race mode in "rock of ages"
[00:46:16 CET] <furq> yes, it does have that mode
[00:47:02 CET] <thebombzen> what is "rock of ages"
[00:47:11 CET] <thebombzen> is that like a game with a boulder
[00:47:18 CET] <thebombzen> that withstands the test of time
[00:47:37 CET] <furq> yes
[00:47:39 CET] <furq> it is literally that
[00:48:01 CET] <furq> also apparently i'm not the world record holder any more because someone has hacked their way to the top of all the leaderboards
[00:48:19 CET] <furq> i still have the fastest time that isn't obviously fake
[00:48:52 CET] <thebombzen> I don't have world records... I just record myself doing stupid overwatch brawls
[00:49:04 CET] <thebombzen> and if something cool happens I send a video of it to my friends
[00:49:25 CET] <thebombzen> who are like "haha" and then it's over
[00:50:04 CET] <furq> is overwatch the one which is team fortress 2 with butts
[00:50:14 CET] <thebombzen> Yes
[00:50:26 CET] <thebombzen> even the guys have butts
[00:50:33 CET] <furq> progressive
[00:58:18 CET] <kerio> wait, nvenc can do lossless x264?
[00:58:58 CET] <thebombzen> no, nvenc can do lossless H.264
[00:59:03 CET] <kerio> er yes
[00:59:03 CET] <thebombzen> -preset lossless
[00:59:56 CET] <thebombzen> furq is there a way to get your bot to do !encoder=h264_nvenc
[01:00:15 CET] <xhip> ok done installing
[01:01:21 CET] <thebombzen> I guess it doesn't matter because NVENC isn't mentioned on ffmpeg-codecs.html
[01:02:12 CET] <xhip> btw what is the best audio codec for the pi?
[01:02:18 CET] <JEEB> whatever runs fast enough
[01:02:23 CET] <kerio> is h264_omx even usable
[01:02:30 CET] <thebombzen> kerio: nothing else is
[01:02:30 CET] <xhip> ffmpeg -f alsa -i plughw:1 -ar 22050 -ab 64k -strict experimental -acodec aac -y test.wav
[01:02:43 CET] <llogan> you won't need -strict experimental
[01:02:46 CET] <JEEB> I remember people with rpi1 just not being able to encode aac with the software encoder :D
[01:02:47 CET] <thebombzen> you don't need -strict experimental anymore
[01:02:47 CET] <kerio> yeah but i thought that copying stuff to and from the gpucore was slow as well
[01:02:51 CET] <xhip> It's working :D
[01:03:12 CET] <xhip> ok I've got some:
[01:03:14 CET] <thebombzen> also libopus is still ffmpeg's best lossy audio encoder
[01:03:14 CET] <xhip> Non-monotonous DTS in output stream 0:0; previous: 10170, current: 10067; changing to 10170. This may result in incorrect timestamps in the output file.
[01:03:17 CET] <xhip> but looks fine
[01:03:17 CET] <thebombzen> ignore that.
[01:03:20 CET] <furq> thebombzen: if it's not on ffmpeg.org then no
[01:03:43 CET] <furq> it literally just dumps the toc from the online docs
[01:03:50 CET] <llogan> what bot?
[01:03:54 CET] <nfobot> furq: Available functions: muxer demuxer encoder decoder filter source sink indev outdev protocol bsf
[01:03:56 CET] <furq> that one
[01:04:07 CET] <furq> !indev alsa
[01:04:07 CET] <nfobot> furq: http://ffmpeg.org/ffmpeg-devices.html#alsa
[01:04:19 CET] <thebombzen> why would it not be on ffmpeg.org? I thought that ffmpeg-*.html was generated from the same documentation as ffmpeg -h
[01:04:21 CET] <thebombzen> but I guess I'm wrong
[01:04:28 CET] <thebombzen> !encoder h264_nvenc
[01:04:31 CET] <llogan> it is not
[01:04:39 CET] <xhip> hmm..
[01:04:48 CET] <thebombzen> xhip: you should use libopus if you can
[01:05:07 CET] <thebombzen> like if you can do the computation in realtime
[01:05:13 CET] <thebombzen> it's got the best audio quality of all the lossy encoders
[01:05:18 CET] <thebombzen> (especially at 64k)
[01:05:18 CET] <furq> xhip: if you do end up using rtmp then your only option is aac
[01:05:36 CET] <xhip> furq.. not for now..
[01:05:37 CET] <thebombzen> but you should consider using libfdk-aac because then you can use HE-AAC
[01:05:41 CET] <furq> it should be fine on a pi 2
[01:05:44 CET] <xhip> I just want to record webcam
[01:05:45 CET] <thebombzen> which is the best for rtmp
[01:05:46 CET] <xhip> with audio
[01:06:00 CET] <thebombzen> then libopus gives the best audio quality
[01:06:07 CET] <xhip> without killing my pi and disk
[01:06:32 CET] <thebombzen> well given that you're setting the bitrate, libopus @ 64k outperforms everything else @ 64k as long as you can do it in realtime
[01:06:33 CET] <furq> he didn't build with libopus anyway
[01:06:41 CET] <thebombzen> well then you should lol
[01:06:46 CET] <furq> just use aac
[01:07:04 CET] <xhip> weird.. I can't open that file.. let me try record another one
[01:07:06 CET] <xhip> ffmpeg -f alsa -i plughw:1 -ar 22050 -ab 64k -strict experimental -acodec aac -y test.wav
[01:07:08 CET] <xhip> using this
[01:07:17 CET] <furq> don't use wav for aac
[01:07:19 CET] <furq> use m4a
[01:07:22 CET] <xhip> ok
[01:07:45 CET] <xhip> "size=      79kB time=00:00:10.04 bitrate=  64.1kbits/s speed=0.994x"
[01:07:47 CET] <xhip> looks fine
[01:07:47 CET] <furq> also get rid of -ar 22050 and -strict experimental
[01:07:49 CET] <xhip> let me see
[01:07:53 CET] <xhip> ok
[01:08:15 CET] <xhip> test2: ffmpeg -f alsa -i plughw:1 -ab 64k -acodec aac -y test2.m4a
[01:08:52 CET] <xhip> 10/10 :D
[01:09:24 CET] <xhip> now "all together now" :D
[01:11:23 CET] <xhip> so: ffmpeg -f v4l2 -s 960x720 -i /dev/video0 -f alsa -i plughw:1 -ab 64k -acodec aac -y test3.mkv
[01:11:29 CET] <xhip> should I use -r to lock fps
[01:11:36 CET] <furq> no
[01:11:38 CET] <xhip> ok
[01:11:40 CET] <furq> use -framerate before -i
[01:11:57 CET] <furq> also you need to add -c:v h264_omx
[01:12:22 CET] <furq> and add -b:v 2000k or whatever you want the video bitrate to be
[01:12:43 CET] <xhip> added
[01:13:56 CET] <xhip> there is any good calculation.. to see how much space do 1h of recording... do.
[01:14:27 CET] <furq> https://www.google.co.uk/search?q=2000%20kilobits%20per%20second%20*%201%20hour%20in%20megabytes
[01:14:38 CET] <xhip> bitrate hm I only used that on streams.. never to record.. I'm going to add that to my command for now
[01:14:53 CET] <xhip> oh ok that simple
[01:16:13 CET] <xhip> how abou the file extension.. is mkv ok?
[01:17:15 CET] <furq> sure
[01:18:31 CET] <xhip> ffmpeg -f v4l2 -s 960x720 -c:v h264_omx -b:v 2000k -i /dev/video0 -f alsa  -ab 64k -acodec aac -i plughw:1 -y test3.mkv
[01:18:33 CET] <xhip> hm
[01:18:39 CET] <xhip> Option b:v (video bitrate (please use -b:v)) cannot be applied to input url /dev/video0 -- you are trying to apply an input option to an output file or vice versa. Move this option before the file it belongs to. Error parsing options for input file /dev/video0.
[01:29:03 CET] <furq> those are output options
[01:30:35 CET] <xhip> so after the -y
[01:31:44 CET] <thebombzen> xhip: the way ffmpeg works is all options before "-i input" are input options
[01:31:58 CET] <thebombzen> and everything after all of the "-i input" are output options
[01:32:18 CET] <xhip> Ok
[01:32:34 CET] <thebombzen> so for you it's ffmpeg <video_input_options> -i videoinput <audio_input_options> -i audioinput <output_options> output
[01:32:54 CET] <thebombzen> -b:v is the bitrate for the encoder, and it's an output option
[01:34:36 CET] <xhip> ffmpeg -f <audio options> -i plughw:1 -f <video opts> -i /dev/video0 -y test3.mkv <output: -b:v 2000k -b:ad 64k >
[01:37:26 CET] <thebombzen> you have to put the output options before the output file
[01:37:46 CET] <thebombzen> and not inside angled brackets :P
[01:37:57 CET] <xhip> lol
[01:38:08 CET] <xhip> yeh
[01:38:11 CET] <xhip> ffmpeg -f alsa -acodec aac -i plughw:1 -f v4l2 -s 960x720 -c:v h264_omx -i /dev/video0 -b:v 2000k -b:a 64k -y test3.mkv
[01:38:34 CET] <furq> how did -acodec aac get there
[01:38:47 CET] <thebombzen> yea why is it way over there
[01:38:59 CET] <xhip> is a input flag right
[01:39:10 CET] <thebombzen> no, you're specifying what codec you're coverting the input to
[01:39:19 CET] <thebombzen> input options specify extra data about the input
[01:39:26 CET] <thebombzen> that the input wouldn't otherwise know
[01:39:37 CET] <thebombzen> same with h264_omx
[01:39:40 CET] <thebombzen> that's an output option
[01:39:51 CET] <thebombzen> also, use -video_size not -s
[01:40:29 CET] <xhip> ffmpeg -f alsa -i plughw:1 -f v4l2 -video_size 960x720 -i /dev/video0 -c:v h264_omx -c:a aac -b:v 2000k -b:a 64k -y test3.mkv
[01:40:36 CET] <xhip> on nice is working
[01:41:06 CET] <xhip> "Non-monotonous DTS in output stream 0:1; previous: 16709, current: 16569; changing to 16709. This may result in incorrect timestamps in the output file."  "ALSA buffer xrun"
[01:41:10 CET] <xhip> but looks fine
[01:41:31 CET] <xhip> "time=00:00:55.41 bitrate= 956.8kbits/s speed=1.04x"
[01:41:51 CET] <xhip> ok stoped. lets see the video :)
[01:44:54 CET] <xhip> its working video and audio :)
[01:45:38 CET] <xhip> btw:
[01:45:40 CET] <xhip> [aac @ 0x2a82790] Queue input is backward in time0:00:21.02 bitrate=1030.5kbits/s speed=1.26x
[01:45:40 CET] <xhip> [matroska @ 0x2a7f890] Non-monotonous DTS in output stream 0:1; previous: 21848, current: 21430; changing to 21848. This may result in incorrect timestamps in the output file.
[01:46:15 CET] <xhip> is this ok.. or should I try to fix it?
[01:49:51 CET] <thebombzen> don't worry about that
[02:09:39 CET] <xhip> I'm testing some configs..
[02:10:05 CET] <xhip> but my audio is still weird.. I can hear it but is all mess'y
[02:10:31 CET] <xhip> maybe I need to play with -b:a 64k
[02:26:43 CET] <xhip> no luck
[02:31:17 CET] <mixfix41> hmm ive rebuilt ffmpeg 3.2.3 on my slackware system using oss ( i need it for a game) but I ve been having to restart my computer for ffplay to play smoothly, i recently updated my slackware system but before the update everything was good, then they integrated ffmpeg witht he main core packages, and I rebuilt the package for ffplay and a few other codecs/libraries to record sound and desktop... hmm mplayers
[02:31:20 CET] <mixfix41> and other sound work good
[02:32:53 CET] <xhip> I made this script to help me with the settings http://pastebin.com/61wfVjvS
[02:33:03 CET] <xhip> but no luck on the audio
[02:34:03 CET] <xhip> resolution*
[02:44:31 CET] <mixfix41> xhip: which architech is that on
[02:44:39 CET] <xhip> arm
[02:44:41 CET] <xhip> (pi)
[02:45:13 CET] <xhip> hm
[02:45:15 CET] <xhip> Stream mapping:
[02:45:15 CET] <xhip>   Stream #1:0 -> #0:0 (rawvideo (native) -> h264 (h264_omx))
[02:45:16 CET] <xhip>   Stream #0:0 -> #0:1 (pcm_s16le (native) -> aac (native))
[02:45:50 CET] <xhip> so he isn't using my usb mic
[02:47:27 CET] <xhip> hm.. nvm
[02:47:33 CET] <xhip> I try audio only and works..
[02:47:48 CET] <xhip> giving the same msg: Stream mapping:
[02:47:48 CET] <xhip>   Stream #0:0 -> #0:0 (pcm_s16le (native) -> aac (native))
[02:49:34 CET] <xhip> maybe is the pi that can't handle this..
[02:49:41 CET] <xhip> [aac @ 0x2469790] Queue input is backward in time0:00:09.24 bitrate=  79.6kbits/s speed=1.31x
[02:50:07 CET] <mixfix41> which one
[02:50:09 CET] <Diag> 79.6kbps?
[02:50:10 CET] <xhip> [alsa @ 0x2459370] Thread message queue blocking; consider raising the thread_queue_size option (current value: 8)
[02:51:39 CET] <xhip> my audio bitrate is -b:a 64k
[02:52:37 CET] <atomnuker> xhip: try -aac_coder fast
[02:52:44 CET] <xhip> ok
[02:56:27 CET] <mixfix41> actually did you get audio stream to function good somewhere else, thats impressive i know I had the mpd http stream function on and that would bog my raspberry pi b+ model
[02:56:50 CET] <xhip> when I ask for audio only
[02:56:53 CET] <xhip> it works fine
[02:56:59 CET] <xhip> but with video and audio
[02:57:07 CET] <xhip> the audio is bugged
[02:58:54 CET] <tatsuya> duranda_170!
[03:00:09 CET] <xhip> #fml maybe I use 2 screen one for audio and other for video
[03:04:30 CET] <mixfix41> do you think -thread_queue_size 1024 applies to your situation
[03:05:13 CET] <mixfix41> nvm
[03:06:22 CET] <xhip> https://www.dropbox.com/s/hwc9udmyv36thix/output.mkv?dl=0
[03:06:23 CET] <xhip> sample
[03:09:10 CET] <xhip> should I use -thread_queue_size 512 ?
[03:11:08 CET] <fulcan> I am trying to broadcast a cam to ffserver https://bpaste.net/show/24bf9fbe31bb  and unable to get a connection.  http://persiaspalace.us:8090/feed1.ffm tcpdump port 8090 shows the cam transmitting just fine.
[03:12:39 CET] <fulcan> https://bpaste.net/show/15c9b81ea7b7
[03:37:03 CET] <xhip> is this a good iadea?
[03:37:05 CET] <xhip> arecord -f cd -D plughw:1,0 | ffmpeg -i - ...
[03:53:47 CET] <xhip> with the pipe.. works
[04:02:52 CET] <mixfix41> hmm ok with the ffplay issue, i restart my comp, and its not linked with oss just yet, i gotta turn off pulseaudio and i can turn it back on and things will begin to play but after restarting
[04:03:41 CET] <mixfix41> maybe i should switch to alsa to see if I got issues with that to narrow this
[04:04:07 CET] <mixfix41> but oss has been pretty solid though with mplayer and medal of honor
[05:08:41 CET] <mixfix41> allr ight i think i dealt with my issue with ffmpeg building without libpulse then when my screenrecorder needs pulse it starts up ...
[05:16:26 CET] <mixfix41> also if this works continuously i wonder why the sound conflict with ffmpeg when it starts instead when it starts with a different application
[05:16:41 CET] <mixfix41> with pulseaudio starting that is
[05:17:01 CET] <mixfix41> esp with oss sound
[08:23:00 CET] <SouLShocK> http://pastebin.com/y6rLg06j produces an overlapping of the background boxes as shown in https://ibin.co/3DHDA1mTedBS.jpg how do I avoid that overlap?
[10:12:33 CET] <termos> I get messages like these printing forever when ffprobing an rtmp flv stream: [flv @ 0x23b7bc0] Packet mismatch -553637295 11. Any ideas?
[12:33:37 CET] <NotChuck> Hi guys, I'm building ffmpeg with cuvid support. In the nvidia site (https://developer.nvidia.com/ffmpeg)  they recommend --enable-nonfree. Is this necessary for nvidia decoding?
[12:44:35 CET] <jiyuu> hi
[12:44:55 CET] <jiyuu> wanted to check something about the subtitles filter, is this the right place?
[12:50:41 CET] <durandal_1707> jiyuu: yes
[12:55:50 CET] <jiyuu> ok
[12:55:53 CET] <jiyuu> so its like this
[12:55:56 CET] <jiyuu> http://ffmpeg.org/ffmpeg-filters.html#subtitles
[12:56:36 CET] <jiyuu> says that i can use the subtitle filter to read the parse the subtitles from the video file directly, but i am not clear from the doc if it will properly handle ass subtitles
[12:57:06 CET] <jiyuu> secondly it seems like this approach does not handle embedded fonts as i get errors for them being missing
[12:57:46 CET] <jiyuu> is there any way to have them available for ffmpeg other then adding a stop of extracting the fonts out of the file and into the fontpath?
[13:11:59 CET] <SouLShocK> speaking of subtitles, http://pastebin.com/y6rLg06j produces an overlapping of the background boxes as shown in https://ibin.co/3DHDA1mTedBS.jpg how do I avoid that overlap?
[15:25:42 CET] <colde> SouLShocK: there is no lineheight option?
[15:45:33 CET] <fred1807> I was to convert some videos on the cloud, using ffmpeg. This requires some RAM to work softly, and more Ram makes vps servers price goes up. I am still learning the basics of it all, but it seems that I could use cloud computing in "pay as you go" fashion. Example, if I only convert 3 videos a day = a couple of minutes of real usage a day. So I can afford a powerfull cloud computing, to use it only a couple of minutes a day, and shut it down the rest of
[15:45:33 CET] <fred1807>  Am i right? Or there is no such service?
[15:46:08 CET] <dystopia> aws maybe
[15:51:56 CET] <furq> what are you encoding that needs a lot of ram
[15:53:07 CET] <DHE> 1080p video with a large lookahead buffer may consume a lot of memory. that's tunable though
[15:54:11 CET] <furq> unless you're encoding 4k or doing a lot of filtering you should be fine with 1GB
[15:54:32 CET] <furq> and that costs very little
[16:04:24 CET] <fred1807> I see
[16:04:53 CET] <fred1807> encoding normal video, but I would be more confortable with 2gb, there is also backroung sync jobs runnings
[16:06:09 CET] <DHE> doing what? an installed VM shouldn't have any big CPU users installed from the install media. disk indexing might be the biggest concern
[16:06:55 CET] <furq> what's "normal video"
[16:07:01 CET] <furq> i don't think i've ever seen a normal video
[16:08:03 CET] <fred1807> ah, sorry, 720p to 1080p h264 "hd internet streaming birate" stuff
[16:11:23 CET] <furq> ovh are doing 2GB for 3 EUR/month
[16:13:48 CET] <DHE> still, I budget 1 gigabyte of RAM for my own such jobs and have no issues
[16:14:18 CET] <DHE> on a system with only 1 GB you should be able to run 1 job with no troubles. with x264 encoder tuning (assuming you use H264) you can get that lowered
[16:14:55 CET] <furq> well yeah i only mention that because that's the lowest plan ovh are doing
[16:15:14 CET] <furq> and that's barely more than i pay for a box with 256MB
[16:17:46 CET] <bencoh> reducing available memory sometimes mean you'll have to reduce threads number, though
[16:18:01 CET] <furq> well it's a cheap vps so you're probably only going to have one
[16:18:35 CET] <bencoh> ah, in that case...
[16:19:57 CET] <fred1807> yes
[16:32:16 CET] <madno> Hello. Is there any way to hide the mouse cursor when recording the desktop as a video in ffmpeg? I tried using :0.0+nomouse as was said in many places. But it doesn't work at all. I am using Linux.
[16:35:05 CET] <c_14> madno: -draw_mouse 0
[16:35:48 CET] <c_14> https://ffmpeg.org/ffmpeg-devices.html#Options-19
[16:38:52 CET] <madno> c_14: Thank you! Is there any specific version for where this option is supported? I mean, it's supproted in all 3.x and higher too?
[16:39:45 CET] <c_14> I think that one's pretty old
[16:39:48 CET] <c_14> At least 3
[16:40:44 CET] <c_14> It's in 2.8 too
[16:40:59 CET] <madno> Ahh. Thanks.
[16:42:02 CET] <fred1807> can I run ffmpeg on aws lambda?
[16:46:09 CET] <DHE> seems like research would be required. maybe?
[16:47:50 CET] <DHE> "Maximum execution duration per request = 300 seconds" so I'm going to say no
[16:54:55 CET] <kepstin> well, it should work fine as long as it finished in the time limit...
[17:08:32 CET] <ChuckLePlant_> Hi, I'm building ffmpeg shared libraries with cuda support for windows. I get a message that it is not distributable
[17:08:51 CET] <ChuckLePlant_> This is because of --non-free
[17:09:10 CET] <ChuckLePlant_> But I do want to distribute my build, what can I do?
[17:12:13 CET] <kepstin> ChuckLePlant_: don't use the "non-free" option? as far as I can tell, cuda doesn't require that
[17:12:28 CET] <kepstin> I'm guessing you enabled fdk_aac or something, you can turn that off and just use the internal aac encoder.
[17:12:40 CET] <ChuckLePlant_> It does apparently
[17:12:58 CET] <ChuckLePlant_> I will double check
[17:13:45 CET] <kepstin> the only things that require nonfree in the current ffmpeg source are libnpp, and (if you have gpl enabled), libfdk_aac and openssl.
[17:14:40 CET] <ChuckLePlant_> it must be libnpp, from nvidia docs I thought it was required for cuvid and nvenc
[17:17:14 CET] <kepstin> looks like that'll lose you exactly one thing, an npp scale filter
[17:18:30 CET] <kepstin> https://www.ffmpeg.org/ffmpeg-filters.html#scale_005fnpp so I guess that'll reduce what you can do with your ffmpeg a bit
[17:19:19 CET] <ChuckLePlant_> why are those non-free? Don't those have a similar nvidia eula?
[17:20:06 CET] <ChuckLePlant_> thanks btw
[17:20:09 CET] <kepstin> don't ask me :/
[17:20:48 CET] <ChuckLePlant_> oh, seems cuda is also non-free
[17:22:02 CET] <kepstin> it shouldn't be, neither 'cuda' nor 'cuvid' trigger the nonfree license check in ffmpeg.
[17:22:36 CET] <kepstin> (in the configure script)
[17:22:49 CET] <furq> ChuckLePlant_: https://github.com/FFmpeg/FFmpeg/blob/master/configure#L5148-L5150
[17:23:36 CET] <ChuckLePlant_> I'm at n3.2.2, what is the latest stable commit/tag?
[17:23:44 CET] <furq> i think the nvidia stuff is exempt because you're not distributing any nonfree code
[17:23:49 CET] <furq> it loads the libs on the user's system
[17:24:22 CET] <furq> and 3.2.4 is the latest
[17:24:50 CET] <ChuckLePlant_> cheers
[18:02:49 CET] <balint> Hi! I would like to use the ocr filter on ubuntu. What is the easiest way to get it runnig? I have tried apt-get ffmpeg, but that version doesnt contain the ocr filter.
[18:04:51 CET] <balint> I have tried the current static build too.
[18:10:12 CET] <balint> Do I need to compile it for myself?
[18:12:44 CET] <durandal_1707> yes
[18:21:31 CET] <SouLShocK> colde I was unable to find a line height option for the subtitle plugin
[18:26:10 CET] <funyun> hi. can anyone help me with this error i get when trying to encode to level 5.2? http://pastebin.com/ke9pFz5E
[18:43:46 CET] <funyun> i only get this error when adding "-profile:v high -level 5.2"
[19:03:28 CET] <funyun> anyone use ffmpeg?
[20:20:54 CET] <pgorley> hi, is there a way to convert a AVCodecContext to a AVCodecParameters and vice-versa without copying each field?
[20:25:01 CET] <jkqxz> pgorley:  You mean like a pair of functions, one for copying in each direction, say?  <http://git.videolan.org/?p=ffmpeg.git;a=blob;f=libavcodec/avcodec.h;h=925a8c72771cb347abefa502b096597d1f603578;hb=HEAD#l4310>
[20:25:30 CET] <pgorley> yes, thank you! :)
[21:37:36 CET] <hassonofer> Is it possible to connect to RTSP stream with '@' symbol at the password, e.g. rtsp://username:pass@word@example.com:554 ?
[21:38:18 CET] <tdr> you'd probably have to quote or escape it
[21:49:56 CET] <kepstin> I'd think that URL-encoding it there would work find, so rtsp://username:pass%40word@example.com
[00:00:00 CET] --- Fri Feb 24 2017



More information about the Ffmpeg-devel-irc mailing list