burek021 at gmail.com
Sun Jan 22 03:05:01 EET 2017
[00:22:19 CET] <faLUCE> well. FINALLY I solved. I did not set baseline profile for h264. And vlc can't decode fastly non baseline h264 streams.
[00:24:47 CET] <klaxa> lol what
[00:26:40 CET] <faLUCE> klaxa: you can try yourself
[00:26:56 CET] <faLUCE> I had an headache for that
[00:28:40 CET] <faLUCE> try to unset the baseline option when making the stream, then stream it to vlc. with vlc 2.2.4 you'll see lot of discarded frames, because they're not decoded fastly
[00:29:13 CET] <faLUCE> anyway, never seen in my life a mess worse than the ffmpeg+vlc libs
[00:29:59 CET] <klaxa> well, it's a flexible library, it has to be complex
[00:30:12 CET] <klaxa> there is a trade-off between complexity and flexibility
[00:30:25 CET] <faLUCE> klaxa: it's not a complexity, it's only a mess, full of errors and nonsense
[00:30:28 CET] <klaxa> make it simple it's not flexible, make flexible it's not simple
[00:30:38 CET] <faLUCE> IMHO
[00:30:54 CET] <nadermx> how would I get a drawbox to always show on the bottom right of the image/gif
[00:31:17 CET] <faLUCE> klaxa: btw, do you know if the x264 enc accepts non YUV420P fmts for baseline profile?
[00:31:21 CET] <nadermx> drawbox=x=h:y=w:color=black at 0.4:width=iw:height=40:t=max
[00:31:22 CET] <nadermx> ?
[00:31:54 CET] <klaxa> dunno
[02:49:59 CET] <freezway> I have a bunch of flac files with metadata in the flac container (not the audio stream), and album art in another stream. When I convert it to opus in an ogg container, it puts the metadata in the opus stream and the album art stream, not the ogg container. How do I fix this?
[02:51:15 CET] <freezway> invocation used: ffmpeg -hide_banner -loglevel quiet -n -i file.flac -acodec libopus -b:a 96000 out.opus.ogg
[03:04:20 CET] <freezway> erm. disregaurd that. ogg containers dont have metadata
[03:23:28 CET] <pbos> does ffmpeg MediaCodec/OSX at all support mjpeg hardware decoding?
[03:24:24 CET] <pbos> maybe that's avfoundation though
[03:35:13 CET] <arog> do you guys have any tutorials on writing my own program to generate a mp4 using libavformat
[06:14:11 CET] <DeathShot> anyways has any idea about this: Shared object "libGL.so.1" not found, required by "libcairo.so.2"
[06:14:14 CET] <DeathShot> trying to run vim
[07:43:58 CET] <mosb3rg> hey guys, im running into an issue when dumping watchespn.com live footage or dumping it, i get aac element mismatch, but i noticed, that when it goes to commercial breaks, they goto a silent still picture until its back from commercials, this is when this error occurs it seems to be cause a problem for the application and even when it comes back from commercial the video is jumpy ad skips and never looks right again really lousy because the video is
[07:43:58 CET] <mosb3rg> amazing quality otherwise, its just when it goes to commercial and comes back i get that problem, and if i came into the feed after it came back from commercial, this wouldnt happen. but i really dont want to start and stop a ton of times and ill naturally miss footage.
[07:44:52 CET] <mosb3rg> its locked to the ip you login from, or i would provide an example
[07:48:30 CET] <mosb3rg> when i try and playback the .mp4 file i get this error at that point i mention:
[07:48:32 CET] <mosb3rg> [aac @ 0x7f9de0000d20] This decoder does not support parameter changes, but PARAM_CHANGE side data was sent to it.
[07:48:32 CET] <mosb3rg> [aac @ 0x7f9de0000d20] Error applying parameter changes.
[07:49:16 CET] <mosb3rg> its like its trying to send a silencing parameter or something like this i really am not sure, but its creating a major problem in the process.
[08:49:45 CET] <c_14> mosb3rg: open a ticken on trac, preferably with a small sample that reproduces the issue
[09:57:06 CET] <excalibr> Trying to embed srt into a mp4 file. Why is ffmpeg complaining about -c:s copy?
[09:58:43 CET] <c_14> You can't put srt into mp4
[09:58:49 CET] <c_14> You have to reencode to mov_text
[10:02:22 CET] <excalibr> ahh. It works now ty
[10:30:37 CET] <Pegasik> what's the latest ffmpeg bundle with winXP support? 2.8.6?
[10:31:09 CET] <Pegasik> and what are GUI for ffmpeg for win?
[10:36:54 CET] <kerio> windows XP reached end of life 3 years ago
[10:47:10 CET] <Pegasik> Thank you for answer to the question i dint ask
[14:00:02 CET] <crst> Hi guys, when i create a file like this: "ffmpeg -i IN.mp3 -c:a libfdk_aac -profile:a aac_he -b:a 8k OUT_8k.m4a" I don't know, but something like the index seems to be broken, some apps having problems reading the file properly, even VLC, forwarding rewinding makes some apps to freeze...
[14:21:04 CET] <crst> Oh and I can't open the file in itunes at all
[14:22:10 CET] <BtbN> aac_he might not be too well supported
[14:22:33 CET] <BtbN> Does ffplay play it?
[14:22:53 CET] <BtbN> Or converting it back to mp3 or something result in something playable?
[14:27:13 CET] <kerio> is that 8kbps aac :|
[14:33:16 CET] <kerio> ...why does the ffmpeg-all man page claim that the builtin aac is better than fdkaac
[14:36:00 CET] <livingBEEF> I was looking at fade out ( https://trac.ffmpeg.org/ticket/2789 and https://trac.ffmpeg.org/ticket/2631 ) Is there any reason why this can't be solved by taking the 'media duratin' from metadata?
[14:39:34 CET] <livingBEEF> I can easily do that myself when I'm using ffmpeg in a some script, but I don't always have that level of control
[14:40:11 CET] <crst> BtbN: converting back to mp3? doesn't that drain all of the juices left in that pathetic file? kerio: don't matter the bitrate, I get the same result for others as well.
[14:40:25 CET] <kerio> crst: what are you attempting to do
[14:44:24 CET] <crst> kerio: I have about 1000 mp3's, making 60 gigs, of audio lectures and I'd like to compress it so I can put it on an iphone with ridiculously low storage... This gives a nice result: "ffmpeg -i IN.mp3 -acodec libopus -b:a 8k -vbr on -compression_level 10 OUT_opus_10_8k.opus" but it's opus and doesn't work with itunes. 47 -> 2.9 MB
[14:46:25 CET] <faLUCE> hello. Is swscale usefull for audio too?
[14:46:36 CET] <c_14> no
[14:46:45 CET] <faLUCE> c_14: thanks
[14:48:10 CET] <c_14> livingBEEF: duration metadata doesn't have to be accurate
[14:49:18 CET] <faLUCE> c_14: btw, I finally made my encoder-scaler-muxer-http streamer working with libav and libevent. The stream can be perfectly seen with vlc, mplayer and ffplay. Thanks for your help too. Now I'm going to pack all into a library, it's all single threaded and it canse serve multiple sources
[14:49:25 CET] <faLUCE> *it can
[14:50:01 CET] <faLUCE> I really suggesto ALL the people to try libevent with libav
[14:50:20 CET] <c_14> crst: It's to test whether the problem is in ffmpeg or in the application trying to play the HE AAC
[14:50:42 CET] <livingBEEF> yeah, I'm aware of that, but neither was '-ss ... -i ...' seeking, and it was there anyway
[14:51:33 CET] <livingBEEF> and it'd be good enough for those vidoes that do have it accurate
[14:52:01 CET] <faLUCE> I'll mention "c_14" and "furq" in the main page of the library, if you agree :-)
[14:52:09 CET] <faLUCE> (for their help)
[14:55:30 CET] <crst> c_14: When I manually convert via cli I rather often get this strange "broken index" phenomenon as I may vaguely describe it. Also using mp3 as output there's an error, a 1h podcast only has 20 minutes of "indexed time" but plays effectively 1h. When I use a GUI app which uses ffmpeg internally the problem isn't present, but these apps don't let me go lower in compression. Also the files I generate have problems in different softwares. Maybe I the i
[14:55:30 CET] <crst> s something wrong in my ffmpeg config.
[14:56:01 CET] <c_14> livingBEEF: write a patch and maybe it'll get accepted
[14:56:06 CET] <c_14> crst: what version of ffmpeg?
[14:56:19 CET] <c_14> faLUCE: I don't mind
[14:56:30 CET] <crst> c_14: 3.2.2
[14:57:46 CET] <faLUCE> c_14: ok. Anyway, without your tips I would have been discouraged to write a http streamer in C
[14:58:05 CET] <kerio> i'm pretty sure that we all told you that the whole thing was mental
[14:58:11 CET] <kerio> but sure :^)
[14:58:28 CET] <faLUCE> kerio: what was mental?
[15:06:35 CET] <c_14> crst: your command should be fine, have you tried playing with ffplay?
[15:09:48 CET] <crst> c_14: plays nice, no errors except "[swscaler @ 0x7f82d60d9e00] deprecated pixel format used, make sure you did set range correctly"
[15:11:12 CET] <c_14> do you have any HE AAC files that play correctly in wherever it is you're trying to play this?
[15:18:51 CET] <kerio> faLUCE: well, writing anything that has to answer network requests in C
[15:19:05 CET] <kerio> ...writing anything in C i guess
[15:22:23 CET] <durandal_170> kerio: mentalist
[15:23:52 CET] <crst> c_14: I think these are the only HE AAC files I have. Is there a good example online which I can use as a test reference?
[15:24:42 CET] <crst> Another thing: mp3 files are id3-tagged with a lot of info. how can I migrate the tags when converting?
[15:25:20 CET] <crst> because at the moment it seems they're lost after coversion
[15:27:32 CET] <furq> crst: http://www.opticodec.com/test/sbr.3gp
[15:27:38 CET] <c_14> the standardized tags should be copied
[15:30:32 CET] <furq> yeah that works for me going mp3 to m4a
[15:33:34 CET] <crst> furq: Is that a movie container? Oh yeah you're right, I'm sorry, most of the tags are indeed present. The cover is missing though. no big deal.
[15:34:38 CET] <furq> i don't think there's a standard for that in m4a
[15:35:11 CET] <c_14> the cover was probably turned into a video stream
[15:35:21 CET] <c_14> which would explain the "deprecated pixel format used"
[15:35:28 CET] <furq> oh yeah
[15:35:38 CET] <c_14> you can disable that with -vn
[15:36:17 CET] <furq> that works for me in some players but like i said, there's no standard
[15:36:40 CET] <furq> you'd have thought whatever itunes does would be the default behaviour but i try my best not to think about itunes
[15:40:39 CET] <crst> furq: itunes is such a pita often enough.
[15:51:04 CET] <kerio> crst: why can't you just use itunes itself to do the conversion?
[15:51:34 CET] <kerio> i can set it as low as 32kbps
[15:51:51 CET] <crst> kerio: still too high for me
[15:52:05 CET] <crst> 16k max :)
[15:52:06 CET] <kerio> 20?
[15:52:17 CET] <crst> 8k is great
[15:52:24 CET] <faLUCE> kerio: I code in C, usually, and it takes loooooot of time, due to bad libraries
[15:52:26 CET] <kerio> ...apparently *disabling* aac-he allows for 16kbps stereo bitrate
[15:52:35 CET] <kerio> i don't even
[15:52:58 CET] <BtbN> 8k AAC sounds painfull
[15:53:11 CET] <kerio> yeah i mean do you actually expect to get anything audible out of the exercise
[15:53:34 CET] <crst> kerio: 8k mono HE AAC or opus sound super okay to me here
[15:53:42 CET] <BtbN> for what?
[15:53:46 CET] <BtbN> Voice-Only?
[15:53:48 CET] <crst> no music, it's audio lectures
[15:53:50 CET] <crst> yeah
[15:53:53 CET] <crst> voice only
[15:54:20 CET] <BtbN> 8 still seems way too constrained though
[15:54:37 CET] <BtbN> 32kbps would be sane
[15:55:35 CET] <crst> 16 is way better, but 8k still ok. 16k -> 6.1MB 8k -> 4.4MB opus 8k -> 2.9MB !
[15:55:54 CET] <BtbN> how long is the whole thing?
[15:56:24 CET] <BtbN> And 8k AAC vs. 8k OPUS being diffrent sizes makes no sense. 8kbit/s are 8kbit/s, no matter what codec.
[15:56:58 CET] <kerio> lmao
[15:57:05 CET] <crst> each from 45min to 1.5h BtbN: hmm, why do I get the difference in filesize then?
[15:57:24 CET] <BtbN> because at least one of them can't be 8kbit/s
[15:58:49 CET] <mosb3rg> hey guys, is there any handling for parameter changes
[16:00:03 CET] <mosb3rg> watchespn.com uses still image + silenced audio i believe for there commercial breaks, while throwing to whatever carriers commercials your signed in with to get access, directv or comcast for example.
[16:00:16 CET] <crst> ffmpeg -i IN.mp3 -c:a libfdk_aac -profile:a aac_he -b:a 8k OUT.m4a" vs. "ffmpeg -i IN.mp3 -acodec libopus -b:a 8k -vbr on -compression_level 10 OUT.opus" BtbN: probably the opus, vbr, lol, IMO it sounds better
[16:01:01 CET] <mosb3rg> when it goes to commercial the signal drops bitrate to 32 kb/s or so. which i could understand considering whats being displayed.. but when it comes back from commercial.. its not displaying correctly. theres some parameter changing thats happening which is throwing an error in ffmpeg
[16:01:04 CET] <BtbN> yes, opus is the more advanced codec and the best choice for basically anything, if the intended player supports it.
[16:01:32 CET] <mosb3rg> then this is what the output looks like when this occurs:
[16:01:36 CET] <mosb3rg> frame=104833 fps= 30 q=-1.0 Lsize= 1865924kB time=26:26:06.05 bitrate= 160.6kbits/s
[16:02:50 CET] <mosb3rg> the time is obviously then reporting incorrectly as far as the time line i was dumping. and bitrate stays low after commercial break situation.
[16:05:06 CET] <crst> It's such a shame itunes doesn't support opus... it's so limiting, these MOFOS!
[16:08:41 CET] <crst> for the sake of testing, how can I make the least destructive mp3 out of this opus keeping the same size?
[17:32:01 CET] <crst> Can I squeeze this "-af aresample=resampler=soxr -ar 11025" into here "ffmpeg -i IN.mp3 -acodec libopus OUT.opus" ?
[17:34:43 CET] <furq> sure
[17:36:15 CET] <kerio> ...shouldn't you put the new rate in the filter definition
[17:36:33 CET] <kerio> oh, it converts between the sample rates of the input and the output, nice
[17:38:49 CET] <furq> is there any reason to use soxr over swresample
[17:43:05 CET] <c_14> you could also use -af aresample=11025:resampler=soxr
[17:43:08 CET] <c_14> which wouldbe more compact
[17:50:28 CET] <crst> nice, it works when I use c_14's code, mine didn't. I've read some good things about soxr, but can't remind, maybe it's good for voice.
[17:51:22 CET] <crst> Oh, it ran, but samplerate is stil 48k..
[17:51:45 CET] <c_14> opus is always 48k
[17:51:52 CET] <c_14> Just going to throw that out there
[17:52:23 CET] <crst> lol, so I can squeeze it in there but it's no good
[17:52:50 CET] <kerio> opus is not always 48k
[17:53:02 CET] <kerio> it varies the sample rate depending on the bitrate, aiui
[17:53:11 CET] <kerio> and it has its own resampler, i think?
[17:53:19 CET] <_n1n0_> why is it that upon a command, the end resuls is previewed in the image viewer (the first image only) instead of a video player?
[17:54:36 CET] <c_14> kerio: it decodes to 48k though so ffmpeg will always say it's 48k afair
[17:56:02 CET] <c_14> crst: opus does accept only 8, 12, 16, 24 and 48k though. Maybe try 12k
[17:58:13 CET] <crst> c_14: like: -af aresample=12k:resampler=soxr ? same outcome here
[18:03:43 CET] <crst> That is the command in total: "ffmpeg -i IN.mp3 -af aresample=12k:resampler=soxr -acodec libopus -b:a 8k OUT.opus"
[18:18:33 CET] <crst> Original file 47MB, at the moment I'm at 2.7MB. I want to get lower :)
[18:21:18 CET] <kerio> why are you bothering with that resample thing
[18:21:25 CET] <kerio> you're setting a bitrate
[18:21:36 CET] <kerio> the output size is determined by duration and bitrate
[18:21:59 CET] <crst> kerio: no idea, isn't less samplerate less size?
[18:22:05 CET] <crst> bitrate is vbr
[18:22:39 CET] <kerio> bitrate is *bitrate*
[18:22:45 CET] <furq> why are you messing around with opus if your phone doesn't support it
[18:22:47 CET] <kerio> it might fluctuate a bit
[18:23:04 CET] <furq> also it depends on how the ratecontrol and such actually works
[18:23:20 CET] <furq> opus doesn't use abr so i'd expect lowering the sample rate would actually lower the bitrate
[18:23:25 CET] <furq> but it might not
[18:23:41 CET] <kerio> furq: how can it lower the bitrate if you tell it to use a specific bitrate
[18:23:55 CET] <furq> you don't
[18:24:11 CET] <furq> vbr bitrates in opus are something like -V in lame
[18:24:11 CET] <crst> furq: It's fascinating how it compresses so much and still sounds ok.
[18:24:33 CET] <furq> it's not an actual abr target, it's just the bitrate that compression level averaged out to across a test corpus
[18:25:01 CET] <kerio> :o
[18:25:02 CET] <furq> obviously if it's cbr then it will make no difference
[18:25:10 CET] <furq> but the default is vbr afaik
[18:25:12 CET] <kerio> furq: are you sure about that?
[18:25:18 CET] <furq> pretty sure
[18:25:30 CET] <furq> if you can find docs that contradict me then i'll defer to those
[18:25:41 CET] <kerio> how does that fit into the "specify how many packets you want to send each second and how big they should be" thing
[18:25:48 CET] <furq> well you'd use cbr for that
[18:26:27 CET] <kerio> oic
[18:26:44 CET] <kerio> furq: apparently opus does also have cvbr
[18:26:56 CET] <crst> http://www.ffmpeg.org/ffmpeg-codecs.html#toc-Option-Mapping
[18:27:06 CET] <crst> vbr is standard
[18:27:13 CET] <kerio> in addition to hardcbr, which is what you'd get in mumble and the likes
[18:27:52 CET] <furq> well yeah i mean hard-cbr
[18:28:01 CET] <kerio> yeah but it's also got cvbr
[18:28:15 CET] <furq> this is confusing because the docs refer to that as cbr
[18:28:45 CET] <furq> it does mention that vbr will be higher quality
[18:28:51 CET] <furq> as you'd expect
[18:29:28 CET] <kerio> crst: opusenc --comp 10 --framesize 60 --bitrate 6 --downmix-mono in.wav out.opus
[18:29:55 CET] <furq> This mode is analogous to CBR in AAC/MP3 encoders and managed mode in Vorbis coders.
[18:29:58 CET] <furq> ah
[18:30:08 CET] <furq> so i guess it's something like mp3 cbr with the bit reservoir then
[18:32:47 CET] <crst> kerio: hmm, I can't get it to work...
[18:32:57 CET] <fling> what is bit reservoir?
[18:33:05 CET] <furq> http://wiki.hydrogenaud.io/index.php?title=Bit_reservoir
[18:33:09 CET] <fling> thanks
[18:34:06 CET] <furq> kerio: https://wiki.xiph.org/OpusFAQ#How_is_the_bitrate_setting_used_in_VBR_mode.3F
[18:34:14 CET] <kerio> furq: ye i see
[18:34:24 CET] <kerio> how does one set cbr mode in ffmpeg
[18:34:44 CET] <furq> -vbr off
[18:34:52 CET] <furq> or -vbr constrained
[18:34:54 CET] <kerio> surely that's a better way of going about things than chucking away data before passing it to opusenc
[18:35:07 CET] <kerio> furq: so that would be hardcbr and cvbr
[18:35:08 CET] <kerio> right
[18:35:11 CET] <furq> i assume so
[18:35:26 CET] <furq> you probably shouldn't turn it off though
[18:36:31 CET] <kerio> crst: try -b:a 6k
[18:36:38 CET] <furq> tbf i'm pretty sure opus does some magic to make 8kbps work at all that negates the utility of resampling in advance
[18:36:39 CET] <kerio> and try to find how to set stuff like the frame size
[18:36:52 CET] <furq> -frame_duration, although again idk how that'll help
[18:36:52 CET] <kerio> pretty sure 8kbps ends up being 8kHz
[18:36:58 CET] <kerio> furq: less overhead
[18:37:09 CET] <kerio> he's got a gigantic audio corpus, every bit counts
[18:37:19 CET] <furq> oh
[18:37:25 CET] <furq> crst: definitely try -application voip
[18:37:26 CET] <crst> kerio: I think as of 6k... 4k and 2k gives me 2.7MB ... 1k brakes
[18:37:29 CET] <furq> that's tuned for voice reproduction
[18:37:38 CET] <crst> furq: did that already
[18:38:00 CET] <crst> no noticeable difference imho and size is same
[18:38:02 CET] <furq> well yeah you can try -vbr off -b:a 2k
[18:38:05 CET] <furq> that's going to sound like trash though
[18:38:10 CET] <kerio> furq: opusenc claims that the smallest bitrate is 6k
[18:38:16 CET] <furq> 6k then
[18:38:56 CET] <furq> how much audio have you got lol
[18:39:12 CET] <kerio> crst: can you upload a sample file somewhere
[18:39:16 CET] <furq> if you can't fit all of it on a device at 8kbps then you must have decades of it
[18:39:17 CET] <kerio> or is this secret
[18:39:30 CET] <furq> or the device is a commodore 64
[18:40:04 CET] <furq> https://www.google.co.uk/search?q=8kbps%20*%201%20year
[18:40:09 CET] <furq> google is so good ;_;
[18:40:22 CET] <crst> lol 2k cbr sounds like shit
[18:40:37 CET] <kerio> yea no fucking shit
[18:40:39 CET] <furq> i'm shocked
[18:40:43 CET] <furq> p.s. i'm not shocked
[18:41:01 CET] <kerio> crst: < d Õ_Õ =d give sample file
[18:41:32 CET] <crst> kerio: moment
[18:42:42 CET] <crst> 6k cbr 2.4MB sound like shit, too. amazing the difference between this and 2.7MB
[18:43:08 CET] <crst> kerio: original sample?
[18:43:10 CET] <furq> maybe -vbr constrained would sound less like shit
[18:43:17 CET] <furq> i would definitely leave vbr on though
[18:49:04 CET] <crst> furq: pretty much identical 1'026 bytes less though.
[18:54:12 CET] <crst> !!!!THE CHAMPION!!!! ffmpeg -i IN.mp3 -acodec libopus -vbr constrained -b:a 6k -application voip OUT.opus Ladies and gentlemen, this is it. Just apply this to any audio recording and enjoy your lame storage.
[18:55:49 CET] <furq> does that actually sound any good
[18:55:55 CET] <kerio> crst: is it actually understandable
[18:56:10 CET] <crst> It sound so super okay
[18:57:53 CET] <crst> 17.64 times reduced
[18:58:44 CET] <kerio> the power of opus
[18:59:57 CET] <crst> It's been a tough race, on 2nd place: "ffmpeg -i IN.mp3 -acodec libopus -vbr on -b:a 6k -application voip OUT.opus" losing by only 1'026 bytes... 1'026 bytes, he will never forget...
[19:04:21 CET] <furq> wow this sounds terrible
[19:04:28 CET] <furq> it is intelligible though
[19:05:12 CET] <crst> NO, IT SOUNDS AMAZING!
[19:05:15 CET] <crst> :)
[19:05:44 CET] <furq> i'm impressed by how good 16k sounds though
[19:05:49 CET] <furq> especially coming from a lossy source
[19:06:07 CET] <crst> yeah from a shitty mp3, 16k is really good though
[19:06:37 CET] <furq> well i'm using a 128k mp3 ripped from digital radio, so it's fairly good
[19:06:50 CET] <kerio> furq: no joke, i converted from a lossless source to the shittiest possible aac in itunes
[19:06:59 CET] <kerio> which ended up being like 16kbps
[19:07:09 CET] <kerio> and i could hardly tell the difference, with laptop speakers
[19:07:13 CET] <kerio> at low volume
[19:07:21 CET] <furq> do you have any more caveats to add
[19:07:30 CET] <kerio> no
[19:08:00 CET] <kerio> i bet it was all thanks to the 24bit depth of the source :^)
[19:08:03 CET] <furq> my friend made a copy of picasso's sunflowers with a biro, and i could hardly tell the difference, with the lights off, and my eyes closed
[19:08:19 CET] <furq> that's what i told him anyway
[19:09:18 CET] <furq> you're probably thinking "doesn't he mean van gogh's sunflowers?" no. i mean picasso's sunflowers. it's very rare
[19:10:17 CET] <kerio> i bet it's not as rare as some pepes i have
[19:10:31 CET] <furq> i don't know or want to know what that means
[19:12:07 CET] <kerio> http://knowyourmeme.com/memes/rare-pepe
[19:12:21 CET] <furq> what did i just say
[19:13:41 CET] <crst> Pepe the frog! I love that guy
[20:05:10 CET] <_n1n0_> hi. noob to ffmpeg but managed to make image sequence out of video, but cannot vice versa. any suggestion?
[20:08:10 CET] <durandal_170> _n1n0_: what you tried?
[20:09:10 CET] <_n1n0_> ffmpeg -i video.webm image-%03d.png
[20:09:43 CET] <_n1n0_> images image-000.png until 004.png
[20:14:29 CET] <_n1n0_> C:\ffmpeg\bin, and those 5 images in that folder
[20:17:58 CET] <_n1n0_> pardon, using this command: ffmpeg -i image-%03d.png video.webm
[20:20:30 CET] <furq> so what's the problem
[20:26:52 CET] <_n1n0_> image-&03.png...no such file or dir
[20:29:05 CET] <DHE> you used & instead of %
[20:30:07 CET] <_n1n0_> noup, mistyped it
[20:30:33 CET] <_n1n0_> [image2 @ 0000000000f061a0] Could find no file with path 'image-%03d.png' and index in the range 0-4
[20:30:34 CET] <_n1n0_> image-%03d.png: No such file or directory
[20:30:36 CET] <_n1n0_> C:\ffmpeg\bin
[20:30:37 CET] <_n1n0_> >
[20:31:27 CET] <furq> pastebin the full command line and output
[20:55:28 CET] <nadermx> Is there any way to add two multiple text boxes to a video/gif
[20:55:41 CET] <nadermx> so for example a watermark, and a text on image or video
[20:59:56 CET] <_n1n0_> http://pastebin.com/L6Np1h4g
[21:00:54 CET] <_n1n0_> to repeat, images image-000.png until 004.png are in that bin folder
[21:09:55 CET] <_n1n0_> can do images from video, why not the other way*?
[21:27:26 CET] <zoli> hi
[21:28:07 CET] <zoli> can you tell me what is wrong with this command?: ffmpeg -i /media/zoli/Elements/Képek/2017/2017-01-21/DSCF1325.MOV -c:v h264_nvenc -preset slower -pixel_format yuv444p -b:v 2500k -threads:1 6 /media/zoli/Elements/Képek/2017/2017-01-21//DSCF1325c.MOV
[21:28:23 CET] <BtbN> There is no slower preset.
[21:28:39 CET] <BtbN> And the output probably also tells you so.
[21:28:51 CET] <zoli> outpus is this: Error while opening encoder for output stream #0:0 - maybe incorrect parameters such as bit_rate, rate, width or height
[21:29:00 CET] <zoli> BtbN: ty, how come it does not exist?
[21:29:06 CET] <zoli> i have seen it in a doc somewher
[21:29:14 CET] <BtbN> Well, because there is no slower preset on nvenc.
[21:29:18 CET] <zoli> https://trac.ffmpeg.org/wiki/Encode/H.264
[21:29:29 CET] <zoli> ultrafast,superfast, veryfast, faster, fast, medium, slow, slower, veryslow, placebo
[21:29:37 CET] <BtbN> those are the libx264 presets.
[21:29:42 CET] <zoli> ahh
[21:29:53 CET] <zoli> can you tell me what are the valid ones here?
[21:30:04 CET] <zoli> i want to have the best quality possible
[21:31:02 CET] <BtbN> ffmpeg --help encoder=h264_nvenc
[21:32:39 CET] <zoli> BtbN: hmm, lossless does not work either
[21:32:49 CET] <zoli> although that command list it
[21:32:56 CET] <BtbN> define "does not work"
[21:33:09 CET] <zoli> i mean the same error copyied ablove
[21:33:15 CET] <zoli> Error while opening encoder for output stream #0:0 - maybe incorrect parameters such as bit_rate, rate, width or height
[21:33:20 CET] <BtbN> That's the generic overall result.
[21:33:34 CET] <BtbN> You should read more than one line of output
[21:33:45 CET] <Misaki_> Does anyone have anything to say about this? https://petitions.whitehouse.gov/petition/end-hunger-poverty-and-war-through-economic-innovation
[21:33:53 CET] <zoli> [h264_nvenc @ 0x2846b40] No NVENC capable devices foun
[21:33:57 CET] <zoli> hmm
[21:34:03 CET] <zoli> it works though with different preset
[21:34:11 CET] <BtbN> your device is not compatible with the requested encoder settings.
[21:34:25 CET] <BtbN> lossless is only supported on Maxwell or newer.
[21:34:38 CET] <zoli> that is interesting, i thought it is either h264 or not only
[21:35:24 CET] <zoli> what is ll / llhp / llhq and what are the differences?
[21:35:33 CET] <BtbN> lower latency
[21:36:00 CET] <zoli> how does it compare to hp and hq?
[21:37:23 CET] <BtbN> it has a lower latency, and a diffrent quality
[21:37:29 CET] <zoli> ll already give me quite nice result
[21:37:38 CET] <zoli> is hp or hq better?
[21:37:46 CET] <BtbN> high performance/high quality
[21:38:29 CET] <zoli> BtbN: ty
[21:38:40 CET] <BtbN> but don't expect wonder from a hardware encoder
[21:38:45 CET] <BtbN> x264 is better in any case
[21:38:51 CET] <BtbN> +s
[21:39:08 CET] <zoli> oh, really?
[21:39:12 CET] <zoli> how come?
[21:39:20 CET] <BtbN> it's a hardware encoder
[21:39:26 CET] <BtbN> they are bad, but fast.
[21:39:29 CET] <zoli> i would have expected? it is the same, only it is faster with hardware
[21:39:46 CET] <zoli> good to know
[21:39:59 CET] <furq> the whole point of hardware encoders is that they don't touch the cpu
[21:40:21 CET] <zoli> for me the point would be to be fast with superb quality
[21:40:31 CET] <furq> it's useful if you need heavy cpu usage while you're encoding (e.g. live streaming games)
[21:40:37 CET] <furq> otherwise it's not worth bothering with
[21:41:04 CET] <furq> you can still get good quality but it'll be at a significantly higher bitrate than x264 requires
[21:41:22 CET] <furq> in which case you might as well just use a fast x264 preset
[21:41:41 CET] <zoli> it is a bit disappointing, I almost switched over to a newer gpu
[21:42:05 CET] <furq> the newer gpus have hevc but by all accounts that's still worse than x264
[21:42:06 CET] <zoli> i guess it only depends on algorhytm, harware could use the same as x264?
[21:42:29 CET] <furq> that'd probably be an unreasonably expensive asic
[21:42:37 CET] <furq> i'm not a hardware guy though so i couldn't tell you
[21:43:11 CET] <zoli> my heart a bit broken, because the result is very good with hardware, I think it is like 10x faster
[21:43:27 CET] <furq> is it that much faster than x264 ultrafast
[21:43:38 CET] <furq> those are roughly comparable in quality from what i've heard
[21:45:41 CET] <BtbN> your names are the same length and same color in hexchat. This took me a while to decode.
[21:45:50 CET] <zoli> furq: are you asking or saying?
[21:45:59 CET] <_n1n0_> furq on the other hand, if i use this command: ffmpeg -f image2 -i %01d.png time-lapse.mp4 (now the pics r in the "nu" folder, and named 1-4 (without .png extension)), the .mp4 IS created, but blank/black??
[21:46:37 CET] <_n1n0_> should I pastebin?
[21:48:52 CET] <_n1n0_> ...also if in the end of the command, video.mp4, it creates it, only also blank (duration 0:00)
[21:55:11 CET] <_n1n0_> ok, works
[22:51:03 CET] <faLUCE> For usb cameras, ffmpeg wraps v4l2's api, on linex. What about audio live inputs? Does it wrap any lib or is it native?
[22:51:13 CET] <faLUCE> *linux
[22:51:30 CET] <BtbN> don't those cameras just show up as normal audio input devices?
[22:51:43 CET] <BtbN> if they have a mic integrated
[22:52:03 CET] <faLUCE> BtbN: yes
[22:52:12 CET] <BtbN> so, no problem there then.
[22:52:27 CET] <faLUCE> BtbN: this doesn't answer to my question..,,,
[22:52:40 CET] <faLUCE> which library is used on linux?
[22:53:17 CET] <BtbN> no idea if it even needs a library, but if so, I guess libalsa.
[22:53:22 CET] <BtbN> Or via PA, if you're using that.
[22:53:34 CET] <faLUCE> pa == portaudio?
[22:53:37 CET] <BtbN> pulse
[22:53:40 CET] <faLUCE> puseaudio
[22:53:42 CET] <faLUCE> I see
[23:07:55 CET] <faLUCE> another question: is there a way to set a callback for av_read_frame, when the frame is captured?
[23:11:44 CET] <BtbN> no
[23:12:04 CET] <BtbN> not 100% sure, but it'd surprise me a lot
[23:12:46 CET] <faLUCE> BtbN: https://ffmpeg.org/pipermail/libav-user/2013-November/005864.html
[23:14:00 CET] <BtbN> yes, there is an interrupt_callback, but that's not for notifying you about a new frame being available.
[23:14:30 CET] <faLUCE> BtbN: neither with avio is there a callback?
[23:16:22 CET] <faLUCE> it's very strange that a so important feature needs to be threaded. This is a horrible way of coding
[23:16:23 CET] <BtbN> that's just not how any ffmpeg API works.
[23:16:41 CET] <BtbN> it's a strictly synchronous single threaded API
[23:17:39 CET] <faLUCE> BtbN: I see, but it manages many sources at the same time. I had to remove the ffmpeg calls to v4l2 in my code, and call them directly in order to have a selectable input
[23:18:02 CET] <faLUCE> the result is that now I have a non portable code
[23:18:12 CET] <BtbN> what?
[23:18:26 CET] <BtbN> Just pass parameters to the v4l2 source
[23:20:03 CET] <faLUCE> BtbN: let me explain better. In my code, I grab frames from cameras. If I use libav for that, I have blocking av_read()s. Then I had to remove libav calls, and call the v4l2 user api directly (which uses a select()able main loop)
[23:20:26 CET] <faLUCE> but the result is that now I have a non portable code
[23:20:54 CET] <faLUCE> so, I have to choose: portable blocking code with libav, non portable non blocking code with v4l2
[23:21:07 CET] <BtbN> non-blocking mode is not enough?
[23:21:20 CET] <faLUCE> BtbN: no, because it's not selectable
[23:21:55 CET] <faLUCE> BtbN: the device input in libav is not selectable
[23:22:20 CET] <faLUCE> do you understand?
[23:22:25 CET] <BtbN> I still have no clue what you're talking about. Of course you can select the input device with the libavformat v4l2 source
[23:22:48 CET] <furq> he means select(3)
[23:22:52 CET] <faLUCE> BtbN: do you know what is select()able event-driven programming??
[23:23:00 CET] <faLUCE> I'm talking about something else
[23:23:06 CET] <faLUCE> furq: yes
[23:23:26 CET] <furq> it's probably less confusing if you say poll
[23:23:49 CET] <faLUCE> furq: it's not confusing if you know event-driven coding
[23:24:26 CET] <faLUCE> furq: for grabbing audio, I found this library: http://www.portaudio.com/, which is pretty good for select()
[23:24:30 CET] <faLUCE> and it's portavble.
[23:24:39 CET] <furq> "the device input is not selectable" is pretty ambiguous
[23:24:42 CET] <BtbN> Well, best you get with libavformat is classic NONBLOCK mode, or a blocking synchronous API. There's nothing else.
[23:25:02 CET] <BtbN> or libavdevice, rather
[23:25:08 CET] <faLUCE> furq: I used "()", note above
[23:25:14 CET] <faLUCE> it's not confusing
[23:25:23 CET] <faLUCE> and I explained
[23:25:38 CET] <furq> you won't be using select or poll with libevent anyway
[23:25:45 CET] <furq> it'll be epoll/kqueue/whatever
[23:26:06 CET] <faLUCE> furq: this is a mere concept. I let libevent choose what it wants by default
[23:26:32 CET] <furq> well yeah the same principles apply regardless
[23:26:48 CET] <faLUCE> furq: yes
[23:26:50 CET] <furq> but poll is probably a less ambiguous term
[23:27:07 CET] <faLUCE> furq: :-)
[23:27:25 CET] <faLUCE> but now the problem remains: what could I use for making a portable code?
[23:27:47 CET] <furq> idk i'm only useful for semantic arguments
[23:28:22 CET] <faLUCE> furq: what do you mean?
[23:28:54 CET] <furq> https://en.wikipedia.org/wiki/Semantic_dispute
[23:29:02 CET] <furq> i'm great at that. not so good at solving actual problems
[23:29:19 CET] <faLUCE> furq: don't say that. You suggested me the great libevent
[23:32:40 CET] <BtbN> well, you could either use NONBLOCK mode, or use (a) thread(s).
[23:32:56 CET] <furq> one of these days i'm going to remember to run make j6 && tput bel
[23:32:59 CET] <faLUCE> BtbN: IMHO this is a nonsense and horrible way of coding
[23:33:06 CET] <furq> not today though
[23:33:27 CET] <faLUCE> BtbN: threads are not intended for decoupling one thing to another
[23:33:33 CET] <BtbN> Well, nobody's going to rewrite ffmpeg now to please you. So either take what is there or don't use it.
[23:33:50 CET] <faLUCE> BtbN: in fact I don't ask for that
[23:34:04 CET] <faLUCE> BtbN: I asked something else
[23:34:21 CET] <BtbN> Yes, and the answer to that original question is a simple no.
[23:34:45 CET] <faLUCE> BtbN: pleazse take the tone below. I asked for a callback function. Which is not a trivial question
[23:35:10 CET] <BtbN> And there is no such callback function. Which I told you.
[23:35:21 CET] <faLUCE> BtbN: but you also told me that you are not sure
[23:35:36 CET] <BtbN> Well, because I don't know the entire ffmpeg sourcecode by head.
[23:35:46 CET] <faLUCE> BtbN: then I asked to the entire channel
[23:36:06 CET] <BtbN> By now I looked into lavdevice, and I can confirm, no such callback.
[23:36:12 CET] <BtbN> And adding it is far from trivial.
[23:36:19 CET] <faLUCE> BtbN: in fact I asked for avio
[23:36:30 CET] <BtbN> but v4l2 is in device?
[23:36:32 CET] <faLUCE> (then)
[23:36:55 CET] <faLUCE> I don't know if avio can open v4l2
[23:37:30 CET] <faLUCE> these are not trivial question. Try to be less aggressive
[23:42:30 CET] <furq> oh man
[23:42:33 CET] <furq> http://vpaste.net/Bwn9R
[23:42:35 CET] <furq> what fresh hell is this
[23:44:39 CET] <kerio> welcome to c++
[23:44:41 CET] <kerio> enjoy your stay
[23:46:14 CET] <furq> i demuxed an h264 stream from a movie with ffmpeg and it hangs trying to decode it, but decodes it fine when it's in the original container
[23:46:15 CET] <jkqxz> You forgot to pic something.
[23:46:18 CET] <furq> an hour later i am here
[23:46:40 CET] <furq> i didn't forget anything, this isn't my code
[23:50:09 CET] <BtbN> jkqxz, that's windows.
[23:50:12 CET] <BtbN> Everything is PIC
[23:51:14 CET] <furq> this is probably what i get for upgrading to gcc 6.2
[23:52:05 CET] <jkqxz> Why has something generated global relocations against the PC which are only 32 bits wide then? You aren't allowed to do that with PIC.
[23:52:45 CET] <furq> https://github.com/sekrit-twc/zimg
[23:52:46 CET] <furq> it's this fwiw
[23:55:01 CET] <furq> i'm probably just going to build without the damn thing
[23:55:27 CET] <furq> i'm only doing this to see if git head will demux this h264 stream properly
[00:00:00 CET] --- Sun Jan 22 2017
More information about the Ffmpeg-devel-irc