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

burek burek021 at gmail.com
Sat Sep 9 03:05:01 EEST 2017

[00:18:39 CEST] <cryptodechange> Did that work for you kepstin?
[00:29:34 CEST] <kepstin> I'm busy atm, will take a look later
[02:22:22 CEST] <koyglreg> Why is it that using "fieldmatch=mode=pcn_ub,yadif=0:-1:1,decimate" on a mixed telecine and interlaced video succeeds in detelecining but fails to deinterlace?  That is, the originally-24p "movie" in the video is successfully detelecined, but the 30i video segments/commercials before and after are still interlaced?
[02:25:43 CEST] <kepstin> koyglreg: probably the fieldmatch filter incorrectly thinks that the interlaced sections aren't combed, so it doesn't mark them as interlaced, so yadif doesn't run on them
[02:26:10 CEST] <kepstin> there are various thresholds in fieldmatch that can be tweaked.
[02:26:54 CEST] <kepstin> in particular, combmatch=full might help
[02:42:35 CEST] <koyglreg> kepstin: I just tried using "combmatch=full" but it seemed to make little or no difference on the interlaced section.
[02:46:38 CEST] <koyglreg> I wonder if my yadif settings are wrong.
[02:51:01 CEST] <koyglreg> The first two minutes are a video introduction to the movie, and ffmpeg indeed does complain "Frame X at Y is still interlaced".
[02:51:38 CEST] <koyglreg> It gives errors like this for the first two minutes: [Parsed_fieldmatch_0 @ 000001ee399cbbe0] Frame #4583 at 152.919 is still interlaced
[03:47:39 CEST] <kepstin> yeah, if you see messages like that, then those should be the frames that yadif is running on
[03:48:17 CEST] <kepstin> I think your yadif command is correct, but using the named options will make it a bit more obvious
[03:54:30 CEST] <koyglreg> kepstin: i might use tivtc in avisynth instead...
[10:12:31 CEST] <crow> does someone here transcode live to to rtsp ? i am having problem with high cpu usage even this is an xeon cpu (only cpu avaiable as this is an VM). it work only with -preset ultrafast but here the video quality is bad
[12:48:11 CEST] <vlt> crow: Assuming you're encoding to libx264: afaik, the speed related presets only affect the *size* of the output, not the quality which is specified by "-crf", for example.
[13:01:29 CEST] <sfan5> vlt: since the presets restrict (or allow) x264's usage of certain features it will always result in worse (or better) quality for a given bitrate
[13:02:14 CEST] <sfan5> if you use -crf you will get the same quality at a way higher bitrate
[13:23:07 CEST] <thebombzen> sfan5: only with faster presets
[13:23:24 CEST] <thebombzen> with the slower ones, the features aren't restricted enough to matter
[13:24:28 CEST] <sfan5> yea forgot to mention that
[14:15:22 CEST] <sybariten> hello fellow video lovers
[14:16:05 CEST] <sybariten> i am re-encoding (i believe) a 350 meg 50 minute wmv file. But i mean it takes some time to run that just as a test, so is there some way i can work on only the first two minutes ... like "cropping" the length of the video?
[14:17:05 CEST] <jkqxz> -t 2:00
[14:26:06 CEST] <sybariten> jkqxz: thank you!
[16:21:26 CEST] <przemoc> does anyone remember or have a list somewhere:  what codecs exactly windows 7 support out-of-the-box?  I'm mailing with someone from the support who may seem complete computer illiterate and she wasn't able to play my video.  I've figured out she used internet explorer, because if it was Firefox or Chrome, it would be simply shown in the browser...
[16:34:14 CEST] <przemoc> oh, I had microsoft's VM IE8 - Win7 (that they provide for free) and video works there in windows media player.  what the heck.
[17:20:59 CEST] <crow> vlt sfan5 thebombzen with current cmdline only using veryfast and -crf 24 with -scale=hd720 is posible, faster/fast etc are causing high cpu usage, here is cmd line i am currently using https://defuse.ca/b/ac0Sl9bx
[17:22:17 CEST] <sfan5> you can't expect much with baseline + veryfast profile
[17:22:31 CEST] <sfan5> though at 1280x720 a xeon cpu should really not have a problem
[17:23:26 CEST] <thebombzen> crow you probably don't want this: -filter:vf yadif:0:-1:0 -filter:v scale=hd720
[17:23:42 CEST] <thebombzen> you probably want -filter:v yadif=0:-1:0,scale=hd720
[17:24:40 CEST] <thebombzen> you probably also want -af aresample rather than -async
[17:25:08 CEST] <crow> sfan5 it is an E3-1230 v2, and faster or fast == 100% cpu load and video unwatchable
[17:25:34 CEST] <thebombzen> well yea, preset veryfast crf 24 is going to be very smudged
[17:25:55 CEST] <thebombzen> especially with -profile baseline
[17:26:01 CEST] <thebombzen> are you sure you want -profile baseline?
[17:26:40 CEST] <sfan5> how many fps is the input?
[17:26:44 CEST] <thebombzen> crow, also you probably want to add -re before -i
[17:26:57 CEST] <thebombzen> the -re option causes ffmpeg to read from the file at 1.0x spee
[17:26:58 CEST] <thebombzen> speed
[17:27:07 CEST] <thebombzen> rather than as fast as possible, which it would normally do
[17:27:14 CEST] <crow> thebombzen no i am not sure, i would just have nice live stream to watch while on vacation, hd720 should be enough, but picture quality wasnt that good
[17:27:27 CEST] <thebombzen> then you don't want -profile:v baseline.
[17:29:13 CEST] <crow> sfan5 Stream #0:0[0x780], 167, 1/90000: Video: h264 (High), 1 reference frame ([27][0][0][0] / 0x001B), yuv420p(progressive, left), 1280x720 [SAR 1:1 DAR 16:9], 0/1, 50 fps, 50 tbr, 90k tbn, 100 tbc
[17:30:07 CEST] <thebombzen> try this: ffmpeg -re -f mpegts -i http://localhost:3000/S19.2E-1-1007-4911.ts -map v -map a -vf yadif=0:-1:0,scale=hd720 -c:v libx264 -preset:v fast -crf:v 21 -maxrate 4000k -bufsize 1024K -c:a aac -b:a 128k -f rtsp -rtsp_transport tcp rtsp://localhost:8089/live/stream
[17:30:48 CEST] <thebombzen> crow: the -re option causes ffmpeg to only read the input at 1.0x speed. I dropped a lot of unnecessary options too
[17:31:08 CEST] <sfan5> why are you scaling it to 720p when it's already 720p?
[17:31:29 CEST] <crow> sfan5 currently, mostly it is 1080i
[17:32:29 CEST] <sfan5> crow: my i5-4590 manages a comfy 222 fps with the settings in your pastebin
[17:32:42 CEST] <sfan5> (and no it's not better than your xeon: https://www.cpubenchmark.net/compare.php?cmp[]=1189&cmp[]=2234 )
[17:33:56 CEST] <crow> thebombzen it was not posible to watch this stream, cpu 98% https://defuse.ca/b/xiQjekBt
[17:34:32 CEST] <crow> sfan5 huh, well i am not sure what is then the problem.
[17:34:43 CEST] <sfan5> you mentioned it's a vm, maybe it's that
[17:35:25 CEST] <crow> sfan5 is they and cmd argument to skip scaling if already 720p? it is not always like that.
[17:35:44 CEST] <sfan5> the scaler should be smart enough to skip scaling if possible
[17:35:45 CEST] <crow> sfan5 yes but only two VMs, and this one is using whole CPU, running on SSD Datastore.
[17:35:55 CEST] <thebombzen> crow: something is wrong with your input
[17:36:03 CEST] <thebombzen> you're duping lots of frames
[17:36:43 CEST] <thebombzen> either way, try setting the preset to faster and see what happens
[17:36:45 CEST] <thebombzen> or even veryfast
[17:37:05 CEST] <thebombzen> I find it hard to believe that you're only getting 42 frames per second though
[17:37:20 CEST] <thebombzen> crow: threads=3 lookahead_threads=1
[17:37:28 CEST] <thebombzen> are you sure you set the right number of threads for the VM?
[17:38:48 CEST] <crow> thebombzen playing this -i ..ts local with VLC is working fine. so video/audio input should be fine
[17:39:34 CEST] <thebombzen> are you sure you set the correct number of threads in your VM?
[17:40:52 CEST] <thebombzen> crow: for example, in VirtualBox, you need to change this setting.
[17:40:53 CEST] <thebombzen> http://0x0.st/R0S.png
[17:42:16 CEST] <thebombzen> http://0x0.st/R01.png
[17:42:44 CEST] <thebombzen> I suspect that your virtual machine is restricted cpu-wise
[17:44:36 CEST] <crow> let me double check that
[17:44:40 CEST] <sfan5> htop output could also help
[17:49:37 CEST] <crow> sfan5 well top shows me 4 cpus so it should be ok
[17:57:20 CEST] <sfan5> are tose 100% used when encoding?
[17:57:23 CEST] <sfan5> those*
[18:02:10 CEST] <crow> sfan5 thebombzen seems after one cold boot of vm cpu is fine on the thebombzen example ffmpeg cmd line. https://defuse.ca/b/POeHelx1
[18:02:36 CEST] <sfan5> yeah that looks way better
[18:03:01 CEST] <sfan5> aren't the two audio tracks always identical though?
[18:03:18 CEST] <crow> probably, i am not sure
[18:04:19 CEST] <crow> sfan5 thebombzen cpu usage is going to 70% (not all of 4 cores)
[20:32:15 CEST] <doublya> I'm playing a video file with ffplay.  Audio works on windows, but on Ubuntu 16.04 I'm getting  SDL_OpenAudio: No such audio device
[20:35:23 CEST] <ZexaronS> hello
[20:35:54 CEST] <ZexaronS> moov atom faststart is to make it streaming ... but what if it's streaming already and I want to make it nonstreaming, what's the reverse command ? compatability issue fix
[20:38:17 CEST] <JEEB> lol
[20:38:34 CEST] <JEEB> you have to understand what the faststart actually does
[20:38:44 CEST] <JEEB> there's an index structure in non-fragmented mp4
[20:38:55 CEST] <JEEB> and since it's an index it has to be written last
[20:38:57 CEST] <JEEB> now
[20:39:12 CEST] <JEEB> faststart just moves that index into the beginning of the file
[20:39:30 CEST] <JEEB> thus I would say that it's highly unlikely that it's the faststart that broke your thing
[20:39:44 CEST] <JEEB> I haven't found a single thing reading mp4 that would work with a moov atom in the back, but not in the front
[20:42:34 CEST] <JEEB> s/atom/box/ , darn movspeak
[20:43:08 CEST] <durandal_1707> doublya: use mpv
[20:43:16 CEST] <ZexaronS> I don't know yet which way it doesn't work https://github.com/Helioviewer-Project/JHelioviewer-SWHV/issues/44#issuecomment-328150942
[20:44:02 CEST] <JEEB> uhh
[20:44:34 CEST] <ZexaronS> if it doesn't work with faststart then I would like to know how to reverse it, so the guy can use ffmpeg to fix the clips until jvhelioviewer supports both options
[20:44:49 CEST] <JEEB> yea, these kind of issues are real fun with software that will not tell you what it didn't like, and people who have no fucking idea about multimedia
[20:45:12 CEST] <JEEB> you should rather use ffprobe or L-SMASH's boxdumper
[20:45:26 CEST] <ZexaronS> for what purpose?
[20:45:40 CEST] <JEEB> to get information on the mp4 file and compare
[20:46:01 CEST] <ZexaronS> oh okay, just wanted to be sure
[20:46:09 CEST] <JEEB> blindly thinking that it's whatever faststart does is not really realistic
[20:46:34 CEST] <JEEB> let's just say that there can be plenty of differences
[20:46:55 CEST] <ZexaronS> But anyway, I was asking in general, I still wish to know how to reverse faststart with a command ...
[20:46:55 CEST] <JEEB> with the tracks themselves or the container
[20:47:14 CEST] <ZexaronS> I just never thought of wondering that until now
[20:47:25 CEST] <JEEB> just don't set the parameter when remuxing
[20:47:39 CEST] <JEEB> but to be honest, you are then demultiplexing and re-multiplexing
[20:47:46 CEST] <JEEB> as in, the original file structure is not kept
[20:47:47 CEST] <JEEB> at all
[20:48:03 CEST] <JEEB> all the faststart mov muxer flag does is then move the moov index box to the beginning of the file
[20:48:14 CEST] <ZexaronS> My phone outputs standard MP4 without web optimization, I run copy copy and faststart with no recoding just remux, but how come there is no reverse option to undo the faststart ...
[20:48:40 CEST] <JEEB> just don't set faststart and the moov gets written at the end
[20:48:59 CEST] <JEEB> and in any case remux will change the file structure completely because ffmpeg does not try to replicate the original structure
[20:49:16 CEST] <JEEB> it takes the streams, demultiplexes them, then starts creating a completely new file
[20:49:19 CEST] <ZexaronS> well I didn't realize that so that's what I was looking for, thanks
[20:49:20 CEST] <doublya> @durandal_1707: Thanks. But I need ffplay for what I'm doing.  Was hoping to get some help figuring out what it can't find an audio device.  I have alsa insatlled.
[20:50:04 CEST] <JEEB> ZexaronS: and that's why f.ex. "I had a file written with X, then I remuxed with ffmpeg.c with faststart and now it doesn't work" is not a valid comparison
[20:50:22 CEST] <JEEB> because FFmpeg's libraries make no attempt at keeping the file structure the same
[20:50:31 CEST] <JEEB> there are tools for the moov moving that supposedly only do that
[20:50:41 CEST] <ZexaronS> Well I'm just pitching in, I'm not so sure about the maintainer of the git repo
[20:51:48 CEST] <ZexaronS> the other guy seems he has no idea, but I just took the maintainer seriously ... maybe I shouldn't have but really no need to make a big deal about that
[20:52:29 CEST] <JEEB> well many newcomers come here like you and misunderstand what these tools do
[20:52:33 CEST] <ZexaronS> These are more scientific community folks, not so much computer heads
[20:52:41 CEST] <JEEB> which is why I try to now explain it to you
[20:53:09 CEST] <ZexaronS> Yes I have a problem that you're now putting this on me like it's all my fault, I get your point, just don't put it on me
[20:53:42 CEST] <JEEB> well since you brought the thing up and since you thus wanted information on it, no?
[20:53:48 CEST] <JEEB> that's what I'm trying to do - explain
[20:54:16 CEST] <JEEB> first of all fix the misunderstandings and then start explaining regarding possible better ways of finding out differences
[20:54:29 CEST] <JEEB> but in the worst case it will be really painful if you have closed source software in the loop
[20:54:34 CEST] <JEEB> (that doesn't tell you anything)
[20:54:46 CEST] <JEEB> I've been there with windows media player :P
[20:55:05 CEST] <ZexaronS> Well if I posted the link, then the frustration should be directed there, I thought this would be an easy thing but hey I know I was wrong, I'm a computer geek (not the stereotype one) so I know how small things turn into several hour of brainstorming
[20:55:30 CEST] <JEEB> well I'm not going to get involved in something like that :P
[20:55:42 CEST] <JEEB> I have enough lusers here that pop up and I'm masochistic enough to help
[20:55:58 CEST] <ZexaronS> Well I mentioned it how things usually go, not necessairly this case
[20:56:50 CEST] <ZexaronS> Actually I never meant to ask you to help the git repo lol cmon
[20:56:58 CEST] <JEEB> anyways, I think the qt-faststart tool in FFmpeg's code base is trying to do some of the minimal amount of changes
[20:57:01 CEST] <JEEB> https://ffmpeg.org/doxygen/trunk/qt-faststart_8c_source.html
[20:57:16 CEST] <JEEB> so if you care about that issue you can point those people towards it instead
[20:57:24 CEST] <ZexaronS> I simply didn't thought of using ffprobe at the moment I saw the guy talking about web optimization
[20:57:38 CEST] <JEEB> instead of file they should use ffprobe or L-SMASH's boxdumper --box
[20:57:44 CEST] <JEEB> ffprobe gives very general info
[20:57:51 CEST] <JEEB> and boxdumper --box gives you the whole structure
[20:59:22 CEST] <ZexaronS> But depending on their skill, I'll do it for them, I simply hoped it wouldn't get to that point ;) I wanted to tell him to use ffmpeg to test the file he gets from JHelioviewer by enabling/disabling faststart, but I didn't knew what's the undo command, and you told me, so that's it
[20:59:54 CEST] <JEEB> and yea, now you also found out that FFmpeg has a tool in the code base that is supposed to do the minimal change
[21:00:10 CEST] <JEEB> because going through ffmpeg.c is  fully destructive on the original structure of the mp4
[21:00:19 CEST] <ZexaronS> But I'm not a newbie around here, why are you thinking I am ?
[21:01:00 CEST] <JEEB> because you haven't yet learned that ffmpeg.c is destructive on the original file structure and thus not necessarily representative of a minimal set of changes been done to the file?
[21:01:55 CEST] <JEEB> (also your question about 'reversing faststart because it broke my breakfast')
[21:02:17 CEST] <ZexaronS> It's more complicated than that, I didn't explain it but I can, it's one of those things when you know something, but you don't realize the consequence, I never thought that the output file is built according to the input file, it's a toally new file, but when it get's tricky like that, that realization isn't present in consciousness, and don't tell me you haven't experienced this kind of example in life
[21:02:44 CEST] <JEEB> everyone does mistakes
[21:03:35 CEST] <ZexaronS> I just don't agree it's a mistake, it may be less experience with the program, obviously I'm not a ffmpeg expert, and this was one of the more deeper tricks which simply aren't as obvious, that's probably it
[21:04:09 CEST] <JEEB> well yea, definition of mistake. you missed a thing, I miss a thing. everyone can and probably will miss a thing at some point :P
[21:05:03 CEST] <ZexaronS> but i don't know about boxdumper ... something new
[21:05:58 CEST] <JEEB> yea, L-SMASH isn't a well-known thing
[21:06:15 CEST] <JEEB> I've personally found it very useful when debugging mov/mp4-type files
[21:06:35 CEST] <JEEB> as it lets you basically go through the structures' contents that it knows from the file
[21:27:00 CEST] <redrabbit> hi, i'm trying to wrap my mind around analyzeduration
[21:27:58 CEST] <JEEB> how far is the thing going to be reading the input timestamp-wise
[21:28:09 CEST] <JEEB> probesize is similar, but regarding how many bytes it reads from the input
[21:28:18 CEST] <redrabbit> from what i gathered highier value will yield better quality but more delay for the clients
[21:28:28 CEST] <redrabbit> in the case of on-demand TV transcoding
[21:28:51 CEST] <JEEB> not really quality - the only thing it's useful with if there are streams popping up later
[21:29:01 CEST] <redrabbit> allright
[21:29:05 CEST] <JEEB> or packets for those streams
[21:29:09 CEST] <redrabbit> so it doesnt affects quality
[21:29:17 CEST] <redrabbit> in that case im going to keep it as low as possible
[21:29:26 CEST] <JEEB> mostly useful for ffmpeg.c because unlike the API it wants to do a single static probe and decide everything
[21:30:21 CEST] <JEEB> if you have a dynamic piece of input like broadcast you will then at some point notice "oh btw, there was a packet for this new stream but since it wasn't there originally we are just going to ignore it"
[21:30:30 CEST] <JEEB> (since ffmpeg.c logs it)
[21:30:56 CEST] <JEEB> but yes, nothing to do with "quality" :P
[21:31:49 CEST] <redrabbit> thanks
[21:32:51 CEST] <redrabbit> well, i reduced it to zero, its still working and channels change faster
[21:41:30 CEST] <doublya> Fixed the ffplay audio problem. Built sdl2 from source, worked with libsdl2-dev. Must be a lib I was missing. Probably pulse
[22:19:59 CEST] <redrabbit> i cant find if the intel Z3735F has hardware support for HEVC decoding ?
[22:22:10 CEST] <jkqxz> It doesn't.
[22:25:12 CEST] <redrabbit> ok
[23:11:30 CEST] <redrabbit> with NVenc AVC, if you use -preset, does it stops you from using the other options ? it dosent goes above 3/4Mbps bitrate wise and drops as low as 1Mbps
[23:11:49 CEST] <redrabbit> id like to keep it behind 3 and 4.5Mbps
[23:11:56 CEST] <redrabbit> between*
[23:12:16 CEST] <redrabbit> using preset high
[23:13:47 CEST] <redrabbit> goal is, i want to get the highest quality possible from h264_nvenc
[23:21:52 CEST] <redrabbit> http://dpaste.com/2NZ7CRG
[00:00:00 CEST] --- Sat Sep  9 2017

More information about the Ffmpeg-devel-irc mailing list