[Ffmpeg-devel-irc] ffmpeg.log.20160310
burek
burek021 at gmail.com
Fri Mar 11 02:05:01 CET 2016
[00:03:10 CET] <roddyr> c_14, is the file available?
[00:06:57 CET] <c_14> It should have returned a url which you then paste here. The one you pasted earlier was empty
[00:09:05 CET] <roddyr> please try: http://sprunge.us/JeJh
[00:09:37 CET] <c_14> still empty, try copy pasting the output into the web form
[00:09:48 CET] <roddyr> Ok, http://sprunge.us/GPOK
[00:09:57 CET] <c_14> there we go
[00:10:05 CET] <c_14> the file has 2 audio streams
[00:10:20 CET] <c_14> When creating the file do what kevmitch recommended with -map 0:a -map 1:v
[00:13:29 CET] <roddyr> Move from "ffmpeg -i wav -i mp4 -map 0 -map 1 -c:v copy -c:a aac out.mp4" to "ffmpeg -i wav -i mp4 -map 0:a -map 1:v copy -c:a aac out.mp4" or "ffmpeg -i wav -i mp4 -map 0:a -map 1:v out.mp4"?
[00:13:54 CET] <c_14> the former
[00:36:47 CET] <roddyr> c-14, thank you that did the trick!
[00:42:34 CET] <SpaceManiac> Does ffmpeg have any facility for getting an input's metadata in a machine-readable format?
[00:42:58 CET] <J_Darnley> ffprobe
[00:43:08 CET] <J_Darnley> json, xml, others
[00:43:23 CET] <SpaceManiac> the json output option is just the human-readable output wrapped in { and }
[00:44:26 CET] <SpaceManiac> on closer inspection, that's stream intermingling... rather, stderr has the human-readable output, and stdout is just {}
[00:58:39 CET] <SpaceManiac> should have read docs closer I suppose, discouraged by past-buffer `ffmpeg -h` output and didn't realize I needed extra args to make it actually print anything
[01:28:11 CET] <furq> well in case anyone was wondering, the answer is: rm version.sh && touch version.sh && chmod +x version.sh && touch .version
[01:33:31 CET] <gzeus> Hello, is it possible to record only one applications audio output (via pulse, most likely, in this case)?
[01:35:30 CET] <J_Darnley> Maybe. I guess it depends on what pulse can do.
[01:35:43 CET] <gzeus> pulse is... mysterious
[01:40:36 CET] <TD-Linux> you need a virtual sink for that application
[01:40:51 CET] <TD-Linux> there are some pulse modules that create a virtual output device that you can then capture from
[01:43:53 CET] <gzeus> TD-Linux: ah, yes. I've had to do similar things for loopbacks etc. I wish pulse were less obtuse (not sure if that's the right word) to configure, though. I think that'll put me on the right track, thanks.
[01:44:57 CET] <furq> obscure
[01:45:51 CET] <gzeus> that as well, but it's... clunky. Coming from a sound mixing background it seems 'off' somehow. only able to set something to a single output etc.
[01:46:11 CET] <TD-Linux> gzeus, yeah, you would like JACK
[01:46:25 CET] <gzeus> well, jack is cool on paper, but setting it up is like _building_ a mixer
[01:46:50 CET] <TD-Linux> pulse is intentionally designed this way so that you always have only one clock source
[01:47:09 CET] <gzeus> fair enough. specific things for specific purposes
[01:47:15 CET] <TD-Linux> though grabbing the output from only one application shouldn't actually affect that constraint
[01:47:30 CET] <TD-Linux> in that case it probably just needs code written
[01:49:24 CET] <gzeus> I mean, I could, theoretically, build a mixer from a bunch of inputs/outputs or set up a modular synthesizer (which isn't that different) but it would be nice to just have something detect all available sources and outputs and let you manipulate them. qjackctrl seems to be the closest thing.
[01:49:33 CET] <gzeus> eh. I think things will improve.
[01:50:07 CET] <gzeus> thanks, though
[01:52:05 CET] <furq> pro tip of the day: if zscale seems really slow, maybe try remembering to compile it with --enable-x86simd
[01:52:28 CET] <TD-Linux> that's not default?
[01:52:31 CET] <furq> it would have been nice to remember that before transcoding ~15 hours of video with it
[01:52:33 CET] <J_Darnley> Wat?
[01:52:34 CET] <furq> and no it isn't
[01:52:59 CET] <furq> thank you for making me feel less dumb for not realising
[02:35:57 CET] <SpaceManiac> Is -rtbufsize the appropriate option for fixing occasional interruptions decoding from an http:// source? I would think that the 3M default would be large enough...
[03:43:33 CET] <avih> hi, i have a crash which i suspect in ffmpeg, but i don't have a reproducible strict ffmpeg case. it manifests in mpv but maybe someone can think of an ffmpeg reason for it. the issue is crash on windows when playing an hevc file with hwdec (dxva2) with --start=NN (i.e. jump to some place at the middle of the file). it doesn't happen with h264 hwdec, and doesn't happen in plain seek - mostly. with plain seeks it happens very very very rarely.
[03:43:36 CET] <avih> any idea?
[03:45:13 CET] <avih> AFAIK ffplay doesn't support hevc hwdec on windows, and currently also neither ffmpeg.exe. so this leaves me with mpv as the only test case.
[03:45:35 CET] <avih> this was reproduced on more than one system with three different mpv builds
[03:46:13 CET] <avih> (one built with msys2, two cross from linux but different setups)
[03:47:33 CET] <avih> the crash can be reproduced in gdb, but two people tried to get useful stacks and failed. not sure why. printf debugging possibly points to ffmpeg
[03:49:31 CET] <J_Darnley> I would suggest filing a bug on trac but *someone* will probably close it for not using ffmpeg.
[03:49:46 CET] <J_Darnley> Most ffmpeg are probably asleep now
[03:49:51 CET] <J_Darnley> *ffmpeg devs
[03:50:13 CET] <J_Darnley> you might want to try contacting again during daytime hours in Europe
[03:57:20 CET] <avih> yeah, that's why i didn't file a bug. it's far from a good bug report. will take your advice on trying again later. thanks
[04:09:16 CET] <avih> (also, the rare case where it happens on plain seek - only hevc hwdec. not with any other codec hwdec)
[04:14:59 CET] <avih> (and not with hevc swdec)
[04:28:43 CET] <needmorespeed> In FFmpeg 2.7, MMAL acceleration was added (MMAL-accelerated H.264 decoding) - does this have to be compiled in with configure flags?
[04:29:14 CET] <needmorespeed> or is it enabled by default
[04:31:57 CET] <J_Darnley> External libraries usually need enabling
[04:32:05 CET] <J_Darnley> also, what does --help say?
[05:04:57 CET] <qmr> ffmpeg -i MAH00006.MP4 -vf transpose=2 -crf 28 -c:a copy 1.mp4 <- can someone help me out? want to flip that and squish the video
[05:15:36 CET] <J_Darnley> What does "squish" mean?
[05:16:25 CET] <J_Darnley> perhaps you arelooking for the scale filter?
[05:16:45 CET] <J_Darnley> perhaps you need to know that you chain filters together with a comma
[05:18:19 CET] <qmr> squish in size not resolution. preferably something encoded quickly
[05:19:14 CET] <J_Darnley> I want to argue that resolution is size
[05:19:31 CET] <qmr> You can be pendantic when I'm not in a hurry to show people my awesome video
[05:19:36 CET] <J_Darnley> do you want to read this http://trac.ffmpeg.org/wiki/Encode/H.264
[05:19:48 CET] <qmr> my ffmpeg is built without that :9
[05:19:49 CET] <qmr> :(
[05:19:58 CET] <J_Darnley> omg
[05:20:25 CET] <J_Darnley> then -vcodec mpeg4 and -qscale 4
[05:20:56 CET] <qmr> only 13 FPS :(
[05:21:27 CET] <J_Darnley> then you'd better paste the whole output so I can see what you're doing
[05:22:31 CET] <J_Darnley> perhaps all the time is eaten by the transpose
[05:23:00 CET] <qmr> https://ptpb.pw/zDZu
[05:23:12 CET] <J_Darnley> OMFG!
[05:23:14 CET] <qmr> is there something quick and dirty and faster than mpeg4? thi si sslow even with high qscale
[05:23:20 CET] <J_Darnley> 0.5?!
[05:23:36 CET] <J_Darnley> mpeg2?
[05:23:40 CET] <J_Darnley> mpeg1?
[05:24:36 CET] <J_Darnley> Also I'm not surprised encoding full hd is a little slow
[05:25:21 CET] <J_Darnley> you really should update your ffmpeg
[05:25:27 CET] <qmr> think going down to 720P would help?
[05:25:38 CET] <J_Darnley> Maybe, why not try
[05:25:40 CET] <qmr> I'm out of time now I guess. this VPS sucks, I should just get a cheap dedicated box
[05:25:56 CET] <J_Darnley> download a static build and run that
[05:25:58 CET] <qmr> the source video is just kind of ridic high to stream to my phone
[05:26:07 CET] <qmr> k, I'll do that when I get back
[05:27:25 CET] <J_Darnley> I wonder how much has changed since then
[05:27:39 CET] <J_Darnley> AVX is the obvious standout feature.
[05:27:53 CET] <qmr> since when?
[05:27:59 CET] <J_Darnley> 2009
[05:28:06 CET] <qmr> oh
[05:28:19 CET] <qmr> some hypervisors mask AVX, idk if mine does
[05:28:49 CET] <J_Darnley> oh, I guess you'll want -g 250 too
[05:29:28 CET] <J_Darnley> I wonder if the x264 improvements had been ported then.
[05:30:29 CET] <qmr> anything sustained over 4-8Gs is rather dangerous
[05:32:31 CET] <J_Darnley> and I guess I'll go to sleep
[05:32:51 CET] <J_Darnley> Thanks for being some light entertainment
[08:32:25 CET] <t4nk981> anyone alive this time of night?
[08:33:26 CET] <t4nk981> I've got questions about the Omneon MXF format and how it differs with it's SMTPE 426 track
[08:33:58 CET] <t4nk981> Basically, got some gear that I recently upgraded to a newer version and now no longer carries captions properly
[08:34:11 CET] <t4nk981> I suspect my video gear is looking for embedded 708 captions
[08:34:46 CET] <t4nk981> but I also suspect that embedded 708 is depricated in the latest omneon SDK and all ancillary data should be in the smtpe 426 track
[08:35:02 CET] <t4nk981> I'm having trouble finding a right combination of settings
[08:35:24 CET] <t4nk981> tried FFMPEG, telestream flipfactory 7.5, latest vantage, latest promedia carbon, and WFS 2.0
[08:36:10 CET] <t4nk981> Im hoping someone will pop their head up and has so experience, so I can bounce some ideas and attempts off them.
[08:37:11 CET] <t4nk981> lastly, ffmpeg is a great tool and thanks to anyone that helps make it possible.
[08:38:12 CET] <t4nk981> methodical at gmail if anyone reads this in logs and is willing to have me bounce ideas off them.
[09:13:41 CET] <kgkg> I am trying to forward an IP Camera to youtube but get a "Failed to update header" error. CLI and error: http://pastebin.com/KJX9mZFV
[11:56:29 CET] <BAWSTi> Hi there, I'm new to audio manipulation and therefore ffmpeg. I need to transcode some audio files (mp2 to wav + the other way around). That is not the problem. The problem I have is that I also want to transcode those files or rather formats into broadcast wav and from broadcast wav also back to mp2 and wav. Can someone pls help me accomplish that?
[12:03:46 CET] <Mavrik> What's a broadcast wav?
[12:17:06 CET] <BAWSTi> @Mavrik it's like a part of the wave formats
[12:17:33 CET] <BAWSTi> used by radio stations for example
[13:47:58 CET] <sopparus> hello
[13:48:19 CET] <sopparus> what will happend if I compile ffmpeg without libressl/openssl?
[13:48:25 CET] <sopparus> what does ffmpeg use it for?
[13:48:40 CET] <sopparus> say I use kodi doesnt curl to the ssl'ing
[13:49:21 CET] <J_Darnley> ssl, obviously
[13:49:33 CET] <J_Darnley> accessing things over https
[13:49:52 CET] <J_Darnley> and probably some of the other protocols have encrypted variants
[13:50:02 CET] <sopparus> ok
[13:51:06 CET] <J_Darnley> if you are stikcing strictly with local files then you probably have no need for it.
[13:52:01 CET] <sopparus> im going to use https
[13:52:14 CET] <sopparus> its just that it wouldnt compile with --enable-libressl so I went without it.. :)
[13:52:19 CET] <sopparus> ill put some more thought into that then
[13:52:44 CET] <J_Darnley> I didn't know we had an option for that yet
[13:54:02 CET] <sopparus> this isnt clean ffmpeg but ffmpeg that comes with openelec
[13:57:50 CET] <furq> sopparus: you can try with gnutls instead
[14:13:27 CET] <sopparus> yeah worked now, thanks
[14:33:08 CET] Action: Fyr slaps atomnuker around a bit with a large trout
[14:34:58 CET] <TOM22> Hi! I was wondering how i can find out on what device a video is recorded.
[14:36:15 CET] <J_Darnley> Read any metadata it may have written
[14:38:14 CET] <TOM22> is there some sort of reference data to compare the metadata output with?
[14:38:50 CET] <J_Darnley> Not that I know of
[14:39:04 CET] <J_Darnley> if it isn't plain text then you are probably SOL
[14:41:40 CET] <TOM22> oke thanks, do you recommend a specific type of software to extract everything there is in a file
[14:41:56 CET] <J_Darnley> ffmpeg? ffprobe?
[14:42:51 CET] <DHE> ffprobe gets most of it
[14:47:05 CET] <TOM22> mm not finding something unique, all data is the same. 3 iphones, 1 file sended by whatsapp, which iphone made the recording.
[14:57:41 CET] <dystopia_> mediainfo is a good tool for reading the metadate
[14:58:02 CET] <dystopia_> open file -> view -> text
[15:16:25 CET] <Fyr> JEEB, is it possible that the delay bug I posted will be fixed?
[15:16:31 CET] <Fyr> (eventually)
[15:16:32 CET] <JEEB> yes
[15:16:37 CET] <Fyr> alright
[15:16:48 CET] <JEEB> I mean, it's already fixed on the API level
[15:17:00 CET] <JEEB> it just has to be fixed on the WAV muxer level or so
[15:17:14 CET] <Fyr> i.e. I cat download the fresh copy from Zeranoe?
[15:17:16 CET] <JEEB> although now people have noticed that there's like three fields in the API for delays
[15:17:25 CET] <JEEB> Fyr: are you an API user? :P
[15:17:31 CET] <JEEB> sounds like you're a cli user
[15:17:46 CET] <Fyr> ok
[15:17:59 CET] <Fyr> maybe, avconv doesn't have such bugs.
[15:18:04 CET] <JEEB> oh it does
[15:18:21 CET] <JEEB> AFAIK this is a common issue in this muxing logic :P
[15:26:41 CET] <Filarius> hello, I making grid from 6 videos, how to mix audio from this 6 videos ? Commandline is here http://pastebin.com/4EyJsceg
[15:27:46 CET] <durandal_1707> ,Use amerge and then pan filter
[15:27:49 CET] <DHE> Filarius: there's audio filters as well as video filters. might start with looking at amix
[15:29:18 CET] <durandal_1707> Filarius: use vstack and hstack instead of overlay and pad
[15:37:43 CET] <Filarius> thanks for vstack/hstack, but I will change locations of videos in future
[15:40:55 CET] <durandal_1707> how you mean change location?
[15:41:17 CET] <J_Darnley> furq: you were having problems with version.sh, perhaps the latest commit can help you.
[15:41:44 CET] <J_Darnley> (sorry, second newest)
[15:41:50 CET] <Filarius> like add some space to separate videos
[15:42:06 CET] <durandal_1707> ah
[16:22:35 CET] <furq> J_Darnley: i don't think so
[16:23:00 CET] <furq> it's not really an issue that's worth fixing upstream anyway, it's a byproduct of the dumb build system i'm using
[16:23:28 CET] <furq> ffversion.h will show the wrong git hash if you remove ffmpeg/.git and are inside another git repo
[16:25:08 CET] <furq> the makefile makes it look as though generating ffversion.h and touching .version will prevent version.sh from being run, so if that's intended behaviour then i guess that is broken
[16:25:40 CET] <furq> but i worked around it anyway so idc
[16:27:13 CET] <J_Darnley> fair enough, i just thought i should bring i to your attention
[16:30:25 CET] <Filarius> so, it cannot allocate memory while muxing 6 audio streams, LOL
[16:30:38 CET] <Filarius> *mixing
[16:31:10 CET] <Filarius> http://pastebin.com/7rneFHmv
[16:33:07 CET] <durandal_1707> because amix is shit
[16:33:16 CET] <Filarius> suggestion ?
[16:34:33 CET] <durandal_1707> amerge+pan
[16:34:59 CET] <_Vi> Help for "mp4 muxer AVOptions" look suspicious: list of option value variants is the same after -movflags, -encryption_scheme, -encryption_key and -encryption_kid.
[16:39:36 CET] <J_Darnley> that does look wrong
[16:42:12 CET] <J_Darnley> If you want to file a proper bug report, use trac
[16:42:27 CET] <J_Darnley> alternatively send an email to the ffmpeg-user mailing list
[16:45:28 CET] <_Vi> Does FFmpeg have a github repository with issue tracker for easy bug reports?
[16:45:58 CET] <J_Darnley> no
[16:46:03 CET] <durandal_1707> Trac.ffmpeg.org
[16:46:21 CET] <J_Darnley> what he said ^
[16:50:12 CET] <_Vi> https://trac.ffmpeg.org/ticket/5323
[16:51:19 CET] <_Vi> How do I quick-edit typos in Trac?
[17:35:54 CET] <ChrisTheNoob> I have compiled ffmpeg from source using the guide on the website. Where can I locate the executable to use?
[17:36:35 CET] <Fyr> xD
[17:36:49 CET] <Fyr> find . -iname ffmpeg
[17:36:50 CET] <Fyr> ?
[17:37:37 CET] <kepstin> if you just built it, it's right there in the source tree. If you installed, it, it's in the spot where you installed it to.
[17:41:24 CET] <ChrisTheNoob> inside the bin folder is only x265
[18:24:36 CET] <Filarius> do somebody can explain PAN filter parameter "c0<c0+c1", i see "c0+c1" is sum of 1-st and 2-nd audio channels, but what is for "c0 < something" ?
[18:27:40 CET] <kepstin> < is the 'less than' operator. it returns 1 if the c0 is less than c0 + c1, and 0 otherwise. The result of that is then used as a gain, where 1 is full volume and 0 is silence.
[18:28:42 CET] <kepstin> dunno why exactly you'd use that, but it selects whether to put a channel in the mix depending on whether the other channel is louder, more or less
[18:28:52 CET] <kepstin> unless I'm misreading it
[18:29:05 CET] <Filarius> i just trying to undertand examples
[18:30:08 CET] <Filarius> i need mix stereo from 6 video files to one stereo, and guy from here said to use amerga + pan
[18:30:30 CET] <Filarius> *amerge
[18:30:44 CET] <kepstin> that's obviously only part of a filter spec to set the gain, it should have some stuff following a '*' sign as well
[18:30:59 CET] <kepstin> only part of an "outdef" spec
[18:31:19 CET] <Filarius> I did not found any example with '*'
[18:32:24 CET] <kepstin> if you have a bunch of stereo files and you simply want them all playing at the same time in out stereo output track, you probably want to just use amix, and maybe do some volume normalization or dynamic range compression after. it would be simpler.
[18:32:35 CET] <durandal_1707> Filarius: amix simply divides each channel by 1/6
[18:32:50 CET] <durandal_1707> *multiplies
[18:33:26 CET] <durandal_1707> amix can't work in his case for some reason
[18:34:58 CET] <kepstin> Filarius: ah, I misunderstood. The < has a special meaning in the pan filter, which is clearly described in the docs.
[18:35:12 CET] <Filarius> with amix I have memory allocation error at end of encoding, but seems it is really end of video (all 6 videos must be same time length)
[18:35:20 CET] <kepstin> it's not less than at all; it replaces the = but does renormalization.
[18:35:31 CET] <durandal_1707> so use 0.166666 *c0
[18:36:06 CET] <Filarius> oh, okay, thanks, english is not my native
[18:36:27 CET] <Filarius> I miss that part
[18:36:28 CET] <kepstin> if you have a memory allocation error, that's an ffmpeg bug, you should report it...
[19:03:50 CET] <nidhoegger> hi. i am currently building ffmpeg 2.7 on the raspberry pi. I need shared libraries, so I added the options --enable-shared and --enable-pic
[19:04:00 CET] <nidhoegger> but the compilation still fails complaining I should use -fPIC
[19:04:08 CET] <nidhoegger> is that a known issue or/and is there a workaround?
[19:05:02 CET] <JEEB> it means that one of your dependencies you're building against has no PIC
[19:05:09 CET] <JEEB> most probably something static
[19:05:18 CET] <nidhoegger> there should be nothing static...
[19:05:49 CET] <JEEB> pastebin your error?
[19:05:59 CET] <nidhoegger> the only thing I build myself is x264 from the videolan repo using shared and pic also
[19:06:55 CET] <nidhoegger> ./configure --arch=armel --target-os=linux --enable-gpl --enable-libx264 --enable-nonfree --enable-shared --enable-pic --enable-nonfree --prefix=/usr
[19:06:58 CET] <nidhoegger> this is the configure line
[19:07:28 CET] <JEEB> having enable-nonfree with that configuration makes no sense :P
[19:07:39 CET] <JEEB> it enables exactly zero things
[19:07:43 CET] <nidhoegger> :)
[19:07:49 CET] <nidhoegger> then ill remove it, thx
[19:08:27 CET] <JEEB> also if you are compiling on the rpi itself you most probably don't require arch, target-os
[19:08:47 CET] <JEEB> anyways, pastebin your error when you get to it :P
[19:08:54 CET] <nidhoegger> one question: will this config install ffmpeg with mp3 support?
[19:09:04 CET] <nidhoegger> or do I need libmp3lame for that?
[19:09:06 CET] <JEEB> decoding yes, since it's internal
[19:09:11 CET] <JEEB> encoding, yes - you need LAME
[19:09:13 CET] <JEEB> *no
[19:09:15 CET] <nidhoegger> i only need decoding for x264 and mp3
[19:09:27 CET] <JEEB> x264 is not a format
[19:09:32 CET] <JEEB> AVC or H.264 you mean
[19:09:41 CET] <nidhoegger> yes, H.264 it is :P
[19:09:50 CET] <JEEB> but yes, AVC and MPEG-1 Layer 3 decoders are in the default configuration
[19:10:01 CET] <nidhoegger> perfect, thx
[19:10:09 CET] <nidhoegger> is there a way to disable all encoders? since i do not need them
[19:10:23 CET] <JEEB> yeah, but you will want to make sure your thing works first
[19:10:31 CET] <JEEB> also when you do major configuration changes remember make distclean
[19:10:35 CET] <nidhoegger> ah, --disable-decoders
[19:10:47 CET] <JEEB> (or git clean -dfx if you like it the git way)
[19:10:50 CET] <nidhoegger> hehe
[19:11:04 CET] <nidhoegger> encoders i mean
[19:11:11 CET] <JEEB> and please start limiting your configuration *after* you get some things done
[19:11:21 CET] <nidhoegger> okay
[19:11:27 CET] <JEEB> there's been way too many cases of people starting out with disable-everything or something
[19:11:30 CET] <nidhoegger> just wanted to make it compile faster
[19:11:50 CET] <JEEB> "I just disabled everything and enabled the demuxers and decoders that I needed"
[19:11:54 CET] <nidhoegger> hehe
[19:11:55 CET] <JEEB> "Why do no files open?"
[19:12:05 CET] <JEEB> "Maybe because you lack the file protocol?"
[19:12:21 CET] <JEEB> but yeah, basically the first step is always to get a basic thing built
[19:12:43 CET] <JEEB> then when you've confirmed that your stuff works with it, then you can go poke at the optimizing params
[19:14:42 CET] <nidhoegger> i will, thanks for your help!
[19:14:52 CET] <nidhoegger> ill report back if it worked
[19:20:12 CET] <deadamerican> Apple TV 4th gen with a remuxed mkv with aac and ac3 playing both streams at the same time, is it a known issue or am i just lucky?
[19:20:49 CET] <Fyr> deadamerican, what ffprobe says?
[19:23:11 CET] <deadamerican> nothing out of the ordinary, audio stream index 1 is aac and index 2 is ac3
[19:24:16 CET] <Fyr> then I don't know.
[19:25:21 CET] <deadamerican> yeah, i am kind of stumped with it. what comes out of ffmpeg plays perfect on everything else but that
[19:25:42 CET] <Fyr> do other players play it right?
[19:25:52 CET] <deadamerican> yup
[19:26:09 CET] <Fyr> then post a bug report to Apple.
[19:26:16 CET] <deadamerican> ok
[19:51:15 CET] <nidhoegger> JEEB, it worked now, thx!
[19:51:20 CET] <JEEB> 'grats
[19:56:55 CET] <nidhoegger> hmmm...does someone know this error: version LIBAVCODEC_56 not defined in file libavcodec.so.56 with link time reference
[19:57:08 CET] <nidhoegger> relocation error: ./ultrastardx: symbol av_audio_resample_init, version LIBAVCODEC_56 not defined in file libavcodec.so.56 with link time reference
[20:03:30 CET] <nidhoegger> when running ffmpeg: ffmpeg: relocation error: /usr/lib/libavfilter.so.5: symbol avpriv_vga16_font, version LIBAVUTIL_54 not defined in file libavutil.so.54 with link time reference
[20:04:29 CET] <durandal_1707> nidhoegger: broken build/install
[20:04:41 CET] <nidhoegger> hmmmm
[20:04:46 CET] <nidhoegger> its a fresh build
[20:04:52 CET] <nidhoegger> some ppl write its an --enable-shared issue :/
[20:07:59 CET] <momomo> hey guys, it is possible to start serving an unifinished hls file, out10.ts for instance? or do we have to wait for it to finish ?
[20:08:40 CET] <Mavrik> MPEG-TS files should be playable while being written :)
[20:08:51 CET] <Mavrik> at least while they're streamed, no idea what filesystem does with files tho
[20:11:00 CET] <momomo> yes, that seems to be right
[20:11:02 CET] <bencoh> momomo: your client will fetch an incomplete file, and will either stop playing after reaching the end or skip to the next one (if available)
[20:11:23 CET] <bencoh> I don't really see how you want to use that with HLS
[20:11:27 CET] <momomo> bencoh, yes, probably difficult to stream an incomplete file
[20:11:46 CET] <momomo> but I am having serious lagging issues due to hls files not being consistent
[20:11:48 CET] <Mavrik> You just need to outpace playback
[20:11:51 CET] <bencoh> actually we usually do it the over way around - ensure a file is published *only* once it's complete
[20:11:56 CET] <Mavrik> But for HLS you usually want to be one segment behind
[20:12:05 CET] <Mavrik> e.g. not show partial segments in XML
[20:12:14 CET] <bencoh> exactly :)
[20:12:15 CET] <momomo> if the average file is 500kb ... some files will eventually be 1.2 - 1.5 mb ... and the live feed has to wait for these to complete
[20:12:42 CET] <momomo> quetion is if these files are playable .. why is ffmpeg having such a difficulty splitting them at consistent sizes ?
[20:12:54 CET] <momomo> it should be a matteer of just splitting
[20:13:39 CET] <momomo> i am using hls_size 10 ... which is based on seconds .. so the size might differ .. but that should be based on kb .. otherwwise streaming becomes unstable
[20:13:50 CET] <bencoh> no
[20:13:58 CET] <bencoh> you should re-read the HLS draft
[20:13:59 CET] <furq> it can't be based on size because splitting has to occur on an IDR frame
[20:14:34 CET] <bencoh> and because CBR encoding isn't that constant anyway (see vbv)
[20:14:43 CET] <momomo> furq, according to what? some spec? override it and input one .. the files seems to be playable no matter if such a frame has been encountered
[20:14:59 CET] <furq> "input one"
[20:15:00 CET] <bencoh> momomo: apple's updated documentation
[20:15:02 CET] <furq> you make that sound so easy
[20:15:39 CET] <momomo> bencoh, but do you agree that live streaming becomes an issue in such cases ? otherwise I have to wait alot before playing .. so these extra sizes are already accounted for .. and once it catches up .. it might still occur later
[20:16:11 CET] <bencoh> momomo: HLS doesn't mean "live" at all, yeah, indeed.
[20:16:22 CET] <bencoh> (I'd also say it's mostly crap, but ... :>)
[20:16:32 CET] <furq> it's better than the alternatives
[20:17:03 CET] <momomo> furq, maybe not easy ... but ffmpeg is not easy software .. and it appearrs as if it is theoritacally possible to improve .. since vlc is able to play these streams ..
[20:17:03 CET] <bencoh> yeah, they all suck, this one sucks a bit less (thus far) :)
[20:17:11 CET] <bencoh> (just like mutt/mail reads)
[20:17:18 CET] <furq> i mean RTMP is better in theory but not since the world turned on flash
[20:17:35 CET] <momomo> furq, i need one solution for all devices ...
[20:17:40 CET] <momomo> :(
[20:17:48 CET] <furq> surely if VLC can play it then the issue is browsers, not ffmpeg
[20:17:56 CET] <bencoh> momomo: well, you'll have to live with not-so-live "live"
[20:18:21 CET] <furq> all i can really suggest is smaller/larger segment/gop lengths
[20:18:28 CET] <bencoh> furq: not necessarily, VLC can be more lenient
[20:18:29 CET] <momomo> furq, well .. if ffmpeg is generating average files of 400kb and then generates a 2mb one .. that's a problem
[20:18:32 CET] <momomo> and it's ffmpeg
[20:18:32 CET] <bencoh> (VLC always is)
[20:18:47 CET] <bencoh> momomo: it could be your ffmpeg parameters as well
[20:19:01 CET] <momomo> whatever those ts files are .. and whatever they contain ... ffmpeg could generate those as it pleases and update the m3u8
[20:19:27 CET] <furq> momomo: do you have keyint_min on (or scenecut off)
[20:19:39 CET] <furq> that in conjunction with strict vbv params should result in more stable segment sizes
[20:19:57 CET] <furq> and also worse quality, but oh well
[20:20:04 CET] <momomo> bencoh, i tried a bunch of them yesteday inclduing bitrate and what not .. but the same behaviour was encountered .. only way was to decrease quality enough to have the difference become insignifcant
[20:20:46 CET] <momomo> furq, no, i don't know about those params
[20:20:59 CET] <furq> -x264opts keyint_min=50
[20:21:03 CET] <furq> change 50 to whatever you've set -g to
[20:21:59 CET] <momomo> whatabout strict ? i've seen that before .. and zerolatency ?
[20:22:49 CET] <furq> zerolatency will have no real effect with HLS
[20:23:17 CET] <JEEB> if you want actual low latency, use an actual streaming protocol
[20:23:37 CET] <JEEB> because HLS will have the latency of at least a couple of segments
[20:23:54 CET] <JEEB> (I think three is the usual minimum for a playlist for most implementations?)
[20:24:23 CET] <furq> firefox uses less in my experience
[20:24:26 CET] <furq> s/less/fewer/
[20:24:31 CET] <momomo> 1 is minimal it appearrs ... m3u8 is generated after 1 .. but then usually there is lag right after
[20:24:32 CET] <furq> i have nothing to back that up though
[20:24:33 CET] <momomo> ffmpeg -i ${URL} -x264opts keyint_min=100 -g 100 -r 20 -framerate 20 -b:v 512k -bufsize 512k -maxrate 1024k -c:v libx264 -c:a libvo_aacenc -b:a 64k -ac 2 -f hls -hls_list_size 10 -hls_time 10 -hls_flags delete_segments ${OUT}
[20:24:49 CET] <momomo> any issues/improvements with this command ?
[20:25:19 CET] <JEEB> yes, after your first segment finishes you will most probably have the playlist, I'm just saying that due to player buffering you will most probably have the players wait for at least three to be buffered
[20:25:41 CET] <JEEB> also for static GOPs you use -x264-params scenecut=0
[20:25:47 CET] <JEEB> that just disables dynamic GOPs
[20:25:52 CET] <momomo> JEEB, yes, the player is not aggressive enough to ask for next playlist file sometimes
[20:25:54 CET] <JEEB> that way you can just use -g VALUE and it
[20:26:30 CET] <momomo> are some of these options expensive computing wise ?
[20:27:08 CET] <momomo> i am going to go for a couple of 1000s eventually and cheap is good .. but I guess i have no option right now
[20:28:24 CET] <momomo> latest and greatest:
[20:28:26 CET] <momomo> ffmpeg -i ${URL} -x264-params scenecut=0 -x264opts keyint_min=100 -g 100 -r 20 -framerate 20 -b:v 512k -bufsize 512k -maxrate 1024k -c:v libx264 -c:a libvo_aacenc -b:a 64k -ac 2 -f hls -hls_list_size 10 -hls_time 10 -hls_flags delete_segments ${OUT}
[20:28:44 CET] <furq> there's no reason to disable scenecut and set keyint_min
[20:28:46 CET] <momomo> is both -r 20 and -framerate 20 ? i understand they arre not the same .. right ?
[20:28:48 CET] <furq> they both do the same thing in this case
[20:28:57 CET] <furq> and get rid of -framerate 20, it's redundant there
[20:29:17 CET] <momomo> what if -r is 20 and framerate is like 50 ... what would be the difference ?
[20:29:22 CET] <momomo> what would happen?
[20:29:30 CET] <momomo> or the opposite
[20:29:34 CET] <furq> afaik as an output option, -framerate is an alias for -r (which is an alias for -vf fps)
[20:29:42 CET] <furq> so it'd set the framerate to 50 because it came after -r
[20:33:07 CET] <momomo> i have no idea what those options actually do ... i am running a test now to see if I notice any big inconsistencies in sizes
[20:33:40 CET] <bencoh> you really should read some documentation about HLS, mpegts, x264, and ffmpeg ...
[20:34:25 CET] <bencoh> otherwise you'll keep running into these "I have no idea what I'm doing" kind of issues
[20:36:35 CET] <momomo> bencoh, it's difficult to get into something totally new .. but since a few weeks back, i have learnt quite a lot .. mostly through good people here ... but I was completely out of it at the beginning .. didn't even know what ffmpeg was or hls .. furq has helped quite a lot :)
[20:37:14 CET] <momomo> so I am getting better .. eventually i would research these options .. but right now it's a lot of trial and error
[20:38:52 CET] <momomo> sizes somewhat more consistent ... http://s29.postimg.org/5npspckzr/Screenshot_from_2016_03_10_20_38_03.png
[20:39:08 CET] <momomo> but still some big differences at times
[20:41:53 CET] <kepstin> yeah, well, it's vbr. you could make the constraints on the bitrate tighter, but it'll reduce your overall video quality. Also, you should probably be checking whether the files all have the same duration.
[20:42:12 CET] <bencoh> trial and error with HLS can be quite tedious, since your usual target players behave like black boxes
[20:47:04 CET] <momomo> kepstin, constraints ? like minrate and maxrate ?
[20:47:21 CET] <momomo> ffmpeg -i ${URL} -x264-params scenecut=0 -x264opts keyint_min=100 -g 100 -r 20 -framerate 20 -b:v 512k -bufsize 512k -maxrate 1024k -c:v libx264 -c:a libvo_aacenc -b:a 64k -ac 2 -f hls -hls_list_size 10 -hls_time 10 -hls_flags delete_segments ${OUT}
[20:47:38 CET] <kepstin> momomo: unless you need specific constraints for bandwidth or device processing reasons, don't worry about it.
[20:47:47 CET] <kepstin> better to avoid them if you don't need them
[20:48:10 CET] <momomo> i would like to get a more consistent size of the ts files .. so lagging won't occur
[20:48:36 CET] <kepstin> if you want to reduce issues with connection setup, etc. use longer segments
[20:48:51 CET] <kepstin> not sure what you mean by "lagging"
[20:51:15 CET] <momomo> the problem is that if I get a ts file that is 500 kb first .. 0.ts .. then say the next one is 1mb or longer than the original one .. then the m3u8 playlist won't include it until it finishess ... so if it hits 1.2mb .. the player has to wait for it to finish ..
[20:51:28 CET] <momomo> maybe it is not an mb issue but a length issue
[20:52:31 CET] <momomo> i think lenghts are more consistent now though
[20:53:38 CET] <kepstin> well, the player delay and buffering in HLS is always going to be somewhere between 1-2 segments long, you can't get lower than that
[20:54:18 CET] <kepstin> I wouldn't normally expect any issues as long as the bitrate on the segments is low enough that you can download them faster than realtime.
[20:56:49 CET] <bencoh> physical segment size is a non-issue as long as you get the proper duration
[20:59:13 CET] <momomo> bencoh, yes, i think it is the duration that is focus here
[20:59:31 CET] <momomo> i remember earlier that they werent always the same
[20:59:42 CET] <momomo> but now i am hitting 5.00000 SEC every time
[20:59:53 CET] <momomo> must be some added option
[20:59:59 CET] <furq> that's keyint_min
[21:00:03 CET] <bencoh> re-read what you were told about gop size and keyint_min ...
[21:00:10 CET] <momomo> -x264-params scenecut=0 or -x264opts keyint_min=100 ?
[21:00:19 CET] <bencoh> and read the doc, seriously.
[21:00:24 CET] <furq> they'll both do the same thing in this case
[21:00:42 CET] <momomo> i will :) .. i googleed it .. but this doesn't explain really what they do: https://sites.google.com/site/linuxencoding/x264-ffmpeg-mapping
[21:01:19 CET] <momomo> but ok .. so thanks guys, once again!
[21:01:22 CET] <bencoh> well it does, unless you dont know what an I-frame is, in which case you need to dig further
[21:01:24 CET] <furq> that explains almost perfectly what they do
[21:01:28 CET] <bencoh> and compare that info to apple documentation.
[21:01:30 CET] <momomo> i love you
[21:02:59 CET] <momomo> so much to learn, i am on 99.9% of the internet .. just ffmpeg left :P
[21:03:15 CET] <nidhoegger> still getting the relocation error
[21:03:23 CET] <nidhoegger> everything uninstalled and built from scratch again
[21:05:11 CET] <t4nk507> hello
[21:05:26 CET] <t4nk507> plz what means -bt parameter
[21:05:40 CET] <bencoh> nidhoegger: what about --enable-pic (I don't think it should be relevant in your case, but ...)
[21:05:42 CET] <t4nk507> like in ffmpeg -i %s -f image2 -bt 20M -vf fps=%s -aspect 16:9 %s/tv%%03d.jpg" %
[21:06:49 CET] <t4nk507> i m doing sprite preview image, and I m looking to decrease the resulting image size
[21:07:08 CET] <kepstin> t4nk507: that's not an ffmpeg parameter as far as I know, maybe a typo?
[21:07:20 CET] <kepstin> are you trying to set the bitrate?
[21:12:39 CET] <t4nk098> so what could be the alternative to -bt
[21:12:56 CET] <momomo> is there any reasons why you would set bitrate and -bv to control quality over crf ? is crf preferable ?
[21:12:57 CET] <t4nk098> this is what I got from a nice python script that automate sprite creation
[21:13:25 CET] <t4nk098> https://github.com/vlanard/videoscripts/blob/master/sprites/makesprites.py
[21:13:47 CET] <t4nk098> line 107
[21:14:42 CET] <t4nk098> I donno this isn't encoding videos, this is capturing frame over the video to make a sprite
[21:19:15 CET] <kepstin> momomo: if you want a specific output bitrate or filesize, you set bitrate. if you don't care about the exact output bitrate but want constant quality over the length of the file, use crf
[21:19:23 CET] <kepstin> momomo: they're for completely different use cases
[21:20:03 CET] <kepstin> (for internet streaming to clients with a certain target internet connection quality, you want to use bitrate, not crf)
[21:20:49 CET] <t4nk098> i use crf for streaming
[21:20:59 CET] <t4nk098> fixed bitrate is great for 2 pass encoding
[21:21:12 CET] <t4nk098> but this is not the purpose of my question :)
[21:21:54 CET] <t4nk098> it s weird i dont find documentation of this, especially since it works really fine..
[21:22:06 CET] <kepstin> t4nk098: documentation of what?
[21:22:13 CET] <t4nk098> of that -bt cmd
[21:22:25 CET] <furq> -bt is bitrate tolerance
[21:22:36 CET] <furq> equivalent to x264 --ratetol
[21:22:52 CET] <furq> ffmpeg -h full | grep -- -bt
[21:22:58 CET] <t4nk098> i could put -bt 10M and get half picture weight then
[21:23:12 CET] <kepstin> furq: where is that documented? it doesn't show up in the ffmpeg man page, and it's not an avoption on the mjpeg encoder
[21:23:24 CET] <furq> oh, mjpeg
[21:23:39 CET] <kepstin> my guess is that it's being accepted as an avoption... and ignored.
[21:23:45 CET] <furq> it's a global avoption so yeah
[21:23:48 CET] <furq> it's probably just being ignored
[21:23:56 CET] <furq> it normally goes from 0 to 1, so 20M makes no sense anyway
[21:24:23 CET] <kepstin> so yeah, someone probably wanted to set the bitrate, and made a typo on the option name.
[21:24:48 CET] <furq> 20:22:58 ( t4nk098) i could put -bt 10M and get half picture weight then
[21:24:51 CET] <kepstin> bitrate is, of course, -b (with optional stream specifiers)
[21:24:51 CET] <furq> also that's not what bitrate tolerance is
[21:33:46 CET] <t4nk098> hm ok let s assume that bt does nothing then
[21:34:08 CET] <t4nk098> how would I lowered the bitrate when outputting to jpeg
[21:34:21 CET] <t4nk098> simply -b:v xx
[21:34:27 CET] <t4nk098> or crf:v xx
[21:34:51 CET] <kepstin> t4nk098: crf is codec-specific option only supported by x264/5 and vpx
[21:35:10 CET] <t4nk098> right
[21:35:14 CET] <kepstin> but -q:v would probably be useful - although I don't know the value range mjpeg takes for that
[21:36:22 CET] <kepstin> (probably similar to ffmpeg's mpeg1/2 encoders, so lower numbers are higher quality)
[21:39:37 CET] <t4nk098> ok thanks, the best is to test it
[21:46:02 CET] <t4nk098> tried q:v 50 and 10
[21:46:05 CET] <t4nk098> doesn't change at all
[21:58:07 CET] <t4nk098> thanks
[21:58:09 CET] <t4nk098> later
[22:06:27 CET] <explodes> When freeing a AVFormatContext*, must I also manually free my AVCodecContext*'s ?
[22:06:38 CET] <explodes> AVFormatContext* is being closed with avformat_close_input
[22:22:38 CET] <explodes> I have old code that manually frees these things, but it doesn't make any sense to...
[22:40:27 CET] <Mavrik> Why not?
[22:40:33 CET] <Mavrik> You have to, they're separate
[22:41:32 CET] <deadamerican> Is there a way to set the default audio stream? when using map 0:1 for DTS to 2 channel aac and 6 channel ac3 both streams are set to default.
[23:33:14 CET] <explodes> Mavrik: The references I have are pulled from my AVFormatContext*
[23:33:37 CET] <explodes> ie. strm->audioCodec = strm->pFormatCtx->streams[strm->audioStream]->codec;
[00:00:00 CET] --- Fri Mar 11 2016
More information about the Ffmpeg-devel-irc
mailing list