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

burek burek021 at gmail.com
Tue May 12 02:05:01 CEST 2015


[00:21:10 CEST] <maslen> How can I record from Line In?
[00:21:39 CEST] <maslen> I'm trying to use https://trac.ffmpeg.org/wiki/Capture/ALSA as a guide, but I don't seem to be able to get anything
[01:01:20 CEST] <casanova> Does anyone know what this means? I've been trying to compile for two days with libfdk andI think I'm close but I have some errors at the end.
[01:01:33 CEST] <casanova> http://pastebin.com/rBkadSZm
[01:04:19 CEST] <c_14> delete line 20 and try again
[01:04:32 CEST] <c_14> or, well mainly delete the '\' in line 19
[01:05:49 CEST] <c_14> you might also need to set --extra-cxxflags
[01:07:07 CEST] <casanova> Thank you I'll give it a try!
[01:22:58 CEST] <maslen> How can I record from Line In?  I'm trying to use https://trac.ffmpeg.org/wiki/Capture/ALSA as a guide, but I don't seem to be able to get anything
[01:24:11 CEST] <c_14> Does Line In show up in arecord -L ?
[01:26:10 CEST] <maslen> I don't think so :( http://pastebin.com/N55chFT3
[01:26:41 CEST] <maslen> But this very moment, I have it plugged in, and what comes into Line in is being played on the machine's speakers
[01:27:50 CEST] <c_14> It looks like you're using pulse; have you tried capturing with that?
[01:28:10 CEST] <maslen> erm, how do I do that?
[01:28:24 CEST] <c_14> https://ffmpeg.org/ffmpeg-devices.html#pulse
[01:31:20 CEST] <maslen> The first entry mentions line in: http://pastebin.com/tn0PNfcz
[01:35:12 CEST] <c_14> try -f pulse -i alsa_input.pci-0000_00_14.2.analog-stereo
[01:40:02 CEST] <maslen> Awesome! It worked! Now just to combine the video and audio as a single statement :D
[01:41:41 CEST] <maslen> Thank you:)
[02:00:25 CEST] <trodis> how can i achieve with ffserver to stream mic input with latency as low as possible?
[02:08:01 CEST] <maslen> c_14: How did you know to try pulse?
[02:08:29 CEST] <c_14> because the output of your arecord -L mentioned pulse
[03:03:56 CEST] <casanova> While recording I get "past duration 0.xxxxxx too large"
[03:04:03 CEST] <casanova> Does anyone know anything about that?
[03:18:15 CEST] <casanova> While recording I get "past duration 0.xxxxxx too large"
[03:18:17 CEST] <maslen> i seem to have about a 0.3 second delay between audio and video. Any clue how best to fix it? command is: ffmpeg -thread_queue_size 512 -async 12 -f pulse -i alsa_input.pci-0000_00_14.2.analog-stereo -thread_queue_size 512 -i /dev/video0  -strict -2 -y  ~/Desktop/out.mp4
[03:18:35 CEST] <lenny> Hi, I saw ffmpeg when reading up on Wikipedia about captioning, and had two questions: 1. Can ffmpeg create captions or just read them? 2. Is ffmpeg a command line tool or a GUI tool? (both?)
[03:18:42 CEST] <lenny> Thanks! :)
[03:18:54 CEST] <maslen> lenny: 2) cmd-line
[03:18:59 CEST] <casanova> ^^^
[03:24:15 CEST] <c_14> lenny: afaik decode only
[03:24:23 CEST] <lenny> Alright, thanks guys!
[03:28:33 CEST] <casanova> Does anyone else get "past duration 0.xxxxxxx too large" repeated in the terminal while recording?
[03:31:26 CEST] <maslen> nope. I'm getting non-monotonous DTS messages though.
[03:31:48 CEST] <casanova> What version are you using? I used to get those messages but when I updated I get past duration.
[03:32:49 CEST] <maslen> 2.6.2
[03:32:56 CEST] <maslen> Downloaded it from the site
[03:34:02 CEST] <casanova> I have spent the last two days trying to get it running with libfdk after I messed it all up and upgraded to the new ppa and lost the jon severson package.
[03:34:16 CEST] <casanova> I finally have it running but have issues with the past duration messages.
[04:23:30 CEST] <maslen> OK, so I got my video and audio recording from the composite in. Problem is, it's super-duper blocky. Any ideas how I can improve the quality? It doesn't look as bad when I use a program like tvtime to access the device
[04:26:30 CEST] <grublet> maslen: if you're encoding then you need to set appropriate encoder parameters, otherwise i wouldn't know
[04:26:43 CEST] <grublet> defaults are blocky last i tried it
[04:28:23 CEST] <someperson> Is it possible to convert a transparent gif to a movie and then overlay that movie with transparency on top of another movie?
[04:29:31 CEST] <maslen> grublet: Do I need to do more than set a qscale for the output ?
[05:08:37 CEST] <grublet> maslen: -c:v and -b:v are the video codec/bitrate and likewise -c:a and -b:a for audio codec/bitrate, other parameters are different depending on codec used. check the manual
[05:09:05 CEST] <grublet> you have to set bitrate with a K to specify kilobits
[05:09:15 CEST] <grublet> I think M may be possible as well, not sure about others
[10:02:42 CEST] <hendry> i just built ffmpeg myself and there is nothing in the configuration:
[10:02:46 CEST] <hendry> line
[12:57:03 CEST] <Guest21275> Hello I've successfully compiled ffmpeg from wiki.razuna.com/display/ecp/FFMpeg+Installation+on+CentOS+and+RedHat#FFMpegInstallationonCentOSandRedHat-CompileFFmpeg(theconfigureoptionshavetobeononeline)
[12:57:31 CEST] <Guest21275> but myproblem is I'm not allowed to install gcc ... on our production server
[12:58:31 CEST] <Guest21275> is it possible compile it on another environment then copy the files to production machine ?
[13:36:04 CEST] <iive> Guest21275: of course. you could even look up how to make a package, for easier transfer.
[13:50:42 CEST] <maslen> Guest21275: Yes, I'm pretty sure it is. A "static build" might be exactly what you're looking for.
[13:51:38 CEST] <Guest21275> iive maslen : it seems that --disable-shared does the trick for transferring binaries easier to another machine. should I be cautious about anything else ?
[13:54:08 CEST] <maslen> Make sure the architectures match
[14:04:56 CEST] <Guest21275> tnx
[14:05:04 CEST] <nyuszika7h> why does "-movflags +faststart" not work?
[14:05:34 CEST] <nyuszika7h> both VLC and mpv still refuse to play the file while it's being encoded
[14:07:26 CEST] <nyuszika7h> the command line is something like this: ffmpeg -i something.mp4 -vf subtitles=something.srt -c:a copy -crf 18 -movflags +faststart -pix_fmt yuv420p something-hardsub.mp4
[14:08:43 CEST] <nyuszika7h> "Starting second pass: moving moov atom to the beginning of the file"
[14:08:50 CEST] <nyuszika7h> well if it only does that at the end, that's completely useless
[14:09:12 CEST] <nyuszika7h> and I just confirmed, the command line is exactly that just with different file names
[14:09:52 CEST] <nyuszika7h> the subtitle thing didn't work :/
[14:12:07 CEST] <nyuszika7h> ah, fontconfig error...
[14:12:15 CEST] <nyuszika7h> also, [mp4 @ 0000000004a5a120] Codec for stream 1 does not use global headers but container format requires global headers
[14:19:14 CEST] <iive> nyuszika7h: it is faststart for streaming, it prevents the need to seek to the end of the file in order to obtain the index of keyframes.
[14:19:29 CEST] <nyuszika7h> ah
[14:21:03 CEST] <iive> for what you want you might try nut or mkv. nut have been designed with piping in mind and should be supported by vlc and mpv
[16:46:00 CEST] <jrun> for remote (LAN) screen sharing, would it be possible to set a stream of gif from on machine and create an animated gif on the other machine, on-the-fly ?
[16:46:43 CEST] <__jack__> jrun: bad idea
[16:46:52 CEST] <__jack__> gif are huge or ugly
[16:50:14 CEST] <jrun> right now sending end is doing this dance:
[16:50:20 CEST] <jrun> ffmpeg -r 1 -f avfoundation -i "$input" \
[16:50:22 CEST] <jrun>  -threads 5 -preset ultrafast \
[16:50:24 CEST] <jrun>  -c:v libx264 -vf "scale=-1:540,fps=1,format=rgb8" \
[16:50:26 CEST] <jrun>  -tune zerolatency -f mpegts udp://receiving_end:1234?buffer_size=100000"
[16:50:37 CEST] <jrun> but it gets stock with tearing and green portions
[16:51:18 CEST] <jrun> taking format=rgb8 out makes it flow but transfer size is big for network
[16:52:04 CEST] <jrun> any idea how to get ffmpeg to dance with format=rgb8 ?
[16:53:02 CEST] <iive> don't use rgb, x264 uses yuv natively.
[16:53:19 CEST] <iive> also, i don't see anything setting bitrate or quality ...
[16:56:16 CEST] <jrun> -r 1 and fps=1? i thought
[16:56:48 CEST] <jrun> what's 256 colours in yuv parlance?
[16:57:58 CEST] <jrun> i don't see (if i understand it correctly) any 8-bit for yuv "profiles" in 'ffmpeg -pix_fmt'
[16:58:11 CEST] <jrun> i'm new to all of this, sorry
[16:58:39 CEST] <jrun> i'm reading off BIT_PER_PIXEL
[16:59:50 CEST] <jrun> iive: what defines bitrate? bitrate == '-r'?
[17:00:28 CEST] <jrun> and what defines quality? quality == pix_fmt ?
[17:00:48 CEST] <iive> -r is framerate
[17:00:55 CEST] <iive> same as fps=1
[17:03:27 CEST] <jrun> what's a good value to start with for -b:v ?
[17:03:56 CEST] <jrun> how does this translate/map into netwrok bandwidth?
[17:04:26 CEST] <kepstin-laptop> jrun, I don't think ffmpeg supports any palette-based yuv formats, if that's what you're asking. But most of the YUV formats in ffmpeg are 8bits per component (i.e. 8-bit Y + 8-bit U + 8-bit V)
[17:04:28 CEST] <jrun> i've obviously heard stuff here and there and getting a bit confused here
[17:05:42 CEST] <kepstin-laptop> jrun, the the network bandwidth required for a stream basically corresponds to the video bitrate + audio bitrate + any overhead added by the container format used.
[17:05:48 CEST] <jrun> kepstin-laptop: what's rgb8 then? 8-bit r + 8-bit g + 8-bit b ?
[17:06:38 CEST] <jrun> so the sum there should be <= to network bandwidth?
[17:07:17 CEST] <kepstin-laptop> jrun, no, rgb8 is actually 8 bits per pixel. looks like a pretty crazy format that you probably don't want to use ;)
[17:07:49 CEST] <kepstin-laptop> probably only supported for compatibility with some weird old game video format or something like that.
[17:08:59 CEST] <jrun> kepstin-laptop: i think rgb8 adds up to 8-bit not like what i said above. i used to run X inside osx with 256 colours. rgb8 looks the same.
[17:09:38 CEST] <kepstin-laptop> when you use an OS in 256color mode, it's actually doing a paletted mode, so the corresponding ffmpeg pix_fmt is "pal8"
[17:12:16 CEST] <kepstin-laptop> as far as the network bandwidth, yeah, that's pretty much right. but there's some complications because video codecs are VBR, so they'll sometimes use more or less than the requested bitrate (the requested bitrate is only an "average")
[17:12:30 CEST] <jrun> would libx264 be fine with pal8?
[17:12:44 CEST] <kepstin-laptop> no, libx264 can only encode yuv formats.
[17:13:01 CEST] <jrun> what's the lowest resolution in yuv?
[17:13:06 CEST] <kepstin-laptop> well, not entirely true, I think it can do rgb as well actually
[17:13:50 CEST] <jrun> it kinda does right now, it's just than receiving end gets too much artifact (green portions/tearings)
[17:14:25 CEST] <kepstin-laptop> jrun, when encoding yuv video in x264, the most basic pixel format supported is yuv420p, which is 8-bit per component YUV with 1/4 subsampled U,V planes.
[17:14:53 CEST] <kepstin-laptop> so effectively an average of 12 bits per pixel
[17:15:44 CEST] <kepstin-laptop> if you're getting corruption on decoding, the most likely cause is that you have dropped network packets. What protocol are you using?
[17:16:25 CEST] <jrun> let me ask you about an actual example. say i have a bandwidth of 2MB/s for my network and have a video only encoded (compressed?) with libx264 to send over. what's a good number for bitrate to start with?
[17:16:44 CEST] <jrun> kepstin-laptop: -f mpegts
[17:17:00 CEST] <jrun> receiving and is mpv (mplayer fork).
[17:17:04 CEST] <kepstin-laptop> in a tcp stream, or udp, or what?
[17:17:06 CEST] <jrun> i'm sending over udp
[17:17:17 CEST] <kepstin-laptop> yeah, udp can drop packets.
[17:18:28 CEST] <jrun> not sure if that's the problem. all things equal changing from rgb8 to yuv fixes the artifacts
[17:18:39 CEST] <kepstin-laptop> mpeg-ts has pretty high overhead, maybe 15-20% for smallish packets. hmm. I'd start at maybe 1500kbit and go down from there, and also use the vbv controls (-bufsize, -maxrate) to ensure keyframes don't exceed the line rate.
[17:19:31 CEST] <kepstin-laptop> if you can use rtp instead of mpegts over udp, that *might* help a bit too, particularly if you can get rtcp going.
[17:19:36 CEST] <jrun> maxrate is max bitrate or max fps?
[17:19:51 CEST] <kepstin-laptop> bitrate.
[17:20:34 CEST] <kepstin-laptop> for this use case, setting maxrate and bitrate to the same value probably makes sense, and bufsize should be fairly small - enough to hold maybe 1s of video?
[17:22:42 CEST] <iive> rtsp is related to rtp, rtcp is flash, iirc
[17:23:08 CEST] <kepstin-laptop> no, the flash protocol is rtmp.
[17:23:26 CEST] <jrun> kepstin-laptop: can you walk me throught the math please? how did you go from 2MB/s (16Mbits) to 1500kbit?
[17:23:41 CEST] <iive> yes. rtcp is control protocol, maybe it is part of rtsp
[17:23:45 CEST] <kepstin-laptop> rtcp is 'realtime control protocol', it's sort of a back-channel to rtp to allow the receiver to report back stats and packet loss.
[17:24:25 CEST] <kepstin-laptop> rtsp is a protocol used to set up an rtp+rtcp connection, but you can also do rtp+rtcp without rtsp.
[17:24:50 CEST] <kepstin-laptop> jrun, oh, I assumed that you gave the connection speed in megabits, since that's how it's normally stated.
[17:29:50 CEST] <jrun> 192k seems to be sweet spot
[17:30:24 CEST] <kepstin-laptop> bits?
[17:30:35 CEST] <jrun> -b:v 192k
[17:30:36 CEST] <kepstin-laptop> 192kbit is pretty low for video :)
[17:31:16 CEST] <jrun> i'm still not sure how you did the math there
[17:32:08 CEST] <jrun> say i have 56kb/s, what should be the value i would pass to -b:v ?
[17:32:16 CEST] <jrun> not that there is no audio
[17:32:33 CEST] <kepstin-laptop> well, you said 2mb/s, which I assumed was 2mbit/s. That's 2000kbit/s, so I subtracted some for overhead and said 1500kbit/s
[17:32:55 CEST] <jrun> i see
[17:33:38 CEST] <kepstin-laptop> keep in mind that all the video bitrate values are in bits, and network connection speed is also usually measured in bits.
[17:33:45 CEST] <jrun> how do these correlate to video resolution. say for 1080p, what's the recommended bandwidth?
[17:33:59 CEST] <kepstin-laptop> jrun, as high as you need to get a quality level you can live with.
[17:34:07 CEST] <kepstin-laptop> at an encoder cpu usage that's ok
[17:35:38 CEST] <Mavrik> yep, for slower profiles, rule of thumb is cca. 2Mbit / PAL, 5Mbit 720p, 8-10Mbit 1080p
[17:35:47 CEST] <Mavrik> you can go lower but it will have a bit of quality degradation
[17:37:15 CEST] <jrun> i gets a bit convoluted with isp's because for example i have 60MB/s dowload speed. that's commercially advertised. first of all that's 10-base. pulling from youtube with youtube-dl i can hit 7Mib/s (2-base). now if go by that, for streaming say a 4k live event, would my internet sever be enough?
[17:37:52 CEST] <jrun> Mavrik: what about 4k? do we know the number?
[17:38:06 CEST] <jrun> i don't thing 4k streaming exist but just wanted to know.
[17:38:14 CEST] <Mavrik> we never broadcast 4K video so i dunno what works well
[17:38:49 CEST] <Mavrik> If you have a 60Mbit line, you'll have serious problems streaming 1080p to more than a few people
[17:39:20 CEST] <jrun> one isp here puts aside 25MB (200Mb) for 1080p TV
[17:39:36 CEST] <jrun> what if i broadcast?
[17:40:00 CEST] <jrun> ...on my Gigabit router
[17:40:38 CEST] <kepstin-laptop> jrun, you need to find out your isp connections's upload rate in bits/s.
[17:41:42 CEST] <kepstin-laptop> the 60mbit's advertised speed is probably your incoming, and most connections aren't symmetic.
[17:42:53 CEST] <jrun> sorry youtube-dl reports in MiB. so i have a 56Mib download
[17:43:11 CEST] <jrun> it is not symmetric, i'm gonna give you the upload in a sec
[17:45:08 CEST] <jrun> 7.7 Mbps based on speedof.me
[17:45:17 CEST] <jrun> why upload matters?
[17:46:10 CEST] <kepstin-laptop> if you're broadcasting video, it's your upload that's being used...
[17:47:55 CEST] <jrun> broadcasting in LAN
[17:48:09 CEST] <jrun> LAN is all gigabit with AC wireless
[17:48:27 CEST] <kepstin-laptop> hmm. is one of the ends on the wireless?
[17:48:44 CEST] <jrun> except the one wirelss which is N 5ghz
[17:49:07 CEST] <jrun> for the screensharing we were talking about, yes. it's on the N.
[17:49:38 CEST] <kepstin-laptop> unless it's really congested, you should be able to do reasonably high rates, 10mbit on a good wireless-n isn't unreasonable.
[17:50:05 CEST] <kepstin-laptop> either getting working rtcp or switching to tcp should solve your dropped packet video corruption issue.
[19:04:20 CEST] <Freakshow> any ideas how I can troubleshoot poor mpeg2video input?
[19:04:42 CEST] <Freakshow> seeing a lot of invalid mb type in I Frame messages
[21:38:12 CEST] <Freakshow> are there any known issues with ffmpeg mpeg2 video input decoding?
[21:40:30 CEST] <llogan> Freakshow: i don't know. you can see a few bug reports here: https://trac.ffmpeg.org/query?status=!closed&keywords=~mpeg2video
[21:40:45 CEST] <llogan> a few seem decode related
[21:43:14 CEST] <JEEBsv> in general mpeg2 decoding should work if you mean mpeg-2 video
[21:43:39 CEST] <JEEBsv> but sure, issues are always found so checking out trac is a very good idea
[21:44:40 CEST] <Freakshow> ayes, mpeg-2 video
[23:04:43 CEST] <lord-carlos> Hi guys, I want to encode an image sequence on windows. I tried regular cmd and cygwin, but it looks like my command is wrong somehow.  ./ffmpeg.exe -f image2 -start_number 851 -i /cygdrive/c/Users/lord\ carlos/Videos/Render/test/final_%5d_1.tga -r 30 foo.avi
[23:04:57 CEST] <lord-carlos> First filename is "final_00850_1.tga"
[23:05:43 CEST] <lord-carlos> http://pastebin.com/2a2h1bJK
[23:13:23 CEST] <lord-carlos> Even if I put them in a dir without space and rename them to 1.tga etc. and than use %d.tga it cant find them
[23:21:49 CEST] <lord-carlos> pretty please :) Someone who can take a look at it?
[23:22:03 CEST] <lord-carlos> I would be greatfull
[23:23:16 CEST] <c_14> The command itself looks fine. The problem is probably somewhere in Windows/Cygwin land.
[23:23:55 CEST] <llogan> lord-carlos: also note that your command would be duplicating frames going from the image file demuxer default of 25 to your declaured output of 30
[23:24:35 CEST] <llogan> you could use -framerate 30 as an input option if you don't want any frame dupes
[23:24:56 CEST] <lord-carlos> ah, ok
[23:26:54 CEST] <lord-carlos> apperently it should worth with windows cmd. I'm gonna try again
[23:27:15 CEST] <lord-carlos> https://stackoverflow.com/questions/15512782/ffmpeg-not-using-wildcard-properly-from-batch-script <-- the last comment. He got it to work
[23:39:54 CEST] <lord-carlos> wat .. it works if it's in a .bat file ..
[23:43:57 CEST] <lord-carlos> llogan: So -framerate 30 should be enough so it takes 30 images per second and also gives me a 30 fps output?
[23:48:56 CEST] <c_14> should
[23:52:04 CEST] <lord-carlos> looks so sharp :)
[23:52:16 CEST] <lord-carlos> compared to the build in After Effects 264 encoder
[00:00:00 CEST] --- Tue May 12 2015


More information about the Ffmpeg-devel-irc mailing list