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

burek burek021 at gmail.com
Thu Dec 29 03:05:01 EET 2016


[00:00:40 CET] <__raven__> does anyone know why yadif produces colour artifacts in the examples?
[00:02:29 CET] <pbos> __raven__: yadif is not a perfect filter
[00:02:39 CET] <pbos> fwiw you can expect artefacts, especially from realtime filters
[00:03:48 CET] <__raven__> from visual point of view yadif would be acceptable if it would not add some more problems to the image
[00:04:52 CET] <__raven__> it seems like magenta and cyan components so might i get some issues with subsampling here?
[00:05:10 CET] <pbos> probably the U,V components of your input
[00:05:16 CET] <__raven__> yes
[00:05:35 CET] <pbos> assuming you're not doing RGB video which would be baller
[00:05:57 CET] <__raven__> ingest is yuv422p at the moment
[00:06:39 CET] <pbos> no idea how this is stored on tapes, but you could also consider converting to RBG to see if the filter behaves differently
[00:06:49 CET] <pbos> it's also possible that yadif doesn't support rgb
[00:07:01 CET] <pbos> but I'd not be surprised if you have bleeding
[00:07:28 CET] <__raven__> pbos: i think vhs is capable of something like 4.1.1 but i thought it would be better to do kind of oversampling due to analogue ways
[00:08:32 CET] <furq> there's no harm using 4:2:2
[00:12:23 CET] <pbos> Don't think your codec supports 4:1:1 either way
[00:13:12 CET] <pbos> __raven__: Try the slow filter, and see if it's cool
[00:13:15 CET] <pbos> w/r/t bleeding
[00:38:52 CET] <pbos> __raven__: This is tricky because it's a tricky problem, you're generating data out of thin air by interpolating between frames
[00:38:54 CET] <pbos> FWIW
[00:53:46 CET] <__raven__> yes thats why i do not want to do any real processing and are looking for a bob like method with doubled lines and bobbing filter :/
[01:00:59 CET] <pbos> __raven__: Any reason why you're satisfied/OK with the artifacts that generates but not the color bleed?
[01:02:23 CET] <__raven__> i am not but i have to accept that mpeg will reduce structure information but those are not as visible as the seen colour problems
[01:03:00 CET] <pbos> Did you try the slow filters furq mentioned?
[01:06:55 CET] <__raven__> pbos: i tried pp=fd preset and wd3fdif but i think the results are even more worse due to wrong interpolated movement
[01:12:31 CET] <furq> nnedi is the filter i mentioned
[01:14:44 CET] <__raven__> nnedi similar to w3fdif
[01:44:15 CET] <koldbrutality> does ffmpeg support mpeg dash with the lastest code?
[01:44:24 CET] <koldbrutality> i mean with ffplay
[01:50:32 CET] <jcath> friends, with avs script as input to ffmpeg, it read as raw video and cant detect the field dominance info, how i may force ffmpeg assume input as TFF or BFF ?thanks
[01:55:36 CET] <furq> jcath: https://ffmpeg.org/ffmpeg-filters.html#setfield-1
[01:58:34 CET] <jcath> furq: thanks:)
[02:49:02 CET] <fahadash> I have 10 .MOV files by the names 1.MOV, 2.MOV, 3.MOV, I would like to remove audio from all and save them as n_an.MOV where n is the file name. Before I write a bash script to do it, is there any ffmpeg way of doing it?
[02:49:53 CET] <c_14> Not without using an external scripting language
[02:50:02 CET] <klaxa> it's a one-liner really though
[02:50:04 CET] <fahadash> Thanks
[03:12:32 CET] <Modern13> what container  supports  x264/aac  other than  mp4/mkv/flv
[03:12:40 CET] <c_14> nut
[03:12:48 CET] <c_14> mpeg-ts?
[03:12:48 CET] <Modern13> c_14 huh
[03:13:02 CET] <Modern13> does  ffmpeg support muxing to  ts container?
[03:13:10 CET] <c_14> sure
[03:13:19 CET] <Modern13> thanks
[03:13:25 CET] <c_14> yep, mpeg-ts works
[03:13:29 CET] <Modern13> what about  .mov
[03:13:35 CET] <c_14> yep
[03:13:54 CET] <c_14> afaik mov supports a superset of what .mp4 supports
[03:15:03 CET] <Modern13> i jsut did .ts muxing  its plays audio but not video
[03:15:14 CET] <c_14> .avi should work as well
[03:15:15 CET] <Modern13> are you sure .ts support x264
[03:15:25 CET] <c_14> works here
[03:15:27 CET] <c_14> What player?
[03:15:40 CET] <Modern13> okay let me try other players
[03:17:19 CET] <Modern13> doesn't work with mpc or vlc
[03:17:29 CET] <furq> it works fine with mpc
[03:18:02 CET] <furq> and i'm pretty sure it works with vlc
[03:18:15 CET] <furq> i don't have it installed but i've definitely watched streams in vlc which were h264 in ts
[03:19:03 CET] <c_14> Well, isn't that basically all hls?
[03:19:20 CET] <furq> i meant over rtsp, but yeah
[03:19:31 CET] <furq> h264 in ts is incredibly commonplace
[03:22:56 CET] <Modern13> wow  i muxed to avi and it works
[03:23:04 CET] <Modern13> avi support x264 and aac ?
[03:23:08 CET] <Modern13> i didn't nkow
[03:26:38 CET] <Modern13> if avi support h264/aac , why don't people use avi on them
[03:31:37 CET] <c_14> Because avi is a terrible old container and everybody tries to forget it ever existed
[03:32:21 CET] <Modern13> how is avi terrible
[03:32:25 CET] <Modern13> it works
[03:32:26 CET] <Modern13> fine
[03:35:31 CET] <c_14> lots of hacks
[03:41:30 CET] <Modern13> [avi @ 00000000025f7600] H.264 bitstream malformed, no startcode found, use the video bitstream filter 'h264_mp4toannexb' to fix it ('-bsf:v h264_mp4toannexb' option with ffmpeg)
[03:41:31 CET] <Modern13> av_interleaved_write_frame(): Invalid data found when processing input
[03:42:16 CET] <Modern13> what does  -bsf:v h264_mp4toannexb  do
[03:43:30 CET] <c_14> There's several ways to pack H.264 NAL packets
[03:43:33 CET] <c_14> AnnexB is one way
[03:43:36 CET] <c_14> mp4 uses a different one
[03:44:00 CET] <Modern13> what is NAL packets
[03:44:18 CET] <Modern13> how come i don't get that error
[03:44:27 CET] <Modern13> how come i don't get that error on my other video
[03:45:03 CET] <c_14> probably because the other one was in annexb form
[03:46:02 CET] <Modern13> and this one is in which form?
[03:46:14 CET] <Modern13> the one with the error
[03:46:43 CET] <c_14> I don't know what it's called, I just know it exists and isn't AnnexB
[03:47:30 CET] <DHE> annex B specifies a bit pattern ahead of NALs. MP4 uses a length prefix instead
[03:48:13 CET] <DHE> a bsf is a bitstream filter. one of them as indicated will convert mp4 to annex B notation
[03:49:42 CET] <Modern13> DHE what is better?  video with annexB form or  video with no aneexB
[03:53:29 CET] <DHE> it's not a matter of better or worse. you use the right format for the container the video goes in
[03:58:18 CET] <Modern13> i get this error :  [mpegts @ 00000000025db0a0] Timestamps are unset in a packet for stream 0. This is deprecated and will stop working in the future. Fix your code to set the timestamps properly
[03:58:31 CET] <Modern13> when i try to mux to .ts
[04:07:44 CET] <gudenau> Hello!
[04:09:58 CET] <gudenau> I am attempting to create a program that uses FFMPEG as a library and I would like to use hardware decoding/encoding. I'm not finding much in the way of documentation on how to use hardware for this task, just that it is possible.
[04:10:38 CET] <gudenau> H264 by the way.
[04:24:57 CET] <gudenau> Ping me in an answer please.
[05:12:42 CET] <Modern13> anybody know how i can download this video:  http://www.ipernity.com/doc/wiini/4857811
[05:14:15 CET] <gudenau> Click the download button.
[05:15:38 CET] <Modern13> how do i download by wget
[05:17:26 CET] <gudenau> wget dowloadButtonURL.mp4
[05:17:41 CET] <Modern13> huh
[05:28:04 CET] <JeffATL> i just did this: "ffmpeg  -i input.mpg -f mpeg2  -vf crop=690:470:20:0,pad=720:480:15:5 output.mpg" in order to remove some edge artifacts from a videotape rip. why did the output file become about 1/6th the size and is full of pixelly compression artifacts??
[05:36:50 CET] <JeffATL> the input was mpeg2video, yuv420p, 720x480
[05:38:54 CET] <fahadash> I am working in my filter graph, I added a output tag (or whatever the word is for labels), and I am trying to subsequently use my output tag and getting a Invalid stream specifier: tagname
[05:39:09 CET] <furq> JeffATL: that command outputs mpeg2video with the default encoder settings
[05:39:13 CET] <furq> idk what those are but they probably suck
[05:39:53 CET] <JeffATL> furq: i'm surprised that defaults make any changes esp lossy ones
[05:40:26 CET] <furq> the default is to reencode
[05:40:31 CET] <JeffATL> furq: that being said, where to begin disabling?
[05:40:43 CET] <furq> although if you're filtering then you have to reencode
[05:41:15 CET] <JeffATL> i assume cropping/padding is a form of filtering
[05:41:39 CET] <furq> they sure are
[05:41:55 CET] <JeffATL> is there a way i can explicity tell ffmpeg to not do anything lossy?
[05:44:08 CET] <furq> you can use a lossless output codec
[05:44:15 CET] <furq> that doesn't seem like what you want to do though
[05:45:02 CET] <JeffATL> furq: i'm mostly seeking to archive from tape so what i really want is clean video without regard to file size
[05:45:54 CET] <furq> if file size is no issue then use something lossless
[05:46:09 CET] <furq> certainly don't use mpeg2video, it's ancient and it was never much good anyway
[05:46:25 CET] <furq> ffv1 and x264 lossless seem like decent choices
[05:47:05 CET] <JeffATL> fair enough. the hauppauge card appears to produce mpeg2video in hardware and i don't think i have any control over that
[05:47:28 CET] <furq> well yeah there's no benefit to keeping the same codec if you're filtering
[05:47:56 CET] <furq> with that said i think some containers let you crop in metadata
[05:48:04 CET] <furq> not sure how widespread support for that is though
[05:48:45 CET] <JeffATL> also i have no idea what sw/hw might be used to edit or display in the future so i have to keep to widely implemented protocols
[05:49:40 CET] <furq> well lossless is going to be huge and not supported as well as something like regular x264
[05:50:03 CET] <furq> if you're not doing further processing on these videos, x264 at crf 16 or so should look visually lossless
[05:50:19 CET] <furq> 16 is probably overkill but it'll be a lot smaller than qp 0
[05:50:37 CET] <fahadash> I found my problem, I was outputting something to a labelled stream, and then using that labelled stream in two places as input, it apparently allows it to be used once... but WHY :(
[05:51:30 CET] <furq> fahadash: https://ffmpeg.org/ffmpeg-filters.html#split_002c-asplit
[05:51:41 CET] <furq> if you want to use the same output as an input to multiple filters
[05:53:07 CET] <fahadash> furq: It's really silly that I can do [0:v] something [out]; [0:v] something more [out1]; but I cannot do [0:v] something [useful]; [useful] something1[out]; [useful]something2[out1];
[05:53:19 CET] <fahadash> Now I have to split it, give it two more different labels, and use those split labels
[06:23:40 CET] <JeffATL> furq: even without using a filter - just -ss and -to to edit - it applies horrific encoding
[06:24:43 CET] <furq> -c:v copy
[06:25:03 CET] <JeffATL> furq: i'll try it
[06:25:04 CET] <furq> or -c copy if you want to copy all streams
[06:25:40 CET] <JeffATL> furq:  do need stereo audio to come through
[06:25:59 CET] <furq> by default ffmpeg picks codecs based on the output filename
[06:26:14 CET] <furq> for mpg i assume it's mpeg2video and mp2
[06:26:27 CET] <furq> you have to specify copy if you don't want to reencode
[06:29:23 CET] <JeffATL> furq: ahh, that's *much* more like it!
[06:44:17 CET] <JeffATL> furq:  trying now with x.264, -crf 16 along with the cropping and padding.
[06:45:07 CET] <JeffATL> whew. i'm really thinking i need more CPU - 11 fps, two AMD64 cores railed up
[06:45:27 CET] <furq> try with -preset faster
[06:45:45 CET] <furq> that sounds awfully slow for sd though
[06:46:10 CET] <JeffATL> furq: what effect does that have on the compression?
[06:50:15 CET] <furq> it makes it worse
[06:50:35 CET] <furq> 16 is already very high quality though
[06:50:45 CET] <furq> i normally use 20 for sd stuff
[07:07:43 CET] <fahadash> How do I pick one frame from a stream and show it for 5 seconds? I am thinking this: [source]trim=frame_start=x:frame_end=x+1,setpts=(PTS-STARTPTS)*5000
[07:08:08 CET] <fahadash> Basically a pause
[07:15:38 CET] <markvandenborre> fahadash: how exact does this need to be?
[07:16:12 CET] <markvandenborre> you might get something more cpu efficient
[07:16:29 CET] <markvandenborre> when pulling only key frames from it?
[07:21:06 CET] <markvandenborre> fahadash: https://github.com/FOSDEM/video/blob/master/software/ansible/playbooks/roles/videobox/templates/video-screenshot/video-screenshot.sh
[07:21:11 CET] <markvandenborre> is how we do it
[07:22:01 CET] <fahadash> the problem is... I don't have a start_frame... I want to start trimming at some point in timeline and pick one frame
[07:23:32 CET] <markvandenborre> you don't have a start frame, which means you're just picking one frame from the stream as it is passing at this very moment, right?
[07:24:23 CET] <markvandenborre> or maybe I'm misunderstanding you
[07:24:59 CET] <fahadash> I want to pick the first frame at 00:00:28.0000 and I can may be loop it using loop filter
[07:25:34 CET] <markvandenborre> ah... yeah, we did it this way because we had basicly an endless stream and not enough cpu
[07:25:41 CET] <markvandenborre> to decode the entire stream
[07:25:57 CET] <markvandenborre> so we just look at the stream every now and then
[07:26:00 CET] <markvandenborre> and pick whatever
[07:26:13 CET] <markvandenborre> we find as the first frame
[07:27:21 CET] <markvandenborre> then loop this external command
[07:27:37 CET] <markvandenborre> it was the only option for us cpu wise
[07:27:44 CET] <fahadash> what does -vframe do? It is a filter?
[07:28:17 CET] <markvandenborre> it sets the number of vframes to output
[07:28:48 CET] <markvandenborre> https://ffmpeg.org/ffmpeg.html#Video-Options
[07:32:55 CET] <markvandenborre> fahadash: so your goal is to create a 5 second movie, right?
[07:33:20 CET] <markvandenborre> with an image in standstill?
[07:33:58 CET] <markvandenborre> one 5 second movie from an existing animation? or multiple?
[07:36:11 CET] <markvandenborre> fahadash: https://github.com/FOSDEM/video/blob/master/software/ansible/playbooks/roles/voctop/files/scripts/source-background.sh is how we made a simple loop of one image
[07:36:32 CET] <markvandenborre> continuously outputting as raw video on a tcp prot
[07:36:33 CET] <markvandenborre> port
[07:42:58 CET] <markvandenborre> fahadash: hope my hints gave you at least some inspiration
[07:43:54 CET] <fahadash> switches aren't going to work for me, but thanks
[07:44:29 CET] <fahadash> I am heavily relying on filter-graph to do my stuff, I have a labelled stream in my filter graph of which I need a single frame captured into another
[07:44:49 CET] <fahadash> I have tried combining switches with filter-graph and have had tough luck
[07:44:58 CET] <fahadash> filter-graph and switches don't mix
[07:45:40 CET] <fahadash> What I ended up doing was, I trimmed 0.1 seconds of that portion, and used setpts to turn it into a super duper slo-mo
[09:33:43 CET] <JeffATL> i am trying to make archival rips of videotapes using a hauppauge card that outputs mpeg2. apparently i have to tell ffmpeg to use an encoding if i use any kind of filter (i'm cropping and padding to remove edge artifacts). it was suggested earlier i use x.264 but i'm left with something that neither VLC or quicktime can play. alternative?
[09:58:24 CET] <d> hi
[09:59:45 CET] <Guest96715> question: Is it possible to get ffmpeg's image to webm feature working on google app script
[10:00:06 CET] <Guest96715> been tinkering with it but its been kinda hazy
[10:18:48 CET] <JeffATL> can anyone explain why this command, when issued on another computer, works just fine but on this one it errors as shown: https://pastebin.mozilla.org/8956852
[10:20:27 CET] <JeffATL> also, should i be putting yadif ahead of crop and pad? computer on which this command works is only managing about 3fps
[10:34:51 CET] <JeffATL> think i figured my 1st question out - lack of x264 library
[10:35:04 CET] <JeffATL> it's just that the error message is obtuse
[10:49:41 CET] <JEEB> JeffATL: "preset" is a module-specific option so when you have no modules selected that utilize that option I'm not sure if there could be a better error. that said, yes. unfortunately that error as a global option parsing error has is something we end up before the values for options are evaluated
[10:50:07 CET] <JEEB> so if you removed the -preset option it would probably complain about not having the libx264 encoder
[10:50:10 CET] <JeffATL> JEEB: ok - thanks
[10:50:21 CET] <JeffATL> JEEB: ah, i see
[14:08:55 CET] <rivarun> hello. i'm using input from ffmpeg's showinfo with a v4l input to control a loop (is this a terrible idea to begin with?). because i want my look to run at 30 fps i use this: `-filter:v "fps=fps=30, showinfo" ` looking at the timestamps in my loop however the frames come in chunks (say 4 frames at second 53.82xxx and then a jump to 53.96xxx). is there a way to get ffmpeg to print the frame information in a
[14:08:57 CET] <rivarun> stricter way or should i use a different mechanism for my loop altogether?
[14:09:37 CET] <rivarun> *loops    *in stricter timing
[14:37:33 CET] <__raven__> hi
[14:38:24 CET] <__raven__> how to capture /dev/vbi0? which data format? how to get all lines available?
[16:53:14 CET] <fahadash> Is there any way in the filter-graph to sink a labelled stream just for debugging purposes?
[17:37:54 CET] <durandal_1707> fahadash: nullsink?
[18:19:55 CET] <pandaadb> Hello -  i was wondering if someone could give me a pointer as to why my ffmpeg processes started hanging (all on the same file)
[18:20:30 CET] <pandaadb> I have a python script that downloads and mp4 file and then converts it. This worked fine for the most part but then it started hanging endlessly and i ended up with a couple hundred processes just sitting there (it runs in cron every hour)
[18:21:16 CET] <pandaadb> I then killed all processes to get it working again. It returned and then my python script output the stderr of the process. But i can't tell if there was something wrong with the file (and if that should cause infinite hanging)
[18:22:01 CET] <pandaadb> This is the ffmpeg output: http://pastebin.com/TGFCXiv0
[18:23:32 CET] <pandaadb> I now fixed it by executing ffmpeg in a thread and adding a 5 minute timeout (my videos are max 1 min long) that then kills the ffmpeg process if it hasn't returned but i am still curious as to what was wrong. I can't reproduce it by manually running the ffmpeg however I can reproduce it by running it through python (which makes me wonder if it is something else)
[18:24:49 CET] <AndrewUnmuted> I am encoding 4k ProRes HQ 4:2:2 sources for playback in VR headsets via libx264. The sources are equirectangular spherical projections. Sometimes the x264 output exhibits a good deal of temporal noise, especially on bright textures and backgrounds. What filter(s) can I invoke in FFmpeg to help reduce these artifacts?
[18:26:58 CET] <pandaadb> hm, i am reading that it might the problem that the pipe is full and it can't write anymore so it starts hanging, could taht be it?
[18:50:22 CET] <JeffATL> i'm trying to make archival rips of videotape using a conexant-based cap card, output is mpeg2. I take the original file and do some cropping and padding to remove edge artifacts. but why is my output file about four times bigger than input file? command is ffmpeg  -i original_tape_part_1.mpg   -c:v ffv1    -vf "yadif,crop=690:470:20:0,pad=720:480:15:5"  test_part_1.mkv
[18:51:32 CET] <kerio> ...output is ffv1
[18:54:46 CET] <JeffATL> kerio: recommend a better option? I'm not opposed to any lossy compression at all but far bigger files than input i can't hang with
[18:55:06 CET] <kerio> i mean
[18:55:15 CET] <kerio> i honestly don't get why you're surprised
[18:55:24 CET] <kerio> that ffv1 yields bigger results than mpeg
[18:55:44 CET] <kerio> why is the input mpeg, anyway?
[18:56:10 CET] <JeffATL> kerio: the card encodes to mpeg2 in hardware
[18:56:18 CET] <kerio> can't you leave it as is, then?
[18:56:30 CET] <kerio> how good is it?
[18:56:38 CET] <JeffATL> kerio: you'll have to excuse me - this is a very broad field and i'm new to it.
[18:56:50 CET] <kerio> like, what's the input file's bitrate?
[18:57:13 CET] <JeffATL> kerio: if i specifty no encoding, what comes out is much smaller and looks horrible
[18:57:25 CET] <JeffATL> let me see if i can find that for you
[18:57:29 CET] <kerio> -c:v x264 -qp 18
[18:57:36 CET] <kerio> er, make that libx264
[18:57:43 CET] <JEEB> > -qp/q:v for libx264
[18:57:50 CET] <JEEB> > for anything else than lossless
[18:57:53 CET] <kerio> JEEB: fuck crf
[18:58:02 CET] <JEEB> lol
[18:58:04 CET] <kerio> crf killed my pet hamster
[18:58:10 CET] <JEEB> have fun with that
[18:58:29 CET] <kerio> i like constant qp :3
[18:58:59 CET] <JEEB> it's not really constant tho :P P and B have their offsets anyways in any mode
[18:59:11 CET] <JeffATL> kerio: ffprobe on an original output file says max 8000kb/s
[18:59:13 CET] <kerio> JeffATL: -crf 18 is also probably fine
[18:59:15 CET] <kerio> JeffATL: lmao what
[18:59:29 CET] <kerio> ...well ok that's standard def video
[18:59:36 CET] <kerio> so i guess it kinda works?
[18:59:50 CET] <kerio> anyway ffmpeg -i whatever.mpg -c:v libx264 -crf 18 whatever.mkv
[18:59:54 CET] <JEEB> anyways, the idea of CRF is to just find the highest value that still looks good enough. same with QP but QP just is much less adaptive
[19:00:11 CET] <JeffATL> kerio: yeah, and i have a TBC in front
[19:00:33 CET] <kerio> also add some setting for audio i guess
[19:01:11 CET] <kerio> i guess aac?
[19:02:56 CET] <JeffATL> kerio: i have to be careful as i need to make sure present and future editors and players can read the files
[19:03:38 CET] <kerio> maybe vp8/opus would be better then?
[19:06:09 CET] <pano> hi
[19:08:11 CET] <pano> i need some help please :)
[19:11:26 CET] <pano> i'm trying to read rtsp stream from Sricam SP009 (Software: 14.0.0.52, System version: 24, uBoot version: 4, CPU version: 5).
[19:11:51 CET] <pano> i'm using ffmpeg and running next command:
[19:12:28 CET] <pano> ffmpeg -i rtsp://{user}:{password}@{ip}:554/onvif1 -c copy -f segment -segment_time 10 "capture-%03d.avi"
[19:14:05 CET] <pano> the output is:
[19:14:12 CET] <pano> ffmpeg version 3.0.5-0ubuntu0.16.10.1 Copyright (c) 2000-2016 the FFmpeg developers
[19:14:12 CET] <pano>   built with gcc 6.2.0 (Ubuntu 6.2.0-5ubuntu12) 20161005
[19:14:12 CET] <pano>   configuration: --prefix=/usr --extra-version=0ubuntu0.16.10.1 --toolchain=hardened --libdir=/usr/lib/x86_64-linux-gnu --incdir=/usr/include/x86_64-linux-gnu --cc=cc --cxx=g++ --enable-gpl --enable-shared --disable-stripping --disable-decoder=libopenjpeg --disable-decoder=libschroedinger --enable-avresample --enable-avisynth --enable-gnutls --enable-ladspa --enable-libass --enable-libbluray --enable-libbs2b --enable-l
[19:14:14 CET] <pano> ibcaca --enable-libcdio --enable-libflite --enable-libfontconfig --enable-libfreetype --enable-libfribidi --enable-libgme --enable-libgsm --enable-libmodplug --enable-libmp3lame --enable-libopenjpeg --enable-libopus --enable-libpulse --enable-librubberband --enable-librtmp --enable-libschroedinger --enable-libshine --enable-libsnappy --enable-libsoxr --enable-libspeex --enable-libssh --enable-libtheora --enable-libtwol
[19:14:16 CET] <pano> ame --enable-libvorbis --enable-libvpx --enable-libwavpack --enable-libwebp --enable-libx265 --enable-libxvid --enable-libzvbi --enable-openal --enable-opengl --enable-x11grab --enable-libdc1394 --enable-libiec61883 --enable-libzmq --enable-frei0r --enable-chromaprint --enable-libx264
[19:14:18 CET] <pano>   libavutil      55. 17.103 / 55. 17.103
[19:14:20 CET] <pano>   libavcodec     57. 24.102 / 57. 24.102
[19:14:22 CET] <pano>   libavformat    57. 25.100 / 57. 25.100
[19:14:24 CET] <pano>   libavdevice    57.  0.101 / 57.  0.101
[19:14:26 CET] <pano>   libavfilter     6. 31.100 /  6. 31.100
[19:14:28 CET] <pano>   libavresample   3.  0.  0 /  3.  0.  0
[19:14:30 CET] <pano>   libswscale      4.  0.100 /  4.  0.100
[19:14:32 CET] <pano>   libswresample   2.  0.101 /  2.  0.101
[19:14:34 CET] <pano>   libpostproc    54.  0.100 / 54.  0.100
[19:14:36 CET] <pano> [h264 @ 0x55da7a0a6a60] concealing 2650 DC, 2650 AC, 2650 MV errors in P frame
[19:14:38 CET] <pano> [h264 @ 0x55da7a0a6a60] Increasing reorder buffer to 1
[19:14:40 CET] <pano> [h264 @ 0x55da7a0a6a60] out of range intra chroma pred mode at 53 9
[19:14:42 CET] <pano> [h264 @ 0x55da7a0a6a60] error while decoding MB 53 9
[19:14:44 CET] <pano> [h264 @ 0x55da7a0a6a60] concealing 2876 DC, 2876 AC, 2876 MV errors in P frame
[19:14:46 CET] <pano> [h264 @ 0x55da7a0a6a60] mb_type 39 in P slice too large at 62 0
[19:14:48 CET] <pano> [h264 @ 0x55da7a0a6a60] error while decoding MB 62 0
[19:14:50 CET] <pano> [h264 @ 0x55da7a0a6a60] concealing 3587 DC, 3587 AC, 3587 MV errors in P frame
[19:14:52 CET] <pano> [h264 @ 0x55da7a0a6a60] cbp too large (58) at 19 1
[19:14:54 CET] <pano> [h264 @ 0x55da7a0a6a60] error while decoding MB 19 1
[19:14:56 CET] <pano> [h264 @ 0x55da7a0a6a60] concealing 3550 DC, 3550 AC, 3550 MV errors in P frame
[19:14:58 CET] <pano> [h264 @ 0x55da7a0a6a60] Reinit context to 640x368, pix_fmt: yuv420p
[19:15:00 CET] <pano> Guessed Channel Layout for  Input Stream #0.1 : mono
[19:15:01 CET] <JeffATL> pano: ffs
[19:15:02 CET] <pano> Input #0, rtsp, from 'rtsp://{user}:{password}@{ip}:554/onvif1':
[19:15:04 CET] <pano>   Metadata:
[19:15:06 CET] <pano>     title           : H.264 Video, RtspServer_0.0.0.2
[19:15:08 CET] <pano>   Duration: N/A, start: 0.000000, bitrate: N/A
[19:15:09 CET] <JeffATL> don't do this
[19:15:10 CET] <pano>     Stream #0:0: Video: h264 (Baseline), yuv420p, 640x360, 19.92 tbr, 90k tbn, 180k tbc
[19:15:12 CET] <pano>     Stream #0:1: Audio: pcm_alaw, 8000 Hz, 1 channels, s16, 64 kb/s
[19:15:12 CET] <JeffATL> pastebin this
[19:15:14 CET] <pano> Output #0, segment, to 'capture-%03d.avi':
[19:15:16 CET] <pano>   Metadata:
[19:15:18 CET] <pano>     title           : H.264 Video, RtspServer_0.0.0.2
[19:15:20 CET] <pano>     encoder         : Lavf57.25.100
[19:15:22 CET] <pano>     Stream #0:0: Video: h264, yuv420p, 640x360, q=2-31, 19.92 tbr, 600 tbn, 90k tbc
[19:15:24 CET] <pano>     Stream #0:1: Audio: pcm_alaw, 8000 Hz, mono, 64 kb/s
[19:15:24 CET] <JeffATL> must...ignore...you...
[19:15:26 CET] <pano> Stream mapping:
[19:15:28 CET] <pano>   Stream #0:0 -> #0:0 (copy)
[19:15:30 CET] <pano>   Stream #0:1 -> #0:1 (copy)
[19:15:32 CET] <pano> Press [q] to stop, [?] for help
[19:15:34 CET] <pano> frame=  646 fps= 10 q=-1.0 Lsize=N/A time=00:01:05.19 bitrate=N/A speed=1.05x
[19:15:36 CET] <pano> video:931kB audio:509kB subtitle:0kB other streams:0kB global headers:0kB muxing overhead: unknown
[19:15:40 CET] <pano> as a result i get number of files like
[19:15:44 CET] <pano> oh, sorry
[19:15:46 CET] <pano> :) as you wish
[19:18:11 CET] <DHE> need a bot to auto-kick people or something... :/
[19:24:04 CET] <pano> so as i said above, as a result i get number of files with video inside. But there is an issue which i cannot overcome. files capture-001.avi and next (capture-002.avi, capture-003.avi ... etc) has some empty space in front of video ( capture-001.avi has 10 sec of empty, capture-002.avi has 20 sec and so far).
[19:24:53 CET] <pano> the question is: how should i change command to remove this empty space from capture?
[19:28:15 CET] <JeffATL> kerio: actually i would be just fine with keeping the encoding just as the input was encoded - i would just rather store the tape rips with the frame edge artifacts already masked out
[19:28:39 CET] <pano> http://pastebin.com/iWDXCc8Z
[19:29:33 CET] <pano> this is output :). I DO SORRY for posting this as message
[19:32:57 CET] <JeffATL> kerio: and also, i need to encode a and v in a way that is going to be pretty universal from now onward
[19:35:07 CET] <kerio> vp8/opus maybe
[19:58:11 CET] <aarwine> I"m working on creating a timelapse of some pictures of have with this command: cat *.jpg | ffmpeg -f image2pipe -r 15 -vcodec mjpeg -s 1280x720 -i - -vcodec libx264 timelapse.mp4 - The issue is that the resulting file appears to be at a huge resolution: 3280x2464
[20:02:23 CET] <aarwine> ah, it had something to do with the ordering of the flags
[20:02:59 CET] <AndrewUnmuted> I am encoding 4k ProRes HQ 4:2:2 sources for playback in VR headsets via libx264. The sources are equirectangular spherical projections. Sometimes the x264 output exhibits a good deal of temporal noise, especially on bright textures and backgrounds. What filter(s) can I invoke in FFmpeg to help reduce these artifacts?
[20:17:54 CET] <llogan> aarwine: you can use the glob pattern and get rid of the cat. ffmpeg -framerate 15 -pattern_type glob -i "*.jpg" -vf "scale=1280:-2,format=yuv420p" output.mp4
[20:28:37 CET] <adayzdone> Hi All
[20:28:40 CET] <adayzdone> Does anyone know how to output multiple files at once using the same encoding with ffmpeg?
[20:28:48 CET] <adayzdone> usr/local/bin/ffmpeg -y -i '/Users/me/input.MP4' -s hd480 -c:v libx264 -crf 23 -c:a aac -strict -2 '/Users/me/output.MP4'
[20:28:56 CET] <adayzdone> I want to also export to '/Users/me/output2.MP4'
[20:29:04 CET] <adayzdone> I didn't understand this page: https://trac.ffmpeg.org/wiki/Creating%20multiple%20outputs
[20:29:32 CET] <llogan> is each output supposed to be different (width x height, etc)?
[20:29:52 CET] <llogan> or the same?
[20:29:54 CET] <adayzdone> llogan No... same exact output in two different locations
[20:30:06 CET] <llogan> then you should use the tee muxer
[20:30:37 CET] <adayzdone> I read about it, I didn't understand how to use the command
[20:30:49 CET] <adayzdone> All of the examples were streams
[20:31:20 CET] <adayzdone> llogan using the command above, what would be the sytax for tee?
[20:32:39 CET] <llogan> ffmpeg -i input -map 0 -f tee -vf scale=-2:480 -c:v libx264 -crf 23 -c:a aac "output1.mp4|output2.mp4"
[20:33:06 CET] <llogan> you don't need "-strict -2" unless your ffmpeg is old, which you shouldn't use
[20:33:48 CET] <adayzdone> llogan Thank you. I got that online. Is there a better default command to encode a local file to 480?
[20:33:58 CET] <llogan> i just gave it to you
[20:34:11 CET] <adayzdone> llogan Thanks again
[20:34:32 CET] <llogan> you can adjust -crf and -preset to your needs
[20:34:43 CET] <llogan> https://trac.ffmpeg.org/wiki/Encode/H.264
[20:39:08 CET] <adayzdone> Strange... it output to files with a black screen and audio
[20:39:12 CET] <adayzdone> two*
[20:39:22 CET] <adayzdone> The first command did not
[20:49:28 CET] <adayzdone> llogan http://pastebin.com/gLzh6DQG
[20:53:17 CET] <adayzdone> Does that help?
[20:57:47 CET] <llogan> adayzdone: use  -vf "scale=-2:480,format=yuv420p"
[21:03:55 CET] <adayzdone> llogan no luck
[21:03:59 CET] <adayzdone> http://pastebin.com/D3itSGhH
[21:04:09 CET] <adayzdone> black video, has audio
[21:08:53 CET] <adayzdone> llogan even when I use the original command and add tee to it, both files have no video
[21:09:02 CET] <adayzdone> ffmpeg -i '/Users/me/input.MP4' -s hd480 -c:v libx264 -crf 23 -c:a aac -strict -2 -map 0 -f tee "/Users/me/test.MP4'|'/Users/me/test2.MP4'"
[21:12:12 CET] <llogan> you're ignoring my suggestions
[21:12:46 CET] <adayzdone> how so?
[21:15:59 CET] <adayzdone> llogan Which suggestion did I ignore?
[21:30:58 CET] <llogan> i got mapping wrong. if he comes back tell him to do: ffmpeg -i input -filter_complex "[0:v]scale=-2:480,format=yuv420p[v]" -map "[v]" -map 0:a -c:v libx264 -c:a aac -f tee "output1.mp4|output2.mp4"
[23:00:35 CET] <Dududu> hi
[23:00:56 CET] <Dududu> is there a google app script library for ffmpeg
[23:15:20 CET] <leibnizzle> Hey guys, I just discovered ffmpeg and it looks like a really cool project
[23:15:58 CET] <leibnizzle> Would be fun to get in and contribute
[23:17:32 CET] <leibnizzle> I'm curious though, does ffmpeg lay off everything re: the transmission?
[23:17:49 CET] <leibnizzle> forward error correction and so forth
[23:24:44 CET] <Mavrik> not sure I follow your question
[23:26:52 CET] <leibnizzle> I'd like to build a full stack that includes video compression, channel coding, transmission protocol, channel decoding and decompression
[23:27:28 CET] <leibnizzle> Do I understand it correctly that ffmpeg does not concern itself with channel coding?
[23:39:34 CET] <klaxa> not sure that is needed in times of tcp?
[23:39:41 CET] <klaxa> or i don't understand the question either
[23:42:46 CET] <leibnizzle> I'm interested in realtime streaming
[23:43:18 CET] <leibnizzle> with v low latency
[23:44:27 CET] <klaxa> maybe this can serve as a starting point: https://trac.ffmpeg.org/wiki/StreamingGuide
[23:46:49 CET] <leibnizzle> yeah that's really neat but it kind of ducks the question
[23:47:37 CET] <leibnizzle> Or answers it indirectly, I guess
[23:47:56 CET] <leibnizzle> Seems there is no support for forward error correction
[23:48:56 CET] <klaxa> as far as i can tell, forward error correction is for data transmission, this is abstracted by the protocols implemented
[23:49:15 CET] <leibnizzle> abstracted in the case of tcp, ignored in the case of udp
[23:49:52 CET] <leibnizzle> But that's essentially what I was wondering
[23:50:00 CET] <leibnizzle> It's an entirely reasonable design choice obviously :)
[23:51:48 CET] <klaxa> you should be able to write your own server and client with some sort of error correction in the application logic and integrate ffmpeg or video streams or data streams in general into that
[23:52:07 CET] <klaxa> but i'm not sure if creating yet another protocol will magically make everything great
[23:52:52 CET] <leibnizzle> It would be on top of UDP
[23:53:11 CET] <klaxa> yes, with tcp there is no reason to do that :)
[23:53:24 CET] <klaxa> rtsp and rtp already use udp afaik
[23:53:42 CET] <klaxa> rtmp is tcp
[23:53:50 CET] <leibnizzle> I don't think it would be of much use in the "common" applications
[23:54:09 CET] <leibnizzle> Where the packets are large and the latency is kind of whatever
[23:54:22 CET] <leibnizzle> That is true
[23:54:46 CET] <klaxa> maybe you can take a look at µTP used in bittorrent
[23:54:48 CET] <klaxa> https://en.wikipedia.org/wiki/Micro_Transport_Protocol
[23:55:46 CET] <leibnizzle> I was thinking UDP Lite actually
[23:56:17 CET] <leibnizzle> Doesn't seem supported either, but that is prob easy to do
[23:57:10 CET] <klaxa> ah that seems useful too
[23:59:00 CET] <klaxa> if you can get a hold of a network engineer of one of these cloud gaming services, i bet they can give even better advice
[23:59:21 CET] <furq> webrtc is probably worth looking at
[23:59:39 CET] <leibnizzle> oh right, that's googles thing right?
[00:00:00 CET] --- Thu Dec 29 2016


More information about the Ffmpeg-devel-irc mailing list