[Ffmpeg-devel-irc] ffmpeg.log.20190209
burek
burek021 at gmail.com
Sun Feb 10 03:05:02 EET 2019
[00:05:31 CET] <shibboleth> http://178.34.230.26/liveimg.cgi?serverpush=1
[00:05:41 CET] <shibboleth> both ffplay and mplayer struggle with it
[00:05:52 CET] <shibboleth> ideas, libav option flags?
[01:02:00 CET] <wfbarksdale> i'm working on some code for remuxing using c api, my output mp4, when using ffprobe shows an error, AVC: nal size 0. Does anyone have an intuition about what i might be for that to occur?
[01:02:45 CET] <wfbarksdale> the video stream also plays back all black
[01:02:57 CET] <wfbarksdale> or rather, is probably failing to be parsed
[01:05:31 CET] <wfbarksdale> I imagine i am just forgetting to set something on my output context but i can't figure out what
[01:29:54 CET] <No0n3Left> When downloading an HLS video stream (m3u8) with ffmpeg, I cannot open the file while it is downloading with VLC or mpv, mpv telling me it doesnt recognise the format. If I hit Q in ffmpeg to stop the download midway, and open the files, I can play them, is there a way to be able to play them while downloading, as you could be able to while downloading most other video formats (like mp4)
[01:34:35 CET] <analogical> is it possible to crop a video with FFmpeg without re-encoding the video?
[01:36:29 CET] <furq> analogical: sort of
[01:36:50 CET] <furq> you can change the h264 or hevc crop metadata
[01:37:05 CET] <furq> https://www.ffmpeg.org/ffmpeg-bitstream-filters.html#h264_005fmetadata
[01:37:32 CET] <furq> No0n3Left: save the stream to something other than mp4
[01:39:33 CET] <No0n3Left> Okay, thanks, mkv worked
[01:40:26 CET] <analogical> mkv is superior to mp4 in my not so humble opinion :)
[01:51:07 CET] <Skandalist> Hmmm, so nobody can tell how to change video speed accurately? Can i use something like "setpts=(1594.6/1330.3)*PTS", instead of certain number like "setpts=(1.20)*PTS"
[01:51:48 CET] <furq> sure you can
[01:55:52 CET] <leite> furq, you here
[01:58:34 CET] <Skandalist> But I still don't get it in -vsync section: "With -map you can select from which stream the timestamps should be taken. You can leave either video or audio unchanged and sync the remaining stream(s) to the unchanged one." How is it works? Will it change duration too?
[04:03:06 CET] <teamcoltra> This might just need a whole new program written but I thought I would ask here first: I have a live stream let's call it http://localhost/test.m3u8 every 5-10 minutes there is about a minute of silence. I want to loop in /home/teamcoltra/silencereplacement.mp4 while it's silent and then go back to the initial m3u8 file once the volume comes back on. Then I want to output all this to a new m3u8 file like localhost/new.m3u8 how much of this
[04:03:06 CET] <teamcoltra> could I do just with FFMPEG?
[04:09:34 CET] <teamcoltra> I know FFMPEG has volume detection, my guess is I would need to have something like ffmpeg -i 'http://localhost/test.m3u8' -o new.m3u8 (with volume detect and other flags) and use something like python to read the volume data output and when it's 0 twice (or whatever) and when it's silent open up another ffmpeg which also writes to new.m3u8 with the mp4
[11:26:37 CET] <shibboleth> does anyone know how to pull the video analytics stream/content from say hikvision cameras?
[11:26:58 CET] <shibboleth> rtsp://1.2.3.4/Intelligent/Channels/1
[11:27:28 CET] <shibboleth> will pull the main stream, but for some reason the analytics is only visible from their proprietary client or browser plugin
[17:19:05 CET] <GuiToris> hey, does ffmpeg have lagarith encoding/decoding capabilities?
[17:20:01 CET] <BtbN> There is a lagarith.c according to google.
[17:20:38 CET] <c_14> according to -codecs there's a decoder but no encoder
[17:20:47 CET] <c_14> though there might always be a configure switch for the encoder
[17:20:50 CET] <GuiToris> c_14, ffmpeg -codecs?
[17:21:40 CET] <GuiToris> I thought there's a list somewhere
[17:22:21 CET] <furq> lagarith isn't particularly good anyway
[17:22:53 CET] <furq> use utvideo if you want something fast and/or with vfw/quicktime support and ffv1 or x264 lossless otherwise
[17:23:17 CET] <GuiToris> furq, could you recommend me another one? I usually use ffv1 in a nut file, but my friend who uses premiere cannot open these files
[17:23:33 CET] <furq> utvideo
[17:23:45 CET] <GuiToris> I'll check it, thanks
[17:23:51 CET] <furq> they'll need to install the codec
[17:24:19 CET] <furq> i think premiere should support it in mov
[17:24:24 CET] <furq> but it might need to be avi on windows
[17:25:15 CET] <GuiToris> or should I create lossless x264 files? That seems pretty widespread
[17:25:26 CET] <furq> you can try
[17:25:48 CET] <furq> i don't think premiere supports h264 hi444p
[17:26:04 CET] <furq> which is the only profile that supports lossless coding
[17:26:11 CET] <furq> i might be wrong though
[17:26:46 CET] <furq> hi444pp, rather
[17:29:19 CET] <JEEB> if you can use nvidia's encoder you'd be able to *encode* into it
[17:29:21 CET] <JEEB> but not decode
[17:29:23 CET] <GuiToris> helpx.adobe.com only says: h264 avc Various media that use H.264 encoding
[17:29:31 CET] <JEEB> no idea if premiere lets you do that :P
[17:29:47 CET] <JEEB> furq: 4:2:0 and 4:2:2 are the only things supported generally
[17:29:56 CET] <JEEB> and most likely lossless coding is not
[17:30:10 CET] <JEEB> even the nvidia hw *decoder* doesn't support lossless, only the encoder d oes
[17:30:14 CET] <JEEB> which I find funny for some reason
[17:31:33 CET] <GuiToris> right now I have thousands of png files, if I combine them into a lossless video file and that codec won't work, can I safely split them into pngs again?
[17:31:44 CET] <furq> sure
[17:31:48 CET] <furq> but you could also simply not delete the pngs
[17:32:23 CET] <GuiToris> I don't have that much space, these files take an awful lot of space
[17:32:27 CET] <furq> that will also ensure you're not doing rgb -> yuv -> rgb conversions back and forth
[17:32:34 CET] <furq> which isn't lossless
[17:33:07 CET] <GuiToris> ffmpeg -i lossless.nut %3d.png < is this good?
[17:33:20 CET] <furq> why do you need pngs
[17:33:47 CET] <furq> just work with the ffv1 source, it'll compress much better
[17:33:52 CET] <GuiToris> I use blender and I usually export videos into pngs files
[17:34:02 CET] <BtbN> that seems horribly inefficient
[17:34:12 CET] <furq> if the ffv1 is rgb then you can convert it back to png without worrying
[17:34:33 CET] <furq> i don't know that i would
[17:35:10 CET] <GuiToris> BtbN, if something goes wrong, I don't have to rerender the whole footage
[17:35:22 CET] <BtbN> I don't follow
[17:36:07 CET] <GuiToris> you said rendering pngs files are inefficient
[17:36:15 CET] <BtbN> Using them as a video is, yes
[17:36:40 CET] <GuiToris> I don't use them as a video, these are just temporary files
[17:36:55 CET] <GuiToris> but this time someone else is going to edit the video and he uses premiere
[17:41:50 CET] <GuiToris> something else; I have a footage and I edited it, there was a boring 8 secs where nothing really happened so I cut that part. Since the subject moved a tiny bit during this period of time the editing is very noticeable. I tried fades and interpolation but you can still notice the editing. Can you recommend something?
[17:43:01 CET] <GuiToris> I'm not sure if you used flash editor but there was a shape tween function
[17:43:25 CET] <GuiToris> is there a similar filter in ffmpeg?
[17:45:00 CET] <GuiToris> https://www.youtube.com/watch?v=b7N1fAdk0Jc&feature=youtu.be&t=236
[17:45:21 CET] <BtbN> That can't possibly work on video.
[17:46:16 CET] <BtbN> It relies on the vector graphics aspect of it
[17:46:33 CET] <GuiToris> I need a few more frames but minterpolate didn't work well
[17:48:03 CET] <GuiToris> my backup plan is to add some camera shakes
[17:48:37 CET] <BtbN> minterpolate is probably the best bet, but on plain video, that really isn't possible in that way
[17:50:19 CET] <GuiToris> the main problem with thay solution is the transition had been longer and it was even more noticeable
[17:50:32 CET] <GuiToris> is minterpolate the only interpolation filter in ffmpeg?
[17:51:31 CET] <Hfuy> Hello.
[17:51:59 CET] <Hfuy> Is there any support for HEIC images, as produced by iphones? It sounds sort of like a single HEVC frame in an ISO media file, so almost a one-frame HEVC quicktime, but... not.
[17:55:11 CET] <GuiToris> Hfuy, heif?
[17:55:49 CET] <Hfuy> Yes. I think HEIC is a subset of HEIF.
[17:56:04 CET] <GuiToris> as far as I remember I could convert some files with the 'convert' tool
[17:56:05 CET] <Hfuy> HEIC implies HEVC encoding, I believe.
[17:56:16 CET] <furq> there's an open ticket for heif
[17:56:19 CET] <Hfuy> But HEICs are not just single frame HEVC quicktimes, from what I can tell.
[17:56:27 CET] <JEEB> https://ffmpeg.org/pipermail/ffmpeg-devel/2017-August/215003.html
[17:56:33 CET] <JEEB> the horrible story of HEIF
[17:56:39 CET] <JEEB> someone implemented just the features that apple used in 2017
[17:57:22 CET] <JEEB> but since that wasn't pretty it wasn't merged
[17:57:51 CET] <GuiToris> Hfuy, great, gimp is the only graphical application that can open heic
[17:57:59 CET] <GuiToris> Hfuy, I used 'convert'
[17:58:17 CET] <Hfuy> I have a converter. I'm just trying to write an article describing what it is and what the considerations are.
[17:58:48 CET] <Hfuy> I mean, it would seem to make sense to me that something better than JPEG would be nice, but I'm not sure why that isn't just JPEG-2000, given that HEIF/HEIC is not patent-free either.
[17:59:04 CET] <GuiToris> there's also webp
[17:59:06 CET] <furq> because apple didn't invent webp
[17:59:24 CET] <furq> i know they didn't invent heif either but who cares about nokia these days
[18:00:08 CET] <JEEB> also HEIF specifically isn't limited to HEVC
[18:00:19 CET] <Hfuy> Quite.
[18:00:31 CET] <JEEB> it's just a supposed spec for a "new standard for images"
[18:00:34 CET] <Hfuy> I believe the current iphone implementation only does HEVC, though. At least that's what the .HEIC extension implies.
[18:00:40 CET] <JEEB> yes
[18:00:53 CET] <Hfuy> Fuck's sake, how can they make THIS complicated.
[18:00:59 CET] <JEEB> there's another subset for AV1 recently defined I think. unless they threw the HEIF over-complexity out
[18:01:41 CET] <JEEB> Hfuy: HEVC even has a feature to code images as separate smaller images. instead they just split it in their own way as actually separate separate images
[18:01:44 CET] <JEEB> fabulous
[18:01:46 CET] <furq> a cynical man would say apple actively don't want anything else to support heif
[18:01:52 CET] <furq> so that you have to use their tools
[18:01:59 CET] <furq> if only there were some cynical men here to say it
[18:02:11 CET] <Hfuy> Sorry. Code images as separate smaller images?
[18:02:23 CET] <furq> like progressive jpeg presumably
[18:02:25 CET] <JEEB> yes, in case a decoder can't handle a large enough
[18:02:30 CET] <Hfuy> Oh.
[18:02:36 CET] <JEEB> so you can f.ex. split it into N sectores
[18:02:39 CET] <Hfuy> So you store it as four quarters, or whatever.
[18:02:41 CET] <JEEB> which you can feed to a hwdecoder
[18:02:44 CET] <JEEB> yea
[18:02:56 CET] <JEEB> but instead of using the feature with which f.ex. our decoder could just output a single image
[18:02:59 CET] <Hfuy> See that's fine, but I'm not sure what the value is of being able to decode a quarter of a photograph.
[18:03:04 CET] <JEEB> "ahaha let's code it separately"
[18:03:10 CET] <Hfuy> What, so more than one mdat in the file?
[18:03:27 CET] <JEEB> I'm not sure of the details and some stuff probably has changed since 2017 in how apple uses it
[18:03:34 CET] <Hfuy> OK.
[18:03:45 CET] <JEEB> but yes, it seemed like the format gave you the option of using separate frames
[18:03:47 CET] <Hfuy> This "image sequences" thing is presumably intended for "live photo" type applications.
[18:03:56 CET] <Hfuy> But "image sequences" is not the same as "it's an HEVC quicktime?"
[18:12:15 CET] <Hfuy> The more I read about this the more it starts to sound like MXF.
[18:12:20 CET] <Hfuy> Let's make it everything to everyone!
[18:12:43 CET] <JEEB> :D
[18:57:18 CET] <Hfuy> JEEB you're the only software person I've ever had smile when I said MXF.
[18:58:11 CET] <JEEB> mostly because I've not touched it too much - but instead looked at it from the sidelines
[18:58:23 CET] <JEEB> I've done some minor patches to see if I can get the cropping info from it
[18:58:37 CET] <JEEB> but applying that info would be a problem anyways
[18:58:37 CET] <JEEB> :P
[18:58:56 CET] <ossifrage> Is there a way to get ffmpeg to output the data at roughly 'realtime'
[18:59:18 CET] <JEEB> there's multiple things that have various rate control
[18:59:20 CET] <ossifrage> I'm testing some live streaming stuff but my source is just a local file
[18:59:35 CET] <JEEB> ffmpeg.c has the -re option which sleep()s according to the difference in the timestamps
[18:59:40 CET] <JEEB> (input option)
[18:59:49 CET] <JEEB> but if your timestamps have discontinuities glhf with that
[19:00:04 CET] <JEEB> then there's rate/burst control in the UDP protocol
[19:00:25 CET] <ossifrage> JEEB, cool thanks, that did the trick!
[19:00:56 CET] <ossifrage> It was getting *way* to far ahead without -re
[20:28:48 CET] <shibboleth> i've been having trouble getting ffmpeg, mplayer to like the mjpeg stream from a specific source
[20:29:07 CET] <shibboleth> just tried on a more recent distro (works) and noticed this:
[20:29:55 CET] <shibboleth> not working: [swscaler @ 0x7f76a0b77fa0]bicubic scaler, from yuv422p to yuyv422 using MMXEXT
[20:30:07 CET] <shibboleth> working: [swscaler @ 0x7f234de07020]bicubic scaler, from yuv422p to yuv420p using MMXEXT
[20:30:24 CET] <shibboleth> how do i force the latter on the older, remote capture server?
[20:31:23 CET] <JEEB> if you need 4:2:0 specifically then either push format to the end of your filter chain, or use -pix_fmt in ffmpeg.c :P
[20:31:55 CET] <shibboleth> how do i do that with mplayer to test?
[20:32:38 CET] <shibboleth> ffprobe on the troublesome setup: Stream #0:0: Video: mjpeg, yuvj422p(pc, bt470bg/unknown/unknown), 640x360, 25 tbr, 25 tbn, 25 tbc
[20:36:26 CET] <JEEB> I would be surprised if the pix_fmt is your problem outside of maybe your player not being able to play it (for some reason)
[20:37:11 CET] <shibboleth> the source device and firmware is from 2011
[20:37:34 CET] <shibboleth> i suspect both lavf56 and 57 are more recent :)
[20:37:53 CET] <JEEB> if you have failures, bump verbosity to -v debug in ffmpeg.c and pastebin or so the logs
[20:37:57 CET] <JEEB> then link here
[20:38:13 CET] <JEEB> I'm pretty sure you're getting helped by some unrelated bug fix in FFmpeg if it started worked
[20:38:14 CET] <shibboleth> not working: https://paste.ubuntu.com/p/kpyqs7k8sb/
[20:38:16 CET] <JEEB> *working
[20:38:20 CET] <shibboleth> working: https://paste.ubuntu.com/p/t9h4SB3rbf/
[20:38:39 CET] <shibboleth> diff boxes, has nothing to do with vdpau, tried
[20:38:58 CET] <JEEB> right, that's mplayer
[20:39:10 CET] <JEEB> ffmpeg -v debug -i URL -f null -
[20:39:27 CET] <JEEB> that should let ffmpeg.c decode it
[20:39:55 CET] <JEEB> and you're using VDPAU VO. which then just means that the *renderer* is failing
[20:40:00 CET] <JEEB> nothing to do with FFmpeg
[20:40:09 CET] <JEEB> or wait, the latter is using xv VO
[20:40:19 CET] <JEEB> well that explains a lot, doesn't it :P
[20:40:22 CET] <shibboleth> i tried with/without on both
[20:40:52 CET] <JEEB> anyways, if it doesn't fail with ffmpeg.c then it's most likely not FFmpeg
[20:40:54 CET] <JEEB> it's mplayer
[20:40:59 CET] <JEEB> mplayer has its own IRC channel and all
[20:41:18 CET] <durandal_1707> mplayer is abandoned, same as mencoder
[20:41:49 CET] <JEEB> yes, but the left over people probably can help this poor soul. not #ffmpeg
[20:42:01 CET] <shibboleth> lemme try ffmpeg verbose
[20:55:57 CET] <shibboleth> hmm
[20:56:09 CET] <shibboleth> ffmpeg/libav on the remote box is actualy libav58
[20:56:13 CET] <shibboleth> actually
[20:56:23 CET] <shibboleth> installed through a PPA
[20:56:37 CET] <shibboleth> https://paste.ubuntu.com/p/3Sd8sqBZ7g/
[20:57:21 CET] <shibboleth> libav57: https://paste.ubuntu.com/p/57stYHgpMn/
[20:58:41 CET] <JEEB> to me that looks like decoding works just fine in both cases
[20:58:49 CET] <JEEB> which means that if there is a problem it's highly likely in mplayer
[20:59:03 CET] <shibboleth> if it is as you say, mplayer is abandoned, mpv might be the way to go
[20:59:31 CET] <shibboleth> can ffplay or mpv do what mplayer can with regards to -geometry?
[20:59:49 CET] <JEEB> https://mpv.io/manual/master/
[21:00:04 CET] <JEEB> depends on what you want to do with it
[21:00:07 CET] <JEEB> ask #mpv if you want to test it out
[21:00:47 CET] <shibboleth> well, it appears to have been fixed between xenial and bionic mplayer as well
[21:01:00 CET] <shibboleth> why the version bump if abandoned?
[21:01:13 CET] <JEEB> it's not 100% abandoned, at least as far as I last saw
[21:01:22 CET] <JEEB> it's minimally poked by some people who still use it
[21:01:29 CET] <JEEB> so if you want to use mplayer, #mplayer is available
[21:04:56 CET] <shibboleth> i thought mpv was a ffplay spinoff, but i won't bother you further :)
[21:05:39 CET] <JEEB> no, it's an mplayer->mplayer2->mpv spin-off
[23:25:28 CET] <fructose> I'd like to quickly cut mp4 videos, but the tools I've found desync audio. Is there a method I can use with ffmpeg that avoids this?
[23:26:03 CET] <JEEB> whether a desync happens depends on a whole lot of things including what the thing you're reading with can handle
[23:26:33 CET] <JEEB> that said, I haven't had generally any desync when doing mp4 cuts and playing them in firefox for example
[23:28:54 CET] <fructose> I'm looking for something specific, like using ffprobe to locate the nearest key frame. What I don't understand is how to prevent audio desync.
[23:29:22 CET] <JEEB> as I don't know what the cause for your desync is I cannot really say anything
[23:29:33 CET] <JEEB> as I noted, just plain -ss and -t with -c copy WorksForMe
[23:29:50 CET] <JEEB> then there's the google "advanced" edit list stuff which you should attempt to disable
[23:29:57 CET] <JEEB> since your input is mp4
[23:30:22 CET] <JEEB> -advanced_editlist 0 I think is the way to disable the google stuff
[23:30:50 CET] <JEEB> (that's for the input side)
[23:39:57 CET] <fructose> How does -c fit in a cut?
[23:41:41 CET] <JEEB> if you don't set an output "encoder" you will get re-encoding
[23:41:51 CET] <JEEB> -c copy is the "just pass these AVPackets through kthx?" option
[23:41:52 CET] <JEEB> :P
[23:43:45 CET] <fructose> I was getting "Unknown decoder 'copy'" so the question was more about ordering
[23:43:52 CET] <furq> after the input
[23:44:08 CET] <fructose> But it ran and there are lots of visual artifacts at the beginning
[23:45:39 CET] <fructose> So is there a way to cut mp4 videos that doesn't desync audio or result in visual artifacts at the beginning?
[23:47:42 CET] <furq> iirc you want -ss after -i when stream copying or else you'll get video delay
[23:47:59 CET] <furq> because it'll cut the audio at the point you requested, which is usually before the first video keyframe
[23:49:49 CET] <fructose> That removes artifacts, but leaves delay
[23:49:56 CET] <fructose> I'm guessing it's not cutting on a key frame
[23:51:10 CET] <JEEB> it can't not cut on a keyframe as far as I know
[23:51:18 CET] <furq> it can't not cut the video on a keyframe
[23:51:37 CET] <JEEB> ffmpeg.c adds a simple edit list delay so that the thing starts where you expect it to
[23:51:42 CET] <JEEB> but a lot of things ignore such :P
[23:51:44 CET] <furq> i take it you're using a recent ffmpeg
[23:51:51 CET] <fructose> Also, the docs say "The -ss parameter needs to be specified somewhere before -i"
[23:51:57 CET] <furq> because it shouldn't ever have artifacts at the beginning (unless your player is dumb)
[23:52:10 CET] <JEEB> yes, -ss is preferred there esp. if you're doing remuxing
[23:52:15 CET] <JEEB> but I think it's being taken on both sides :P
[23:52:17 CET] <furq> which docs are these
[23:52:35 CET] <JEEB> it used to matter more, I don't think it matters as much any more
[23:52:51 CET] <fructose> furq: http://trac.ffmpeg.org/wiki/Seeking
[23:53:16 CET] <furq> yeah the wiki isn't the docs
[23:53:22 CET] <furq> https://ffmpeg.org/ffmpeg.html#Main-options
[23:54:39 CET] <fructose> Might not be the manual, but they are docs
[23:57:28 CET] <fructose> I'm using VLC, but I'll update to 3.0.6 to see if that helps
[23:58:51 CET] <fructose> -ss before -i gets artifacts. -ss after gets delay in start of video
[23:59:24 CET] <shibboleth> JEEB, it was vdpau
[23:59:46 CET] <shibboleth> specifying -vo gl/x11 worked
[00:00:00 CET] --- Sun Feb 10 2019
More information about the Ffmpeg-devel-irc
mailing list