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

burek burek021 at gmail.com
Wed Mar 22 03:05:01 EET 2017


[00:28:32 CET] <momomo> what is the -movflags +faststart option really for? i can't see that it makes any difference
[00:29:04 CET] <DHE> it puts metadata needed to start playback near the front of the file so that streaming can playback without needing the whole file loaded
[00:29:15 CET] <DHE> dunno about the specifics, but it's loosely like that
[02:11:24 CET] <RossW> anyone got the ffmpeg incantation required to crop an area (x1,y1)-(x2,y2) from an incoming RTSP stream, to then use in the rest of my processing?
[02:12:02 CET] <RossW> eg, if the stream is 2688x1500, and I want to take a 1920x1080 chunk of it, lets say out of the centre... ?
[02:12:44 CET] <klaxa> https://ffmpeg.org/ffmpeg-filters.html#crop
[02:15:30 CET] <RossW> klaxa: does that go before the -i? I'm a neophyte ffmpeg user and still getting my head around it's operation.
[02:17:06 CET] <klaxa> ffmpeg -i rtsp://server -cf crop=1920:1080:384:210 output.mkv
[02:17:10 CET] <klaxa> *-vf
[02:17:16 CET] <klaxa> instead of -cf
[02:17:30 CET] <RossW> Mmm.
[02:17:42 CET] <RossW> ffmpeg -f lavfi -i anullsrc=channel_layout=stereo:sample_rate=44100 -buffer_size 128000 -rtsp_transport tcp -i "$camip" -c:v copy -c:a aac -pix_fmt yuv420p -s 1920x1080 -t $duration ..... (etc)
[02:17:54 CET] <klaxa> you first define inputs, then what you want to do with it, then how to save it
[02:18:23 CET] <klaxa> you should be able to put it anywhere between your input and your output
[02:18:28 CET] <RossW> What I'm trying to get to is to read rtsp, cut/scale if required, then overlay a watermark/logo, then stream it.
[02:18:37 CET] <klaxa> i prefer to put it before the codec settings, as it occurs before encoding
[02:18:45 CET] <RossW> ok, I'll give that a go and see.
[02:24:41 CET] <RossW> Filtergraph 'crop=w=200:h=200:x=400:y=500' was defined for video output stream 0:0 but codec copy was selected.
[02:24:42 CET] <RossW> Filtering and streamcopy cannot be used together.
[02:25:05 CET] <RossW> I guess I have to lose the -copy ??
[02:47:14 CET] <klaxa> yes
[02:48:12 CET] <klaxa> since you want a watermark, you have to re-encode in any case
[05:41:36 CET] <oerg866> Hi, how do I get VP9 packetizing working?
[05:41:41 CET] <oerg866> http://img.ctrlv.in/img/17/03/21/58d0aef3665e9.png  <-- this is as far as I got.
[05:42:06 CET] <oerg866> Same principle works fine with h265
[05:42:09 CET] <oerg866> for example
[06:07:59 CET] <petecouture> is there any performance different between    scale=1024:576    versus    -s 1280x576   I understand -s just puts it at the end of the filtergraph but I wanted to know if there's one that's recommended.
[07:39:05 CET] <DHE> petecouture: no performance difference I think. unless you're changing the scaling algorithm which takes different syntax
[08:11:48 CET] <petecouture> @DHE Gotcha thanks. Ya I think -s is just a shortcut to having to write out filter_complex
[11:36:02 CET] <mcjack> Hi, can someone tell me how to get an AVPixFmtDescriptor from an AVPixelFormat?
[11:38:49 CET] <mcjack> nevermind, found it: https://ffmpeg.org/doxygen/trunk/pixdesc_8c.html#afe0c3e8aef5173de28bbdaea4298f5f0()
[13:47:40 CET] <ZeroWalker> when you encode audio, are you supposed to buffer to the specified framesize, which would mean "framesize*channels*bytesPerSample" ?
[13:48:00 CET] <mcjack> I try to write a video file similar to the code in decoding_encoding.c example, but the stream only has I_Frames. Any idea what I did wrong?
[13:52:38 CET] <mcjack> you can see the code here, how I set up the encodercontext: https://github.com/filmstro/filmstro_ffmpeg/blob/master/modules/filmstro_ffmpeg/filmstro_ffmpeg_FFmpegVideoWriter.cpp#L188
[13:55:50 CET] <mcjack> I also tried setting manually frame->pict_type either AV_PICTURE_TYPE_P  or to NONE, thought it might make the encoder to choose the correct one&
[14:05:55 CET] <cesdo> Hey, guys, I got an error ERROR: x265 not found using pkg-config
[14:06:02 CET] <cesdo> Can you help?
[14:06:59 CET] <cesdo> I did instructions from https://trac.ffmpeg.org/wiki/CompilationGuide/Ubuntu
[14:26:22 CET] <ubitux> look at your config.log
[14:51:43 CET] <cesdo> ubitux: config.log is very large
[14:52:02 CET] <ubitux> look at the end
[14:52:12 CET] <ubitux> or look for x265
[14:55:17 CET] <cesdo> ubitux: http://pastebin.com/bNCqZL96
[14:56:06 CET] <ubitux> your x265 install says you need -lnuma
[14:56:36 CET] <ubitux> pkg-config --libs x265
[14:58:55 CET] <cesdo> ubitux: -lx265
[15:00:00 CET] <ubitux> pkg-config --static --libs x265
[15:00:46 CET] <cesdo> ubitux: -lx265 -lstdc++ -lm -lrt -ldl -lnuma
[15:01:04 CET] <ubitux> here you go
[15:01:13 CET] <ubitux> the installed .pc of your x264 wants numa
[15:01:27 CET] <ubitux> so you built it with numa but don't have it
[15:01:37 CET] <ubitux> that's a problem with your x265 install
[15:01:47 CET] <ubitux> (i meants x265, not x264)
[15:01:55 CET] <cesdo> Ahh
[15:02:20 CET] <cesdo> I should compile it youself
[15:03:03 CET] <cesdo> ubitux: am I right?
[15:03:17 CET] <ubitux> i don't know
[15:04:07 CET] <cesdo> ubitux: ? I mean compilling x265
[15:05:12 CET] <ubitux> i don't know, i never built x265, i don't know its dependencies nor what you want
[15:05:26 CET] <ubitux> you probably have multiple solution, all i'm saying is that x265 wants to be linked against numa
[15:09:19 CET] <BleuDiamant> Hello :)
[15:11:13 CET] <BleuDiamant> i have a question about ffmpeg, i need to do this http://i.imgur.com/VaXCc9T.png ffmpeg can do that ? (for the 3 first step i have succeeded but for the last step ?)
[15:11:20 CET] <cesdo> ubitux: what is .pc?
[15:11:56 CET] <ubitux> Pkg-Config file
[15:12:03 CET] <cesdo> aah
[15:12:07 CET] <ubitux> installed by x265
[15:12:43 CET] <ubitux> BleuDiamant: scale=...,transpose=...,pad=...
[15:13:27 CET] <alexpigment> BleuDiamant: that sort of successive filtering is not my strong suit, but I just wanted to point out a potential error in your drawing. Presumably you mean 1080x608, right?
[15:14:03 CET] <BleuDiamant> yeah sorry i made a mistake ><
[15:14:26 CET] <alexpigment> k, just making sense. @ubitux's plan makes sense to me
[15:15:31 CET] <alexpigment> *just making sure, i mean
[15:15:55 CET] <BleuDiamant> no problem :)
[15:16:14 CET] <BleuDiamant> ok thank ubitux i look "pad"
[15:18:02 CET] <cesdo> ubitux: Package libnuma-dev helps me)) It runs)) Thanks!
[15:26:33 CET] <ffnopeg> hello! I'm trying to do something, which may not be a good idea after all, but having trouble setting the right ffmpeg flags. I have a .avi file with audio and video streams, I'd like to pipe the video stream (doing that without issues right now) and play the audio stream using ffmpeg
[15:26:48 CET] <ffnopeg> is there some way to do that?
[15:29:03 CET] <ffnopeg> running it as ffmpeg -re -i inputfile.avi -f image2pipe -, which sends the frames individually but ffmpeg also drops the audio
[15:53:19 CET] <BleuDiamant> this perfect with "pad" thank @ubitux
[16:01:41 CET] <DHE> fflogger: you can then put in more parameters to describe a second output "file" for the audio. if you can do "ffmpeg -re -i inputfile.avi <options>" to play the audio, you should be able to just append <options> to your video player
[16:12:22 CET] <mcjack> I have still problems encoding the video, here is the full output when I run ffprobe on the output: https://github.com/filmstro/filmstro_ffmpeg/issues/3#issuecomment-288083162
[16:12:54 CET] <mcjack> [h264 @ 0x7fd37a808000] non-existing PPS 0 referenced
[16:13:36 CET] <mcjack> seems like the pixel format doesn't make it into the file: (Video: h264 (avc1 / 0x31637661), none, 800x600, 410 kb/s): unspecified pixel format
[16:13:59 CET] <mcjack> but I definitively set it, verified it via debugger
[16:27:17 CET] <ffnopeg> DHE: I think was directed to me. Ah, just noticed I mixed two things and forgot that ffmpeg wasn't rendering the video stream either
[16:33:23 CET] <momomo> is there a way to fake choppy hls output ?
[17:13:33 CET] <mcjack> Ok, I mixed the decoding_encoding.c and muxing.c example. So setting "videoContext->flags |= AV_CODEC_FLAG_GLOBAL_HEADER;" was bad&
[17:14:03 CET] <mcjack> The error in ffprobe is gone, but still no image&
[17:39:26 CET] <mcjack> Wrong again, not setting AV_CODEC_FLAG_GLOBAL_HEADER made the stream vanish, so no wonder no error message&
[17:40:51 CET] <mcjack> Can somebody please have a look at the output format, anything suspicious here?
[17:40:53 CET] <mcjack> Output #0, mp4, to '/Users/daniel/Documents/test/foot4.mp4':
[17:40:53 CET] <mcjack>     Stream #0:0: Video: h264, yuv420p(pc), 640x324 [SAR 1:1 DAR 160:81], q=2-31, 400 kb/s, 24k tbn
[17:40:53 CET] <mcjack>     Stream #0:1: Audio: aac, 48000 Hz, stereo, fltp, 64 kb/s
[17:41:09 CET] <cybex_> hi all, based on a SU question.  ffmpeg -i in_file.mp4 -ss 00:10:00 -t 00:10:30 -c copy out_file.mp4 should create a file of length 30s, starting at 10min and ending at 10min 30s. Is this correct? https://superuser.com/questions/140899/ffmpeg-splitting-mp4-with-same-quality
[17:42:34 CET] <cybex_> if so, something is wrong. Since I created a file which ends at 10min has (i.e. is 10min in length) and has roughly the same size as the aforementioned 30's file
[17:43:51 CET] <ChocolateArmpits> cybex_, there are two commands that affect the end file length -t and -to. -t as you used defines the total length of the file, -to when used defines the end time. So in this case you should use -to
[17:44:44 CET] <cybex_> ChocolateArmpits: Thank you for the clarification!
[17:44:55 CET] <ChocolateArmpits> np
[18:51:08 CET] <faLUCE> Hello. What does it happen if I use FF_PROFILE_H264_HIGH_422  for a YUV444 planar frame? I don't get any warning by libav, and I don't understand if I can combine them
[18:59:06 CET] <phillipk> is there a way to run FFMPEG in a hidden state?  I have "-loglevel quiet" but I still see a command window opening--maybe it's not FFMPEG but the script that's launching ffmpeg
[19:02:17 CET] <JEEB> welcome to windows, console applications always open a visible console
[19:03:59 CET] <phillipk> thanks--not the end of the world I suppose--though distracting when I test locally
[19:03:59 CET] <vlt> phillipk: You could run it in a screen or tmux session.
[19:27:00 CET] <ZeroWalker> is rtcp like rtp but uses tcp?
[19:30:25 CET] <st-gourichon-fid> ZeroWalker no.
[19:31:02 CET] <st-gourichon-fid> https://en.wikipedia.org/wiki/RTP_Control_Protocol Quality-of-service feedback from RTP receivers to senders.
[19:31:06 CET] <blue_misfit> hey guys I'm consistently seeing h264 transcodes of prores sources missing the first couple frames of video when I compare them in Premiere
[19:31:11 CET] <blue_misfit> is this a known issue ???
[19:31:21 CET] <kepstin> no, rtcp is a protocol run alongside rtp (usually on rtp port +1) which adds some signalling for things like packet loss/retransmits
[19:38:10 CET] <ZeroWalker> ah
[19:38:54 CET] <ZeroWalker> so, what should i use to send rtp (or something that does the same) with tcp?;o
[19:39:31 CET] <kepstin> if you're using tcp, just use any standard container format that can be streamed
[19:39:49 CET] <kepstin> mpeg-ts is common, you can even use matroska or something
[19:40:37 CET] <DHE> mpeg-ts has high-ish overhead, but requires no seeking whatsoever for streaming or playback and is very well supported
[19:53:57 CET] <blue_misfit> anyone seen this before (2 frames missing at the head of a prores-> h264 transcode)?
[20:10:44 CET] <st-gourichon-fid> Hello. On Ubuntu 16.04, have compiled ffmpeg okay but cannot compile avplay. Have installed all dependencied per https://trac.ffmpeg.org/wiki/CompilationGuide/Ubuntu .
[20:11:27 CET] <st-gourichon-fid> includes, libs are generated. generated bin directory is empty.
[20:11:30 CET] <c_14> you mean ffplay?
[20:12:52 CET] <c_14> upload the contents of your config.log to a pastebin service
[20:13:09 CET] <st-gourichon-fid> c_14, checking, thanks.
[20:21:38 CET] <st-gourichon-fid> I'm surprised that https://trac.ffmpeg.org/wiki/CompilationGuide does not tell where to find source code. Public search engine tell https://git.ffmpeg.org/ffmpeg.git but not wiki.
[20:26:04 CET] <c_14> https://ffmpeg.org/download.html
[20:32:01 CET] <st-gourichon-fid> c_14, ah, there's actually something with the configure options.
[20:33:08 CET] <st-gourichon-fid> bisecting...
[20:34:51 CET] <st-gourichon-fid> "--disable-avfilter" prevents build of "ffplay".
[20:38:00 CET] <kepstin> disabling avfilter prevents building lots of stuff. kind of important library.
[20:39:42 CET] <st-gourichon-fid> --disable-avresample also is enough to kill ffplay
[20:41:04 CET] <kepstin> if you want to save some time, just read the deps in the configure script: https://github.com/FFmpeg/FFmpeg/blob/master/configure#L3200
[20:42:07 CET] <st-gourichon-fid> kepstin, thanks!
[20:42:45 CET] <st-gourichon-fid> kepstin, these seem to be direct dependencies, not transitive.
[20:43:14 CET] <st-gourichon-fid> Anyway enabling avdevice, avfilter and eavresample seems enoguh to get ffplay back. Thanks.
[20:43:35 CET] <kepstin> st-gourichon-fid: as long as you don't disable those libraries, the configure script uses "select" to pull in the remaining required features
[20:43:59 CET] <kepstin> (which is mostly just a few builtin video filters)
[20:44:40 CET] <kepstin> but yeah, it's not transitive, so you'll need avutil as well (*everything* needs avutil tho)
[20:46:22 CET] <kepstin> (I assume the configure script doesn't even let you turn off avutil, since "--disable-avutil" would mean "don't build anything at all")
[20:46:25 CET] <st-gourichon-fid> Which kind of "select" is that?
[20:46:43 CET] <st-gourichon-fid> grep returns zillions of occurrences. :-)
[20:47:35 CET] <kepstin> st-gourichon-fid: I'm referring to the magic variables in the configure script with names ending in _select
[20:48:08 CET] <Alex______> Anyone available for a question?
[20:48:19 CET] <kepstin> st-gourichon-fid: if you enable something in configure, the script also enables everything in the something_select variable
[20:48:52 CET] <kepstin> Alex______: if you don't ask the question, you definitely won't get an answer ;)
[20:49:31 CET] <Alex______> Is it possible to use ffmpeg to stream out an already recorded video? Like if i have a .mp4 video on my desktop, can i stream it out to http:192.168.0.150:9005/myVideo.mp4 or something like that?
[20:49:41 CET] <st-gourichon-fid> Alex______,  sure
[20:50:11 CET] <st-gourichon-fid> I mean, I streamed video using ffmpeg, but via RTP not http.
[20:50:46 CET] <kepstin> Alex______: the ffmpeg tool isn't designed to run as a streaming server, but it can be used to send a file to an external streaming server
[20:50:53 CET] <Alex______> We currently are able to grab live frames from a UV4L stream via raspberry pi on html, but we want to also be able to stream out a recorded video
[20:51:01 CET] <kepstin> there's some limited stuff you can do if you know you're only gonna have one client.
[20:51:22 CET] <Alex______> There would be a maximum of 2 clients accessing a recorded video at one time
[20:51:44 CET] <kepstin> alright, you'll want an actual streaming server then :/
[20:52:02 CET] <klaxa> the way ffmpeg (the binary) "streams" over http is like a webserver
[20:52:16 CET] <st-gourichon-fid> Are your client close to the server (say, local network) or far on the internet ?
[20:52:19 CET] <klaxa> and like kepstin said, one client (output) only :(
[20:52:26 CET] <Alex______> Everything is local network
[20:52:44 CET] <Alex______> How would I go about doing it for one client?
[20:53:05 CET] <kepstin> alexpigment: simplest way to stream to multiple clients - if you're ok with HLS segmented streaming, you can have ffmpeg generate the stream files to be served with a small webserver like nginx
[20:53:05 CET] <st-gourichon-fid> kepstin, klaxa, would you consider multicast RTP an option?
[20:53:22 CET] <st-gourichon-fid> On local network.
[20:53:37 CET] <klaxa> ffmpeg -i file.mp4 -c copy -listen 1 -f mp4 http://0.0.0.0:8080 ?
[20:53:46 CET] <klaxa> not sure if -f mp4 is "streamable"
[20:54:09 CET] <klaxa> dunno, never really used rtp
[20:54:13 CET] <kepstin> no, mp4 is not streamable
[20:55:30 CET] <st-gourichon-fid> I would consider a mp4 file not adapted for a live video stream.
[20:55:59 CET] <Alex______> What about .avi?
[20:56:03 CET] <st-gourichon-fid> AAAh
[20:56:27 CET] <st-gourichon-fid> Ah, you meant recorded video also.  Should both clients be allowed to stream the recorded video at any time and pause etc?
[20:57:11 CET] <klaxa> if your clients are reasonably recent you could use matroska
[20:57:25 CET] <kepstin> Alex______: mkv would probably work, mepg-ts should work with more stuff but is less cool.
[20:58:26 CET] <Alex______> So we have a backend server, where the recorded files would be stored. We want to try and also allow these recorded videos to be streamed out, if a user missed what was being broadcasted earlier
[20:59:17 CET] <kepstin> Alex______: ok, so what you need it to run an actual streaming server application on your backend server which e.g. accepts rtmp streams or something. Then you can use ffmpeg on the rpi systems to send video to that server, and have it handle the rest
[20:59:52 CET] <Alex______> What type of streaming server would you reccomend? Sorry for all the questions, quite new to this
[21:00:02 CET] <furq> nginx-rtmp is good
[21:00:21 CET] <kepstin> Alex______: to be honest, you might consider just streaming to twitch or youtube or something, they already have this set up ;)
[22:49:41 CET] <ZeroWalker> but if i stream tcp, with say flv, it will fail on "avio_open" or what it's called. I think it's cause it's waiting for the tcp establishing, but i don't know how to listen for the tcp in say, a media player
[22:57:32 CET] <blue_misfit> anyone know why an old build (2.8 era) would output a different number of frames than a newer build when transcoding ProRes MOVs at 23.976fps into H.264 in MP4?
[22:58:43 CET] <durandal_1707> editlist
[22:59:11 CET] <durandal_1707> try adding -ignore_editlist 1
[23:03:16 CET] <blue_misfit> durandal_1707, thank you!!!
[23:03:25 CET] <blue_misfit> what's the story with these? how can I tell if my MOVs have edit lists?
[23:28:33 CET] <alexpigment> blue_misfit - i don't know if ProRes works the same as an MPEG-4 based MOV file, but if you view the file with MediaInfo, usually it'll have a 3rd stream called "Quicktime Time Code"
[23:28:57 CET] <alexpigment> was just dealing with a similar issue today, actually
[23:28:57 CET] <blue_misfit> for sure
[23:29:48 CET] <blue_misfit> yeah my sources always have that
[23:30:10 CET] <alexpigment> interesting
[23:30:19 CET] <blue_misfit> ProRes feature masters from studios :)
[23:30:23 CET] <alexpigment> i don't work with ProRes enough to know that it's always there, but i'll take your word for it
[23:30:29 CET] <blue_misfit> generally exported from an NLE
[23:30:35 CET] <blue_misfit> quite common
[23:31:11 CET] <blue_misfit> have you tried this ignore_editlist thing?
[23:32:45 CET] <alexpigment> yeah, i mean i've worked with ProRes from Adobe Premiere, but generally, i'm moving something TO Premiere for exporting to a delivery format, so it's just not common for my workflow. anyway, no i haven't used the ignore_editlist feature. it's cool to know it exists though
[00:00:00 CET] --- Wed Mar 22 2017


More information about the Ffmpeg-devel-irc mailing list