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

burek burek021 at gmail.com
Fri Aug 10 03:05:02 EEST 2018


[00:00:43 CEST] <botik101> question about -select filter. I am using select filter to grab frames from a very long video. I have thousands of frames to grab. I am using '
[00:01:02 CEST] <botik101> select_filter += "\'lt(prev_pts*TB\,"+str(ttp)+")*gte(pts*TB\,"+str(ttp)+")" so the string is very long
[00:01:21 CEST] <botik101> is there a way to make select fitler read from text file?
[00:03:57 CEST] <FishPencil> Does anyone know of a way to download DASH segment in parallel? I'm using youtube-dl right now and it's horribly slow because it goes segment to segment
[00:05:16 CEST] <furq> botik101: -filter_complex_script foo.txt
[00:06:03 CEST] <botik101> furq!!!!!!! hey buddy! thank you!
[00:10:19 CEST] <botik101> furq: I am really enjoing learning about ffmpeg - it is really an OS of its own. I am also learning about hardware acceleration and I am blown away. What I still do not understand why there is no native support for it and requires re-compiling. I remember your explanation from before, but i cant compile and i am processing 2 hour long videos and it is killing me
[00:18:19 CEST] <Cracki> and how long does that take?
[01:52:02 CEST] <Hello71> 2 hours
[01:52:04 CEST] <Hello71> duh
[01:54:46 CEST] <DHE> only if it's realtime recording. I can process a 2 hour video from disk in 10 minutes on my GPU
[04:12:05 CEST] <botik101> https://paste.pound-python.org/show/05DlSUx1Wu4Me99L9SJb/
[04:12:19 CEST] <botik101> arghh, can anyone please tell me what is wrong with this filter? https://paste.pound-python.org/show/05DlSUx1Wu4Me99L9SJb/
[04:13:23 CEST] <botik101> error is: Error initializing complex filters. Invalid argument
[04:16:18 CEST] <botik101> am I formatting -filter_complex_script wrong?
[04:46:19 CEST] <Cracki> you pasted four lines of python
[04:46:37 CEST] <Cracki> is that supposed to help diagnose a supposed ffmpeg error output?
[04:58:00 CEST] <AshleyQ> Hi is it possible to live stream a folder of mp4 videos (using Windows) to Youtube using ffmpeg? Hoping to get some guidance.
[04:58:25 CEST] <Cracki> use OBS
[04:58:46 CEST] <Cracki> it's probably possible with ffmpeg if you need
[04:59:17 CEST] <Cracki> what did you google? what were the results?
[04:59:27 CEST] <AshleyQ> I've been having issues with obs
[04:59:45 CEST] <AshleyQ> Found this which led me here? Will that work? https://stackoverflow.com/questions/45213147/i-want-live-stream-1-folder-on-youtube-by-ffmpeg
[05:01:42 CEST] <Cracki> have you tried it?
[05:01:55 CEST] <AshleyQ> The reason I'm asking if that will work is because I really don't know how to try it...I have ffmpeg installed at C:\ffmpeg\bin but not sure how to implement that
[05:02:10 CEST] <Cracki> uh...??
[05:02:14 CEST] <Cracki> you run it?
[05:03:19 CEST] <AshleyQ> that code doesn't have anywhere to add the stream key...which youtube requires
[05:07:26 CEST] <AshleyQ> Cracki: What is list.txt? What would I put in that? Sorry for the newb questions
[05:16:20 CEST] <AshleyQ> Do I save that code into a bat file and then run it?
[07:15:14 CEST] <SortaCore> multicore liblame?
[07:15:23 CEST] <SortaCore> or multithread I ain't fussed
[12:43:16 CEST] <wingrime> \quit
[13:08:21 CEST] <IntelMiner> Hi everyone. I'm trying to do some MPEG-2 to H.265/HEVC encoding using Nvenc. I've been successful in the past, but now any files I try I get "Cannot init CUDA". I've replicated this on two different machines so far. Both running the latest Nvidia drivers and ffmpeg 4.0.2. I've got an strace of ffmpeg here https://pastebin.com/XHYPsSW1
[13:17:13 CEST] <BtbN> strace is useless for this
[13:17:56 CEST] <BtbN> Cannot init CUDA is such a basic error, that there must be something wrong with your driver. Is nvidia_uvm loaded in your kernel? Is the new nvidia module loaded into the kernel, and not still the old one?
[13:18:15 CEST] <DHE> I don't see it opening any /dev entries for nvidia and i don't know what /tmp/nvidia-mps/control is...
[13:18:30 CEST] <DHE> just from the strace my guess would be something doesn't like root running ffmpeg
[13:18:35 CEST] <DHE> but that's still vague as hell
[13:19:24 CEST] <IntelMiner> BtbN: It's a very annoyingly vague error. nvidia-uvm is loaded, I cleaned and rebuilt the kernel and Nvidia drivers as needed, everything is reporting the latest driver version on that side
[13:19:58 CEST] <BtbN> To be safe, a reboot would ensure the on-disk and in-kernel version matches
[13:20:26 CEST] <IntelMiner> Already done. No change unfortunately :(
[13:20:38 CEST] <DHE> well userspace is clearly version 396.45
[13:21:15 CEST] <DHE> a quick googling suggests you should check the nvidia mps service which looks like some kind of multi-user CUDA management software...
[13:22:11 CEST] <IntelMiner> Interesting. It should be 396.51. I just built the ffmpeg git branch per the bug reporting guidelines, I'll re-run the strace just to be sure it's at least pulling the right driver version
[13:22:24 CEST] <BtbN> strace is pointless, still
[13:23:19 CEST] <DHE> new versions of the nvidia driver do not require ffmpeg to be rebuilt
[13:23:22 CEST] <DHE> is X11 running?
[13:23:46 CEST] <IntelMiner> DHE: strace shows it's pulling 396.51 at least
[13:23:55 CEST] <IntelMiner> I've got one system running X11, another that isn't. Same issue across both
[13:24:35 CEST] <DHE> and you run ffmpeg as the user logged into the X11 session?
[13:24:38 CEST] <BtbN> X is entirely uninvolved with ffmpegs cuda stuff
[13:24:49 CEST] <BtbN> it doesn't touch X at all, and runs fine without it
[13:24:51 CEST] <IntelMiner> DHE: I've tried doing it as both a regular user and root
[13:24:56 CEST] <IntelMiner> On X and X-less
[13:25:17 CEST] <DHE> BtbN: maybe it's old news but I swear I've had GPU issues when logged in as the "wrong" user
[13:26:33 CEST] <BtbN> CUDA never needed X, it doesn't care about it in the slightest. It directly communicates with the kernel driver.
[13:31:00 CEST] <Nacht> If I use 'alphamerge' with something other then Black, I don't get a full 100% alpha. Is it possible to get it use e.g. Orange as 100% ?
[14:54:33 CEST] <BtbN> IntelMiner, are you on Gentoo?
[15:08:56 CEST] <IntelMiner> BtbN: Yessum
[15:09:03 CEST] <BtbN> What?
[15:09:10 CEST] <IntelMiner> BtbN: Yes, I am
[15:09:22 CEST] <BtbN> hm, I suspect Gentoo is mis-installing the nvidia driver
[15:09:39 CEST] <BtbN> Cause if this would happen everywhere, I'm sure I'd have heard more about it
[15:09:57 CEST] <BtbN> cuInit failing is also not really something that can be the fault of ffmpeg
[15:11:12 CEST] <IntelMiner> It's possible. Though I don't see any bug reports in Gentoo for it (yet)
[15:11:32 CEST] <BtbN> Because nobody uses CUDA
[15:11:40 CEST] <IntelMiner> I might try booting Ubuntu or Fedora or the like and see if I can repro it on the same hardware
[15:13:12 CEST] <IntelMiner> If it works, I'll go ahead and file a bug on Gentoo's side
[15:18:27 CEST] <King_DuckZ> hi, I just run into some code that calls avformat_close_input(&c); avformat_free_context(c); is that correct? do I really need both calls? I'm using ffmpeg 3 and 4
[15:23:13 CEST] <King_DuckZ> the problem is this code is crashing on the first call even if c is not null, from the docs it sounds like the first call is a superset of the second, but it should be ok to call like that no?
[15:23:31 CEST] <King_DuckZ> is there any check I need to do before I try to do that call?
[15:24:28 CEST] <Cracki> does it use c/&c correctly for the argument?
[15:24:32 CEST] <Mavrik> I'd suggest you check what exactly crases.
[15:24:35 CEST] <Mavrik> *crashes
[15:24:44 CEST] <Mavrik> Build ffmpeg with debug symbols, see what line crashes.
[15:24:55 CEST] <Mavrik> If you get those wierd crashes it usually means that your context might be corrupt due to some other reason.
[15:26:02 CEST] <King_DuckZ> Mavrik: that means that normally if c is in any sane state then avformat_close_input() should not crash? even if c is already closed etc?
[15:26:13 CEST] <Mavrik> I'd have to check the source.
[15:26:16 CEST] <Mavrik> But generally yes :)
[15:26:33 CEST] <DHE> usually the av_*_free() functions want a pointer to a pointer because they also NULL out the pointer as part of the freeing process, just so that you don't have any use-after-free errors
[15:27:10 CEST] <DHE> oh.. but after looking, in this case it doesn't...
[15:27:37 CEST] <DHE> avformat_close_input looks like it does all the cleanup in a single shot
[15:27:42 CEST] <King_DuckZ> DHE: oh, it's a local variable: void foo (AVFormatContext* c) { avformat_close_input(&c); avformat_free_context(c); }
[15:28:23 CEST] <King_DuckZ> right, so in normal cases it would set c = nullptr so the next call is just a no-op?
[15:29:02 CEST] <DHE> I would say yes..
[15:29:36 CEST] <DHE> but in this case the cleanup function isn't being used as intended. since &c just points to the parameter to foo(), the function calling foo has a no longer valid pointer...
[15:29:48 CEST] <DHE> I mean, as long as you don't use it that's not a problem
[15:32:02 CEST] <King_DuckZ> ok, yeah it should be fine, it's c++ really and that foo() I posted is being called at scope exit... it looks all fine to me, except that the input file is not a movie file but an image... the original developer was expecting ffmpeg to fail here
[15:32:08 CEST] <King_DuckZ> not to crash
[15:32:37 CEST] <King_DuckZ> they did this sort of "try load" function where they try different libraries to open an input until one succeeds
[15:38:32 CEST] <King_DuckZ> haha lol this so not funny! avformat_open_input - "ps Pointer to user-supplied AVFormatContext [...] Note that a user-supplied AVFormatContext will be freed on failure."
[15:39:36 CEST] <King_DuckZ> yet foo() will try to destroy the original pointer again as it holds a copy, not a reference, just like DHE warned me
[15:39:58 CEST] <King_DuckZ> I can't even get the dude to fix this as he left the company :(
[15:40:50 CEST] <durandal11707> do you posted code example?
[15:41:43 CEST] <King_DuckZ> durandal11707: nope, just the foo() function above
[15:42:24 CEST] <DHE> King_DuckZ: are you using a locally stored full AVFormatContext then passing &thatcontext to all the other functions as needed?
[15:43:20 CEST] <DHE> not just the free function but also av_read_frame(&inputcontext, ...) like that?
[15:44:54 CEST] <King_DuckZ> DHE: full? *c is owned by a c++ smart pointer, and in order to get the double pointer to it the dude made a copy of c on the stack and takes its address, so when open_input fails it resets the c on the stack but not the one in the smart pointer
[15:45:21 CEST] <King_DuckZ> so when the smart pointer goes out of scope it tries to re-destroy the zombie thing
[15:46:02 CEST] <King_DuckZ> I think the proper fix is to make the smart pointer to own **c instead, so the original semantics are preserved
[15:48:15 CEST] <DHE> my C++ is circa 1998, but what's a smart pointer? a reference parameter?
[15:50:07 CEST] <King_DuckZ> DHE: it's just a wrapper that frees a resource when it goes out of scope, in this case
[16:07:47 CEST] <julesverne> trying to figure out how to set a constant bit rate. ffmpeg -rtbufsize 1000M -f gdigrab -framerate 24 -i desktop -f dshow -i au
[16:07:47 CEST] <julesverne> dio="Internal Microphone Array (IDT " -flags +global_header -b:v 6000k -minrate 6000k -maxrate 6000k -bufsize 6000k -vco
[16:07:47 CEST] <julesverne> dec libx264 -pix_fmt yuv420p -preset ultrafast -acodec pcm_s16le -ac 2 -ar 44100 -ab 128k -vf "fps=24" "Re
[16:07:47 CEST] <julesverne> cording.mkv
[16:08:50 CEST] <julesverne> sorry. copied from cmd line. looks like it added in line feeds.
[16:10:10 CEST] <julesverne> anyway i only wanted 4000 Kbps so i tried that. getting between 2100 - 2500 so I bumped it up 6000k and really didn't have much of an effect.
[16:11:23 CEST] <julesverne> A little clearer to look at:  ffmpeg.exe -rtbufsize 1000M -f gdigrab -framerate 24 -i desktop -f dshow -i audio="Internal Microphone Array (IDT " -flags +global_header -b:v 6000k -minrate 6000k -maxrate 6000k -bufsize 6000k -vcodec libx264 -pix_fmt yuv420p -preset ultrafast -crf 7 -acodec pcm_s16le -ac 2 -ar 44100 -ab 128k -vf "fps=24" "Recording.mkv
[16:11:49 CEST] <Cracki> -b:v should do the trick
[16:12:11 CEST] <Cracki> does your question imply that you determined the output to NOT be constant bitrate?
[16:12:25 CEST] <Cracki> why do you want constant bitrate?
[16:12:56 CEST] <Cracki> what do you expect the encoder to do with a static screen image, insert padding bits when it's done describing the content?
[16:13:21 CEST] <Cracki> if you want lossless, which is what people using screen capture want, try -q:v or -crf
[16:13:53 CEST] <furq> julesverne: -x264-params nal-hrd=cbr
[16:14:21 CEST] <furq> also i suspect you don't want 128kbps pcm audio
[16:15:08 CEST] <Cracki> pcm doesn't even respect bitrate, eh?
[16:15:21 CEST] <Cracki> also I'd suggest setting audio sample rate before -i audio
[16:15:41 CEST] <Cracki> or else you'll get samples at one rate, and an interpretation of these for a different sample rate in the output
[16:15:43 CEST] <julesverne> thx. Cracki. answers to your questions. I have determined the output to not be consistent. Client request wants a different bitrate.
[16:15:55 CEST] <durandal_1707> how would pcm respect bitrate? it is uncompressed
[16:16:59 CEST] <furq> i meant the pcm bit more than the bitrate
[16:17:02 CEST] <julesverne> yeah.. that is mistake. I have a tried and true (for my purposes) of recording the screen. client requested 4 Mbps for some reason so I was trying to modify my command.
[16:17:16 CEST] <furq> although some combination of sample rate and bit depth will give you 128kbps pcm
[16:17:53 CEST] <julesverne> my usual is this: ffmpeg.exe -rtbufsize 1000M -f gdigrab -framerate 15 -i desktop -f dshow -i audio=%Device% -flags +global_header -vcodec libx264 -pix_fmt yuv420p -preset ultrafast -acodec pcm_s16le -ac 1 -ar 22050 -vf "fps=15" "Recording.mkv
[16:18:05 CEST] <furq> but yeah if bitrate/maxrate/bufsize aren't cbr enough for you then you need to use nal-hrd=cbr
[16:18:14 CEST] <furq> that's the only way to get "true" cbr out of x264
[16:18:50 CEST] <Cracki> I'm not sure you want -vf fps there. the input should be timestamped, so even if -framerate 15 has timing variation (cpu load...), you get proper timing
[16:18:50 CEST] <julesverne> thx all for the suggestions. will test.
[16:19:24 CEST] <julesverne> Cracki yeah.. i honestly had the hardest time with getting framerate to be consistent.
[16:19:52 CEST] <Cracki> if you want (visually) lossless, don't be afraid of using yuv444p, or other codecs such as qtrle (be sure to set -g somenumber)
[16:20:13 CEST] <Cracki> consider using OBS, it uses directx api to capture the screen
[16:20:39 CEST] <Cracki> also consider hw encoding (intel qsv or nvidia nvenc/...) if that suits you
[16:21:25 CEST] <Cracki> iirc ffmpeg might also support desktop grabbing using directx. gdigrab is a bit old, but still serviceable.
[16:21:35 CEST] <furq> 4mbps lossless 4:4:4, you say
[16:22:15 CEST] <durandal_1707> for which resolution?
[16:23:26 CEST] <DHE> average for a mostly idle desktop might be reasonable... especially with windows 10's "designed in MS Paint" UI style
[16:24:42 CEST] <Cracki> no change, no bits to spend
[16:24:50 CEST] <Cracki> unless you force it to encode intra-only
[16:25:47 CEST] <Mavrik> I've seen players that had problems playing H.264 streams with nal-hrd set tho
[16:26:15 CEST] <Mavrik> So he might be trading one complaint for another ;)
[16:27:13 CEST] <furq> lol really
[16:27:19 CEST] <furq> isn't the entire point of that for bluray compatibility
[16:27:27 CEST] <Mavrik> Yeah well :P
[16:27:32 CEST] <Mavrik> It was an STB tho
[16:27:43 CEST] <furq> will wonders never cease
[16:27:43 CEST] <Mavrik> Motorola I think
[16:28:40 CEST] <furq> designed and built with loving care in illinois, no doubt
[16:28:59 CEST] <kubast2> Hmm is there some downscalling algorithm thought up not to maximise quality/detail when the video is playedback at original(downscaled) resolution ,but to maximise detail and quality when the video is upscaled? Does what I said even makes sense(?)
[16:29:08 CEST] <furq> illinois, fujian province
[16:29:30 CEST] <furq> kubast2: they're not really different things
[16:29:41 CEST] <furq> just use the sharpest one you can
[16:29:44 CEST] <kubast2> yeah that's what I thought sorta too
[16:29:49 CEST] <kubast2> I see
[16:30:00 CEST] <furq> lanczos or spline36 are usually safe bets
[16:30:07 CEST] <furq> or i guess just spline with swscale
[16:30:25 CEST] <kubast2> I actually have one source video that looks better downscalled ,since someone upscaled it with some sort of HQx4 filter
[16:30:32 CEST] <furq> lol
[16:30:42 CEST] <furq> death to pixel art filters
[16:30:48 CEST] <durandal_1707> kubast2: source video of what?
[16:30:56 CEST] <kubast2> I think it was bd rip of lucky star
[16:31:26 CEST] <kubast2> like on youtube the 480p and even some 1080p ones look sharper and this looks straight out of some sort of emulator filter
[16:31:55 CEST] <kubast2> I was testing something out ,and tried to fit one episode into 50MB lol
[16:31:56 CEST] <durandal_1707> yea, people do shitty stuff
[16:32:16 CEST] <kubast2> so in doing so I have found that it actually looks better
[16:32:25 CEST] <kubast2> outside of some vissible artifacts at 480p
[16:32:29 CEST] <furq> there is no limit to the wonders you will see when downloading video from the internet
[16:32:38 CEST] <furq> or downloading anything, really, but especially video
[16:33:01 CEST] <kubast2> I do belive it is true for a lot of mp3 sources
[16:33:12 CEST] <kubast2> encoded at least 4 times with lame lol
[16:34:28 CEST] <kubast2> I am suprissed non of those kind of sites don't reencode mp3 320kbps to flac ,to increase the traffic a bit
[16:34:37 CEST] <furq> oh that definitely happens
[16:35:04 CEST] <furq> there are plenty of commercial music sites that pull that sort of thing
[16:35:16 CEST] <furq> let alone funtracker.ua
[16:36:22 CEST] <Cracki> >unregistered hypercam 2
[16:37:19 CEST] <kubast2> mp3tubedownload
[16:37:46 CEST] <kubast2> yeh I was that guy that used some application instead of youtube-dl
[16:37:55 CEST] <kubast2> >yeh download flac from youtube legit
[16:38:00 CEST] <Cracki> why would you use anything other than youtube-dl
[16:38:09 CEST] <kubast2> I didn't knew it existed in 2010
[16:38:17 CEST] <Cracki> "ricers" and "audiophiles" everywhere
[16:38:34 CEST] <kubast2> I think I was 11 years old
[16:38:35 CEST] <kubast2> in 2010
[16:38:40 CEST] <kubast2> maybe 12
[16:38:42 CEST] <furq> did it exist in 2010
[16:38:43 CEST] <kubast2> don't blame me hey
[16:38:46 CEST] <Cracki> you are 12 and what is that
[16:38:50 CEST] <kubast2> 19
[16:38:53 CEST] <Cracki> you are forgiven :>
[16:39:10 CEST] <BtbN> IntelMiner, ok, I found the issue: You have to build your kernel with CONFIG_NUMA=y and CONFIG_ACPI_NUMA=y
[16:39:12 CEST] <Cracki> might not have existed back then, but I would be surprised
[16:40:04 CEST] <kubast2> furq, I am looking up the youtube-dl repo
[16:40:20 CEST] <Cracki> yt-dl initial release 2006, says wikipedia
[16:40:34 CEST] <kubast2> Commits on Jul 21, 2008
[16:40:41 CEST] <kubast2> https://github.com/rg3/youtube-dl/commits/master?after=d37dc6e1c956ce0f390a4b832f8388cb94254f90+16400
[16:40:57 CEST] <furq> yeah 20 jul 2008 was the first commit
[16:41:17 CEST] <furq> https://github.com/rg3/youtube-dl/graphs/contributors
[16:41:20 CEST] <furq> that's a quicker way to find it btw
[16:41:58 CEST] <Cracki> might not have started on github
[16:42:09 CEST] <furq> well either way it's before 2010 so i'm satisfied
[16:43:11 CEST] <Cracki> ;)
[16:47:46 CEST] <julesverne> I apologize I got booted off and wouldn't let me reconnect and then had to restart.
[16:49:54 CEST] <julesverne> I think i was in the middle of responding to Cracki before I got booted that I was only able to get a consistent framerate by having -framerate before input and then as a filter at the end. I've seen other people have similar problems online that was solved by doing that.
[16:50:16 CEST] <Cracki> "consistent" might not mean what you think
[16:50:25 CEST] <Cracki> variable frame rate is a thing
[16:50:56 CEST] <Cracki> if the frame grabbing doesn't happen at exactly 15 fps, but jitters or something, then you do NOT want to reinterpret the sequence of frames as strictly 15 fps
[16:55:01 CEST] <julesverne> thanks for clarifying. It's been a couple years since I looked at that, perhaps while I'm doing this, I'll take a look at that too.
[16:57:11 CEST] <julesverne> furq that definitely fixed the issue. Thanks!!
[17:28:42 CEST] <pi--> https://paste.pound-python.org/show/75aTR6aa42nlKoZOCBJF/ <-- could anyone explain why this command fails to export audio at 48 kHz?
[17:28:58 CEST] <pi--> It is exporting at 22050Hz
[17:30:00 CEST] <atomnuker> -b:a is bitrate
[17:31:56 CEST] <Hello71> why would b stand for sample rate anyways
[17:32:06 CEST] <Hello71> sample rate doesn't even have a b in it
[18:04:18 CEST] <kepstin> pi--: you haven't even specified an output codec, so it's using whatever the default is for the format...
[18:08:06 CEST] <kepstin> pi--: that command is encoding the audio to 48kbit/s as requested, using some completely random encoder since you didn't specify one, and that encoder may have either preserved the input sample rate, or possibly reduced it due to the low requested bitrate.
[20:29:28 CEST] <pi--> Is there anyone out there that might be willing to review my ffmpeg use over slack?  I offer to pay a decent consultancy rate.  Please PM if interested.
[21:37:05 CEST] <Zexaron> Hello
[21:37:34 CEST] <Zexaron> I muxed a video/audio from a stream but the audio is out of sync a bit, it's a bit ahead
[21:37:45 CEST] <Zexaron> by a few 100 ms or less
[21:38:00 CEST] <Zexaron> itsoffset suppose to delay it right?, well I think I need the other way around
[21:38:47 CEST] <AshleyQ> Hi what is the command to convert from mkv to webm? No changes at all to quality/dimensions/etc.
[21:41:24 CEST] <CoreX> ffmpeg -i input.mkv -c copy -f webm -y output.webm
[21:42:08 CEST] <AshleyQ> CoreX: thanks
[21:42:31 CEST] <CoreX> work ok?
[21:44:29 CEST] <Zexaron> Okay I solved it by reversing input audio and video with the itsoffset command so it delays video instead
[21:44:33 CEST] <Cracki> I suspect you don't need -f webm because the output file extension indicates that to ffmpeg already
[21:44:44 CEST] <Zexaron> the order matters in the command line yeah
[21:46:12 CEST] <AshleyQ> I just found this (is this recommended instead?): ffmpeg.exe -i input.mp4 -c:v libvpx -crf 10 -c:a libvorbis output.webm
[21:46:48 CEST] <CoreX> the one i gave you leaves everything untouched
[21:46:57 CEST] <CoreX> untouched = No changes at all to quality/dimensions/etc.
[21:47:04 CEST] <AshleyQ> Gotcha
[21:49:03 CEST] <AshleyQ> [NULL @ 0000018e340f7040] Unable to find a suitable output format for 'webm' webm: Invalid argument
[21:49:31 CEST] <durandal_1707> what ffmpeg version is that?
[21:50:47 CEST] <AshleyQ> Just downloaded it: ffmpeg-20180809-e0539f0-win64-static
[21:52:58 CEST] <AshleyQ> This is working for the mkv: ffmpeg.exe -i myinput.mp4 -c:v libvpx -crf 10 -c:a libvorbis myoutput.webm
[21:55:19 CEST] <CoreX> try my line again but without the "-f webm"
[21:58:34 CEST] <furq> you won't be able to remux mp4 to webm
[21:58:57 CEST] <furq> also you should use opus and you probably explicitly want to use vp9
[21:59:51 CEST] <AshleyQ> CoreX: I did and it didn't work with the mkv
[22:01:51 CEST] <AshleyQ> Tried with and w/o the -f
[22:19:35 CEST] <Cracki> you can remux it to mkv, that's "almost" webm :>
[22:19:56 CEST] <Cracki> no need for -f anything if the file name hints at the desired container
[22:54:18 CEST] <AshleyQ> Hey all, so this worked but the quality was noticeably reduced. Is there a tweak that will maintain it? ffmpeg.exe -i input.mkv -c:v libvpx -crf 10 -c:a libvorbis output.webm
[22:54:46 CEST] <Cracki> explain "reduced"
[22:54:48 CEST] <Cracki> or show it
[22:54:59 CEST] <AshleyQ> Lots of noticable pixelation
[22:55:03 CEST] <Cracki> you forgot the bitrate for the audio codec
[22:55:17 CEST] <Cracki> see what range of values libvpx expects for -crf
[22:55:23 CEST] <Cracki> or if it even uses -crf
[22:55:28 CEST] <Cracki> (and not -q:v...)
[22:56:05 CEST] <Cracki> is the source pixelated already?
[22:56:10 CEST] <AshleyQ> No
[22:56:14 CEST] <Cracki> does the player pixelate because it can't keep up with decoding?
[22:56:16 CEST] <AshleyQ> The mkv looks fine
[22:56:32 CEST] <AshleyQ> Using VLC
[22:56:34 CEST] <Cracki> share your data
[22:56:45 CEST] <AshleyQ> share it how?
[22:57:17 CEST] <Cracki> imgur for stills, dropbox or google drive or whatever for the video itself?
[22:57:29 CEST] <Cracki> sample data, not a whole movie of course
[22:57:32 CEST] <AshleyQ> Oh ok..
[22:59:24 CEST] <Cracki> https://trac.ffmpeg.org/wiki/Encode/VP9
[22:59:27 CEST] <Cracki> try -b:v 0
[22:59:44 CEST] <Cracki> https://trac.ffmpeg.org/wiki/Encode/VP9#constantq
[00:00:00 CEST] --- Fri Aug 10 2018


More information about the Ffmpeg-devel-irc mailing list