Ffmpeg-devel-irc
Threads by month
- ----- 2026 -----
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2025 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2024 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2023 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2022 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2021 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2020 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2019 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2018 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2017 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2016 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2015 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2014 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2013 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2012 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2011 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2010 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
September 2016
- 1 participants
- 60 discussions
[00:07:03 CEST] <JEEB> michaelni__: cheers. feel free to note if you see anything wrong with the second one ( https://patchwork.ffmpeg.org/patch/741/ )
[00:08:04 CEST] <michaelni__> JEEB, i see nothing wrong with it
[00:08:34 CEST] <JEEB> k
[00:33:54 CEST] <llogan> to sourceforge's credit it only took them less than an hour to remove a license violator
[00:34:14 CEST] <cone-480> ffmpeg 03James Almer 07master:a68f1ae6b1f2: doc/codecs.texi: fix and expand color related options
[00:47:38 CEST] <Chloe> jamrial: your fate patch doesnt pass fate: http://sprunge.us/XbMU
[00:48:10 CEST] <jamrial> Chloe: what patch?
[00:48:11 CEST] <Chloe> oh
[00:48:12 CEST] <Chloe> my bad
[00:48:43 CEST] <Chloe> It helps if I have the samples needed for the test
[00:48:55 CEST] <JEEB> classic
[00:48:57 CEST] <nevcairiel> it does, doesnt it
[00:49:03 CEST] <JEEB> I think there was make fate-rsync or so
[00:49:07 CEST] <Chloe> yep
[00:50:22 CEST] <Chloe> jamrial: I'm testing the framehash patch
[00:50:33 CEST] <jamrial> ah
[00:52:02 CEST] <jamrial> Chloe: don't bother testing it, it can't go in like this. it would break anything parsing framecrc and framehash/framemd5 output if it cares about the channel layout hex value
[00:52:24 CEST] <Chloe> ok
[01:06:30 CEST] <cone-480> ffmpeg 03Steven Liu 07master:95f2dcafe189: doc/muxers: fix hlsenc options examples error
[01:24:32 CEST] <cone-480> ffmpeg 03Moritz Barsnick 07master:1846a3eac854: ffmpeg_vaapi: fix choice of decoder_format
[04:04:42 CEST] <cone-480> ffmpeg 03Sasi Inguva 07master:7e0235bdb145: lavc/utils.c: Subtract skip_samples when frame is DISCARDed.
[04:04:43 CEST] <cone-480> ffmpeg 03Sasi Inguva 07master:dba2db6c0e4a: lavf/mov.c: Make audio timestamps strictly monotonically increasing inside an edit list.
[05:01:11 CEST] <philipl> BtbN: cuda transcoding working for you after the recent merges? Something's gone wrong for me
[05:05:54 CEST] <philipl> resource registration is failing
[05:31:01 CEST] <philipl> bisected.
[05:31:03 CEST] <philipl> lavc: allow using AVCodecContext.hw_frames_ctx for decoding
[05:31:20 CEST] <philipl> This is what broke mpv for me (because it does the format comparison) and it broke transcoding.
[05:32:30 CEST] <philipl> I guess because it ends up using a different get_buffer that doesn't return something nvenc can handle?
[05:40:20 CEST] <philipl> Ok.
[05:42:29 CEST] <philipl> https://github.com/FFmpeg/FFmpeg/commit/32c25f06b79f9edcda726f6e043325d4003…
[05:42:34 CEST] <philipl> This line is what breaks it.
[05:42:41 CEST] <philipl> I guess he thinks he's fixing a leak here?
[05:44:06 CEST] <philipl> I suspect the problem is that cuvid and nvenc are the same hw_frames_ctx and it gets unrefed too many times? Something like that?
[05:46:46 CEST] <philipl> It seems to get ref'ed the right number of times in ffmpeg_cuvid.c, so I don't think that's the problem.
[08:10:33 CEST] <nevcairiel> hw_frames_ctx wasnt properly documented for decoding before, so if stuff needs changes afterwards in user code that may be expected
[08:10:59 CEST] <nevcairiel> ie. hw_frames_ctx said "encoding only" in the doxy
[08:18:25 CEST] <nevcairiel> one change thats still missing is probable this one https://git.libav.org/?p=libav.git;a=commit;h=232399e3ee219d16d0e0d482c9f31… for ffmpeg.c hwaccels
[10:30:07 CEST] <BtbN> nevcairiel, yes, cherry-picking that fixes it for me.
[10:30:12 CEST] <BtbN> Can I just push it?
[11:33:34 CEST] <cone-307> ffmpeg 03Jan Ekström 07master:cc725ebe484c: movenc: Add support for writing language codes into ISML manifests
[12:05:11 CEST] <JEEB> yayifications^2
[12:05:22 CEST] <JEEB> I can now remove patches from my local usage :)
[14:44:43 CEST] <cone-307> ffmpeg 03Carl Eugen Hoyos 07master:29a76ff525e3: Changelog: Mention edts support.
[15:06:46 CEST] <BtbN> ubitux, or whoever is doing merges right now. Can I just push a cherry-picked https://git.libav.org/?p=libav.git;a=commit;h=232399e3ee219d16d0e0d482c9f31… ?
[15:07:03 CEST] <BtbN> without that essentialy all the ffmpeg hwaccels are broken
[15:08:15 CEST] <ubitux> if it doesn't depend on previous unmerged commits i have no objection, but that's not exactly my area
[15:08:30 CEST] <BtbN> it applies "cleanly"
[15:08:41 CEST] <BtbN> only avconv.c vs. ffmpeg.c
[15:08:56 CEST] <BtbN> I fixed that by just applying it manually
[15:09:33 CEST] <BtbN> With it, hwaccel decoding works again.
[15:09:44 CEST] <BtbN> Some recently merged change depends on it I think.
[15:10:50 CEST] <BtbN> Or rather, it is updating ffmpeg/avconv for this change: https://github.com/FFmpeg/FFmpeg/commit/32c25f06b79f9edcda726f6e043325d4003…
[15:57:13 CEST] <cone-307> ffmpeg 03Carl Eugen Hoyos 07master:fcce25ee5d2f: lavf/mov: Read display aspect ratio from ares atom also for dnxhd.
[15:57:14 CEST] <cone-307> ffmpeg 03Carl Eugen Hoyos 07master:e84eeca5779b: lavf/movenc: Put correct display aspect ratio in ARES atom.
[16:12:40 CEST] <cone-307> ffmpeg 03Anton Khirnov 07master:bfbf86ef18f7: ffmpeg: pass the hwaccel frames context to the decoder
[16:12:41 CEST] <cone-307> ffmpeg 03Timo Rothenpieler 07master:856e1eacf7f3: ffmpeg_cuvid: make use of new av_hwdevice_ctx_create api
[17:01:06 CEST] <philipl> BtbN: thanks
[17:18:51 CEST] <cone-307> ffmpeg 03Jan Sebechlebsky 07master:81bab1074ff9: avformat/tee: Copy interrupt callback and flags to slave
[17:41:06 CEST] <jamrial> Chloe: did you address the rest of Lukas Marek's items on his sdl2 device review?
[17:41:17 CEST] <Chloe> yes
[17:45:06 CEST] <jamrial> Chloe: i ask because in https://ffmpeg.org/pipermail/ffmpeg-devel/2016-September/200003.html he says you ignored some, as they are still in the committed file
[17:45:48 CEST] <Chloe> they were fixed, see the current master
[17:51:25 CEST] <jamrial> i am looking at master, and some (like the "while" instead of "if") were not addressed
[17:51:47 CEST] <jamrial> if you think it's good as is then you should reply to that email explaining why
[17:52:19 CEST] <wm4> haha ffmpeg.c rescaling NOPTS timestamps to different timebases
[17:53:26 CEST] <Chloe> jamrial: sorry, where's the while instead of an if?
[17:57:50 CEST] <jamrial> Chloe: in his review https://ffmpeg.org/pipermail/ffmpeg-devel/2016-September/199732.html he says you should use a while instead of an if
[17:58:44 CEST] <Chloe> oh right, I see now. Yes, that'd block the packet until an SDL event occurs, which is not very helpful.
[18:00:07 CEST] <atomnuker> jamrial: btw I remember in webm mode the mkv muxer writes the field order flag despite it being forbidden in the webm spec
[18:00:36 CEST] <jamrial> atomnuker: it shouldn't. not in git master or even after my patch
[18:00:40 CEST] <atomnuker> it was broken during a libav merge a few months ago
[18:01:05 CEST] <atomnuker> maybe it was fixed since then, but I clearly remember a commit message saying it should be fixed
[18:01:35 CEST] <jamrial> right now it's not even writing the flag interlaced element in webm, which is supported
[18:01:53 CEST] <jamrial> my patch changes that, so it writes flag interlaced but not field order
[18:02:09 CEST] <jamrial> so i guess it was fixed at some point
[18:06:13 CEST] <wm4> how can I know why ffmpeg.c is dropping a frame?
[18:11:48 CEST] <jamrial> wm4: loglevel verbose/debug doesn't help?
[18:15:19 CEST] <wm4> I suspect it's because this POS doesn't drain filters on video configuration changes (which happens with this test)
[18:16:23 CEST] <wm4> but I don't know
[18:17:14 CEST] <wm4> I'm definitely decoding 2 frames, and get only 1 (the second) back from the filters
[18:17:38 CEST] <wm4> it's showing "Input stream #0:0 frame changed from size:191x287 fmt:rgba to size:191x231 fmt:rgb24"
[18:18:28 CEST] <wm4> this happens when I enable threads
[18:18:47 CEST] <wm4> with 1 thread, it gets the frame back before reconfiguring (?)
[18:21:20 CEST] <wm4> adding filter draining is probably not really feasible, because lavfi's API of course makes this excessively hard
[18:21:58 CEST] <JEEB> does -vsync passthrough -copyts help?
[18:22:13 CEST] <JEEB> "if in doubt, try disabling timestamp fuckery"
[18:22:30 CEST] <JEEB> although I guess avfilter might be a less simple of a problem
[18:22:33 CEST] <wm4> JEEB: no
[18:22:38 CEST] <JEEB> :<
[18:53:45 CEST] <ubitux> 17:53 <+wm4> haha ffmpeg.c rescaling NOPTS timestamps to different timebases // i think av_rescale* have an exception for NOPTS?
[18:54:43 CEST] <wm4> I don't think so
[18:54:49 CEST] <ubitux> or maybe that's just just INT*_MAX things
[18:55:14 CEST] <ubitux> check the doxy in mathematics.h
[18:55:31 CEST] <ubitux> NOPTS is referenced
[18:56:09 CEST] <wm4> it doesn't use that flag though
[18:56:12 CEST] <wm4> also this is not my code
[19:37:38 CEST] <wm4> lol more demuxers which return 0 sized packets?
[22:36:26 CEST] <BtbN> https://bpaste.net/show/2ed5612872bb ...what? make fails with a compiler error because of a missing include, "make V=1" succeeds
[22:39:14 CEST] <BtbN> same happens with all the other cuda files.
[22:39:28 CEST] <BtbN> Like it does not apply the --extra-cflags without V=1 oO
[22:49:43 CEST] <BtbN> well... it works great if I just build with V=1
[22:49:58 CEST] <BtbN> it's surprisingly quite a bit faster than a mingw build
[22:58:22 CEST] <nevcairiel_> Then you probably did one of those wrong :D
[22:59:13 CEST] <BtbN> I'll investigate that tomorrow.
[22:59:27 CEST] <BtbN> But that build failure without V=1 is very strange.
[23:00:01 CEST] <rcombs> BtbN: run make with "SHELL=bash -v"?
[23:00:11 CEST] <rcombs> (but without V=1)
[23:00:37 CEST] <rcombs> should tell you if the args are different with V=1 or not (certainly shouldn't be, but I dunno, could be a bug somewhere)
[23:03:03 CEST] <BtbN> rcombs, https://bpaste.net/show/17082231266d well...
[23:03:15 CEST] <BtbN> it definitely dislikes being debugged
[23:05:34 CEST] <nevcairiel> For msvc I personally prefer setting the INCLUDE environment var over passing args anyway
[23:05:39 CEST] <rcombs> where's cuda.h actually
[23:05:55 CEST] <BtbN> D:/Programme/CUDA/include/cuda.h
[23:06:08 CEST] <BtbN> and I pass /ID:/Programme/CUDA/include
[23:08:08 CEST] <nevcairiel> Just have to hope mingw doesn't mangle your path
[23:08:22 CEST] <nevcairiel> Which it kinda likes to do
[23:08:29 CEST] <BtbN> there should be no mingw involved?
[23:09:03 CEST] <rcombs> yeah this sounds like a shell thing
[23:09:14 CEST] <nevcairiel> There is always mingw involved if a mingw executable calls other things through a bash shell
[23:09:18 CEST] <rcombs> ^
[23:09:38 CEST] <BtbN> This is running on cygwin
[23:09:54 CEST] <rcombs> might be related to how you get 2 commands on a line (;-separated) when V=1
[23:10:05 CEST] <nevcairiel> Maybe that's your problem then, cygwin is even worse :P
[23:10:19 CEST] <BtbN> it has no notion of that even being a path.
[23:10:37 CEST] <nevcairiel> Or so you hope!
[23:10:49 CEST] <BtbN> it wouldn't work with V=1 if it would
[23:12:06 CEST] <rcombs> with V=1 the task is just the compiler; otherwise it's a shell script that echoes the line and then runs the compiler
[23:12:26 CEST] <BtbN> you mean without the V=1?
[23:12:43 CEST] <rcombs> no, with it
[23:12:47 CEST] <rcombs> see common.mak
[23:12:58 CEST] <rcombs> $(eval override $(VAR) = @$$(call ECHO,$(VAR),$$(MSG)); $($(VAR))))
[23:13:56 CEST] <nevcairiel> This magic has worked for years tho
[23:14:27 CEST] <nevcairiel> And if anything V=1 is the more natural case
[23:15:07 CEST] <BtbN> so something in that magic breaks msvc commandlines with extra include dirs
[23:16:53 CEST] <nevcairiel> Actually more like the magic fixes something
[23:17:13 CEST] <nevcairiel> Because V=1 just executes the command without magic
[23:17:23 CEST] <BtbN> yes, and that works
[23:17:55 CEST] <BtbN> but passing it through that is what doesn't work.
[23:18:02 CEST] <BtbN> it's in an ifndev V block
[23:18:07 CEST] <BtbN> *def
[23:18:23 CEST] <nevcairiel> It would show a difference in the bash -v thing then though
[23:19:51 CEST] <BtbN> anyway, the stuff I wanted to test works fine and generally compiles.
[23:21:00 CEST] <cone-023> ffmpeg 03Timo Rothenpieler 07master:f0ea96d8a2c9: avcodec/cuvid: use actual frame size for buffer allocation
[23:21:00 CEST] <cone-023> ffmpeg 03Timo Rothenpieler 07master:49511501aa06: avcodec/cuvid: support a pre-initialized hw_frames_ctx
[23:21:00 CEST] <cone-023> ffmpeg 03Timo Rothenpieler 07master:ba0e5165331d: avcodec/cuvid: make use of new av_hwdevice_ctx_create api
[23:21:00 CEST] <cone-023> ffmpeg 03Timo Rothenpieler 07master:97e7f03d356b: avutil/hwcontext_cuda: use proper synchronization flag
[23:28:04 CEST] <rcombs> nevcairiel: unless it's the split on the way into bash where the issue's occurring
[00:00:00 CEST] --- Fri Sep 30 2016
1
0
[00:05:53 CEST] <ac_slater> TwinTailed: are you doing -acodec copy?
[00:06:15 CEST] <ac_slater> oh wait
[00:06:20 CEST] <ac_slater> I see, you're using the libs
[00:06:38 CEST] <ac_slater> first create an ffmpeg command line to do what you want (to make sure it's possible)
[00:12:57 CEST] <TwinTailed> ac_slater: It is possible
[00:12:59 CEST] <TwinTailed> tried it
[00:13:27 CEST] <ac_slater> good
[00:13:54 CEST] <ac_slater> used either `mediainfo` or `ffprobe -show_streams` on the output files from the command line tool and your app to see if there are differences
[00:14:14 CEST] <ac_slater> remember that windows doesn't have all of the codecs that VLC and quicktime implement at an application level
[00:14:56 CEST] <ac_slater> H.264 is a weird one since it's licensed
[00:15:07 CEST] <TwinTailed> ac_slater: Why is my output file almost 3 times larger than ffmpeg's output?
[00:15:17 CEST] <ac_slater> could be literally 1000 reasons ;)
[00:15:26 CEST] <TwinTailed> i mean, the original file is 8MB, ffmpeg's is 9MB, mine is 21MB
[00:15:43 CEST] <TwinTailed> and if I use octx->bitrate = ictx->bitrate
[00:15:48 CEST] <ac_slater> you're transcode isn't organizing the data in the container properly
[00:15:49 CEST] <TwinTailed> my file becomes 74MB
[00:16:30 CEST] <ac_slater> so, my advice: first get ffmpeg's command line tool to spit out EXACTLY what you want (make sure it plays in your desired players). Then try to replicate the transcode in the APIs
[00:17:07 CEST] <ac_slater> remember though, ffmpeg's command line tool supports the PIPE input/output. So you could simply run the command line tool as a daemon/service and have your application feed it
[00:17:32 CEST] <TwinTailed> ac_slater: i'd rather use libav for other reasons :)
[00:17:40 CEST] <TwinTailed> i know it works as a daemon
[00:17:41 CEST] <ac_slater> if you;re using h.264, remember that it has a BUNCH of options
[00:17:55 CEST] <ac_slater> the simple examples on the wiki might not be enough
[00:18:24 CEST] <ac_slater> I'd run ffmpeg/ffplay/ffprobe with the MAX loglevel to see how ffmpeg is reading the input file
[00:18:27 CEST] <TwinTailed> ac_slater: They are not enough, I totally agree
[00:18:39 CEST] <ac_slater> could have some non-reproducable encoding options (hopefully not
[00:18:41 CEST] <ac_slater> )
[00:19:36 CEST] <TwinTailed> so should i now use ffmpeg to remux & transcode the video file and also use my program to do the same and compare them with ffprobe?
[00:19:51 CEST] <ac_slater> I totally would
[00:20:04 CEST] <ac_slater> send the output to paste.debian.net or something similar
[00:20:29 CEST] <ac_slater> I'd actually use `mediainfo` as well. It lists nice things about mp4/h264
[00:20:29 CEST] <TwinTailed> can u tell me what options in ffmpeg cli should i use? Im not so experienced in ffmpeg's cli
[00:20:35 CEST] <ac_slater> there has to be a better analyze application...
[00:20:45 CEST] <ac_slater> well. What's your input file?
[00:20:49 CEST] <ac_slater> encoding, etc
[00:21:15 CEST] <TwinTailed> my input file is vid.mp4
[00:21:15 CEST] <ac_slater> (also, dont forget to look at this https://trac.ffmpeg.org/wiki/Encode/H.264)
[00:21:25 CEST] <TwinTailed> did look at it
[00:21:28 CEST] <ac_slater> ah good
[00:21:49 CEST] <ac_slater> if nothing else, it's a nice example as to how to organize your parameters to ffmpeg
[00:23:09 CEST] <TwinTailed> ac_slater: might it be that my video file is not pix_fmt yuv420p?
[00:23:17 CEST] <ac_slater> could very well be
[00:23:21 CEST] <ac_slater> you can change that though
[00:23:34 CEST] <TwinTailed> im using ctx->pix_fmt = encoder->pix_fmts[0];
[00:23:37 CEST] <ac_slater> actually, I'm sure the h264 encoder (assuming libx264) will change that for you
[00:23:50 CEST] <ac_slater> what does ffprobe say the color format is?
[00:23:58 CEST] <ac_slater> (on the output file you created with your app)
[00:24:22 CEST] <TwinTailed> Video: h264 (High) (avc1 / 0x31637661), yuv420p
[00:24:41 CEST] <ac_slater> that's right, it should convert it for you
[00:25:08 CEST] <TwinTailed> so pixel format is not a problem
[00:25:49 CEST] <ac_slater> doesn't seem like it
[00:26:05 CEST] <ac_slater> you'd see some red flags if the encoder couldnt handle the color format
[00:26:35 CEST] <ac_slater> I'm going to assume your issue is either h264 profile (baseline vs Main for example), bitrate, and possibly options like CABAC
[00:26:41 CEST] <ac_slater> but
[00:27:00 CEST] <ac_slater> you haven't said EXACTLY which type of transcoding you're doing. I assume it's to shrink the file
[00:27:26 CEST] <TwinTailed> ac_slater: just basic transcoding, not real goal
[00:28:04 CEST] <TwinTailed> ac_slater: OK, I have used ffmpeg -i input -c:v libx264 -c:a copy output.mp4
[00:28:21 CEST] <ac_slater> you should spend some time with just h264 then, no container and no audio. See if you can get something that way - then add audio and containerization later
[00:28:40 CEST] <ac_slater> I mean, that MIGHT do something. Provided libx264 has some defaults
[00:28:43 CEST] <ac_slater> not sure if it does
[00:28:53 CEST] <ac_slater> it might just play stupid and do whatever the fuck it wants
[00:30:25 CEST] <TwinTailed> ac_slater: MediaInfo for file generated using FFMPEG http://pastebin.com/hWxWbFHu
[00:31:13 CEST] <TwinTailed> ac_slater: my program's generated video http://pastebin.com/xAazQLdx
[00:32:03 CEST] <ac_slater> see the differences?
[00:32:06 CEST] <ac_slater> I do
[00:32:32 CEST] <TwinTailed> I do, but I don't know which corrupt the media :P
[00:33:21 CEST] <SchrodingersScat> kepstin: had one that was very off, it was around 7954 pts/dts, but was about 120 seconds in, is there a reason that happens?
[00:33:26 CEST] <ac_slater> does the ffmpeg command line tool generated file play where you want it to play?
[00:33:38 CEST] <ac_slater> TwinTailed: ^
[00:33:50 CEST] <ac_slater> ie - not corrupt
[00:33:53 CEST] <TwinTailed> ac_slater: yes
[00:34:06 CEST] <TwinTailed> ac_slater: it does work properly and its size is much smaller
[00:34:44 CEST] <kepstin> SchrodingersScat: make sure you don't cross the streams - e.g. a file with both video and audio streams will probably have different timebases for each
[00:34:48 CEST] <ac_slater> look at a few things in your output... "Overall bit rate" and "Encoding library/settings"
[00:35:03 CEST] <ac_slater> A) you're file's bitrate is very high
[00:35:14 CEST] <furq> Duration_LastFrame : -20 ms
[00:35:17 CEST] <furq> well that doesn't look good
[00:35:26 CEST] <ac_slater> B) It doesn't seem like you're invoking libx264 specifically, maybe ffmpeg's internal h264 encoder, TwinTailed
[00:35:39 CEST] <ac_slater> and what furq said
[00:35:44 CEST] <furq> ffmpeg doesn't have an internal h264 encoder
[00:35:47 CEST] <kepstin> ffmpeg doesn't have an internal h264 encoder, libx264 is the only supported encoder
[00:35:48 CEST] <ac_slater> good
[00:35:50 CEST] <ac_slater> I didnt think it did
[00:35:52 CEST] <kepstin> er, actually not true
[00:36:01 CEST] <kepstin> i think you can use openh264 in some builds
[00:36:10 CEST] <TwinTailed> furq: what does duration_lastframe mean?
[00:36:12 CEST] <ac_slater> I just didnt see mediainfo's specific handler for libx264... meaning the file is really messed up
[00:36:19 CEST] <kepstin> but you probably shouldn't unless you need to for license reasons :)
[00:36:21 CEST] <TwinTailed> ac_slater: How can i decrease the bitrate?
[00:37:30 CEST] <ac_slater> TwinTailed: the example programs have some usage
[00:37:32 CEST] <furq> if you want to match what ffmpeg does then set preset to medium and crf to 23
[00:37:42 CEST] <furq> that shouldn't make any difference though
[00:37:45 CEST] <ac_slater> but, it's a field on you AV*Context
[00:38:07 CEST] <furq> it won't make any difference to whether the file is playable, that is
[00:38:09 CEST] <ac_slater> first step should be able to reproduce some thing CLOSE to what ffmpeg spits out.
[00:38:17 CEST] <TwinTailed> if I set bitrate to the same as input's bitrate, file size is multiplied by 4
[00:38:25 CEST] <ac_slater> why would you do that
[00:38:27 CEST] <furq> well yeah that's not a thing you should do
[00:38:30 CEST] <TwinTailed> i get a 74 MB file out of 8MB
[00:38:43 CEST] <ac_slater> think about it for a sec
[00:38:49 CEST] <SchrodingersScat> kepstin: ooh, crossing the streams...
[00:39:07 CEST] <ac_slater> TwinTailed: try to set it to half or something
[00:39:15 CEST] <furq> don't set the bitrate at all
[00:39:17 CEST] <furq> set crf to 23
[00:39:23 CEST] <SchrodingersScat> kepstin: https://www.youtube.com/watch?v=jyaLZHiJJnE
[00:39:41 CEST] <TwinTailed> furq: av_dict_set(¶m, "crf", "23", 0);
[00:39:43 CEST] <relaxed> TwinTailed: you're using cavlc instead of cabac, which will greatly affect the size
[00:39:45 CEST] <TwinTailed> furq: like that 6?
[00:39:51 CEST] <ac_slater> TwinTailed: hint, crf is in the H264 wiki I sent, it should explain it
[00:39:56 CEST] <TwinTailed> relaxed: how to use cabac :P
[00:40:30 CEST] <ac_slater> TwinTailed: don;t think about advanced shit like that right now... just focus on getting it to play
[00:40:38 CEST] <ac_slater> g2g.. good luck
[00:40:53 CEST] <TwinTailed> ac_slater: thanks for everything :)
[00:41:01 CEST] <TwinTailed> furq: DONT U DARE LEAVE ME ALONE!
[00:43:25 CEST] <TwinTailed> furq: how to set it to cabac?
[00:43:40 CEST] <ac_slater> (hint: cabac isnt your issue ;))
[00:44:07 CEST] <TwinTailed> i know but i want to decrease the size
[00:45:44 CEST] <relaxed> libx264 has presets that control compression
[00:46:44 CEST] <TwinTailed> relaxed: i know
[00:47:05 CEST] <TwinTailed> why does it say
[00:47:09 CEST] <TwinTailed> Duration_LastFrame: -20 ms
[00:47:11 CEST] <TwinTailed> ?
[00:47:18 CEST] <furq> afaik if you just don't set any codec settings then it'll use the libx264 defaults
[00:48:13 CEST] <TwinTailed> furq: alright
[00:48:14 CEST] <furq> https://ffmpeg.org/doxygen/trunk/group__lavc__core.html#gae80afec6f26df6607…
[00:48:21 CEST] <TwinTailed> furq: what to do about the high bitrate?
[00:48:31 CEST] <furq> you do the thing i just said
[00:49:00 CEST] <TwinTailed> furq: i already allocate context for encoder
[00:49:37 CEST] <furq> then don't set any codec options after that
[00:50:12 CEST] <TwinTailed> furq: i didn't until u told me to set crf and preset
[00:50:25 CEST] <TwinTailed> furq: but I now I removed them, still problem is there
[00:50:58 CEST] <TwinTailed> furq: by codec options height, width, samplerate, timebase are included?
[00:51:17 CEST] <furq> i doubt it
[00:51:55 CEST] <TwinTailed> ok so whats the problem with file, you all confused me
[00:53:21 CEST] <TwinTailed> furq: and what made that -20ms?
[00:53:49 CEST] <furq> i have no idea what's going on with that -20ms but it doesn't look right
[00:54:01 CEST] <furq> i'd guess a timestamp is set wrongly
[00:55:35 CEST] <TwinTailed> furq: the libav log doesn't mention the last frame
[00:55:56 CEST] <TwinTailed> furq: they are 3021 video frames, it mentions till 3020 (I flush)
[00:56:08 CEST] <furq> does it start at 0
[00:56:45 CEST] <TwinTailed> furq: ah, thats why, its an index
[00:58:43 CEST] <TwinTailed> furq: i set these options http://pastebin.com/1p7CjKxW
[01:33:39 CEST] <TwinTailed> furq: whats the Format Profile option name in av_dict_set?
[01:34:05 CEST] <kingsley_> How do you tell ffmpeg to maintain video quality, even if it means not compressing?
[01:39:10 CEST] <DHE> -c[:type] copy will keep the same codec and copy the encoded data. otherwise use a lossless codec. ffv1 for video, flac for audio are simple but functional choices
[01:47:09 CEST] <kingsley_> DHE: If I ask you nicely, could you please ELI5 (explain it like I'm 5) with a simple command line example?
[01:47:42 CEST] <DHE> oh my god, where are your parents!?
[01:49:20 CEST] <DHE> to answer your question, I feel like I need to know what it is you're trying to accomplished. converting a video to lossless or uncompressed isn't something useful by itself
[01:50:16 CEST] <kingsley_> DHE: OK, that all makes sense.
[01:50:58 CEST] <kingsley_> I'd like to preserve the quality of video as I processes it several times and ways.
[01:51:26 CEST] <DHE> so you're going to be doing several editing passes with filters and stuff
[01:52:04 CEST] <kingsley_> For what it's worth, the following expanded a very short .mp4 from 38129 bytes to 353641.
[01:52:57 CEST] <kingsley_> $ ffmpeg -i in.mp4 -qp 0 out.mkv
[01:53:20 CEST] <DHE> sounds about right
[01:53:36 CEST] <kingsley_> Yes, you're perceptive and correct: I'm doing several editing passes with filters and stuff.
[01:54:16 CEST] <kingsley_> That's interesting.
[01:55:45 CEST] <DHE> well, a few things I'd consider. first you can pipeline filters so it might be possible to do your edits in a single shot of ffmpeg.
[01:57:19 CEST] <DHE> otherwise, I guess you'd want "-c:a copy -c:v ffv1" before your output file for intermediate files if you're doing video editing and leaving the audio intact. then give a proper codec (eg: libx264) for the final encode
[01:57:26 CEST] <TwinTailed> DHE: in LibAV, using av_opt_set(¶m, "profile", "high", 0); is not changing the profile to high, it stays baseline
[01:58:20 CEST] <DHE> TwinTailed: if the encoding parameters you specify are effectively baseline, you get baseline. the profile is more a constraint macro applied on your settings
[01:58:48 CEST] <DHE> did you ensure the profile key was consumed when initializing the codec?
[01:59:32 CEST] <TwinTailed> DHE: no
[01:59:49 CEST] <TwinTailed> DHE: I just set width, height and some other basic stuff
[02:00:33 CEST] <DHE> as a simple sanity check, you should check your dictionary comes back empty when you're done with it. any keys left over were not recognized by the libav stuff that it was given to
[02:00:36 CEST] <TwinTailed> DHE: http://pastebin.com/xAazQLdx
[02:00:46 CEST] <DHE> I do not have time to do code reading tonight
[02:00:52 CEST] <TwinTailed> not a code
[02:00:56 CEST] <TwinTailed> its a mediainfo output
[02:02:22 CEST] <kingsley_> DHE: Thank you for your thoughts.
[11:15:33 CEST] <golserma> Hi I'm wondering what the best format for whatsapp is? x264 baseline AAC and mp4?
[12:26:27 CEST] <spacemadman> kepstin: hey.. sorry got disconnected yesterday and didnt have connectivity to log back in.
[13:52:48 CEST] <MichaelVB> Is there a way to make ffmpeg stretch my motion jpeg data to fit a duration?
[13:53:07 CEST] <MichaelVB> Currently I've got data with a few missing frames every now and then and plays at higher speeds
[13:58:11 CEST] <MichaelVB> And considering the motion jpegs don't contain any time metadata its a bit of a PITA
[14:35:53 CEST] <flux> I don't know, but I solved similar issue a long time ago by going through the time-stamped frames and inserting duplicate frames where needed, and then running video encoder
[14:37:14 CEST] <BtbN> you can use setpts to change the framerate to whatever you like
[14:39:38 CEST] <gahan> how can I test streams instead of specifying input file from command line on linux?
[14:40:01 CEST] <BtbN> specify the stream url instead?
[14:42:46 CEST] <gahan> BtbN: won't it download it to fs? I'm about testing input streams
[14:43:20 CEST] <BtbN> why would it do that?
[14:43:28 CEST] <gahan> I'm just guessing, thanks :)
[15:14:56 CEST] <spacemadman> Hi, does ffmpeg do m2v's?
[15:24:44 CEST] <kriNon> Hey, I am getting this error: http://pastebin.com/ZPuTBxFf in a video file, what does this error mean?
[15:26:41 CEST] <BtbN> it has broken timestamps. Looke like each timestamp is repeating once.
[15:33:46 CEST] <nonex86> the error means exactly what it says, you provided not increased dts :/
[15:35:58 CEST] <nonex86> if you mux from your code you can try set dts to AV_NOPTS_VALUE and ffmpeg will make them for you, but this functionality was marked deprecated (at least in version 3.0 it is)
[15:45:02 CEST] <spacemadman> hey guys
[15:45:12 CEST] <spacemadman> i have an mov in 25fps with audio
[15:45:16 CEST] <spacemadman> how do i convert it to 24?
[15:51:13 CEST] <furq> do you want the duration to remain the same
[15:53:37 CEST] <furq> if you're doing a pal to film conversion then you probably want -vf setpts=25025/24000*PTS -af atempo=24000/25025
[15:53:44 CEST] <furq> you'll need to reencode the video and audio for that though
[15:55:38 CEST] <Anova> hi guys. I'm learning about HLS. My goal is to be able to download a HLS stream. I've managed this with ffmpeg, but its quite slow, ie about 1.75x (way lower than my internet connection speed). I'm assuming the reason for slow speed is the single thread downloading each ts file one at a time and combining it into mp4 at the end. Is this correct? If so, is it possible to download all the ts files with another tool that does mult-threaded
[15:55:45 CEST] <Anova> and then simply combine them with ffmpeg?
[15:56:20 CEST] <Anova> any tips/advice will be much appreciated :)
[15:59:31 CEST] <BtbN> Anova, sounds like someone forgot -c copy
[16:09:35 CEST] <spacemadman> furq: can you help with the full command?
[16:09:58 CEST] <spacemadman> furq: also, my mov is uncompressed qt .. how do i maintain that as the format in the output?
[16:11:53 CEST] <pgorley> hi, can i set an AVCodecContext's callbacks during decoding? or do i need to reinitialize it for this to take effect?
[16:12:01 CEST] <superdump> given an AVFormatContext that is going to be passed into avformat_write_header() how do i set the equivalent of the "-fflags +genpts" command line option?
[16:13:50 CEST] <superdump> i'm guessing i create an AVDictionary and set some key value pair on it
[16:14:10 CEST] <superdump> but it's not clear what it's meant to be... unless the key is fflags and the value is genpts
[16:27:54 CEST] <superdump> can one do av_opt_set(avfctx, "fflags", "genpts", NULL); for example?
[16:30:11 CEST] <superdump> or does one need to create an AVDictionary and av_dict_set(mydict, "flags", "genpts", NULL); or something?
[16:34:20 CEST] <nonex86> AVFMT_FLAG_GENPTS?
[16:35:28 CEST] <superdump> yes, i want to set that
[16:36:24 CEST] <nonex86> i mean maybe you should set in some flags field
[16:36:46 CEST] <nonex86> this works for demux for sure, but dont know
[16:36:59 CEST] <superdump> well why both with the AVDictionary and av_opt_set() and stuff if you can just access the flags member of AVFormatContext directly?
[16:36:59 CEST] <nonex86> will it work in case of muxing
[16:37:34 CEST] <superdump> hopefully
[16:37:36 CEST] <superdump> i'll try it
[16:37:41 CEST] <nonex86> not sure, i think some of options can be codec specific
[16:37:51 CEST] <nonex86> and not have equivalent in ffmpeg structs
[16:38:05 CEST] <nonex86> so they are passed through dictionary to codec
[16:38:10 CEST] <nonex86> but this is just my guess
[16:39:28 CEST] <nonex86> at least if you check options_table.h, genpts option is relasted to AVFMT_FLAG_GENPTS
[16:39:45 CEST] <nonex86> *related
[16:39:50 CEST] <superdump> yup
[16:41:37 CEST] <nonex86> in avformat.h: Flags modifying the (de)muxer behaviour. A combination of AVFMT_FLAG_*.
[16:41:59 CEST] <nonex86> so looks like this should work even for muxer
[16:42:40 CEST] <nonex86> but my guess you should put AV_NOPTS_VALUE in pts
[16:43:02 CEST] <nonex86> before writing packet by av_write/interlived
[16:43:15 CEST] <nonex86> *interleaved
[16:55:47 CEST] <superdump> nonex86: i'm basically trying to replicate whatever ffmpeg -i infile.mp4 -vcodec copy -fflags +genpts outfile.mp4 does
[16:57:40 CEST] <nonex86> superdump, yeah, i understand, i used pts generation only in demux codepath, one more question, why dont you provide pts yourself?
[16:58:22 CEST] <nonex86> superdump, pts generation is an easy task
[16:58:56 CEST] <superdump> i'm guessing there's a bug in this code i'm looking at with regard to timestamps
[17:00:26 CEST] <nonex86> you just take pts from source file, convert it using source timebase
[17:00:49 CEST] <nonex86> then convert this real pts using destination time base
[17:01:06 CEST] <nonex86> and you good to go with the packet
[17:03:19 CEST] <nonex86> also maybe you should take an account the stream start time
[17:04:30 CEST] <nonex86> *in
[17:17:50 CEST] <Anova> BtbN i have included the copy command
[17:37:07 CEST] <TwinTailed> in libav, av_opt_set(ctx>priv_data, "profile", "high", 0); is not changing my h264 mp4 video's profile to high, its always baseline
[17:40:39 CEST] <kepstin> TwinTailed: that option just sets a max limit. Other options will cause x264 to not use all the features of high, in which case it'll make baseline
[17:41:06 CEST] <kepstin> (for example, the 'ultrafast' preset usually won't make anything higher than baseline)
[17:41:18 CEST] <nonex86> what about AVCodecContext->profile ?
[17:41:23 CEST] <kepstin> unless you need to limit profile for some reason - e.g. device support - you should basically never set it.
[17:42:21 CEST] <nonex86> * profile
[17:42:22 CEST] <nonex86> * - encoding: Set by user.
[17:49:14 CEST] <TwinTailed> kepstin: isn't using "high" will make it use cabac?
[17:49:24 CEST] <TwinTailed> and also much less size
[17:49:33 CEST] <kepstin> TwinTailed: no. If you use cabac, then it will say the output is high
[17:49:43 CEST] <kepstin> you have the cause and effect backwards
[17:49:50 CEST] <TwinTailed> ah
[17:49:56 CEST] <TwinTailed> then how do i use cabac?
[17:50:03 CEST] <kepstin> you have some options which say "don't use cabac", you need to remove them
[17:50:15 CEST] <TwinTailed> kepstin: the bitrate is being high and thus size is also big
[17:50:25 CEST] <kepstin> (possibly indirectly, for example because you're using a fast preset)
[17:50:36 CEST] <kepstin> iirc only ultrafast disables cabac tho
[17:51:04 CEST] <TwinTailed> kepstin: any of these options force cabav? http://pastebin.com/hKqkJwFx
[17:51:08 CEST] <TwinTailed> thats not a code ^
[17:51:15 CEST] <TwinTailed> just a snippet
[17:51:49 CEST] <TwinTailed> kepstin: and here are the audio's options http://pastebin.com/At1aS9zu
[17:51:59 CEST] <kepstin> TwinTailed: not clear from that code - are you setting any options elsewhere on the video
[17:52:02 CEST] <TwinTailed> kepstin: other than that, I haven't set anything
[17:52:29 CEST] <TwinTailed> kepstin: i have no av_opt_set in my code
[17:52:38 CEST] <kepstin> TwinTailed: you might want to try explicitly setting preset to medium and crf to e.g. 23 to replicate the defaults, but those are the defaults so it should be using them unless you've overridden something iirc :/
[17:53:49 CEST] <TwinTailed> kepstin: they are being overridden, but i have no idea why
[17:54:18 CEST] <kepstin> TwinTailed: also, make sure libav* debug logging is enabled and look at the log output to see if there's anything obviously wrong there
[17:54:40 CEST] <TwinTailed> http://pastebin.com/RTYiT2cb <-mediainfo output
[17:55:35 CEST] <TwinTailed> kepstin: here is the debug log output http://pastebin.com/Q5qbYqyT
[17:56:42 CEST] <kepstin> TwinTailed: looks fine there, x264 is even saying that it's using high profile.
[17:57:24 CEST] <TwinTailed> kepstin: then why the output is baseline O.o
[17:57:53 CEST] <kepstin> TwinTailed: are you looking at the correct file? have you looked at the code of this 'mediainfo' tool to see how it actually determines that value?
[17:58:16 CEST] <TwinTailed> kepstin: the guys here told me to use mediainfo
[17:58:24 CEST] <TwinTailed> kepstin: yes, im sure its the correct file
[18:02:46 CEST] <TwinTailed> kepstin: what does this error mean: [mov,mp4,m4a,3gp,3g2,mj2 @ 0059bc20] shifted frame pts, curr_cts: 25807030 @ 539
[18:02:47 CEST] <TwinTailed> 7, ctts: 26277, ctts_count: 28196
[18:02:47 CEST] <TwinTailed> ?
[18:03:56 CEST] <TwinTailed> kepstin: no one here told me how to set the pts, they all tell me its automatic, but if i don't set it using av_rescale_q I get non-monotonic dts
[18:04:17 CEST] <kepstin> TwinTailed: no idea, it's something mp4 specific and i'm not familiar with the format. It might be an issue with the pts values you get from your input. Note that the 'ffmpeg' command-line tool does a lot of cleanup on input PTS values by default.
[18:05:51 CEST] <kepstin> But yeah, you really shouldn't have to touch pts values when doing a transcode, unless needed due to different requirements between source and destination containers.
[18:58:26 CEST] <spacemadman> kepstin: hey man, how are u?
[18:58:35 CEST] <spacemadman> sorry my internet died yesterday and I couldnt log back in.
[19:00:01 CEST] <JEEB> define "m2v"
[19:00:11 CEST] <JEEB> uhh, sorry for that
[19:00:17 CEST] <JEEB> was scolled way up in the buffer
[19:21:27 CEST] <spacemadman> hey JEEB
[19:21:29 CEST] <spacemadman> was that for me?
[19:47:39 CEST] <newuser87123> second video iis not playing at all in combined video of 2 parts. audio is fine. vlc codec info tells that both parts have same codec, bitrate, resolution. framerate,etc
[19:50:01 CEST] <newuser87123> kepstin: ^^^
[19:50:46 CEST] <kepstin> newuser87123: um, who are you? I have no context
[19:51:29 CEST] <newuser87123> I came yesterday with an rmtpe stream and you directed me to #youtube-dl
[19:53:24 CEST] <newuser87123> kepstin: I downloaded that stream with youtube-dl but the problem is that its a 2 part stream and after joining them with ffmpeg, 2nd part is not playing while 1st is playing fine. audio is also playing fine. codec info tool of vlc shows that both parts have same codec, bitrate, framerate, resolution, etc
[19:53:47 CEST] <kepstin> how did you "join them" with ffmpeg?
[19:54:14 CEST] <kepstin> (please use a pastebin-like service to post the full command and output if possible)
[19:54:46 CEST] <newuser87123> ffmpeg -f concat -i lst.txt -c copy output.mp4 (lst - file '1st file' file '2nd file')
[19:56:36 CEST] <kepstin> hmm. well, when that works it works; when it doesn't you might just have to do a re-encode (and use the concat filter rather than concat demuxer)
[19:58:43 CEST] <newuser87123> how to use filter than demuxer ?
[19:58:59 CEST] <spacemadman> kepstin: hey man, anyway to encode an mov to m2v keeping in mind that the source is an uncompressed 8bit RGB mov and retaining as much detail as possible?
[19:59:34 CEST] <spacemadman> also, if i were to squeeze in a 25 to 24 and a pitch shift, what would be the right flags to use?
[19:59:53 CEST] <kepstin> newuser87123: https://www.ffmpeg.org/faq.html#Concatenating-using-the-concat-filter
[20:00:35 CEST] <kepstin> spacemadman: you had the pitch shift correct in the command I saw, you just had '-r 24' in the wrong place (had to move it to an input option instead of output option)
[20:01:14 CEST] <kepstin> newuser87123: I guess also https://www.ffmpeg.org/ffmpeg-filters.html#concat which has examples
[20:01:42 CEST] <kepstin> (although they're complicated examples; the simple "two files, one a+v each" is easier)
[20:01:50 CEST] <newuser87123> maybe using a different version of ffmpeg would be of any help ? kepstin
[20:02:22 CEST] <kepstin> newuser87123: I dunno about a "different version", but you should be always keeping ffmpeg up to date for general improvements and fixes.
[20:02:34 CEST] <kepstin> it's unlikely to help this specific issue tho
[20:02:51 CEST] <kepstin> (which is probably that the two video streams are incompatible in some subtle way)
[20:04:44 CEST] <spacemadman> kepstin: umm.. input option?
[20:05:10 CEST] <kepstin> spacemadman: input options are options which go before an input file (before the -i filename), and apply to a specific input
[20:05:25 CEST] <newuser87123> kepstin: http://www.tiikoni.com/tis/view/?id=8c9382f
[20:05:45 CEST] <kepstin> spacemadman: when -r is used as an input option, it causes the fps in the file to be ignored, and it'll be rewritten at the requested framerate
[20:06:02 CEST] <ChocolateArmpits> Were there any suggestions to have "-ac" as a filter too for straightforward downmixing? Now the only way seems to be using channelsplit and specifying the input layout option as the output downmix
[20:06:15 CEST] <spacemadman> kepstin: ffmpeg -r 24 -i input.mov -filter:v "setpts=1.0417*PTS" -y output.m2v
[20:06:44 CEST] <spacemadman> this good?
[20:06:45 CEST] <kepstin> spacemadman: i'm not sure what you're doing with that... you'd want to either use the -r input option or a setpts filter, not both...
[20:07:06 CEST] <kepstin> spacemadman: that reads the input file as if it was 24fps, then stretches it to 25ish fps
[20:07:19 CEST] <spacemadman> ok i am totally lost.
[20:07:32 CEST] <kepstin> spacemadman: what is the actual fps of your source file, and what is the output fps you want?
[20:07:42 CEST] <spacemadman> 25 and its an uncompressed mov.
[20:07:47 CEST] <furq> -vf setpts=25025/24000*PTS -af atempo=24000/25025
[20:07:57 CEST] <spacemadman> i need it converted to 24 but in a m2v
[20:08:20 CEST] <spacemadman> retaining as much bitrate and resolution as possible
[20:08:23 CEST] <ChocolateArmpits> use -vf fps=24
[20:08:29 CEST] <kepstin> spacemadman: alternatively to furq's command, "-vf settb=24,setpts=N"
[20:08:54 CEST] <kepstin> spacemadman: both do the same thing. ChocolateArmpits's command doesn't do what you desire.
[20:08:55 CEST] <spacemadman> where do these flags go?
[20:08:57 CEST] <furq> fps=24 will drop frames
[20:09:24 CEST] <spacemadman> i dont want it to drop or interpolate frames.. i want it to stretch the duration
[20:09:24 CEST] <kepstin> spacemadman: "-vf ..." is an output option, it goes in the space after the input files and before an output file.
[20:09:45 CEST] <furq> the options i posted will stretch the duration and the audio to match
[20:10:11 CEST] <furq> it'll keep the audio pitch the same
[20:10:17 CEST] <furq> there's another filter which will pitch shift but i forget the name now
[20:10:22 CEST] <kepstin> furq: why the '25025/24000' rather than '25/24'? I'm just curious.
[20:10:30 CEST] <furq> for 24000/1001fps
[20:10:43 CEST] <kepstin> hmm, but the input might *actually* be 24fps if it's film :/
[20:10:59 CEST] <spacemadman> nope
[20:11:03 CEST] <furq> when someone says 24fps i assume they mean 23.976
[20:11:05 CEST] <spacemadman> its an ad film and its 25
[20:11:14 CEST] <spacemadman> from a PAL country
[20:11:27 CEST] <kepstin> spacemadman: your source is 25, and you want NTSC 24 (aka 24/1.001)?
[20:11:35 CEST] <spacemadman> i want film 24
[20:11:46 CEST] <spacemadman> to go to a theater
[20:11:53 CEST] <ChocolateArmpits> ok so in PAL the telecine is applied by slowing the footage playback rate
[20:12:00 CEST] <furq> yes it is
[20:12:20 CEST] <ChocolateArmpits> So he only needs -r 24 as the input option
[20:12:26 CEST] <furq> no
[20:12:29 CEST] <ChocolateArmpits> Yes
[20:12:34 CEST] <furq> oh as an input option
[20:13:10 CEST] <spacemadman> guys, so my source is definitely 25 with sync audio
[20:13:31 CEST] <spacemadman> i need an m2v cause OpenDCP accepts only m2v to make MPEG2 MXF Interop DCP's
[20:13:50 CEST] <furq> does -r as an input option work reliably
[20:13:53 CEST] <furq> i was under the impression it didn't
[20:13:54 CEST] <kepstin> spacemadman: ok, so either use the '-r 24' input option OR '-vf setpts=24/25*PTS' OR '-vf settb=24,setpts=N'
[20:14:32 CEST] <spacemadman> all three will work?
[20:14:36 CEST] <spacemadman> what about the audio?
[20:14:44 CEST] <furq> -af atempo=25/24
[20:14:46 CEST] <spacemadman> will it do the necessary pitch shift as well?
[20:14:59 CEST] <furq> actually those are both the wrong way around
[20:15:04 CEST] <ChocolateArmpits> Audio will have to be processed separately if you use the input option
[20:15:11 CEST] <furq> it should be -vf setpts=25/24 -af atempo 24/25
[20:15:17 CEST] <furq> -vf setpts=25/24 -af atempo=24/25
[20:15:21 CEST] <kepstin> hmm, right, you're slowing down
[20:15:33 CEST] <furq> or -vf setpts 25025/24000 -af atempo=24000/25025 if you want 23.976fps
[20:15:39 CEST] <newuser87123> kepstin: its weird, old version of ffmpeg inbuilt in 'thekmplayer' is joing both the parts and playing the video perfectly, but newer version is not, its strange, why so ?
[20:16:12 CEST] <kepstin> spacemadman: if your ffmpeg has it, you can use the 'rubberband' filter to adjust audio speed without changing pitch.
[20:16:31 CEST] <furq> atempo doesn't change pitch
[20:16:37 CEST] <ChocolateArmpits> furq: 24000/1001 is only relevant for ntsc, as back in the days it was used as a telecine midpoint between 24p and 30000/1001 dropframe
[20:16:40 CEST] <spacemadman> furq: so ffmpeg -i input.mov -vf setpts=25/24 -af atempo=24/25 -y output.m2v?
[20:16:47 CEST] <furq> sure
[20:16:56 CEST] <furq> that'll use whatever the default encoding settings for m2v are
[20:17:00 CEST] <furq> which you probably don't want
[20:17:07 CEST] <kepstin> hmm, atempo doesn't? ok. It might be worthwhile comparing the two filters for quality.
[20:17:09 CEST] <spacemadman> so how do i specify?
[20:17:18 CEST] <furq> shrug
[20:17:22 CEST] <spacemadman> sorry man
[20:17:23 CEST] <spacemadman> new to this
[20:17:24 CEST] <ChocolateArmpits> What are your encoding requirements?
[20:17:26 CEST] <furq> i've never encoded mpeg-2 with ffmpeg
[20:17:41 CEST] <kepstin> spacemadman: find out the codec specs for the format - you should normally have a bitrate and gop size given to you, maybe some vbv limits.
[20:17:49 CEST] <spacemadman> ChocolateArmpits: well i need it to make a cinema MPEG2 MXF Interop DCP
[20:17:58 CEST] <spacemadman> and found a tool called OpenDCP that allows me to make it
[20:18:16 CEST] <ChocolateArmpits> probably uses ffmpeg one way or another behind back
[20:18:25 CEST] <newuser87123> kepstin: atempo what ? are you talking to me ?
[20:18:30 CEST] <spacemadman> Nothing on the OpenDCP manual. Looked everywhere on their site/forums since you asked me that yesterday
[20:18:44 CEST] <kepstin> newuser87123: no, that's not relevant to you.
[20:19:27 CEST] <spacemadman> i have one example MXF Interop DCP and i can media info it if you guys would like to see
[20:19:42 CEST] <newuser87123> kepstin: what might be the reason ? older version inbuilt 'thekmplayer' is joing both files perfectly but newer version directly from zerone is not !
[20:19:54 CEST] <furq> actually sorry
[20:19:56 CEST] <kepstin> newuser87123: I have no idea.
[20:20:03 CEST] <furq> -vf setpts=25/24*PTS -af atempo=24/25
[20:20:45 CEST] <spacemadman> furq: ffmpeg -i input.mov -vf setpts=25/24*PTS -af atempo=24/25 -y output.m2v
[20:20:52 CEST] <furq> yeah
[20:21:07 CEST] <spacemadman> ffmpeg cant do mxf's directly right?
[20:21:14 CEST] <furq> apparently it can
[20:21:20 CEST] <furq> there's an mxf muxer
[20:21:20 CEST] <spacemadman> whaat?
[20:21:28 CEST] <newuser87123> kepstin: okay, if I want then from where I can get the older version of ffmpeg which is inuilt 'thekmplayer' ? also how to verbosely paste concat cmd output so that you haave an idea
[20:21:32 CEST] <kepstin> spacemadman: we told you this when you first asked :/
[20:21:32 CEST] <spacemadman> then i have an example MXF
[20:21:36 CEST] <spacemadman> should i just mediainfo that?
[20:21:52 CEST] <furq> run ffprobe on it i guess
[20:21:58 CEST] <spacemadman> kepstin: woot woot.. thats awesome.. sorry i didnt read that bit
[20:21:58 CEST] <furq> ffprobe -show_streams -show_format foo.mxf
[20:22:01 CEST] <kepstin> all I can find about mxf interop mpeg is that the max bitrate is 250mbit :/
[20:22:01 CEST] <spacemadman> must have missed it
[20:22:20 CEST] <spacemadman> furq: hang on.. doing that
[20:22:26 CEST] <spacemadman> kepstin: i'll give you all the info i can man
[20:22:56 CEST] <kepstin> i'm curious whether they're maybe doing intra-only encoding or something silly like that (the newer standard with jpeg2000 are intra-only)
[20:23:26 CEST] <spacemadman> MPEG2 MXF Interop DCP's are an old standard. God knows why its even being used.
[20:24:09 CEST] <spacemadman> furq: Failed to set value '-show_format' for option 'show_steams': Option not found
[20:24:46 CEST] <spacemadman> i have the mediainfo though
[20:24:50 CEST] <spacemadman> should i just paste bin?
[20:25:03 CEST] <newuser87123> kepstin: I'm thinking of deleteing newer version and going for older version ! should I or not ?
[20:25:07 CEST] <kepstin> spacemadman: that was just a typo, try '-show_streams' :)
[20:26:22 CEST] <spacemadman> paste it here?
[20:26:54 CEST] <kepstin> huh, apparently MXF-Interop MPEG2 is actually limited to 80mbit/s, the higher limit is for the newer stuff
[20:27:48 CEST] <spacemadman> kepstin: yeah its shit.
[20:28:00 CEST] <spacemadman> but some theaters demand it.. thats why no option
[20:28:18 CEST] <kepstin> 80mbit mpeg2 should do a really good job for 1080p, as long as there's no stupid vbv limits or really low keyframe interval
[20:28:47 CEST] <spacemadman> it doesnt look great in the theaters in comparison with the jp2k versions
[20:28:49 CEST] <kepstin> mpeg 2 really isn't that bad of a codec, it's just the bitrate limits on dvds and broadcast really bring out its worst
[20:29:26 CEST] <furq> and the fact that dvds are 576i at best
[20:29:47 CEST] <kepstin> like, if you tell ffmpeg to make an 2-pass 80mbit encode of a 1080p movie in mpeg 2 with default options, it's probably gonna say "i couldn't figre out how to use all that bitrate, the file's gonna be smaller than you wanted"
[20:30:19 CEST] <kepstin> (I paraphrased, but there is a log message to that effect which ffmpeg will print)
[20:30:20 CEST] <furq> and also the fact that a lot of dvds were incredibly badly mastered
[20:30:53 CEST] <spacemadman> oh..
[20:30:53 CEST] <furq> it seems a bit harder to fuck up blu-ray but i'm sure you're all about to tell me otherwise
[20:31:38 CEST] <kepstin> blu-ray still has vbv limits and such, but the combination of a newer codec (h264) and higher bitrates + larger buffers means it's harder to screw up.
[20:32:00 CEST] <furq> i've seen a lot of real trash on dvd that has little to do with the codec
[20:32:02 CEST] <kepstin> you're more likely to see issues on tv shows where they try to fit lots of content on a disk, i guess.
[20:32:06 CEST] <furq> mostly bad deinterlacing and stuff
[20:32:23 CEST] <furq> and insane indecisive cropping
[20:33:02 CEST] <furq> a lot of early-2000s bbc dvds are terrible
[20:33:29 CEST] Action: kepstin has seen some weird stuff in anime upscales for bd
[20:33:47 CEST] <kepstin> if you ever want to see a really strange upscale bd, see if you can find the japanese "last exile" release
[20:33:57 CEST] <kepstin> where it's an *interlaced* upscale of telecined animation
[20:34:07 CEST] <furq> nice
[20:34:08 CEST] <spacemadman> guys, so m2v.. any chance i can retain all that niceness from the uncompressed mov?
[20:34:15 CEST] <kepstin> (still looks better than the dvd, of course)
[20:34:34 CEST] <kepstin> spacemadman: the answer is "maybe, but you have to look up the encoding specs to see what settings are allowed"
[20:34:54 CEST] <spacemadman> no info on opendcp.. so i am assuming the sky is the limit?
[20:35:05 CEST] <newuser87123> how to pause ffmpeg -help ? a lot of commands are buried up high in cmd window itself ! also how to copy cmd verbose out so as to paste in paste bin ? kepstin
[20:35:23 CEST] <spacemadman> it just says picture input - m2v
[20:35:28 CEST] <kepstin> spacemadman: all i can see is that the bitrate is max 80mbit, but i dunno if that's average/vbr or if there's restrictions :/
[20:35:46 CEST] <spacemadman> thats the interop mxf dcp ur talking about right?
[20:35:52 CEST] <kepstin> spacemadman: if you can, just do a 2-pass encode with "-b:v 80M" and see what happens.
[20:35:56 CEST] <spacemadman> i am asking about the source m2v opendcp expects to make the mxf
[20:36:07 CEST] <furq> does this tool accept the uncompressed mov you have
[20:36:09 CEST] <kepstin> spacemadman: it looks like opendcp doesn't re-encode, it just remuxes
[20:36:12 CEST] <furq> oh
[20:36:14 CEST] <furq> i guess not then
[20:36:14 CEST] <kepstin> but that's just a guess
[20:36:23 CEST] <spacemadman> nope.. not for the interop mxf
[20:36:42 CEST] <furq> is ffmpeg's mpeg-2 encoder good these days
[20:36:56 CEST] <kepstin> furq: it's not particularly bad?
[20:36:58 CEST] <furq> i remember the one time i had to author a dvd i ended up using some dedicated tool, but that was years ago
[20:37:25 CEST] <furq> i remember it being CCE but apparently that costs several thousand dollars, so it probably wasn't that
[20:37:35 CEST] <kepstin> furq: if you have to encode interlaced stuff, it's apparently tricky to work with, and I don't think you can do soft telecine (repeatfield marks) without an external tool
[20:37:51 CEST] <kepstin> so, kinda painful for dvds :/
[20:38:04 CEST] <furq> this would have been 5+ years ago
[20:38:29 CEST] <furq> i was probably just using ffmpeg wrong but i remember it gave bad results
[20:38:40 CEST] <furq> from a pretty clean 1080p source
[20:41:09 CEST] <kepstin> if you do a 2-pass encode with the vbv options and gop size set correct for dvd, nothing will look great, but I haven't heard of anything *significantly* better than ffmpeg.
[20:44:35 CEST] <furq> i would hope CCE is significantly better considering that it costs $1000
[20:48:16 CEST] <superdump> nonex86: the timebase is the same in the source and destination
[20:48:32 CEST] <superdump> start time could be an issue, will need to investigate
[20:48:38 CEST] <spacemadman> thanks guys
[20:48:45 CEST] <furq> i think it was hcenc that i used
[20:48:59 CEST] <furq> but yeah i'm not recommending it or anything
[20:49:09 CEST] <superdump> nonex86: also, is avcodec_open2() needed if the codec is on a stream created with avformat_new_stream() ?
[21:09:55 CEST] <lindylex> If I download a file in a bash script calling youtube-dl how I get the filename? Example in bash: $( ./youtube-dl --extract-audio --audio-quality 0 --audio-format mp3 --restrict-filenames --ffmpeg-location ./ffmpeg $url )
[21:15:51 CEST] <lindylex> Sorry wrong chanel.
[21:53:37 CEST] <fenfir_> Im pretty sure when I try and send a stream with rtmps ffmpeg is actually sending rtmpts. The pcap shows my rtmp server complaining about malformed rtmpt packets and when I run it with rtmp as the protocol and point it through stunnel in client mode it works with out any issues. As far as I understand and what it sounds like in the documentation is that rtmps is just rtmp wrapped in ssl and rtmpts is rtmpt wrapped in ssl.
[22:22:49 CEST] <transhuman> hi I am getting a peculiar problem here is my ffmpeg line "$path_to_ffmpeg -y -i \"/home/<user>/mp4input/$file\" -c:v libx264 -vf scale=$vidSizeXY -c:a aac -strict -2 \"/home/<user>/mp4final/$file\""; -----the error its giving me is Error, both -y and -n supplied. Exiting. but I am only specifying -y what gives?
[22:43:17 CEST] <BtbN> probably some stuff in one of your variables.
[22:43:29 CEST] <BtbN> Can't really help without the actuall command that's being invoked.
[22:43:50 CEST] <BtbN> also, -strict expermiental is no longer needed for the aac encoder.
[22:46:50 CEST] <transhuman> ok thanks
[22:47:08 CEST] <transhuman> whats the 2 mean it was in some of the examples
[22:47:15 CEST] <transhuman> i mean -2
[22:47:44 CEST] <transhuman> I think whats happening BtbN is its interpreting the long file name as switches
[22:48:12 CEST] <BtbN> experimental.
[22:48:18 CEST] <transhuman> oh ok
[22:48:26 CEST] <BtbN> Then you aren't propperly escaping spaces
[22:48:34 CEST] <BtbN> Not an issue with ffmpeg, but with your script.
[22:48:42 CEST] <transhuman> yes I realize that
[22:49:00 CEST] <BtbN> if ffmpeg complains about the aac encoder without the strict, you really should update
[22:49:14 CEST] <transhuman> ok
[22:49:16 CEST] <BtbN> it's no longer experimental for quite a while now
[23:09:16 CEST] <transhuman> is there any way to tell ffmpeg to batch convert a list of files in parallel?
[23:16:34 CEST] <BtbN> run it multiple times
[23:24:33 CEST] <tdr> transhuman, script it with a loop and background each ffmpeg command
[23:24:49 CEST] <DHE> well, you could do multiple inputs and multiple outputs that are completely disjoint, but I wouldn't bother with that method. several ffmpeg instances is better.
[23:35:15 CEST] <transhuman> ok thanks
[23:38:37 CEST] <transhuman> one last question what does Protocol name not provided, cannot determine if input is local or a network protocol, buffers and access patterns cannot be configured optimally without knowing the protocol mean?
[23:41:11 CEST] <transhuman> tdr I actually tried to use parallel processing code, but it doesn't seem to parallelize for some reason I thought maybe you can only run one instance
[23:41:33 CEST] <transhuman> maybe its a bug in my code
[23:47:30 CEST] <tdr> transhuman, for unix shell, something like for x in `cat list`; do ffmpeg <some stuff here> $x & done should work
[23:48:07 CEST] <transhuman> right ok that might be simpler thanks
[23:48:14 CEST] <transhuman> what about the other question tdr?
[23:48:25 CEST] <transhuman> the protocol question
[23:48:46 CEST] <transhuman> seems like what ever is causing it is causing my program to exit
[23:49:34 CEST] <tdr> transhuman, however you're feeding it your input, it doesn't know if they are local or network or what. what command/syntax are you using
[23:50:07 CEST] <transhuman> "$path_to_ffmpeg -y -i $inputpath1 -c:v libx264 -vf scale=$vidSizeXY -c:a aac $outputpath1";
[23:50:28 CEST] <transhuman> this is in perl
[00:00:00 CEST] --- Fri Sep 30 2016
1
0
[00:10:14 CEST] <llogan> the maintainer for qdm2 is not active, but you can give it a day or two for others to have a chance to comment since it was submitted only ~3.5 hours ago
[00:16:27 CEST] <Chloe> Patchwork's patch button should be named diff
[01:25:34 CEST] <cone-103> ffmpeg 03Sophia Wang 07master:8c83062acb22: avformat/matroskadec: retain error codes in matroska_resync() and matroska_read_packet()
[01:31:37 CEST] <cone-103> ffmpeg 03James Almer 07master:29b6c2be291e: avformat/matroskadec: set AVCodecParameters.field_order on progressive video
[02:23:30 CEST] <cone-103> ffmpeg 03James Almer 07master:92de2c23a61e: ffprobe: don't use AVStream.codec to set decoder framerate
[05:27:18 CEST] <cone-146> ffmpeg 03Sasi Inguva 07master:7e9e1b707024: lavc/movtextdec.c: Avoid infinite loop on invalid data.
[11:06:45 CEST] Action: wm4 is waiting for google to classify these j2eeguys.com as spam
[11:08:10 CEST] <BtbN> I already did just that.
[11:23:17 CEST] <nevcairiel> me too
[11:23:53 CEST] <BtbN> if that continues, can't we just unsubscribe him? It's not like he's getting any mails from the list anyway.
[13:19:12 CEST] <atomnuker> does checkasm not work without a make install?
[13:23:45 CEST] <Chloe> michaelni__: is there a specific type of qdm2 sample we need to reach that code?
[13:27:15 CEST] <michaelni__> Chloe, yes
[13:30:02 CEST] <Chloe> I should have been more specific, but looking at it, I doubt I could find an appropriate sample, whatever the special feature it requires is.
[13:34:36 CEST] <Chloe> michaelni__: I'm going to push that with a diff commit message: 'lavc/qdm2: increase code clarity' unless you have a better commit message
[13:35:30 CEST] <michaelni__> ok
[13:36:20 CEST] <BtbN> that guy who submited patches for nvenc got them merged in libav instead of fixing the issues that were pointed out at ffmpeg-devel...
[13:37:40 CEST] <Chloe> Isn't it normally the other way round? xD
[13:37:48 CEST] <nevcairiel> i thought you had a deal with libav to try to keep things unified
[13:37:52 CEST] <nevcairiel> guess that didnt work out?
[13:38:14 CEST] <BtbN> The ffmpeg nvenc is basically identical to the libav one
[13:38:33 CEST] <BtbN> And it looks like Luca just merged those commits, and I never talked to him
[13:39:09 CEST] <nevcairiel> if the changes are crap we can just not merge them when we reach that point (some day)
[13:39:11 CEST] <BtbN> Strangely enough, the issues I pointed out were fixed. So I'm just going to cherry-pick them.
[13:39:13 CEST] <cone-480> ffmpeg 03Adriano Pallavicino 07master:25866680fd6b: lavc/qdm2: increase code clarity
[13:39:33 CEST] <Chloe> odd that they didn't resubmit
[13:39:43 CEST] <BtbN> No, the changes were fine. Adding new SDK 7 features. Just some issues like unused variables and parameters
[13:42:16 CEST] <JEEB> any comments here regarding the smooth streaming patches?
[13:43:44 CEST] <BtbN> hm, can't really cherry-pick the commits, as they bring the libav encoder on par with the ffmpeg one. So I'll just make a new commit with the diferences, and reference the libav commits.
[13:44:09 CEST] <BtbN> https://git.libav.org/?p=libav.git;a=blob;f=libavcodec/nvenc.c;h=7f8737e0bf… wow, a typo!
[13:46:42 CEST] <BtbN> that function is super weird in libav anyway
[13:46:52 CEST] <BtbN> it returns an int, which is allways an error code, which is then just never checked
[13:57:00 CEST] <BtbN> https://git.libav.org/?p=libav.git;a=commitdiff;h=352741b5ead1543d775ccf604…
[13:57:05 CEST] <BtbN> is that syntax even standard C?
[13:57:39 CEST] <nevcairiel> yes
[13:58:42 CEST] <BtbN> what will it do if there are gaps in the indices? Just fill it with 0?
[13:58:54 CEST] <BBB> yes
[13:59:04 CEST] <BBB> static const data is initialized to zero if unset
[14:02:37 CEST] <flux> the syntax is actually more versatile than I thought: http://www.drdobbs.com/the-new-c-declarations-initializations/184401377
[14:04:28 CEST] <BtbN> I expected it to be a GNU extension
[14:05:14 CEST] <wm4> just C99
[14:05:22 CEST] <wm4> we already use it in some other places
[14:05:55 CEST] <wm4> one case in a public header: http://git.videolan.org/?p=ffmpeg.git;a=blob;f=libavutil/error.h;h=71df4da3…
[14:06:06 CEST] <wm4> (pretty trippy shit, but very convenient)
[14:50:17 CEST] <cone-480> ffmpeg 03Michael Niedermayer 07release/3.1:ba642f031906: avformat/utils: End probing if the expected codec surpasses AVPROBE_SCORE_STREAM_RETRY
[14:50:18 CEST] <cone-480> ffmpeg 03Michael Niedermayer 07release/3.1:ed38046c5c2e: avformat/avidec: Fix infinite loop in avi_read_nikon()
[14:50:19 CEST] <cone-480> ffmpeg 03Michael Niedermayer 07release/3.1:5aaf7e31829d: swscale/swscale_unscaled: Fix packed_16bpc_bswap() with slices
[14:50:20 CEST] <cone-480> ffmpeg 03Michael Niedermayer 07release/3.1:e91b7852dfae: swscale/swscale_unscaled: Try to fix Rgb16ToPlanarRgb16Wrapper() with slices
[14:50:21 CEST] <cone-480> ffmpeg 03Sergey Volk 07release/3.1:7a3dc2f7b6c2: avformat/mov: Fix potential integer overflow in mov_read_keys
[14:50:22 CEST] <cone-480> ffmpeg 03Michael Niedermayer 07release/3.1:ed1c6f701a78: avcodec/svq3: Reintroduce slice_type
[14:50:23 CEST] <cone-480> ffmpeg 03Michael Niedermayer 07release/3.1:65c10f0f5c52: avcodec/ccaption_dec: Use simple array instead of AVBuffer
[14:50:24 CEST] <cone-480> ffmpeg 03Michael Niedermayer 07release/3.1:21a979773783: avformat/movenc: Check first DTS similar to dts difference
[14:50:25 CEST] <cone-480> ffmpeg 03Michael Niedermayer 07release/3.1:c2087fc48b46: avcodec/avpacket: clear side_data_elems
[14:50:26 CEST] <cone-480> ffmpeg 03Michael Niedermayer 07release/3.1:ac8ac46641ad: avcodec/g726: Add missing ADDB output mask
[14:50:27 CEST] <cone-480> ffmpeg 03Xinzheng Zhang 07release/3.1:c68ce48260cf: avformat/utils: fix timebase error in avformat_seek_file()
[14:50:28 CEST] <cone-480> ffmpeg 03Michael Niedermayer 07release/3.1:03f996d18346: avformat/movenc: Factor check_pkt() out
[14:50:29 CEST] <cone-480> ffmpeg 03Michael Niedermayer 07release/3.1:77c9c3509309: avformat/movenc: Check packet in mov_write_single_packet() too
[14:50:30 CEST] <cone-480> ffmpeg 03Michael Niedermayer 07release/3.1:9d738e696875: avcodec/cavsdsp: use av_clip_uint8() for idct
[14:50:31 CEST] <cone-480> ffmpeg 03Michael Niedermayer 07release/3.1:496267f8e9ec: avcodec/ansi: Check dimensions
[14:50:32 CEST] <cone-480> ffmpeg 03Sasi Inguva 07release/3.1:39dc26f0c104: lavc/movtextdec.c: Avoid infinite loop on invalid data.
[14:50:33 CEST] <cone-480> ffmpeg 03Michael Niedermayer 07release/3.1:8834e080c20d: avformat/avidec: Fix memleak with dv in avi
[14:50:34 CEST] <cone-480> ffmpeg 03Michael Niedermayer 07release/3.1:e6351504dc54: Update for 3.1.4
[15:05:17 CEST] <wm4> michaelni__: do you know about HLS regressions in the current ffmpeg release?
[15:07:02 CEST] <nevcairiel> reading or writing?
[15:12:41 CEST] <michaelni__> wm4, no
[15:13:36 CEST] <wm4> demuxing
[15:13:47 CEST] <wm4> they say the initial segment is repeated
[15:23:47 CEST] <BtbN> So that's what's happening. I was blaming Kodi for it.
[15:24:01 CEST] <BtbN> Yes, that's definitely happening.
[15:28:01 CEST] <wm4> here's the mpv bug report: https://github.com/mpv-player/mpv/issues/3480
[15:28:40 CEST] <wm4> according to this 2.8.7 works, 3.1.3 doesn't work, ffmpeg git works
[15:33:44 CEST] <anrao> durandal_1707: ping
[16:03:02 CEST] <michaelni__> should i wait with releasing 3.1.4 ? (i had planned to release later today but i can wait if someone wants to backport a hls fix, i can also cherry pick one if i know what needs to be picked)
[16:06:26 CEST] <BtbN> I have a super minor fix for nvenc.
[16:06:27 CEST] <BtbN> http://git.videolan.org/?p=ffmpeg.git;a=blob;f=libavcodec/nvenc_hevc.c;h=1c…
[16:06:42 CEST] <BtbN> it's missing the "device", so the const options don't do anything.
[16:07:22 CEST] <BtbN> I'll just push a fix for that to release/3.1 in a few minutes.
[16:08:37 CEST] <michaelni__> sure, no hurry, i wont release before evening/night for sure and am happy to wait long if people want
[16:09:12 CEST] <BtbN> if there is a fix for the hls issue, I'd definitely like to have it. I don't particulary care about it getting into 3.1.4 though.
[16:11:29 CEST] <cone-480> ffmpeg 03Timo Rothenpieler 07release/3.1:e60a00e0cc48: avcodec/nvenc: fix const options for hevc gpu setting
[16:12:39 CEST] <michaelni__> s/long/longer/
[16:18:41 CEST] <mateo`__> michaelni__: I think I need to backport a MediaCodec fix for 3.1.4
[16:23:07 CEST] <BtbN> What is up with x86/vp9itxfm.asm, just noticed that it takes by far the longest to compile out of all c/asm files in ffmpeg.
[16:25:11 CEST] <cone-480> ffmpeg 03Matthieu Bouron 07release/3.1:d0590d93493a: lavc/mediacodecdec_h264: fix SODB escaping
[16:25:15 CEST] <mateo`__> michaelni__: done
[16:26:45 CEST] <atomnuker> BtbN: make sure you use a modern yasm version or better yet nasm, it's fast on my machine
[16:27:00 CEST] <BtbN> nasm symlinked to yasm?
[16:27:06 CEST] <wm4> michaelni__: unfortunately I don't know what causes the HLS issue
[16:27:18 CEST] <BtbN> atomnuker, I'm using yasm 1.2.0
[16:27:39 CEST] <Gramner> BtbN: that file is just large. also yasm 1.3.0 is much faster than 1.2.0
[16:27:44 CEST] <atomnuker> 1.3.0 has been out for years
[16:27:55 CEST] <BtbN> 1.2 is stable on gentoo though, 1.3 marked as testing
[16:28:06 CEST] <Gramner> https://github.com/yasm/yasm/commit/e32ff2c2abc22532a58c9b687d922500d23fd709
[16:28:35 CEST] <BtbN> Also, i have nasm installed as well. Is it better in general, or just another option?
[16:28:40 CEST] <Gramner> best diffsize:speedincrease ratio ever?
[16:29:33 CEST] <kierank> ah ubuntu has 1.2
[16:29:36 CEST] <atomnuker> BtbN: yep, it's developed and updated more often
[16:29:36 CEST] <Gramner> yasm is essentially dead, it doesn support new instruction sets so migration to nasm is going to happen eventually
[16:29:48 CEST] <Gramner> nasm is activly developed
[16:29:49 CEST] <BtbN> atomnuker, but ffmpeg seems to prefer yasm if both are available, hm
[16:30:01 CEST] <BBB> because nasm did stupid things back when
[16:30:02 CEST] <jamrial> yasm devs didnt want to deal with avx512?
[16:30:06 CEST] <kierank> it used to be that nasm was the one that wasn't developed
[16:30:36 CEST] <Gramner> jamrial: there aren't any active yasm devs any more, nothing about avx-512 in particular
[16:30:44 CEST] <jamrial> ah, i see
[16:31:31 CEST] <Gramner> although the fact that avx-512 make big changes and requires large part of the assembler to be rewritten probably doesn't help
[16:31:41 CEST] <BBB> Gramner: cant you become a yasm dev?
[16:32:00 CEST] <Gramner> I have more patches in nasm than in yasm
[16:32:15 CEST] <wm4> huh, why would new instructions require a rewrite?
[16:32:16 CEST] <BtbN> some configure option to select nasm would be nice
[16:32:28 CEST] <BtbN> wm4, because the size of various registers changed i guess?
[16:32:40 CEST] <BBB> BtbN: its there already?
[16:32:54 CEST] <BtbN> BBB, hm?
[16:33:08 CEST] <BBB> --yasmexe=nasm
[16:33:11 CEST] <BBB> I think
[16:33:14 CEST] <Gramner> gonna switch x264 to nasm when hpa is done with his backend nasm rewrite, because nasm currently can't handle some of the clever PIC coding in x264
[16:33:18 CEST] <BtbN> BBB, ah, hmm
[16:33:25 CEST] <jamrial> it also uses nasm if yasm isn't available
[16:33:33 CEST] <jamrial> we'll have to make configure favor nasm eventually
[16:34:19 CEST] <Gramner> wm4: avx-512 adds completely new features like opmasks, embedded bradcasts, embedded floating-point rounding-modes etc.
[16:34:41 CEST] <Gramner> and a whole new instruction encoding scheme (evex)
[16:35:02 CEST] <Gramner> probably the biggest change to the x86 instruction set ever tbh
[16:47:27 CEST] <cone-480> ffmpeg 03Michael Niedermayer 07master:14bac7e00d72: avformat/avidec: Remove ancient assert
[16:47:28 CEST] <cone-480> ffmpeg 03Michael Niedermayer 07master:2679ad4773aa: avformat/avidec: Check nb_streams in read_gab2_sub()
[16:57:15 CEST] <cone-480> ffmpeg 03Timo Rothenpieler 07master:a81b000a392e: avcodec/nvenc: Make sure that enum and array index match
[16:57:16 CEST] <cone-480> ffmpeg 03Timo Rothenpieler 07master:033f98c902f5: avcodec/nvenc: add HEVC REXT profile
[16:57:17 CEST] <cone-480> ffmpeg 03Yogender Gupta 07master:facc19ef06a7: avcodec/nvenc: Extended rate-control support as provided by SDK 7
[16:57:18 CEST] <cone-480> ffmpeg 03Timo Rothenpieler 07master:c03b9d6a62db: avcodec/nvenc: nicely align AVOptions
[16:58:13 CEST] <nevcairiel> man when did the videolan gitweb break, it now shows all merge commits for all files even if they didnt touch that file
[16:58:28 CEST] <nevcairiel> reading history for single files is impossible
[16:58:45 CEST] <BtbN> I'm using github for that since a long time.
[16:59:08 CEST] <nevcairiel> githubs web interface is just so sluggish and slow
[16:59:15 CEST] <BtbN> Also, 4 less commits in the libav merge queue! Well, almost.
[16:59:26 CEST] <nevcairiel> cant even browse avcodec folder properly because it'll scream at you for there being too many files
[17:00:28 CEST] <wm4> lately I've even seen it hide some issues on long threads (you have to click to expand them)
[17:03:44 CEST] <jamrial> nevcairiel: that started since the server upgrade, which included a new gitweb version
[17:03:59 CEST] <nevcairiel> figures
[17:04:07 CEST] <jamrial> j-b or whoever handles this may be able to solve it
[17:04:27 CEST] <nevcairiel> i faintly remember having that on my personal gitweb as well, but i forgot how i fixed it
[17:10:14 CEST] <philipl> BtbN: cuda 8 final has the ancient garbage cuvid headers in it. Clearly they want people to get them from the video sdk. Not a surprise in the end.
[17:11:41 CEST] <nevcairiel> not like the headers really changed for a long time, other then some cleaning here and there
[17:11:48 CEST] <nevcairiel> and the odd new codec id they added
[17:12:59 CEST] <j-b> jamrial: see with thresh
[17:36:01 CEST] <cone-480> ffmpeg 03Sylvain Laurent 07master:58776ccbdb4d: lavf/mpegtsenc: Set min PID for data pkt to 0x0010.
[17:50:02 CEST] <cone-480> ffmpeg 03Carl Eugen Hoyos 07master:83bf40f3cfcf: lavc/8bps: Fix 32bit output of 24bit video.
[18:02:59 CEST] <cone-480> ffmpeg 03Anton Khirnov 07master:5fa255b65c78: avconv: initialize output framerate earlier
[18:03:00 CEST] <cone-480> ffmpeg 03Anton Khirnov 07master:6ed0f70f97c8: avconv: factor out initializing stream parameters for streamcopy
[18:03:01 CEST] <cone-480> ffmpeg 03James Almer 07master:df2ae8f3f0a8: Merge commit '5fa255b65c7887cc913f097aed1b581fbf1a8745'
[18:03:02 CEST] <cone-480> ffmpeg 03James Almer 07master:3597d32e88c8: Merge commit '6ed0f70f97c882813199b3bafd724ceeb43659de'
[18:04:12 CEST] <ubitux> any comment on "[PATCH] doc/libav-merge: complete TODO section"?
[18:05:30 CEST] <jamrial> ubitux: it needs one more line about the first of the merges i just pushed
[18:05:42 CEST] <jamrial> but it's fine otherwise
[18:06:25 CEST] <cone-480> ffmpeg 03Michael Niedermayer 07release/3.0:6744d3f6b953: swscale/swscale_unscaled: Fix packed_16bpc_bswap() with slices
[18:06:26 CEST] <cone-480> ffmpeg 03Michael Niedermayer 07release/3.0:cb8a29f87290: swscale/swscale_unscaled: Try to fix Rgb16ToPlanarRgb16Wrapper() with slices
[18:06:27 CEST] <cone-480> ffmpeg 03Sergey Volk 07release/3.0:9259b7f38e00: avformat/mov: Fix potential integer overflow in mov_read_keys
[18:06:28 CEST] <cone-480> ffmpeg 03Michael Niedermayer 07release/3.0:d669b7f4f6e8: avcodec/ccaption_dec: Use simple array instead of AVBuffer
[18:06:29 CEST] <cone-480> ffmpeg 03Michael Niedermayer 07release/3.0:b7b3b0086d4e: avformat/movenc: Check first DTS similar to dts difference
[18:06:30 CEST] <cone-480> ffmpeg 03Michael Niedermayer 07release/3.0:26a8fc1c00d5: avcodec/avpacket: clear side_data_elems
[18:06:31 CEST] <cone-480> ffmpeg 03Michael Niedermayer 07release/3.0:9357aa67572c: avcodec/g726: Add missing ADDB output mask
[18:06:32 CEST] <cone-480> ffmpeg 03Xinzheng Zhang 07release/3.0:f2f7d49f41b1: avformat/utils: fix timebase error in avformat_seek_file()
[18:06:33 CEST] <cone-480> ffmpeg 03Michael Niedermayer 07release/3.0:a1f77124c876: avformat/movenc: Factor check_pkt() out
[18:06:34 CEST] <cone-480> ffmpeg 03Michael Niedermayer 07release/3.0:7fefa4138ddd: avformat/movenc: Check packet in mov_write_single_packet() too
[18:06:35 CEST] <cone-480> ffmpeg 03Michael Niedermayer 07release/3.0:63f951601e75: avcodec/cavsdsp: use av_clip_uint8() for idct
[18:06:36 CEST] <cone-480> ffmpeg 03Michael Niedermayer 07release/3.0:e5bf7ab3e7c6: avcodec/ansi: Check dimensions
[18:06:37 CEST] <cone-480> ffmpeg 03Sasi Inguva 07release/3.0:82b58841c9d0: lavc/movtextdec.c: Avoid infinite loop on invalid data.
[18:06:38 CEST] <cone-480> ffmpeg 03Michael Niedermayer 07release/3.0:fb7617df4eb1: avformat/avidec: Fix memleak with dv in avi
[18:06:39 CEST] <cone-480> ffmpeg 03Michael Niedermayer 07release/3.0:77d5a237ef68: avformat/avidec: Remove ancient assert
[18:06:40 CEST] <cone-480> ffmpeg 03Michael Niedermayer 07release/3.0:8c43f320574d: avformat/avidec: Check nb_streams in read_gab2_sub()
[18:06:41 CEST] <cone-480> ffmpeg 03Michael Niedermayer 07release/3.0:b9a1d389b2a0: Update for 3.0.4
[18:06:49 CEST] <jamrial> ubitux: i'm going to merge a few more commits
[18:06:53 CEST] <ubitux> jamrial: ok ok
[18:06:58 CEST] <ubitux> i'll delay the patch
[18:11:00 CEST] <cone-480> ffmpeg 03Neil Birkbeck 07master:5d560d38deca: pixfmt: Add ARIB STD-B76 color transfer characteristic
[18:11:01 CEST] <cone-480> ffmpeg 03James Almer 07master:f013ba475b0d: Merge commit '5d560d38deca1e4705e6d3784d737363b9c830fe'
[18:12:54 CEST] <nevcairiel> there should be a bunch of easy merges for now, i think
[18:15:04 CEST] <cone-480> ffmpeg 03Vittorio Giovara 07master:a8164323374e: pixdesc: Add new SMPTE 431, 432, and 2085 color properties
[18:15:05 CEST] <cone-480> ffmpeg 03James Almer 07master:6e76c9c45018: Merge commit 'a8164323374e86ce5f93759230868c98356833a2'
[18:20:19 CEST] <cone-480> ffmpeg 03Vittorio Giovara 07master:40dd5166d2ba: truemotion2rt: Use ff_set_dimensions
[18:20:20 CEST] <cone-480> ffmpeg 03James Almer 07master:0153cc49b20a: Merge commit '40dd5166d2ba4f9035b93748840e408cd8be40e5'
[18:25:39 CEST] <cone-480> ffmpeg 03Anton Khirnov 07master:e85f6f7f8d03: lavc: allow using AVCodecContext.hw_frames_ctx for decoding
[18:25:39 CEST] <cone-480> ffmpeg 03James Almer 07master:32c25f06b79f: Merge commit 'e85f6f7f8d037c0af0f294000718d9ba22753baa'
[18:27:18 CEST] <cone-480> ffmpeg 03Anton Khirnov 07master:6f19bbcf8532: qsvdec: move reading the user-provided session to qsv_decode_init()
[18:27:19 CEST] <cone-480> ffmpeg 03James Almer 07master:e9a5fc967867: Merge commit '6f19bbcf8532d018d8d6d82e000738d0ac2385c9'
[18:32:09 CEST] <cone-480> ffmpeg 03Anton Khirnov 07master:59e7361cc791: hwcontext: add a QSV implementation
[18:32:10 CEST] <cone-480> ffmpeg 03James Almer 07master:eba041476879: Merge commit '59e7361cc791e5103be1712dc59a2055f118d0da'
[18:32:23 CEST] <jamrial> ok, done
[18:32:25 CEST] <wm4> is it fine to add artificial hacks to ffmpeg.c just to make them pass fate under corner cases?
[18:32:36 CEST] <wm4> s/them/it/
[18:32:56 CEST] <durandal_1707> never enough hacks in ffmpeg.c
[18:37:25 CEST] <durandal_1707> nevcairiel: why you added magicyuv support to lav but not sheervideo?
[18:38:10 CEST] <nevcairiel> because i dont even know what that is
[18:39:01 CEST] <durandal_1707> nevcairiel: loosless codec just like magicyuv
[18:54:28 CEST] <BtbN> wm4, a hack that can't be put in any of the libraries instead?
[18:55:37 CEST] <jamrial> ubitux: so yeah, add a line about 5fa255b65c78 needing to be applied before further avconv commits and push that doc patch
[18:56:58 CEST] <wm4> BtbN: well, it's about ffmpeg.c wanting to send dts timestamps over flush packets (I've mentioned that before)
[19:46:05 CEST] <philipl> BtbN: https://github.com/philipl/FFmpeg/commit/d6573275a71554cef25a78e462e688f58d…
[19:46:32 CEST] <BtbN> how else does it get included?
[19:46:57 CEST] <philipl> ffmpeg_cuvid.c doesn't make any cuvid calls. just base cuda ones.
[19:47:06 CEST] <BtbN> ah, right.
[19:47:13 CEST] <BtbN> And I think it can be even further slimmed down?
[19:47:31 CEST] <philipl> If we break out the dlopen stuff from nvenc and share it, yes.
[19:47:43 CEST] <BtbN> hm?
[19:47:55 CEST] <BtbN> I meant using the new hwctx allocation
[19:48:04 CEST] <philipl> cuInit/cuDeviceGet/cuCtxCreate
[19:48:05 CEST] <philipl> oh.
[19:48:16 CEST] <BtbN> https://github.com/FFmpeg/FFmpeg/blob/master/libavutil/hwcontext_cuda.c#L262
[19:48:38 CEST] <philipl> I see.
[19:48:38 CEST] <BtbN> that makes most of ffmpeg_cuvid.c obsolete. I just haven't gotten around to making use of it.
[19:48:41 CEST] <philipl> yeah, new merge.
[19:50:48 CEST] <philipl> BtbN: do you think it's worth moving to dlopen everything? Given the nvenc precedence - redeclaring the cuda prototypes and dlopening should qualify cuvid to stop being nonfree.
[19:51:20 CEST] <BtbN> cuvid needs the cuda.h header. And the license in that is too obscure for anything.
[19:51:39 CEST] <BtbN> And I'm not in favor of duplicating more and more stuff of cuda into ffmpeg
[19:51:52 CEST] <philipl> we edit the header not to include cuda.h and redeclare. nvenc redeclares a bunch of cuda.h contents.
[19:52:12 CEST] <BtbN> At some point it becomes questionable if copying large parts of the header warants the license
[19:52:24 CEST] <nevcairiel> and then you have to proof you figured this out without reading cuda.h to not kill the license
[19:53:14 CEST] <philipl> memcpy2d is the only function that we don't already redeclare for nvenc.
[19:53:32 CEST] <philipl> which is unfortunately non trivial due to the struct arg
[19:53:39 CEST] <BtbN> which nvenc doesn't need without global cuda support.
[19:54:28 CEST] <philipl> nevcairiel: what's your basis for lavf being lgpl with cuda support?
[19:55:15 CEST] <philipl> (or is it also a nonfree build?)
[19:55:29 CEST] <BtbN> --enable-cuda needs nonfree, yes.
[19:55:49 CEST] <BtbN> There is no way to include the cuda.h header without making it a nonfree build.
[19:55:57 CEST] <BtbN> The license in there is too broken.
[19:56:04 CEST] <philipl> I agree - it's a useless licence.
[19:56:56 CEST] <philipl> It's just my point here is that the difference between nvenc which we think can be free and cuvid which is not, is one function prototype from cuda.h
[19:58:05 CEST] <RiCON> ffmpeg configure needs an update to support openjpeg 2.2
[19:58:23 CEST] <BtbN> I also don't want to cater nvidias horrible licensing practise by weaseling our way around it.
[19:58:44 CEST] <BtbN> If they want wider adoption of their stuff, they should fix the license situation.
[19:58:52 CEST] <philipl> This is true.
[19:59:14 CEST] <BtbN> Put a MIT header on the cynload_cuda.h, and everything is fine.
[19:59:19 CEST] <BtbN> Except for libnpp*
[19:59:25 CEST] <BtbN> That is nonfree forever.
[19:59:41 CEST] <philipl> you just need to merge nvresize to replace it :-P
[20:00:23 CEST] <philipl> We got them to relicence the video headers by asking. Maybe it's not a waste of time to ask about cuda.h
[20:09:39 CEST] <cone-480> ffmpeg 03Philip Langdale 07master:d6573275a715: ffmpeg_cuvid: Don't unnecessarily include nvcuvid.h
[20:13:35 CEST] <cone-480> ffmpeg 03James Almer 07master:13dd5edb88c9: avutil/hwcontext: use CONFIG_QSV instead of CONFIG_LIBMFX for qsv
[20:36:04 CEST] <philipl> BtbN: After the latest set of merges, I needed to duplicate your hwframe format hack from ffmpeg_cuvid.c into mpv.
[20:36:11 CEST] <philipl> I'm not sure what changed to require that.
[20:36:38 CEST] <BtbN> which hack?
[20:37:49 CEST] <cone-480> ffmpeg 03raymondzheng1412(a)gmail.com 07master:2366efce3cd5: avformat/concatdec: don't call open_file when seek position within a file
[20:39:36 CEST] <philipl> BtbN: /* This is a bit hacky, av_hwframe_ctx_init is called by the cuvid decoder... etc
[20:40:04 CEST] <BtbN> well, of course? You need to init the context.
[20:40:24 CEST] <JEEB> anyone else has any interest in the smooth streaming movenc patches I posted?
[20:40:27 CEST] <JEEB> "Makes sense to me but I'd prefer if somebody else (looks again and) applies"
[20:40:31 CEST] <JEEB> from cehoyos
[20:40:34 CEST] <JEEB> :D
[20:44:23 CEST] <philipl> I wasn't doing it before, and it worked fine
[21:36:18 CEST] <BtbN> philipl, you didn't specify a hwframe_ctx at all?
[21:36:31 CEST] <BtbN> Or just a completely unititialized oned?
[21:52:33 CEST] <rcombs> JEEB: people still have a use for smoothstreaming?
[21:52:39 CEST] <JEEB> yes, unfortunately
[21:52:44 CEST] <JEEB> some streaming servers take it as input
[21:52:57 CEST] <JEEB> instead of proper segmented ISOBMFF
[21:53:07 CEST] <rcombs> kak
[21:53:14 CEST] <rcombs> well good luck
[21:53:54 CEST] <JEEB> yeah, the pre-codecpar version almost got merged but it had a timestamp-modifying patch included that I have since removed
[21:54:04 CEST] <JEEB> and I was :effort: to update FATE samples
[21:54:18 CEST] <JEEB> so as long as my post-codecpar changes are OK it should get merged :V
[21:54:34 CEST] <JEEB> unless there's some issues in general in them)
[21:56:07 CEST] <jamrial> michaelni__: where in the docs? a quick grep doesn't show anything for "colorspace_type" or "color_primaries_type"
[21:57:15 CEST] <jamrial> michaelni__: nevermind, codecs.texi it seems
[22:01:56 CEST] <jamrial> this file is a mess...
[22:28:34 CEST] <jamrial> BBB: see my latest patch
[22:30:30 CEST] <Chloe> What's PRI and SPC?
[22:32:27 CEST] <BBB> duh :(
[22:32:30 CEST] <BBB> ok
[22:32:35 CEST] <BBB> ty
[22:32:37 CEST] <BBB> jamrial: ^
[22:34:34 CEST] <cone-480> ffmpeg 03James Almer 07master:e4bfc9ecf73d: avfilter/vf_colorspace: fix range for output colorspace option
[22:34:35 CEST] <BBB> Chloe: primaries and space
[22:35:59 CEST] <BBB> Chloe: primaries define what color intensities (photon count) belong to linearized float values for r/g/b (or: xyz/rgb coefficients); colorspace defines the relationship between yuv and (exponential/gamma-corrected) rgb values (or: rgb/yuv coefficients)
[22:37:03 CEST] <BBB> Chloe: theres also the trc, i.e. linearization/gamma-correction (rgb-gamma/exp to rgb-linear) and range (jpeg/mpeg, i.e. do values in float 0.0-1.0 start at integer 0 or hav ean integer offset like in mpeg, e.g. 16)
[22:37:25 CEST] <BBB> these 4 (trc, spc, prm, rng) together define how yuv integer values are to be displayed on-screen in terms of photon count
[22:39:59 CEST] <JEEB> this reminds me that I should probably try to add support for non-gamme to zscale
[22:40:15 CEST] <JEEB> since the original zimg library added support for PQ and ARIB STD-B67
[22:44:26 CEST] <cone-480> ffmpeg 03James Almer 07release/3.1:2303cea5be08: avfilter/vf_colorspace: fix range for output colorspace option
[22:44:27 CEST] <cone-480> ffmpeg 03James Almer 07release/3.1:bc6174d4af76: Changelog: update after the last few commits
[22:52:43 CEST] <Chloe> BBB: is it specific to YUV?
[22:53:16 CEST] <BBB> trc/gamma are rgb (but since yuv is just a transformation of rgb, they indirectly apply to yuv also); spc/rng apply to yuv only
[22:53:28 CEST] <BBB> trc/prm, I mean
[22:54:30 CEST] <wm4> so what is libswscale's state
[22:54:39 CEST] <wm4> still oblivious to modernity?
[22:55:53 CEST] <Chloe> if you're talking about the inline asm, then yes, it's still there
[22:56:54 CEST] <wm4> I mean support for colorspaces
[22:57:16 CEST] <wm4> vf_colorspace shouldn't exist
[22:57:24 CEST] <BBB> we wrote a wiki page on that
[22:57:36 CEST] <BBB> I can do swscale colorspace integration long-term, but its harder than it sounds
[22:58:18 CEST] <wm4> maybe it would be easier to turn it around and make libswscale a frontend to libavfilter?
[22:58:31 CEST] <BBB> that would be inefficient
[22:58:38 CEST] <BBB> I mean sure it could be done, but itd be faster not to
[22:59:01 CEST] <BBB> (as in: it would take more time to code it but it would run faster in fps/cycle count)
[22:59:15 CEST] <Compn> wm4 : could always write a wrapper for ffmpeg to use imagemagick or other scaler implementations... ;p
[22:59:22 CEST] Action: Compn ducks
[22:59:28 CEST] <wm4> ...
[23:00:00 CEST] <wm4> BBB: why would it run faster? better cache locality by filtering slices?
[23:00:14 CEST] <BBB> also being able to combine filter passes
[23:00:35 CEST] <BBB> also allows for higher precision between all steps
[23:00:50 CEST] <BBB> so youre only clipping and truncating in the output phase
[23:00:57 CEST] <BBB> every clip/trunc affects quality
[23:01:03 CEST] <BBB> so there
[23:01:04 CEST] <BBB> oops
[23:01:21 CEST] <BBB> so theres lots of reasons wed want to do all of this in swscale, but like I Said, lots of work
[23:01:40 CEST] <BBB> I wrote a prototype scaler once called avscale which did this
[23:01:45 CEST] <BBB> but never got very far with it and lost interest
[23:01:54 CEST] <BBB> and it should probably be done inside swscale for compat reasons
[23:24:04 CEST] <philipl> BtbN: I created one using the same set of calls as ffmpeg_cuvid.c but didnt' set the format field.
[23:53:48 CEST] <cone-480> ffmpeg 03Jan Ekström 07master:6c10f8fe7658: movenc: use similar logic to DASH when writing bit rate to ISML
[00:00:00 CEST] --- Thu Sep 29 2016
1
0
[02:09:49 CEST] <SeanC> http://pastebin.com/8qQFYLiM <== Having trouble with ffmpeg Compilation, PKG_CONFIG_PATH isn't acting as expected
[02:12:15 CEST] <JEEB> in that script at least PKG_CONFIG_PATH is on a different line
[02:12:34 CEST] <JEEB> I usually do it PKG_CONFIG_PATH=/a/b/lib/pkgconfig ./configure --params
[02:13:52 CEST] <DHE> alternatively you can put it before the configure command and export it as well
[02:13:55 CEST] <SeanC> Thanks, that seemed to get ./configure to not fail out.
[02:14:01 CEST] <DHE> eg: export PKG_CONFIG_PATH=...
[02:52:24 CEST] <llogan> JEEB: same here. IIRC the guide linked to in the paste had it on the same line but some random user changed it for some random reason.
[03:51:51 CEST] <haimg> hello
[03:52:01 CEST] <haimg> i have a few questions about ffserver
[03:52:05 CEST] <haimg> and a crash report
[03:52:10 CEST] <haimg> for it.
[03:54:12 CEST] <haimg> frame #0: 0x000000010078f4f2 ffserver_g`avcodec_parameters_from_context [inlined] codec_parameters_reset(par=0x0000000000000000) + 23 at utils.c:4023 [opt]
[03:54:12 CEST] <haimg> 4020 if (par && par->extradata) {
[03:54:12 CEST] <haimg> 4021 av_freep(&par->extradata);
[03:54:14 CEST] <haimg> 4022 }
[03:54:16 CEST] <haimg> -> 4023 par->extradata = NULL;
[03:54:18 CEST] <haimg> 4024
[03:54:20 CEST] <haimg> 4025 memset(par, 0, sizeof(*par));
[03:54:22 CEST] <haimg> 4026
[03:54:24 CEST] <haimg> (lldb) bt
[03:54:26 CEST] <haimg> * thread #1: tid = 0xb0f580, 0x000000010078f4f2 ffserver_g`avcodec_parameters_from_context [inlined] codec_parameters_reset(par=0x0000000000000000) + 23 at utils.c:4023, queue = 'com.apple.main-thread', stop reason = EXC_BAD_ACCESS (code=1, address=0x10)
[03:54:28 CEST] <haimg> * frame #0: 0x000000010078f4f2 ffserver_g`avcodec_parameters_from_context [inlined] codec_parameters_reset(par=0x0000000000000000) + 23 at utils.c:4023 [opt]
[03:54:30 CEST] <haimg> frame #1: 0x000000010078f4db ffserver_g`avcodec_parameters_from_context(par=0x0000000000000000, codec=0x0000000103803800) + 11 at utils.c:4083 [opt]
[03:54:32 CEST] <haimg> frame #2: 0x0000000100016349 ffserver_g`prepare_sdp_description(stream=<unavailable>, pbuffer=<unavailable>, my_ip=(s_addr = 0)) + 473 at ffserver.c:2999 [opt]
[03:54:34 CEST] <haimg> frame #3: 0x0000000100014cb9 ffserver_g`handle_connection + 558 at ffserver.c:1688 [opt]
[03:54:36 CEST] <haimg> frame #4: 0x0000000100014a8b ffserver_g`handle_connection(c=<unavailable>) + 17739 at ffserver.c:1006 [opt]
[03:54:38 CEST] <haimg> frame #5: 0x000000010000faec ffserver_g`main [inlined] http_server + 47 at ffserver.c:777 [opt]
[03:54:40 CEST] <haimg> frame #6: 0x000000010000fabd ffserver_g`main(argc=<unavailable>, argv=<unavailable>) + 4205 at ffserver.c:4032 [opt]
[03:54:42 CEST] <haimg> frame #7: 0x00007fff912855ad libdyld.dylib`start + 1
[03:54:44 CEST] <haimg> oops
[03:55:00 CEST] <haimg> here is: http://pastebin.com/Bav5ZpnP
[03:55:08 CEST] <alex88> hi guys :) I'm currently running ffmpeg from our webapp when an event is triggered to start recording, this way `ffmpeg -i rtsp://@192.168.1.15:554/play1.sdp -acodec copy -vcodec copy file.mp4` the problem is that it starts recording after like 5-6 seconds, is there a way to "control" ffmpeg to pause/start recording?
[04:03:32 CEST] <haimg> here is the ticket for the reported issue: https://trac.ffmpeg.org/ticket/5869#ticket
[04:39:23 CEST] <spoon_> hey guys, i updated my ubuntu server from 14.04lts to 16.04lts and after that ffmpeg cant probe files anymore
[04:40:13 CEST] <spoon_> ive purged the installs and reinstalled them and even updated ffmpeg 3 and its the same error
[04:50:33 CEST] <spoon_> am i am to get help here?
[05:08:29 CEST] <spoon_> can anyone help me?
[05:17:04 CEST] <spoon_> http://pastebin.com/twCWfL2c
[05:17:53 CEST] <c_14> -v quiet isn't very helpful
[05:18:01 CEST] <c_14> Run just the ffprobe on the file please
[05:18:07 CEST] <c_14> ffprobe file.mp4
[05:18:13 CEST] <c_14> Then upload the output from that to a pastebin
[05:21:58 CEST] <spoon_> i have no idea why but after i manually ran probe on the file the whole script started working...
[05:23:04 CEST] <c_14> Heisenbugs \o/
[08:55:06 CEST] <tsoanety> Hi everybody
[08:56:24 CEST] <tsoanety> I search since 2 days the way to stream audio only to youtube using ffmpeg alsa and the audio input but i didnt find
[08:56:34 CEST] <tsoanety> In despair i contact you
[08:57:15 CEST] <tsoanety> I can record the input to a file but i cant stream the audio file afterwards
[08:57:19 CEST] <tsoanety> So please
[08:57:32 CEST] <tsoanety> Can somebody help me
[08:57:36 CEST] <tsoanety> Thanks
[10:13:17 CEST] <quantumsm> It is possible to use drawtext filter and the text to start scrolling each time from a random y position ?
[10:14:09 CEST] <retard> are you trying to make a niconico thing?
[10:15:27 CEST] <quantumsm> more exactly ?
[10:36:30 CEST] <annoymouse4210> IS there way to get estimate duration while transcoding?
[11:32:59 CEST] <nonex86> when i open some file with h264/avc stream using ffmpeg api how can i understand is it interlaced (paff/mbaff) or progressive?
[11:53:50 CEST] <skkkssks> is it possible to join multiple videos with different bitrate and resolution ?
[11:55:02 CEST] <skkkssks> also I wanna download a stem cell video
[11:56:21 CEST] <skkkssks> how to do it with ffmpeg ? link - http://video.limelight.com/player/fp10loader.swf?deepLink=true&playerForm=3…
[12:58:01 CEST] <tobiasBora> Hello,
[12:59:26 CEST] <tobiasBora> I would like to have some advices on video format : I would like to have if possible an open source container format, which provide quality usable in streming (I want to put my video on a owncloud website), and a file not too big (I cannot use 1G for 10mn of video)
[12:59:35 CEST] <tobiasBora> *streaming
[13:00:01 CEST] <tobiasBora> and with these things I would like to have a quality not too bad.
[13:00:07 CEST] <tobiasBora> For the moment I do something like :
[13:00:17 CEST] <tobiasBora> avconv -i myfile.MOV myfile.webm
[13:00:45 CEST] <tobiasBora> without any option I can have a pretty good improvment (size divided by 25)
[13:01:34 CEST] <tobiasBora> and the quality isn't horrible (but sometimes it's a bit bad, and even with the option -q:v 1 I don't have better quality...)
[13:07:57 CEST] <tobiasBora> Does anyone has good "numbers" to have a pretty good output result for the less space expensive usage ?
[13:09:02 CEST] <BtbN> Well, everything in ffmpeg is opensource!
[13:09:22 CEST] <BtbN> And the container has no effect on the quality at all. Some are not streamable though
[13:24:15 CEST] <limbo_> tobiasBora: replace avconv with ffmpeg and that will just work.
[13:24:52 CEST] <limbo_> If it's not "streamable", whatever the equivelent of a moov atom in a webm should be moved to the start.
[13:25:42 CEST] <tobiasBora> limbo_: Isn't avconv supposed to replace ffmpeg ?
[13:25:50 CEST] <BtbN> no?
[13:26:10 CEST] <BtbN> You must be using some ancient version of libav if that message still shows up.
[13:26:19 CEST] <furq> that question mark is misplaced considering how often this comes up
[13:26:29 CEST] <tobiasBora> BtbN: By open source I mean the format. For example the licences around mp3 are quite strange right ? And I think it's the same thing for some video format.
[13:26:47 CEST] <furq> most of the patents for mp3 have expired now
[13:26:53 CEST] <furq> the last ones expire in the us in december 2017
[13:27:33 CEST] <tobiasBora> So what is the difference between ffmpeg and avconv ?
[13:27:45 CEST] <BtbN> One is ffmpeg, the other is libavs equivalent of ffmpeg.
[13:27:55 CEST] <furq> is libav still being developed
[13:28:00 CEST] <furq> it seems pretty dead
[13:28:02 CEST] <BtbN> yes, but nobody uses it anymore.
[13:28:20 CEST] <furq> what about the people on old ubuntu LTS releases
[13:28:26 CEST] <furq> or did you mean by choice
[13:28:45 CEST] <tobiasBora> So ffmepg is still under heavy development, while avconv/libav is nearly dead ?
[13:29:12 CEST] <furq> something like that
[13:29:23 CEST] <furq> debian and ubuntu are back on real ffmpeg now
[13:29:37 CEST] <furq> i don't know of any distro which is still on libav
[13:29:56 CEST] <tobiasBora> ok thank you
[13:30:16 CEST] <furq> as far as i can tell the whole mess pretty much happened because the debian ffmpeg maintainer was one of the libav fork guys
[13:30:45 CEST] <furq> so he took it upon himself to declare that ffmpeg was deprecated
[13:30:58 CEST] <limbo_> tobiasBora: there's no need to license mp3, the issue with it is patents.
[13:31:07 CEST] <limbo_> which are no an issue outside of the US.
[13:32:11 CEST] <tobiasBora> limbo_: All right... Same thing for mp4 ?
[13:32:25 CEST] <furq> if you mean h264 and aac then yes
[13:32:31 CEST] <furq> except those patents don't expire any time soon
[13:32:51 CEST] <limbo_> tobiasBora: yes.
[13:33:16 CEST] <limbo_> software patents are mainly an issue in the US. Merely using mp3 does not mean you have to pay royaltees.
[13:33:44 CEST] <limbo_> But people who don't want mp3 decodin software on their computer won't be able to play them.
[13:34:04 CEST] <limbo_> ogg is the popular alternative.
[13:34:10 CEST] <furq> it's pretty much a non-issue for personal use
[13:34:14 CEST] <tobiasBora> Well some people needs to pay right ? For example when you install ubuntu you are asked if you want to install mp3 stuff
[13:34:28 CEST] <limbo_> yes
[13:34:28 CEST] <furq> to such an extent that even debian ships ffmpeg with x264 and lame builtin
[13:34:43 CEST] <limbo_> because canonical doesn't want to get sued.
[13:34:53 CEST] <furq> is that still true
[13:34:56 CEST] <limbo_> linux mint doesn't ask. Just does it.
[13:35:18 CEST] <furq> anything which uses libavcodec on ubuntu will support mp3 regardless of your choice afaik
[13:35:29 CEST] <furq> at least for newer ubuntu releases
[13:35:54 CEST] <tobiasBora> All right... But I have a question : why can I convert into mp4 in better quality than into webm ?
[13:36:07 CEST] <furq> because mp4 has sensible default settings and webm doesn't
[13:36:30 CEST] <furq> you need to set at least -b:v for webm (vp9) to look acceptable
[13:36:39 CEST] <furq> you probably want something like -crf 30 -b:v 0
[13:37:58 CEST] <limbo_> tobiasBora: if you don't specify quality yourself, ffmpeg uses its default. -q:v <number> wll do that for the video. (lower number is higher quality)
[13:38:08 CEST] <furq> does -q do anything with vp9
[13:39:01 CEST] <tobiasBora> furq: Great it's much better ! And do you know why I can convert mp4 in 6x less time than webm ?
[13:39:06 CEST] <limbo_> from what I understand, that's mapped to whateverthe quality settings are for the output stream.
[13:39:15 CEST] <furq> because x264 is much faster than libvpx
[13:39:17 CEST] <limbo_> tobiasBora: hardware accelleration probably.
[13:39:20 CEST] <furq> no
[13:39:25 CEST] <limbo_> ahh. ok.
[13:39:36 CEST] <furq> i don't know that -q is actually mapped to anything with vp9
[13:39:37 CEST] <limbo_> does ffmpeg not use accelleration?
[13:39:39 CEST] <furq> i've not checked though
[13:39:45 CEST] <tobiasBora> limbo_: In both encoding and decoding, or only encoding ?
[13:39:45 CEST] <furq> x264 is a software encoder
[13:40:01 CEST] <furq> you can use a hardware encoder if you want a video which is worse quality
[13:40:33 CEST] <tobiasBora> Ok, thank you for your help !
[13:40:47 CEST] <limbo_> furq: how can you be sure it's worse quality?
[13:41:03 CEST] <limbo_> in all cases
[13:41:06 CEST] <furq> because all of the consumer hardware h264 encoders are much worse than x264
[13:41:22 CEST] <furq> maybe some of the pro ones are better but i don't think ffmpeg supports those
[13:41:23 CEST] <tobiasBora> furq: You can use GPU with ffmpeg ?
[13:41:34 CEST] <furq> if your gpu has a video encoder on it, sure
[13:41:55 CEST] <furq> i think opencl is supported for some video filters, but otherwise you can't use it for encoding
[13:41:56 CEST] <tobiasBora> and how could I ask to ffmpeg to use it ?
[13:42:10 CEST] <furq> https://trac.ffmpeg.org/wiki/HWAccelIntro
[13:45:33 CEST] <tobiasBora> Too bad, opencl isn't usable in ffmpeg in encoding...
[14:26:28 CEST] <lovetruth> hello!!... :)
[14:27:42 CEST] <lovetruth> I've been trying hard to restream some rtmp using ffserver
[14:27:54 CEST] <lovetruth> but can't seem to make it work...
[14:28:37 CEST] <lovetruth> if you enter www.vestic.ro -> something will pop asking if you want to watch live. I want to re-stream that stream, using ffserver ...
[14:28:45 CEST] <lovetruth> can't seem to get ffserver.conf right...
[14:29:58 CEST] <lovetruth> http://pastebin.com/9HuXYGsD <- this is what I've been trying so far...
[14:33:14 CEST] <lovetruth> any help, please?...
[14:35:07 CEST] <nonex86> well, nowdays usual answer here is "don't use ffserver" - "ffserver is unsupported now"/"ffserver suck"
[14:35:37 CEST] <lovetruth> ok
[14:35:44 CEST] <lovetruth> so what do you recommend me for that?...
[14:36:23 CEST] <lovetruth> (restream something to around 50 clients)
[14:36:56 CEST] <nonex86> never work on this kind, sorry... maybe nginx with rtmp module?
[14:37:19 CEST] <nonex86> at least for streaming
[14:37:55 CEST] <lovetruth> ps, why ffserver suck?...
[14:38:44 CEST] <nonex86> dont know, just repeat someones answer from this channel :)
[14:39:00 CEST] <lovetruth> thanks :)
[14:39:30 CEST] <nonex86> maybe because its not developed anymore
[14:39:39 CEST] <furq> nginx-rtmp will restream rtmp just fine
[14:39:50 CEST] <furq> and yeah ffserver is going to be deprecated in 3.2
[14:40:02 CEST] <furq> it's not been developed for ages and it was never very good when it was
[14:40:26 CEST] <lovetruth> and if I want some transcoding?...
[14:40:47 CEST] <lovetruth> like from mpeg2 to h264? or the audio or some encoding?...
[14:41:12 CEST] <bencoh> you can fork ffmpeg from nginx-rtmp iirc
[14:41:14 CEST] <furq> you can exec ffmpeg from within nginx-rtmp
[14:41:26 CEST] <furq> snap
[14:41:29 CEST] <lovetruth> I've already installed ffmpeg
[14:41:39 CEST] <lovetruth> should I uninstall it and install nginx rtmp?...
[14:41:50 CEST] <furq> there's no need to uninstall ffmpeg
[14:41:59 CEST] <lovetruth> I have (ubuntu studio 14.04 x64)
[14:42:05 CEST] <bencoh> isn't it documented in nginx-rtmp?
[14:42:14 CEST] <lovetruth> haven't read nginx rtmp yet :)
[14:42:17 CEST] <bencoh> ah :)
[14:42:25 CEST] <furq> i mean you probably don't want to use the ffmpeg in ubuntu 14's repos
[14:42:29 CEST] <furq> assuming that's the one you've got
[14:42:33 CEST] <lovetruth> no,
[14:42:40 CEST] <lovetruth> compiled from source code
[14:43:18 CEST] <lovetruth> I have the compiled from source code* version, I meant :)
[14:43:32 CEST] <furq> also rtmp only really supports h264 and aac, so there's no need to reencode if you're only using rtmp
[14:43:45 CEST] <furq> it supports other codecs but they're not worth mentioning
[14:44:06 CEST] <lovetruth> I might be going to receive some mpeg2 stream, but for firsts, I just wanted to restream rtmp
[14:44:09 CEST] <bencoh> mp3? ;>
[14:58:27 CEST] <lovetruth> ok... I have this html source code of some embed code http://paste.ee/p/vpruG
[14:58:40 CEST] <lovetruth> I've installed nginx-rtmp
[14:58:58 CEST] <lovetruth> but now? what?...
[14:59:57 CEST] <lovetruth> I don't have open broadcast server & neither I own the server which streams to me. I just own another server which I want to use to restream that stream
[15:00:20 CEST] <lovetruth> I'm at testing... part -> but no test seems to work...
[15:07:07 CEST] <furq> lovetruth: https://github.com/arut/nginx-rtmp-module/wiki/Directives#exec_pull
[15:18:13 CEST] <spacemadman> hey guys
[15:18:38 CEST] <spacemadman> quick question.. I have a batch script and I have ffmpeg installed.. any idea how to get it to execute?
[15:18:44 CEST] <spacemadman> I am failing miserably at this
[15:32:45 CEST] <DHE> sounds like ffmpeg isn't in your PATH or current directory
[15:35:22 CEST] <skkkssks> how to download swf compressed file stream using ffmpeg ?
[15:43:12 CEST] <skkkssks> anyone ?
[15:43:24 CEST] <skkkssks> how to download swf compressed file stream using ffmpeg ?
[15:48:16 CEST] <limbo_> download?
[15:48:23 CEST] <limbo_> what're you trying to do?
[15:50:08 CEST] <alain-francois> bonjour mesdames messieurs
[15:50:33 CEST] <alain-francois> je ne connais absolument rien à ffmpeg , j'ai donc besoin d'aide
[15:50:54 CEST] <alain-francois> je suis entrain d'enregistrer une source analogique
[15:51:08 CEST] <limbo_> I don't speak french, can you ask again in english?
[15:51:10 CEST] <alain-francois> avec la commande suivante :
[15:51:20 CEST] <alain-francois> excuse me
[15:51:37 CEST] <alain-francois> i'm recording analog source
[15:52:08 CEST] <alain-francois> with the following command , i have the video but not the audio
[15:53:47 CEST] <limbo_> what is the command?
[15:53:53 CEST] <alain-francois> ffmpeg -f v4l2 -framerate 25 -video_size 640x480 -i /dev/video1 output.mkv
[15:54:00 CEST] <alain-francois> here it is
[15:54:43 CEST] <alain-francois> i wonder : what is the command ?
[15:54:48 CEST] <limbo_> I don't think there is audio from those kinds of video devices.
[15:55:01 CEST] <alain-francois> my audio is in hw:4.0 alsa
[15:55:27 CEST] <limbo_> right. But you're not specifying that as an input to ffmpeg
[15:56:00 CEST] <alain-francois> excuse me , i'm too speed
[15:56:40 CEST] <limbo_> you need to give ffmpeg an audio input.
[15:57:18 CEST] <alain-francois> it seems cool , for me , that ffmpeg input autorizes video AND audio . otherwise it means nothing
[15:57:53 CEST] <skkkssks> limbo_: I want a sterm-cell video, I wanna save it locally. link - http://video.limelight.com/player/fp10loader.swf?deepLink=true&playerForm=3…
[16:00:28 CEST] <kepstin> alain-francois: ffmpeg does not magically know which audio device and which video device go together. You have to give ffmpeg 2 separate inputs, one for video, one for audio.
[16:01:00 CEST] <alain-francois> ok . and now , how to do it ?
[16:01:21 CEST] <kepstin> skkkssks: use the 'youtube-dl' tool (it supports limelight, despite the name)
[16:01:23 CEST] <limbo_> skkkssks: what page is it embedded in?
[16:01:27 CEST] <skkkssks> limbo_: when downloading it with ffmpeg command - ffmpeg -i "http://video.limelight.com/player/fp10loader.swf?deepLink=true&playerForm=3…" -vcodec copy -acodec copy out.mp4
[16:01:46 CEST] <skkkssks> it says swf compressed file detected
[16:01:48 CEST] <limbo_> That URL doesn't work for me. It just loads forever.
[16:02:07 CEST] <limbo_> that swf file desn't contain a video, it just loads and plays one.
[16:02:26 CEST] <skkkssks> limbo_: http://thelongevitystudy.com/160725A.php
[16:03:05 CEST] <skkkssks> embeded page ^^^
[16:03:07 CEST] <kepstin> alain-francois: add "-f alsa -i hw:4.0" as a second input.
[16:03:53 CEST] <kepstin> er, actually I think it's "-f alsa -i hw:4,0" - comma, not period
[16:04:00 CEST] <limbo_> skkkssks: doesn't work for me either.
[16:04:16 CEST] <alain-francois> i'll try it , thanks
[16:04:35 CEST] <skkkssks> limbo_: how to do it with ffmpeg or rtmp ?
[16:05:31 CEST] <limbo_> I can't even get the video to play/load.
[16:05:50 CEST] <limbo_> Look at the network monito in your browser, if yo're using chrome.
[16:06:03 CEST] <limbo_> You should see a URL that i's downloadin the file from.
[16:06:12 CEST] <skkkssks> thats surprising limbo_ maybe you dont have flash installed or activated
[16:06:39 CEST] <limbo_> I do.
[16:06:43 CEST] <skkkssks> limbo_: yeah I got this link from there only, otherwise there is nothing in chrome or firefox network monitor
[16:07:33 CEST] <skkkssks> if you want I can screenshot and upload - chrome and firefox network monitor ?
[16:08:04 CEST] <alain-francois> root@debian:/home/alain# ffmpeg -f v4l2 -framerate 25 -video_size 640x480 -i /dev/video1 -f alsa -i hw:4.0 output.mkv
[16:08:33 CEST] <alain-francois> gave me
[16:08:44 CEST] <alain-francois> ALSA lib pcm_hw.c:1667:(_snd_pcm_hw_open) Invalid value for card
[16:08:44 CEST] <alain-francois> [alsa @ 0x1075a20] cannot open audio device hw:4.0 (No such device)
[16:08:44 CEST] <alain-francois> hw:4.0: Input/output error
[16:08:56 CEST] <kepstin> alain-francois: please read my second message :)
[16:09:06 CEST] <limbo_> skkkssks: go on. The firefox one probably won't catch it. Make sure the video is partway played when you make the screenshot though.
[16:09:37 CEST] <skkkssks> limbo_: are you on firefox ? share screen ?
[16:09:51 CEST] <kepstin> skkkssks: limbo_ the video plays for me, it looks like a flash player pulling from either rtmp or hls, it's unclear
[16:10:09 CEST] <kepstin> so you'd have to find the urls of the underlying stream to use it with ffmpeg
[16:10:23 CEST] <kepstin> youtube-dl's limelight extractor doesn't work on that page for me, but it might be a start :/
[16:10:36 CEST] <skkkssks> kepstin: I played video on chrome and IDM is capturing it as RTMPE stream but not downloading
[16:11:22 CEST] <alain-francois> wht's the difference kepstin ?
[16:11:28 CEST] <skkkssks> how to parse that link so as to get the direct link of video and type of stream including other info ?
[16:11:41 CEST] <skkkssks> kepstin: ^^^^ limbo_
[16:11:54 CEST] <kepstin> alain-francois: to repeat myself, "it's "-f alsa -i hw:4,0" - comma, not period"
[16:12:03 CEST] <limbo_> skkkssks: give me a screenshot of of the network requests while playing the video.
[16:12:37 CEST] <skkkssks> kk
[16:12:43 CEST] <alain-francois> what is my error ? i copied it strictly
[16:13:09 CEST] <kepstin> alain-francois: you wrote "hw:4.0" I said "hw:4,0"
[16:13:30 CEST] <kepstin> alain-francois: make your font bigger if you can't see that :)
[16:13:46 CEST] <furq> maybe he was converting it into french
[16:14:28 CEST] <alain-francois> thanks kepstin , i'm =triying it .
[16:15:03 CEST] <alain-francois> excuse me for a so stupid error
[16:20:11 CEST] <alain-francois> ok kepstin , you'dre right . your command is ok . fine thanks
[16:24:38 CEST] <spacemadman> hey guys, can ffmpeg make a MXF InterOP MPEG for Cinemas?
[16:27:40 CEST] <kepstin> spacemadman: probably, if you can find someone who knows the spec well enough to pick the correct parameters.
[16:38:39 CEST] <skkkssks> limbo_: kepstin 1st image - livecell homepage with video loading http://www.tiikoni.com/tis/view/?id=781ab2c
[16:39:15 CEST] <skkkssks> limbo_: kepstin 2nd image with network monitor in firefox - http://www.tiikoni.com/tis/view/?id=28e6c9e
[16:39:39 CEST] <skkkssks> limbo_: kepstin 3rd image with network monitor in chrome\
[16:39:48 CEST] <skkkssks> limbo_: kepstin 3rd image with network monitor in chrome -
[16:39:59 CEST] <skkkssks> limbo_: kepstin 3rd image with network monitor in chrome - http://www.tiikoni.com/tis/view/?id=f67d398
[16:39:59 CEST] <kepstin> that's not chrome, that's firefox
[16:40:03 CEST] <kepstin> oh
[16:40:06 CEST] <limbo_> I told you, firefox won't capture requests flash makes.
[16:40:31 CEST] <kepstin> hmm, chrome doesn't seem to have it either
[16:40:48 CEST] <kepstin> so it's not http requests then, i don't think chrome shows rtmp in the network monitor
[16:41:16 CEST] <limbo_> It should show all net requests flash makes.
[16:41:32 CEST] <skkkssks> if you look in chrome screenshot- there is IDm download dialogue, its the only source which tells me that its an RATMPE stream
[16:43:08 CEST] <spacemadman> kepstin: Thats a tough one.. there's a tool called OpenDCP that I found, but it seems to only accept m2v's and wav's as seperate streams to make the MXF Mpeg
[16:44:28 CEST] <spacemadman> if i need to convert a 25fps mov to a seperate m2v and wav at 24fps, how would i achieve that?
[16:44:47 CEST] <DHE> the -map parameter
[16:45:07 CEST] <skkkssks> theres rtmp (rtmpdump) which is kinda universal tool and embedded in all other tools universally so as to get rtmp streams, but I dont know how to use it
[16:45:11 CEST] <spacemadman> DHE: can you please help elaborate?
[16:46:07 CEST] <skkkssks> my 1st concern is how to analyse a stream link so as to know what kind of stream it is and 2nd get its direct link
[16:46:42 CEST] <skkkssks> kepstin: limbo_ ^^^
[16:48:20 CEST] <kepstin> skkkssks: you might want to join #youtube-dl irc channel, they have a bunch of folks who do this sort of thing regularly.
[16:48:45 CEST] <kepstin> since their main thing is to write a tool to download web videos from various sites :)
[16:49:42 CEST] <spacemadman> kepstin: any feedback for me? Is it possible to convert a mov which is at 25fps to a m2v video file and a seperate wav file at 24fps and keep their lengths the same?
[16:50:04 CEST] <kepstin> er, wav files don't have fps...
[16:50:54 CEST] <kepstin> or do you mean you have to convert the video from 25 to 24fps? ffmpeg will do that if you use the '-r' output option or 'fps' video filter (both do the same thing), but it'll make the video a bit juddery since it does it by dropping frames.
[16:52:09 CEST] <kepstin> a lot of 24-25fps conversions are done by simply slowing down or speeding up the video/audio (usually with pitch correction on the audio, nowadays), you might want to consider that.
[16:52:27 CEST] <SouLShocK> spacemadman https://github.com/bcoudurier/FFmbc is it one of these formats you're looking for?
[16:53:11 CEST] <durandal_1707> SouLShocK: are you ffmbc promoter?
[16:53:14 CEST] <SouLShocK> no
[16:53:18 CEST] <spacemadman> kepstin: sorry, i didnt mean convert the audio to 24fps, but meant to keep the durations the same.
[16:53:22 CEST] <SouLShocK> I just happen to use it
[16:54:27 CEST] <spacemadman> SouLShocK: thanks a bunch for that link
[16:55:13 CEST] <BtbN> "This branch is 441 commits ahead, 50144 commits behind FFmpeg:master." highly optimized for professional usage tho!
[16:55:16 CEST] <SouLShocK> haha
[16:55:20 CEST] <BtbN> I'd recommend against using that.
[16:55:20 CEST] <kepstin> spacemadman: but yeah, ffmpeg should have no issue making mxf with the required codecs, you just have to make sure you're using the correct codec settings
[16:55:33 CEST] <SouLShocK> yeah I'd try ffmpeg first. it does have mxf support
[16:57:05 CEST] <spacemadman> need to figure how. The results that I've achieved so far is giving me video with a longer duration than the audio in OpenDCP
[16:58:16 CEST] <skkkssks> any rtmp channel ?
[16:58:18 CEST] <spacemadman> I've used this command to convert the video to m2v | ffmpeg -i "input" -r 24 -vcodec mpeg2video -pix_fmt yuv420p -s 1920x1080 -aspect "16:9" -b 40000k -intra -an video-out.m2v
[16:58:48 CEST] <spacemadman> And this one for audio | ffmpeg -y -i "input" -filter:a "atempo=0.96" -acodec pcm_s24le -ar 48000 audio.wav
[16:59:10 CEST] <kepstin> spacemadman: that video command leaves the video the same length, but the audio command shortens the audio
[16:59:32 CEST] <kepstin> er, lengthens the audio
[17:00:10 CEST] <kepstin> if you want to slow down the video to match the audio, you need to put '-r 24' *before* the input file, so it rewrites the timestamps on the frame. (or there's things you can do with setpts filters alternatively)
[17:31:45 CEST] <NapoleonWils0n> hi all
[17:32:16 CEST] <NapoleonWils0n> is there a way to suppress dts invalid timestamp errors without using log level 9 which hides everything
[17:32:52 CEST] <NapoleonWils0n> i can redirect output to dev null, but is there a way to disable invalid timestamp errors
[18:33:21 CEST] <ac_slater> hey all. Using the libraries.. if I wanted to have a read loop for video, like : `while(av_read_frame(...)) { foo(); usleep(??); }`. How would I calculate the amount of time between frames?
[18:33:36 CEST] <ac_slater> I know I need to use PTS/DTS but maybe I need the use the clock too?
[18:33:51 CEST] <agrathwohl> My current build of FFmpeg (3.1.3) does not appear to support the `-aq-mode 4` option for libvpx-vp9. Is there any way to pass custom options that are available in vpxenc to FFmpeg command line? Or is there any plan to implement the 4th aq-mode option? (in vpxenc --help the option is listed as `equator360`)
[18:34:23 CEST] <durandal_1707> what that do?
[18:34:58 CEST] <agrathwohl> It's a quantization mode specific to equirectangular monoscopic 360 video @durandal_1707
[18:36:15 CEST] <kepstin> ac_slater: depends on the what your video source is. If you're reading from a live stream, webcam, screen capture, etc - you want to read as often as possible (no waiting), since the read will block until the next frame is ready
[18:36:52 CEST] <ac_slater> kepstin: a file sadly
[18:37:34 CEST] <ac_slater> kepstin: I was just piping my file to localhost via udp before and having my application read from it ;). But I can't do that abynire
[18:37:36 CEST] <ac_slater> anymore *
[18:37:39 CEST] <kepstin> ac_slater: hmm, so then you want to emulate what the ffmpeg tool does when you use the '-re' option.
[18:37:58 CEST] <ac_slater> kepstin: yea essential. And I've looked at that path in `ffmpeg` and `ffplay` before.
[18:38:11 CEST] <ac_slater> It' hard to follow
[18:40:58 CEST] <ac_slater> kepstin: maybe I just do it based on fps.
[18:41:22 CEST] <ac_slater> kepstin: but what about formats that have weird PTS/DTS combos (like h264 with b frames)
[18:42:06 CEST] <kepstin> ac_slater: the basic loop should be decode a frame, wait until it's the correct time to show it (based on pts), repeat.
[18:42:26 CEST] <ac_slater> how do I deduce real time from PTS ?
[18:42:29 CEST] <ac_slater> kepstin: ^
[18:42:49 CEST] <kepstin> ac_slater: multiply by the time base to get seconds. There should be some AVRational helper functions for that
[18:42:57 CEST] <ac_slater> ooo
[18:46:23 CEST] <kepstin> (to avoid floating-point accuracy issues, you should probably subtract the next frame pts from current frame pts, then use that to determine how long you need to wait between frames)
[18:46:41 CEST] <ac_slater> very interesting
[18:46:45 CEST] <ac_slater> I'll try that
[18:46:48 CEST] <ac_slater> thanks mate
[18:47:46 CEST] <BtbN> isn't av_read_frame a blocking call?
[18:47:51 CEST] <BtbN> So no need to sleep at all
[18:48:02 CEST] <skokkk> anyone able to help with my question?
[18:49:33 CEST] <ac_slater> BtbN: it's only blocking if the avio* read call is
[18:49:43 CEST] <ac_slater> in the case of files, fread() isn't blocking
[18:50:02 CEST] <BtbN> well, because it has the data readily available.
[18:50:17 CEST] <ac_slater> BtbN: If I use `-re` on the command line ffmpeg tool, then it sleeps
[18:51:55 CEST] <BtbN> the re logic in ffmpeg.c seems quite complex
[18:52:19 CEST] <skokkk> hi?
[18:54:28 CEST] <ac_slater> skokkk: did you ask your questi
[18:54:31 CEST] <ac_slater> question *
[18:57:04 CEST] <ac_slater> kepstin: would AVPacket::duration help me?
[18:57:48 CEST] <kepstin> ac_slater: no, that's only for things which have durations (mostly audio packets, which contain multiple samples)
[18:58:09 CEST] <ac_slater> makes sense
[18:58:11 CEST] <ac_slater> thanks
[18:59:46 CEST] <skokkk> hi. I have this command: "ffmpeg -ss %o -t %d -i %s -s %wx%h -v 0 -b:v %bk -maxrate %bk -bufsize 256k -flags -global_header -map 0:0 -map 0:%k -ac 2 -f mpegts -c:v libx264 -preset superfast -c:a aac -b:a 96k -strict -2 -threads 0 -copyts -" from a web browser media player, what can I do to improve the quality and speed of this? It's live encoding and looks like $#!T, even if it's a 1080p movie
[18:59:54 CEST] <skokkk> ^
[19:00:14 CEST] <ac_slater> that's too much for us to help you with honestly. Check the ffmpeg H.264 wiki
[19:00:24 CEST] <skokkk> how to improve qaulity with that? quality is about 240p after that
[19:00:28 CEST] <c_14> increase the bitrate
[19:00:30 CEST] <ac_slater> you're not doing any profile or preset settings
[19:00:46 CEST] <c_14> ac_slater: he has -preset superfast
[19:00:55 CEST] <ac_slater> I see it now
[19:00:57 CEST] <c_14> skokkk: Either increase the bitrate or make the preset slower
[19:01:56 CEST] <ac_slater> kepstin: sorry to keep coming back to this. Which AVRational helper would help be multiply PTS by timebase? q2d?
[19:02:23 CEST] <skokkk> c_14: what would you recommend for a lower cpu usage but higher quality video (if possible, if not, which would you recommend I increase/decrease, or both?)
[19:02:59 CEST] <c_14> increase bitrate
[19:03:00 CEST] <ac_slater> skokkk: https://trac.ffmpeg.org/wiki/Encode/H.264
[19:03:12 CEST] <c_14> lowering the preset will use more cpu than increasing the bitrate will
[19:03:13 CEST] <kepstin> ac_slater: you probably want to do something like convert the pts+timebase to an integer no. of e.g. milliseconds or nanoseconds (depending what clock/sleep functions you're suing). I think you want av_rescale_q() for that.
[19:03:36 CEST] <ac_slater> that's exactly what I want kepstin
[19:05:15 CEST] <skokkk> ac_slater: what is recommended buffer size for 90 minute video?
[19:05:46 CEST] <ac_slater> depends on what's going over the wire in the length of the buffer
[19:06:07 CEST] <kepstin> skokkk: buffer size has no relation to video length
[19:06:11 CEST] <ac_slater> kepstin: The args to av_rescale_q are confusing :(
[19:06:32 CEST] <skokkk> ac_slater: kepstin hmm ok, what would be a recommended buffer size based on XXXX?
[19:06:49 CEST] <kepstin> ac_slater: I think you want something like milliseconds = av_rescale_q(pts, time_base, {1, 1000}) but not sure, haven't worked with this recently :)
[19:07:43 CEST] <ac_slater> skokkk: here is what you need to think about: You're streaming some number of 188byte (MPEGTS) packets that have SOME h.264 data in each packet. You're forcing your video bitrate to something that is causing ffmpeg to transcode (re-encode) your video. This takes time.
[19:08:04 CEST] <ac_slater> skokkk: do this. Remove the audio from your command line, with `-an`. Just focus on the video
[19:08:15 CEST] <ac_slater> remove bufsize
[19:08:30 CEST] <ac_slater> and reduce it down so it JUST PLAYS THE ACTUAL FILE AS IS
[19:09:02 CEST] <ac_slater> (and it seems that you always re-encode since you're input isnt always h.264, that's fine)
[19:09:37 CEST] <ac_slater> you're also changing the resolution as well...this all takes considerable amount of CPU time (and will add to the latency of the viewing)
[19:09:41 CEST] <skokkk> ac_slater: so change -ac to -an?
[19:09:51 CEST] <ac_slater> -an is "remove audio"
[19:10:46 CEST] <skokkk> could you please re-write the command, it's confusing to me
[19:11:23 CEST] <ac_slater> nope
[19:11:33 CEST] <ac_slater> play with it outside of your "web" context
[19:11:45 CEST] <ac_slater> the wiki page I linked you to should read from top-to-bottom in terms of complexity
[19:11:49 CEST] <ac_slater> start at the top
[19:12:06 CEST] <ac_slater> sorry :( I'm at work and can't do this right now
[19:14:59 CEST] <ac_slater> kepstin: sadly I think it's going to be more complicated than you're av_rescale_q item
[19:15:05 CEST] <ac_slater> s/item/idea
[19:17:49 CEST] <skokkk> ac_slater: what part is the resolution
[19:18:18 CEST] <ac_slater> skokkk: -s
[19:18:26 CEST] <ac_slater> skokkk: read the manual man, cmon
[19:29:02 CEST] <ac_slater> kepstin: http://paste.debian.net/843262/ ... the output of the rescale seems to be monotonically increasing. Shouldn't it stabilize?
[19:31:38 CEST] <kepstin> ac_slater: that looks correct, it's simply converting the pts from timebase units to milliseconds. If you want the difference between frames, you have to subtract the old from new pts beforehand
[19:34:00 CEST] <ac_slater> oooo
[19:37:47 CEST] <ac_slater> kepstin: doing that, I get negative values. But I think the abs() of those is correct
[19:38:23 CEST] <kepstin> ac_slater: well, your frames are in dts order, so if you are just using the relative values as-is, it'll be all over the place
[19:38:28 CEST] <ac_slater> oh right
[19:38:36 CEST] <ac_slater> I just realized that souce has b-frames
[19:38:54 CEST] <ac_slater> kepstin: it's exactly right for my non-b-frame video!
[19:38:56 CEST] <ac_slater> thanks!!!
[20:03:14 CEST] <Mavrik> Hmm... so how does HE-AACv2 64kb compare to 192kb MP2? :)
[20:10:32 CEST] <durandal_1707> compare it?
[20:12:08 CEST] <Mavrik> I will, had in my head there was a graph of SnR vs. Bitrate somewhere and can't find it on Google. Hence my question here - hoping someone will save me some tedious time doing comparisons.
[20:29:28 CEST] <DHE> SNR is a mathematical measurement of the difference. hearing tests are what people actually give a damn about
[20:57:16 CEST] <SchrodingersScat> I'm trying to match video frames from two different videos, it spits out a dts and pts but what does this actually mean?
[20:58:24 CEST] <SchrodingersScat> is there a way to translate this into a time position?
[21:00:41 CEST] <kepstin> SchrodingersScat: dts is an implementation detail of b-frames in codecs. pts is the 'presentation time stamp', aka time frame is shown. Multiply pts by the time_base to get seconds.
[21:02:52 CEST] <`Orum> I'm trying to encode with h264_nvenc, and I can figure out almost everything, but how do I set the qp to use with cqp ratecontrol?
[21:06:05 CEST] <SchrodingersScat> kepstin: awesome!
[21:17:32 CEST] <SchrodingersScat> kepstin: wow, k, that does get pretty close, nice.
[21:27:53 CEST] <`Orum> oh, I see, -q:v and then it looks like it should have a value 0 <= x <= 1
[23:16:22 CEST] <Anova> hi friends. I'm managed to use ffmpeg to download a HLS stream in m3u8 format. However, it seems very slow (speed = 1.5) vs other download tools like chrome extension fvd for example. What is the reason for the speed discrepancy and is there a way I can speed it up to use the full bandwidth of my internet connection?
[23:23:06 CEST] <DHE> live feed?
[23:23:24 CEST] <DHE> ffmpeg will do transcoding if you don't specify -c copy
[23:23:31 CEST] <DHE> two different possibilities there
[23:24:48 CEST] <pomaranc> or other download tools download files in parallel and ffmpeg doesn't
[23:26:04 CEST] <DHE> possible, but you'd need a pretty good connection for that to be the issue
[23:27:43 CEST] <Anova> I am including -c copy
[23:28:13 CEST] <Anova> ffmpeg -i "URL" -c copy -bsf:a aac_adtstoasc "C:\Output.mp4"
[23:28:26 CEST] <Anova> ^^ this is the command I'm using. It is not for a livestream, it is for a recorded video
[23:42:11 CEST] <TwinTailed> I am using LibAV (FFMPEG's) to remux and transcode an mp4 file. But the generated H264 MP4 (AVC/ACC) only plays sound on Windows Media Player and QuickTime Player. It plays normally on VLC and Classic Media Player.
[00:00:00 CEST] --- Thu Sep 29 2016
1
0
[00:12:06 CEST] <JEEB> and finally got to re-sending the smooth streaming things...
[02:14:46 CEST] <durandal_1707> ffmpeg doesnt support opus in mp4?
[03:52:00 CEST] <cone-178> ffmpeg 03James Almer 07master:64545dd60013: ffprobe: don't access AVCodecContext.pkt_timebase directly
[04:38:30 CEST] <noobe1> In movenc.c,
[04:38:30 CEST] <noobe1> static void mux_frames(int n) at the end, there is AV_WB32(pktdata + 4, pkt.pts);. Why is it necessary to write 8 bytes of pts/dts before writing actual packet to file?
[05:45:14 CEST] <noobe1> I'm looking for muxing raw compressed h264 data into a container (e.g. MP4) without. What would be best source code to look at in ffmpeg?
[06:00:26 CEST] <noobe1> does the command FFmpeg -framerate 30000/1001 -i "Video.h264" -codec copy -y "Video.mp4" decompress and recompress? or does it do raw copy?
[06:12:47 CEST] <noobe1> anyone know what *.c file ends up muxing in the above command?? Thanks!!
[08:34:09 CEST] <JEEB> durandal_1707: the patch from el goog had issues so it's not merged
[08:34:21 CEST] <JEEB> (opus in isobmff)
[09:09:06 CEST] <cone-202> ffmpeg 03Carl Eugen Hoyos 07master:dcc506a91e77: doc: Mention -dn in the "Stream selection" paragraph.
[09:11:39 CEST] <rcombs> why do we have 3 different names for types of stereo3d modes
[09:12:34 CEST] <nevcairiel> probably usual reasons, merges and local development
[09:13:05 CEST] <rcombs> all of which cover different sets of possible formats
[09:14:19 CEST] <rcombs> one in lavf/matroska (exported in stream metadata) and lavc/h264_sei (exported in frame metadata), one in lavu/stereo3d, one in lavfi/vf_stereo3d
[09:14:57 CEST] <rcombs> the first is machine-formatted, the second is human-formatted, the third is _very_ machine-formatted
[09:15:48 CEST] <nevcairiel> i thought h264 and matroska would use the same data by now
[09:17:26 CEST] <rcombs> lavc/h264_sei uses the same names as lavf/matroska, but exports at the frame level instead of the stream level
[09:17:52 CEST] <rcombs> lavc/h264_slice exports an AVStereo3D side_data, which means a different set of names
[09:18:56 CEST] <nevcairiel> mkv also exports AVStereo3D
[09:20:28 CEST] <rcombs> ah, so I guess AVStereo3D stream side_data is always available, and I should go with that
[09:20:31 CEST] <nevcairiel> there appears to be some duplication due to an earlier string metadata format, but the AVStereo3D format is supposedly the new stuff
[09:20:48 CEST] <nevcairiel> its either stream level if its from the container, or frame level from the decoders
[09:20:50 CEST] <rcombs> also there's a function to get a name for an AVStereo3D but it ignores whether it's inverted
[09:21:35 CEST] <rcombs> isn't there something somewhere to copy frame side data to the stream
[09:24:43 CEST] <rcombs> &looks like no, so I guess there's no way to get stereo3d information at the bitstream level from find_stream_info
[09:26:46 CEST] <nevcairiel> arent you one of those that wants to stop find_stream_info from decoding anyway :D
[09:29:43 CEST] <rcombs> yeah but this is totally doable at the parser level
[09:29:57 CEST] <rcombs> except that parsers don't have access to anything they could use to export this
[09:30:02 CEST] <rcombs> (for ~some reason~)
[09:32:09 CEST] <rcombs> also, is there a standard way to distinguish e.g. "half-sbs" from "full-abs"
[09:32:12 CEST] <rcombs> *sbs
[09:33:19 CEST] <nevcairiel> whats with everyone wanting to do 3D all of the sudden anyway. CE vendors discontinue 3D, and suddenly there is software demand for it, now that screens are going away? =P
[09:34:15 CEST] <rcombs> tbh I just happened to stumble upon a GitHub issue about reporting it in analysis data and figured I'd check to see if it was easy to add
[09:34:36 CEST] <rcombs> and then read through the relevant code and went "wat is dis"
[09:35:26 CEST] <rcombs> as if often the case, each piece makes sense if you ignore the fact that all of the others exist
[10:37:54 CEST] <JEEB> -_- so was the FFmpeg code style to have braces or not around single-line if/elses
[10:39:11 CEST] <nevcairiel> dont think there is a fixed rule, if its a short single-line statement i wouldnt put braces, but if its long, has an else, or something like that, I would
[10:39:57 CEST] <JEEB> http://ffmpeg.org/pipermail/ffmpeg-devel/2016-September/200119.html
[10:40:13 CEST] <JEEB> then http://ffmpeg.org/pipermail/ffmpeg-devel/2016-September/200147.html
[10:40:23 CEST] <JEEB> "please consider adding braces to the if-else clause
[10:40:31 CEST] <nevcairiel> i would probably use braces there because it has an else
[10:40:36 CEST] <JEEB> ok
[10:41:10 CEST] <JEEB> I just remember at some point people wanting to not have those braces
[10:41:18 CEST] <JEEB> for single-line if/elses
[10:41:36 CEST] <nevcairiel> like I said i dont think there is an established rule for that, so its up to everyones style, i guess
[10:41:53 CEST] <JEEB> at least this way is better than "remove those parenthesis"
[10:49:11 CEST] <rcombs> I usually do no braces if everything in an if/else if/else chain is single-line
[10:49:19 CEST] <rcombs> but if anything is multiple lines then everything gets braces
[10:49:30 CEST] <rcombs> not a big deal in any case, though
[10:56:24 CEST] <JEEB> yeah, I got the single-line => no braces thing from x264 I think?
[10:56:35 CEST] <JEEB> although I also think back a few years ago I got bit by that as well
[12:54:03 CEST] <cone-202> ffmpeg 03Michael Niedermayer 07master:740f5105d5bd: swresample: Use double and float for matrixes for best quality and speed
[13:12:30 CEST] <cone-202> ffmpeg 03Michael Niedermayer 07master:23c0779cda8c: swresample: Add swr_build_matrix()
[14:37:06 CEST] <BtbN> steve(a)j2eeguys.com should fix his mailserver please.
[14:37:25 CEST] <BtbN> Getting every mail bounced from ffmpeg-devel...
[15:38:57 CEST] <cone-202> ffmpeg 03Michael Niedermayer 07master:fd902510ac92: swr: Update version & APIChanges for swr_build_matrix()
[15:45:24 CEST] <cone-202> ffmpeg 03James Almer 07master:f0b6f7253f3e: avformat: add av_stream_get_codec_timebase()
[15:45:25 CEST] <cone-202> ffmpeg 03James Almer 07master:4a05d2eda721: ffmpeg: stop using AVStream.codec on stream copy
[15:47:12 CEST] <jamrial> ubitux: just applied the last of the codecpar commits that were noop'd
[15:58:38 CEST] <ubitux> nice :)
[15:58:44 CEST] <ubitux> thanks jamrial_ :)
[16:01:17 CEST] <jamrial_> that commit was supposed to also remove the avcodec_copy_context call in the non stream copy case, but at least some packet pts/duration code in lavf still seems to need st->codec
[16:10:01 CEST] <wm4> I can agree those <steve(a)j2eeguys.com> bounces, right?
[16:34:39 CEST] <anrao> durandal_170: you there ?
[16:42:05 CEST] <ubitux> jamrial_: btw, what happened to the channel layout fix in libav?
[16:44:24 CEST] <wm4> s/agree/ignore/ (how did this happen)
[16:48:42 CEST] <jamrial_> ubitux: they didn't like input codecpar being modified, and prefer a local codecpar being used instead
[17:21:54 CEST] <kierank> that guy really wants scte35
[17:22:01 CEST] <kierank> ffmpeg is really the dumping ground of people's crap
[17:29:29 CEST] <Chloe> wm4: I was wondering what that was
[17:30:02 CEST] <BBB> I dont mind having features
[17:30:05 CEST] <BBB> as long as theyre not outrageous
[17:30:14 CEST] <BBB> I have no idea what scte35 is, though
[17:31:02 CEST] <Chloe> I thought we were going to call 3.2 mrrobot
[17:31:13 CEST] <nevcairiel> as I understand it, some sort of metadata in mpegts to indicate when commercial breaks etc start, so you can use it to segment a stream
[17:32:54 CEST] <funman> https://en.wikipedia.org/wiki/Digital_program_insertion
[17:39:40 CEST] <kierank> BBB: it's amessy feature
[17:39:44 CEST] <kierank> it doesn't fit into ffmpeg
[17:41:31 CEST] <thardin> just tell them to maintain their own branch
[17:41:58 CEST] <kierank> I did and he said his customers don't want to do it
[17:42:12 CEST] <BBB> customers always want it upstream
[17:42:30 CEST] <kierank> want people to maintain it for free
[17:44:13 CEST] <Chloe> can it be integrated in such a way that if it breaks anything in the future (and the guy wont/cant fix it) that it will just immediately be dropped?
[17:48:11 CEST] <kierank> of course not
[17:48:17 CEST] <kierank> it doesn't even have pts and dts
[17:51:31 CEST] <Chloe> can it be implemented from using the public API?
[17:51:52 CEST] <nevcairiel> no
[17:59:48 CEST] <thardin> I'd charge some appropriate, regular sum to maintain it
[18:15:44 CEST] <wm4> nevcairiel: why not? (haven't really followed this)
[18:15:55 CEST] <wm4> surely there's some way to export parts of the raw data or whatever
[18:16:16 CEST] <nevcairiel> well you still need internal stuff to first do that
[18:16:33 CEST] <nevcairiel> and when you export it as a data stream or whatever, you might as well assign it a codec id
[18:19:25 CEST] <wm4> btw. does anyone have a indent command for ffmpeg codec style?
[18:21:06 CEST] <Chloe> similar to 'indent -i4 -kr -nut' according to the website
[18:21:14 CEST] <Chloe> https://www.ffmpeg.org/developer.html#Code-formatting-conventions
[18:22:55 CEST] <wm4> ah didn't see that
[18:27:05 CEST] <kylophone> Is there a quick way to configure and make ffmpeg by reusing the configuration string from a previously built ffmpeg?
[18:27:55 CEST] <kylophone> Imagining something like this: `./configure $(ffmpeg -configuration) && make install`
[18:29:51 CEST] <drv> ./configure $(ffmpeg 2>&1 | grep configuration | cut -d: -f2-)
[18:30:02 CEST] <drv> (not tested, but something like that should do the trick)
[18:30:38 CEST] <kylophone> Not pretty, but should work. Thanks!
[18:31:31 CEST] <Chloe> I like the idea of a ffmpeg --build_flags though
[18:31:50 CEST] <jamrial_> there is. "ffmpeg -buildconf"
[18:32:05 CEST] <kylophone> Ah, cool.
[18:32:24 CEST] <jamrial_> not sure if it's any better than just using drv's command, though
[18:32:29 CEST] <Chloe> jamrial_: still needs sed magic
[18:32:40 CEST] <jamrial_> yeah
[18:32:53 CEST] <Chloe> if the configuration: was output to stderr then it'd work
[21:05:47 CEST] <Chloe> is 'libavcodec/qdm2.c: fix warning due to misleading indentation' corrupt for anyone else?
[21:06:12 CEST] <Chloe> git am dies, and patchwork seems to have misparsed it as well
[21:12:13 CEST] <jkqxz> Chloe: Yes, it has extraneous linebreaks.
[21:12:48 CEST] <cone-202> ffmpeg 03Mulvya 07master:a54c3ff65f87: doc/filters: blend terminates on longest input
[23:38:25 CEST] <Chloe> ubitux: make config returns the config of a ffmpeg binary?
[23:38:46 CEST] <nevcairiel> make config re-runs configure with the previous settings, afaik
[23:39:55 CEST] <Chloe> Ah right, ok. That's not what the patch on the ML is aiming to do afaik
[23:41:20 CEST] <ubitux> yes but it sounds likely that he wrote the patch in order to achieve that same goal but in a "generic" way
[23:41:37 CEST] <ubitux> maybe i'm wrong, i'm just suggesting something
[23:42:08 CEST] <Chloe> ubitux: either way, I think it's a useful patch potentially.
[23:42:31 CEST] <nevcairiel> it sounds like he only has the binary of the old version, but imho its fine to have it output a header for more human friendlyness
[23:42:56 CEST] <nevcairiel> if one wanted to automate something, why not keep the config string somewhere
[23:42:58 CEST] <nevcairiel> but shrug
[23:43:20 CEST] <Chloe> isnt the config string kept?
[23:54:57 CEST] <nevcairiel> guess he was happy with make config
[23:55:05 CEST] <Chloe> yep, looks like it
[23:56:32 CEST] <Chloe> I can apply trivial stuff like a warning fix without having to be the maintainer of it, right? (talking about the patch from Adriano Pallavicino) It passes fate, and looks good.
[00:00:00 CEST] --- Wed Sep 28 2016
1
0
[01:57:02 CEST] <TwinTailed> anyone available to help? Or all away?
[01:57:52 CEST] <llogan> TwinTailed: you should just ask your question and if someone knows they will answer but it may take a while just like in any IRC channel
[01:58:24 CEST] <TwinTailed> well ok
[01:59:26 CEST] <TwinTailed> I am using libav to demux and decode then mux and encode to another media file, the generated mp4 video however plays normally on VLC, but on Windows Media Player and Quicktime, the video is black screen, just the sound plays
[02:00:16 CEST] <llogan> as in libav I assume you mean the FFmpeg libav* libraries.
[02:26:40 CEST] <TwinTailed> llogan: yes ffmpeg's
[02:28:06 CEST] <llogan> TwinTailed: libav-user mailing list may be your best opion. not many library related answers here.
[02:29:05 CEST] <TwinTailed> llogan: the libav-user mailing list still haven't answered my last two emails more than a week ago
[02:29:17 CEST] <TwinTailed> I have fixed the problems I asked them from the help of people here
[02:29:53 CEST] <TwinTailed> you've got BtbN, JEEB, flux, kepstin
[02:30:45 CEST] <llogan> from what you told me I'll guess that your pixel format is not yuv420p so dumb players can't play it
[02:30:54 CEST] <llogan> but i haven't seen your code or any info about your output file
[03:40:12 CEST] <TwinTailed> llogan: I am copying the pixel format from the encoder
[03:40:52 CEST] <TwinTailed> if (encoder->pix_fmts)
[03:40:52 CEST] <TwinTailed> oCtx->pix_fmt = encoder->pix_fmts[0];
[03:40:52 CEST] <TwinTailed> else
[03:40:52 CEST] <TwinTailed> oCtx->pix_fmt = iCtx->pix_fmt;
[09:32:21 CEST] <the_gamer> is it possible to mix 2 mp3s as the new audio for my new video?
[09:33:24 CEST] <furq> the_gamer: https://ffmpeg.org/ffmpeg-filters.html#amix
[09:33:36 CEST] <the_gamer> thank you
[10:32:04 CEST] <mbarisa> hi guys, after I successfully compiled ffmpeg with --enable-openssl I still cannot read https links, I get this kind of issue:
[10:32:26 CEST] <mbarisa> CANNOT LINK EXECUTABLE: could not load library "libssl.so.1.0.0" needed by "/data/data/....
[10:33:07 CEST] <mbarisa> can anyone point me in direction how to pack libssl.so.1.0.0 in ffmpeg binary as well
[10:34:24 CEST] <mbarisa> http://pastebin.com/xiNJvgwa --> here is how the script looks like
[10:35:33 CEST] <mbarisa> and /usr/local/ssl/android-18/lib -> in this path libssl.so.1.0.0 exists, so I am really not sure what to do.. please point me in some direction
[10:36:21 CEST] <furq> mbarisa: --extra-ldflags=-static
[10:39:04 CEST] <mbarisa> I should remove my --extra-ldflags?
[10:39:16 CEST] <mbarisa> or just add this one extra
[10:40:21 CEST] <furq> add that one
[10:41:36 CEST] <mbarisa> giving it a try :)
[10:41:36 CEST] <mbarisa> thanks
[10:43:07 CEST] <mbarisa> now it says openssl not found :/
[10:46:00 CEST] <furq> do you have libssl.a in your lib path
[10:46:14 CEST] <mbarisa> yes
[10:46:20 CEST] <furq> check config.log
[10:47:55 CEST] <mbarisa> http://pastebin.com/cLsNKEmb
[10:47:56 CEST] <mbarisa> last lines
[10:50:04 CEST] <CruX|> this is build for android ?
[10:50:09 CEST] <mbarisa> yes :(
[10:50:10 CEST] <furq> well you're missing -ldl
[10:50:19 CEST] <furq> but for some reason that's trying to link against libws2_32 and libgdi32
[10:50:19 CEST] <CruX|> -lws2_32 is windows library
[10:50:22 CEST] <furq> which are both windows libraries
[10:51:16 CEST] <furq> if those are in libssl.pc or libcrypto.pc then something's fucked p
[10:51:34 CEST] <mbarisa> darn
[10:52:35 CEST] <furq> i'm guessing stuff from a mingw toolchain has got mixed in with your android toolchain
[10:54:18 CEST] <mbarisa> is there some simple way to compile ffmpeg with ssl for android D
[10:54:36 CEST] <mbarisa> i tried everything i could find on internetz
[10:55:08 CEST] <furq> recompile openssl?
[10:55:14 CEST] <mbarisa> i compiled it myself
[10:56:19 CEST] <furq> pastebin libcrypto.pc and libssl.pc
[10:56:29 CEST] <mbarisa> http://pastebin.com/VCvj2ctw
[10:56:58 CEST] <bencoh> .44
[10:57:00 CEST] <bencoh> woops
[10:57:16 CEST] <mbarisa> http://pastebin.com/erpSu4EU
[10:57:28 CEST] <furq> well shit
[10:57:30 CEST] <furq> those look fine to me
[10:58:01 CEST] <furq> pastebin your ffmpeg configure line i guess
[10:59:31 CEST] <mbarisa> http://pastebin.com/4f1MvUky
[10:59:40 CEST] <mbarisa> you can see on top i pasted my flags
[10:59:59 CEST] <mbarisa> LD and CF
[11:00:16 CEST] <furq> you can't specify --extra-ldflags twice
[11:00:40 CEST] <furq> --extra-ldflags="-static -L/usr/local/ssl/android-18/lib $LDFLAGS"
[11:01:10 CEST] <furq> also you should probably use `set -e` to quit on error instead of having `|| exit 1` everywhere
[11:01:56 CEST] <mbarisa> still same thing, i tried to add it in single line on front
[11:02:41 CEST] <mbarisa> what about those CFLAGS and LDFLAGS I have...
[11:02:45 CEST] <furq> check the configure line after variable expansion (at the top of config.log)
[11:02:51 CEST] <mbarisa> shoulsd I remove those
[11:02:52 CEST] <furq> make sure all those variables are set to what you expect them to be
[11:03:43 CEST] <furq> i've never cross-compiled for android so i have no idea whether those are ok
[11:03:51 CEST] <furq> but i can pretty confidently say they wouldn't cause a dependency on winsock
[11:04:18 CEST] <mbarisa> it worked fine for other libs
[11:04:31 CEST] <mbarisa> that were in before, i removed everything and left only ssl
[11:04:51 CEST] <furq> it looks an awful lot like the wrong pkg-config files are being read
[11:04:58 CEST] <furq> make sure your PKG_CONFIG_PATH etc are still correct
[11:05:41 CEST] <mbarisa> PKG_CONFIG_PATH is correct
[11:05:46 CEST] <mbarisa> if i remove -static it compiles
[11:05:53 CEST] <mbarisa> and doesn't say anything about openssl
[11:06:24 CEST] <furq> oh
[11:06:34 CEST] <furq> try --pkg-config="${2}/ffmpeg-pkg-config --static"
[11:07:06 CEST] <mbarisa> http://pastebin.com/wZwcWqAA
[11:08:28 CEST] <mbarisa> with this --static it is compiling
[11:09:00 CEST] <furq> hopefully the ws2_32 thing was a red herring
[11:09:54 CEST] <furq> also i'm pretty sure you can just use the system pkg-config as long as PKG_CONFIG_PATH is set
[11:10:22 CEST] <Kiicki> I thought it was not possible to change container without re-encoding the codec. I added a MP4 file to MKVmerge and the output became MKV in seconds?
[11:10:40 CEST] <furq> what made you think that wasn't possible
[11:11:01 CEST] <Kiicki> people always said that. I have really never found a fast way to change from mp4 to mkv
[11:11:15 CEST] <mbarisa> furq: thanks, waiting on compilation to finish, if it works we can celebrate :D
[11:11:20 CEST] <furq> ffmpeg -i foo.mp4 -c copy -map 0 bar.mkv
[11:12:06 CEST] <Kiicki> dude, you are just amazing with those codes.
[11:12:23 CEST] <Kiicki> well I guess it is possible then
[11:19:59 CEST] <flux> does FFmpeg support decoding into a texture with VDPAU?
[11:20:54 CEST] <flux> also, does it support video encoding from a texture using nvidia acceleration?
[11:21:52 CEST] <mbarisa> furq: compiled successfully, and it is still same issue
[11:26:49 CEST] <mbarisa> mbarisa@ubuntu:~/ffmpeg-android/build/armeabi-v7a/bin$ pkg-config --libs openssl
[11:26:49 CEST] <mbarisa> -L/usr/local/ssl/android-18/lib -lssl -lcrypto
[11:26:56 CEST] <mbarisa> i think this is correct
[11:27:24 CEST] <mbarisa> I have no idea why libssl.so.1.0.0 is missing
[11:29:01 CEST] <furq> it shouldn't be linked against anything with --extra-ldflags=-static
[11:31:13 CEST] <mbarisa> yeah but it doesn't work with --extra-ldflags=-static
[11:31:59 CEST] <mbarisa> then it cannot find openssl
[11:32:23 CEST] <mbarisa> and without that it can find it.. but it doesn't link libssl.so.1.0.0 inside
[11:32:44 CEST] <furq> did you use --extra-ldflags=-static and --pkg-config="pkg-config --static"
[11:34:13 CEST] <mbarisa> only --pkg-config
[11:34:21 CEST] <mbarisa> when i add static in --extra-ldflags
[11:34:29 CEST] <mbarisa> it breaks, says there is no openssl
[11:34:38 CEST] <mbarisa> when i don't add -static there it passes
[11:35:42 CEST] <mbarisa> and my configure has --enable-static
[11:36:38 CEST] <furq> yeah you need to use pkg-config --static with --extra-ldflags=-static
[11:36:57 CEST] <furq> enable-static is a different thing
[11:37:28 CEST] <mbarisa> but how to add --extra-ldflags=-static when it then says ERROR: openssl not found
[11:37:33 CEST] <mbarisa> so I cannot compile it
[11:38:26 CEST] <furq> --pkg-config="pkg-config --static"
[11:38:44 CEST] <mbarisa> that is set
[11:38:46 CEST] <mbarisa> and that is fine
[11:39:21 CEST] <mbarisa> http://pastebin.com/u71rwguU
[11:39:24 CEST] <mbarisa> this is how it looks
[11:39:39 CEST] <mbarisa> but with this ldflags=-static it is not compiling
[11:39:53 CEST] <furq> pastebin config.log again
[11:41:53 CEST] <mbarisa> I can say it is same
[11:41:54 CEST] <mbarisa> http://pastebin.com/JxKmswBq
[11:47:16 CEST] <furq> /home/mbarisa/ffmpeg-android/toolchain-android/bin/../lib/gcc/arm-linux-androideabi/4.9.x/../../../../arm-linux-androideabi/bin/ld: error: cannot find -ldl
[11:47:19 CEST] <furq> oh
[11:47:20 CEST] <furq> i guess you don't have libdl.a
[11:48:57 CEST] <furq> it's a bit hacky but you should be able to remove --extra-ldflags=-static if you remove libssl.so and libcrypto.so
[11:49:09 CEST] <furq> it'll link against the static libs if there are no shared libs available
[11:50:00 CEST] <mbarisa> where to remove them from?
[11:50:18 CEST] <mbarisa> from /usr/local/ssl/android-18/lib?
[11:50:23 CEST] <mbarisa> how can that work?
[11:51:10 CEST] <furq> it's probably better to rename them so you don't have to recompile them in future
[11:51:24 CEST] <furq> -lcrypto will link against libcrypto.a if there's no libcrypto.so
[11:51:26 CEST] <mbarisa> already removed :D but i have them copied in other places :)
[11:51:54 CEST] <mbarisa> compiling again
[11:52:13 CEST] <furq> you would normally do something like -Wl,-Bstatic -lcrypto -lssl -Wl,-Bdynamic -ldl
[11:52:38 CEST] <furq> but good luck getting ffmpeg's configure script to do that
[11:53:50 CEST] <mbarisa> thanks
[11:56:37 CEST] <mbarisa> why ssl is not included by default
[11:56:42 CEST] <mbarisa> :D
[12:03:40 CEST] <mbarisa> it is still not working ffs
[12:04:40 CEST] <mbarisa> it is in byte identical as old one
[12:04:53 CEST] <mbarisa> still asking for libssl.so.1.0.0
[12:05:28 CEST] <ronald245> hey everyone, im having some issues compiling ffmpeginterop make install
[12:05:28 CEST] <ronald245> make: *** No rule to make target 'install'. Stop.
[12:05:42 CEST] <BtbN> what's ffmpeginterop?
[12:06:09 CEST] <ronald245> basically ffmpeg for windows
[12:06:22 CEST] <BtbN> Never heard of it, you'll have to ask whoever made it.
[12:07:36 CEST] <SouLShocK> ronald that's Microsoft, right?
[12:07:53 CEST] <SouLShocK> > This project is licensed from Microsoft under the Apache 2.0 License
[12:07:53 CEST] <SouLShocK> https://github.com/Microsoft/FFmpegInterop
[12:08:17 CEST] <BtbN> make install is usualy a bad idea anyway
[12:08:21 CEST] <ronaldp> yea, itŽs m$
[12:08:39 CEST] <BtbN> on windows it's not even somewhat well defined.
[12:10:57 CEST] <ronaldp> figures, iŽm trying to create a h264 streaming app in Uwp, but iŽll keep looking, thanks :)
[12:19:07 CEST] <ronaldp> join #WPDev
[12:19:25 CEST] <ronaldp> well this is embarrasing :)
[12:31:30 CEST] <Timster> Hi - could somebody please tell me what's wrong with this line to batch convert on Windows: http://pastebin.com/U6G7SiGq
[12:31:50 CEST] <Timster> FFmpeg says: Could not write header for output file #0 (incorrect codec parameters ?): Invalid argument
[12:35:43 CEST] <mbarisa> furq: i compiled it with flags you sent -Wl,-Bstatic -lcrypto -lssl -Wl,-Bdynamic -ldl and added -static in front as well, and it passed
[12:36:07 CEST] <mbarisa> but now i don't get error, but my command doesn't work now.. it worked before with http at least :D
[13:23:16 CEST] <TwinTailed> I am using libav to demux and decode then mux and encode to another media file, the generated mp4 video however plays normally on VLC, but on Windows Media Player and Quicktime, the video is black screen, just the sound plays
[14:25:25 CEST] <kepstin> Timster: please pastebin the complete output. there should be an earlier log message saying exactly what the incorrect codec parameter is
[14:25:52 CEST] <kepstin> Timster: but the issue is probably that your .mov files use an audio codec that's not supported in .mp4, so the copy fails.
[14:26:58 CEST] <Timster> kepstin: sec
[14:28:18 CEST] <Timster> kepstin: http://pastebin.com/3ZAi4Ej8
[14:28:46 CEST] <kepstin> there you go: [mp4 @ 000000000262f340] Could not find tag for codec pcm_s16le in stream #1, codec not currently supported in container
[14:29:05 CEST] <kepstin> can't put pcm audio in mp4, you'll have to encode it to something, or stick with mov container
[14:30:20 CEST] <furq> if you want it to be lossless then your choices are mp4als and alac
[14:30:25 CEST] <kepstin> (andd your probably want to use -pix_fmt yuv420p to convert the color range and improve compatibility.
[14:31:31 CEST] <furq> [mp4 @ 000000000052f400] Could not find tag for codec alac in stream #0, codec not currently supported in container
[14:31:34 CEST] <furq> oh nice
[14:31:51 CEST] <furq> i guess that's to be expected but it begs the question of what container does support alac
[14:32:59 CEST] <kepstin> hmm, i think it only works with -f ipod?
[14:33:07 CEST] <furq> yeah it works with m4a
[14:33:12 CEST] <furq> how annoying
[14:33:21 CEST] <furq> or it would be annoying if anyone cared about alac
[14:33:28 CEST] <kepstin> it's an apple-specified extension, so it basically only works with apple stuff :/
[14:33:35 CEST] <kepstin> (and ffmpeg, of course)
[14:37:24 CEST] <Timster> kepstin: Thank you!
[14:41:14 CEST] <Timster> furq: Thanks also :)
[15:08:53 CEST] <nostrora> Hi! this is my command : ffmpeg -vn -i "$i" -codec:a libvorbis -qscale:a 5 "${i%.mp3}.ogg"
[15:09:08 CEST] <nostrora> but mp3 have cover (mjpeg) how to don't add it in .ogg ?
[15:09:23 CEST] <nostrora> So all ogg have theora and i don't want. Thanks
[15:10:42 CEST] <kepstin> nostrora: add the option '-map 0:a' and it will only copy the audio.
[15:11:14 CEST] <nostrora> kepstin: Thanks, and what about -vn ?
[15:12:14 CEST] <kepstin> oh. '-vn' would have worked, but you have to put it in the correct place. it's an "output" option
[15:12:24 CEST] <kepstin> so it goes before the output file, not before the input file
[15:13:40 CEST] <nostrora> kepstin: Thanks :) and how to set same quality as MP3 ?
[15:13:51 CEST] <nostrora> i don't want to set quality to 9 if mp3 only have 64kbit/s
[15:14:52 CEST] <kepstin> nostrora: the concept of "same quality" between two different codecs is hard to define
[15:15:14 CEST] <kepstin> lossy transcoding will always make quality lower, too
[15:15:35 CEST] <kepstin> so best to always encode to high quality, so it doesn't sound much worse than original
[15:15:44 CEST] <nostrora> kepstin: Yes i know :/ i want to entirely convert my Music directory to ogg (because is better,free etc.)
[15:16:04 CEST] <kepstin> nostrora: doing a transcode will not make it sound better - only worse :)
[15:16:10 CEST] <kepstin> nostrora: best to just leave it as-is.
[15:16:20 CEST] <nostrora> kepstin: Yes i know i just want ogg because is better
[15:16:51 CEST] <kepstin> it's only better if you do a new encode from lossless source
[15:16:52 CEST] <nostrora> kepstin: worse or same :p not only worse
[15:16:58 CEST] <kepstin> if you start with mp3, it's worse
[15:17:11 CEST] <nostrora> kepstin: not only worse, it may be same
[15:17:17 CEST] <kepstin> it will never be the same, unless you use really high quality, so the file is bigger.
[15:17:48 CEST] <nostrora> kepstin: Yes, if i use quality 9 on a 64kbit/s mp3 the quality is same
[15:17:53 CEST] <nostrora> but not worse
[15:19:28 CEST] <relaxed> I would keep them as mp3s
[15:19:59 CEST] <nostrora> relaxed: but mp3 is not free (as freedom) :/
[15:20:21 CEST] <nostrora> relaxed: why do you keep as mp3s ?
[15:20:31 CEST] <kepstin> all the good mp3 encoders/decoders are free software, and afaik, all the patents on it have expired by now?
[15:21:14 CEST] <relaxed> nostrora: like kepstin said, you're going to lose quality if you transcode to another lossy format
[15:21:27 CEST] <kepstin> in general, you should keep lossy formats in the original codec, because each time you convert, you lose quality
[15:21:45 CEST] <kepstin> (unless you convert to a lossless codec, of course, but that's just a waste of space)
[15:21:45 CEST] <nostrora> ok ok, thanks for information :)
[15:22:09 CEST] <relaxed> nostrora: but if you're hellbent on "freedom", you could use flac (which is lossless)
[15:22:24 CEST] <relaxed> but your files will be larger
[15:22:31 CEST] <nostrora> Do you know how to speed up ffmpeg conversion ? my cpu is not at 100% when i start the conversion :/
[15:24:54 CEST] <nostrora> i've set threads to 8 but speed is not better
[15:25:09 CEST] <kepstin> nostrora: depends exactly which conversion. audio codecs are all single-threaded, so you should probably just do multiple files at the same time (run multiple ffmpeg)
[15:25:31 CEST] <nostrora> kepstin: ok :) i'l doing this (multiple ffmpeg)
[15:26:01 CEST] <nostrora> So now i use MP3 for music i have already on my computer. Flac for store new music and ogg to convert the flac for my smartphone or car
[15:26:49 CEST] <furq> 14:20:31 ( kepstin) all the good mp3 encoders/decoders are free software, and afaik, all the patents on it have expired by now?
[15:26:53 CEST] <furq> december 2017 according to wikipedia
[15:27:12 CEST] <kepstin> hmm, so not yet, but soon. probably depends on jurisdiction too.
[15:27:13 CEST] <furq> only in the US of course
[15:27:25 CEST] <kepstin> nostrora: keep in mind that mp3->flac->ogg is the exact same quality loss as mp3->ogg, and you want to avoid mp3->flac->mp3 as well :)
[15:27:36 CEST] <nostrora> kepstin: yes i know this
[15:27:47 CEST] <furq> you want to avoid mp3 to anything really
[15:28:53 CEST] <nostrora> furq: Me yes, because vorbis are better or opus (better than vorbi) but i don't transcore my old mp3 because i loss quality
[15:31:16 CEST] <kepstin> I'm kind of annoyed that android 6 supports opus in ogg, but the media library doesn't support opus in ogg with the .opus extension (it doesn't index them) :/
[15:31:32 CEST] <furq> but yeah if you really have to transcode audio with ffmpeg then xargs is your friend
[15:32:01 CEST] <kepstin> i'm a crazy person with a shell script that runs a makefile to parallelize my ffmpeg audio transcodes ;)
[15:32:19 CEST] <furq> find . -name "*.mp3" printf "%f\0" | xargs -0 -n1 -P8 -I{} ffmpeg -i "{}" -c:a vorbis "{}".ogg
[15:33:18 CEST] <furq> then you get to enjoy 8 ffmpeg statuses in the same terminal
[15:33:19 CEST] <tontonth> generated makefiles for parallel processing is damn kwol !
[15:35:45 CEST] <nostrora> furq: my for is good ? or there is a better way to convert lot of file with ffmpeg ?
[15:35:57 CEST] <nostrora> for i in *.mp3; do ffmpeg -i "$i" -vn -c:a libvorbis -q:a 8 "${i%.mp3}.ogg"; done
[15:36:52 CEST] <furq> that'll do it one at a time
[15:36:58 CEST] <furq> xargs -P8 will run 8 processes at once
[15:37:15 CEST] <nostrora> i don't understand what do you mean
[15:37:26 CEST] <furq> the downside is that you can't strip the extension so you'll end up with "foo.mp3.ogg"
[15:38:38 CEST] <furq> nostrora: the for loop will encode each file one after the other
[15:38:48 CEST] <furq> and libvorbis is single threaded so that will only use one core
[15:38:55 CEST] <nostrora> furq: Yep
[15:39:20 CEST] <furq> xargs -P8 will run 8 at a time, so it'll use 8 cores
[15:39:42 CEST] <nostrora> furq: i have to execute xargs -P8 for .... ?
[15:39:55 CEST] <furq> 14:32:19 ( furq) find . -name "*.mp3" printf "%f\0" | xargs -0 -n1 -P8 -I{} ffmpeg -i "{}" -c:a vorbis "{}".ogg
[15:42:21 CEST] <nostrora> find: paths must precede expression: printf
[15:46:39 CEST] <nostrora> Bye bye vorbis, hello Opus :D
[15:46:53 CEST] <furq> oh
[15:46:55 CEST] <furq> it should be -printf
[15:48:40 CEST] <nostrora> What is the difference between -c:a libvorbis and -c:a vorbis
[15:50:36 CEST] <furq> vorbis is the internal encoder which is apparently a thing now
[15:50:42 CEST] <furq> libvorbis is presumably better
[15:52:31 CEST] <nostrora> >< bullshit
[16:20:16 CEST] <mbarisa> furq: workssssss now :0 thanks for your hints
[17:27:06 CEST] <TwinTailed> I am using libav to demux and decode then mux and encode to another media file, the generated mp4 video however plays normally on VLC, but on Windows Media Player and Quicktime, the video is black screen, just the sound plays
[18:09:51 CEST] <jpacker1337> Hello, currently trying to alter the volume of my inputs in a amix call but I can't seem to get the syntax right with the outputs. Can someone help or guide me in the right direction?
[18:09:52 CEST] <jpacker1337> http://pastebin.com/JhQQGH0x
[18:10:44 CEST] <TwinTailed> I am using libav to demux and decode then mux and encode to another media file, the generated mp4 video however plays normally on VLC, but on Windows Media Player and Quicktime, the video is black screen, just the sound plays
[18:26:52 CEST] <Chloe> TwinTailed: share code?
[18:27:51 CEST] <TwinTailed> Chloe: sure
[18:28:42 CEST] <jpacker1337> Trying to adjust audio levels of inputs using this code
[18:28:43 CEST] <jpacker1337> -ss 0.300 -i /data/user/0/me.rapchat.rapchat/cache/recording.m4a -i /data/user/0/me.rapchat.rapchat/cache/beats/05a0f287-4183-4ab0-8233-049b95ca38fa.m4a -filter_complex [0:a]volume=1.5[a0];[1:a]volume=1.5[a1]; [a0][a1]amix=inputs=2:duration=shortest:dropout_transition=3 -preset ultrafast /data/user/0/me.rapchat.rapchat/cache/rap.m4a
[18:29:02 CEST] <TwinTailed> Chloe: http://pastebin.com/u7TB2cDr
[18:45:52 CEST] <TwinTailed> Chloe: Anything wrong with my code?
[19:13:39 CEST] <TwinTailed> its weird this is happening to freenode
[19:14:59 CEST] <DHE> no, it's rare to go a month without this happening
[19:15:57 CEST] <TwinTailed> DHE: I used to use freenode excessively a few years ago and this never happened
[19:16:33 CEST] <TwinTailed> DHE: Have you got the time to help me right now?
[19:19:09 CEST] <DHE> you're doing libav stuff, so likely not
[19:20:18 CEST] <TwinTailed> DHE: you helped me before with libav as far as i remember :P
[19:33:59 CEST] <mbarisa_> again?
[19:36:56 CEST] <TwinTailed> that seems a DDoS attack not overload :P
[19:36:56 CEST] <TwinTailed> whats amusing is that I haven't been disconnected :P
[19:58:12 CEST] <mgpai_> When using ffplay, is it possible to control the window size both for audio and video using the same command? I am able to control the video size using -vf scale=iw*0.5:--1, but when playing audio file it increases the screen size.
[20:16:13 CEST] <ibisr> Hi there, I'm creating fragmented MP4 files and the box structure looks nice except I'm not getting a sidx box. Maybe I'm missing something? Here's the command I'm using: ffmpeg -i myInputMovie.mov -y -c:v libx264 -x264opts "keyint=24:min-keyint=24:noscenecut" -b:v 4800k -maxrate 4800k -vf "scale=1920:1080" -an -frag_duration 2000000 myFragmentedOutputVideo.mp4
[20:53:24 CEST] <jesseg> Hmm, ffplay is missing from the static linux 64 build
[20:53:43 CEST] <BtbN> complain to the creator of that build.
[20:55:40 CEST] <llogan> jesseg: i don't recall relaxed ever providing ffplay with his builds
[20:59:16 CEST] <jesseg> llogan, it was a couple years ago but I'm pretty sure I used to get ffplay from the statics but anyway it doesn't matter. :D
[20:59:27 CEST] <jesseg> I'll try compiling from source see if I can make t hat go
[21:04:38 CEST] <jesseg> Hmmm, ffplay was not built when I compiled either...
[21:05:05 CEST] <jesseg> maybe I need SDL2 support
[21:10:50 CEST] <jesseg> HA! compiled SDL2, rebuilt ffmpeg, now I have ffplay :D
[21:12:22 CEST] <JEEB> jesseg: yeah the SDL1 stuff was recently rewritten for SDL2
[21:13:08 CEST] <jesseg> JEEB, ahh OK.
[21:26:54 CEST] <jesseg> JEEB, have you done anything with melt? It compiles for me but can't play video files even though ffmpeg can read them
[21:28:23 CEST] <JEEB_> jesseg: nope
[21:31:35 CEST] <jesseg> ty
[21:36:24 CEST] <llogan> jesseg: melt probably requires sdl_image for playback
[21:37:53 CEST] <llogan> let me restate that: try sdl1
[21:39:25 CEST] <llogan> or, if you're lazy, use the static build that comes with shotcut. execute it via the script instead of directly executng the binary
[21:47:01 CEST] <vklimkov> hello. I want to extract part of mp3 file into separate file programmatically. I.e. I have linked ffmpeg static lib against my C++ code and I want to do "ffmpeg -i in.mp3 -ss $start -c copy -t $dur out.mp3"
[21:48:50 CEST] <vklimkov> I can think of decoding, selecting only frames in the time range I want and encoding back, but there should be better way, right?
[21:51:13 CEST] <persina> Can someone explain the difference between the input and output framerates for practical purposes?
[21:51:37 CEST] <DHE> while it might be different for MP3, you should be able to ignore any AVPackets whose PTS and duration is outside your interesting range and only start decoding when you hit the time you want
[21:51:55 CEST] <jesseg> persina, can you explain some more background?
[21:52:06 CEST] <DHE> persina: overriding the input framerate is the same as modifying the input file to change its framerate field. setting the output framerate will drop and duplicate frames to maintain the requested framerate.
[21:52:20 CEST] <DHE> intentionally playing with values will allow you to turn a long movie into a short time-lapse for example
[21:54:06 CEST] <vklimkov> DHE: Thanks for reply. but I don't want to decode. I mean if I decode and than encode back, there will be quality degradation. Is there a way to avoid it?
[21:54:10 CEST] <persina> DHE "overriding the input framerate is the same as modifying the input file to change its framerate field" I'm not suing an input file so I'm not sure what the :framerate field" does.
[21:55:03 CEST] <jesseg> persina, what is your video source?
[21:55:04 CEST] <persina> jesseg: I'm just trying to figure out the difference between them so I can understand which of them (perhaps both?) I need to change.
[21:55:19 CEST] <llogan> nobody knows what you're referring to
[21:55:27 CEST] <persina> jesseg: I have a bunch of png's in a dir and trying to convert them to a mp4.
[21:55:46 CEST] <jesseg> persina, well, what DHE said is the answer, but evidentally you have some special circumstances which is why I'm asking about more background info
[21:56:16 CEST] <llogan> the image file demuxer uses -framerate as an input option. the default is -framerate 25.
[21:56:22 CEST] <jesseg> persina, ok just specify the input frame rate for how fast you want the pics to play
[21:56:40 CEST] <jesseg> persina, so if you want the pictures to play at 10 a second, set the frame rate to 10
[21:57:21 CEST] <llogan> if you add the output option -r then it will drop/duplicate frames if it differs from your input -framerate
[21:58:05 CEST] <jesseg> persina, basically the input frame rate flag tells it how many fps it's supposed to be played at. The output frame rate flag then inserts extra frames or deletes some frames to change the frame rate above or below the input frame rate.
[21:59:13 CEST] <persina> jesseg: Why would someone want to overwrite the input framerate using -r instead of just changing the -framerate flag?
[22:00:16 CEST] <llogan> some players don't like -framerate 1 so you'll have to make a standard output framerate such as -r 25.
[22:01:34 CEST] <jesseg> persina, lots of reasons, depending on the situation. You can make a video play faster or slower without actually adding or deleting frames, by simply changing the fps flag.
[22:03:19 CEST] <jesseg> persina, for example, let's say you have a 30fps video and you want to make it play at 1fps so it becomes slow motion: Changing the fps flag just slows it down without increasing file size. However, if you change the frame rate on the output, then it'll take every frame and duplicate it 30 times. so you'll end up with 30 times the number of frames.
[22:05:22 CEST] <jesseg> Likewise, if you have a 1fps timelapse type video and you want to speed it up, you just change the input frame rate to 30, causing it to play every frame but 30 times faster, which is better than duplicating each output frame 30 times to bring the fps up to 30, which wouldn't even speed up the video
[22:06:16 CEST] <jesseg> persina, ultimately, adjusting the input fps changes the play speed without changing the frame count or filesize, while the output frame rate setting changes the number of frames and filesize without changing the play rate.
[22:07:26 CEST] <persina> jesseg: OK, that makes sense! +1 for the clear explanation :)
[22:08:05 CEST] <jesseg> :D
[22:08:18 CEST] <TwinTailed> Hi, I am transcoding using Libav (FFMPEG), but the output H264 MP4 video only plays sound on Windows Media Player and QuickTime Player, however it plays normally on VLC and Classic Media Player
[22:17:29 CEST] <acamargo_> TwinTailed, which audio codec is being used?
[22:17:46 CEST] <flux> twintailed, I understand you're using FFmpeg as a library. have you tried if FFmpeg as a command line tool is able to make files you can play?
[22:18:08 CEST] <TwinTailed> acamargo_: aac
[22:18:25 CEST] <TwinTailed> flux: yes it does generate playable media, i know the problem is in my code
[22:18:28 CEST] <acamargo_> TwinTailed, use ffprobe or mediainfo on the output file to get all info
[22:19:03 CEST] <acamargo_> TwinTailed, which audio profile?
[22:27:18 CEST] <TwinTailed_> acamargo_: http://pastebin.com/Saz1srXd
[22:27:30 CEST] <TwinTailed_> flux: http://pastebin.com/Saz1srXd
[22:28:12 CEST] <TwinTailed_> I no longer which of u wasn't kicked from the last server overload
[22:31:21 CEST] <flux> twintailed_, not sure if you're going to get a lot of progress here unless we see the code and/or the file it produces
[22:31:38 CEST] <acamargo_> TwinTailed_, Stream #0:1(und), 1, 1/44100: Audio: aac (LC) (mp4a / 0x6134706D), 44100 Hz, stereo, fltp, 130 kb/s (default)
[22:31:43 CEST] <acamargo_> TwinTailed_, seems ok to me
[22:31:59 CEST] <flux> the sound worked, video didn't :)
[22:31:59 CEST] <TwinTailed_> acamargo_: The video is the problem not the audio
[22:32:28 CEST] <TwinTailed_> flux: I can send u the code, but people like JEEB keep telling me "We don't have time to fix your code for you" so i stopped sending my code
[22:32:47 CEST] <acamargo_> TwinTailed_, Stream #0:0(und), 2, 1/12800: Video: h264 (High), 1 reference frame (avc1 / 0x31637661), yuv420p(left), 640x360 (640x368), 0/1, 1312 kb/s, 25 fps, 25 tbr, 12800 tbn, 100 tbc (default)
[22:33:09 CEST] <TwinTailed_> flux: http://pastebin.com/fxhvwUH8
[22:33:13 CEST] <flux> twintailed_, well, I don't actually have time ;-) to look at it tonight, but perhaps later..
[22:33:35 CEST] <TwinTailed_> flux: can you just see line 100?
[22:33:36 CEST] <flux> oh, it's not super long
[22:33:45 CEST] <TwinTailed_> flux: To know if I have copied all pars
[22:33:51 CEST] <TwinTailed_> required pars of course
[22:34:24 CEST] <acamargo_> TwinTailed_, where didn't play?
[22:34:27 CEST] <flux> twintailed_, btw, I expect memory management issues later on because of the verbatim copy of the extradata pointer
[22:34:36 CEST] <flux> I think yuo need to allocate memory for it etc
[22:34:47 CEST] <TwinTailed_> acamargo_: windows media player and quicktime player
[22:35:48 CEST] <TwinTailed_> flux: doesn't it already allocate everything upon avcodec_alloc_context3?
[22:36:27 CEST] <flux> twintailed_, even if it does, you're overwriting the extradata pointer with one originating from another structure
[22:36:35 CEST] <flux> twintailed_, I expect the extradata ends up being free'd twice
[22:37:03 CEST] <flux> it seems unlikely this is anyhow related to your problem
[22:37:24 CEST] <TwinTailed_> flux: what function should I use to allocate extradata?
[22:37:57 CEST] <flux> maybe malloc if av_malloc isn't part of the public api
[22:38:20 CEST] <TwinTailed_> ah, just a normal malloc, not a specific function
[22:38:26 CEST] <flux> yes
[22:38:42 CEST] <flux> but I'll be getting some sleep now. happy hacking, hope you get it fixed, you've been on it for quite a while already ;)
[22:39:45 CEST] <TwinTailed_> flux: ok good night, thank you :)
[22:39:46 CEST] <flux> who knows, if you get that working, it might make a decent doc/example for ffmpeg. it's quite simple compared to some of the examples..
[22:40:28 CEST] <TwinTailed_> flux: if it works i'll try sending it to the ffmpeg-devel
[22:42:41 CEST] <TwinTailed_> acamargo_: can you help?
[22:43:28 CEST] <acamargo_> TwinTailed_, I don't have any of them installed here :-/
[22:43:46 CEST] <TwinTailed_> ah ok :)
[22:44:29 CEST] <acamargo_> TwinTailed_, you can search if those players have codec h264 compatible with your output file
[22:44:40 CEST] <TwinTailed> acamargo_: They do
[22:44:57 CEST] <acamargo_> TwinTailed, well... then they will play hehehe
[22:45:05 CEST] <acamargo_> :-)
[22:45:18 CEST] <TwinTailed> acamargo_: Yeah, the problem is with my code i know that :P But its due to lack of documentation to be honest
[00:00:00 CEST] --- Wed Sep 28 2016
1
0
[01:38:17 CEST] <JEEB> lol, when you have three sets of widths and heights and they are uint32_t, you suddenly have to do a whole lot of checks for value sanity :D
[01:53:22 CEST] <JEEB> there, sent an initial version to ML
[03:30:24 CEST] <cone-962> ffmpeg 03Jean-Yves Simon 07master:fb37da37ac1e: avcodec/hevc: Add YUV420P10 to vaapi hardware decode - permits hardware decoding of HEVC Main 10 on AMD RX 480
[08:31:33 CEST] <noobe1> Greetings. Anyone has a working sample code of using AVOutputFormat to write to output mp4 file? I looked a sample h264 mp4 file and it has SEI right after "mdat". Anyone know if this is auto generated by av_write_frame()? Thanks!
[08:43:40 CEST] <monery> greetings channel, would this be the place to discuss error messages with nvenc compiled?
[08:51:31 CEST] <cone-988> ffmpeg 03Carl Eugen Hoyos 07master:46aae846165c: lavf/movenc: Allow to disable writing the timecode track.
[09:45:39 CEST] <JEEB> uhh, how should I read this? http://ffmpeg.org/pipermail/ffmpeg-devel/2016-September/200080.html
[09:46:01 CEST] <JEEB> also I probably misused the word "overflow", but that was the closest word my dumb brain could think of at that point
[09:46:33 CEST] <JEEB> so we shouldn't check the values in the demuxer because the rest of the framework ignores certain values? :D
[10:02:07 CEST] <rcombs> apparently out-of-range unsigned->signed casts are _implementation-defined_ (as opposed to signed integer arithmetic overflow, which is _undefined_)
[10:02:33 CEST] <nevcairiel> still causes odd things to happen either way, you dont get the original value
[10:03:12 CEST] <rcombs> ^ yeah
[10:03:27 CEST] <rcombs> not really relevant here since it needs to be checked anyway, but good to know
[10:03:57 CEST] <rcombs> implementation-defined I guess because one's complement is technically legal but afaik literally nobody does that
[10:05:54 CEST] <JEEB> also this clearly shows that we need a definition of what the codecpar->width/height mean :)
[10:05:57 CEST] <JEEB> http://ffmpeg.org/pipermail/ffmpeg-devel/2016-September/200072.html
[10:06:35 CEST] <JEEB> because the display_{width,height} is what should be output after decode, decoder cropping and then container cropping
[10:11:03 CEST] <rcombs> can we just change codecpar->width/height to unsigned
[10:12:02 CEST] <nevcairiel> no
[10:12:54 CEST] <nevcairiel> all w/h in avcodec are signed everywhere
[10:13:25 CEST] <JEEB> so the next step would be int64_t?
[10:13:50 CEST] <nevcairiel> i dont think there is a strong enough argument for w/h exceeding int32? how big of an image do you need? =P
[10:13:57 CEST] <rcombs> well that's actually a bigger type and is ridiculous
[10:14:15 CEST] <JEEB> well if we can't utilize unsigned version of a smaller type?
[10:14:17 CEST] <rcombs> whereas unsigned deals with this problem nicely and is more semantically sensible anyway
[10:14:38 CEST] <JEEB> well nev just said that's NG
[10:14:41 CEST] <rcombs> I don't think there's a reason we can't, other than that it'd require fixing it in a bunch of place
[10:14:43 CEST] <rcombs> *places
[10:14:52 CEST] <nevcairiel> also breakage everywhere
[10:14:54 CEST] <nevcairiel> imho not worth it
[10:14:57 CEST] <nevcairiel> whats to gain?
[10:15:37 CEST] <rcombs> it's less dumb; I guess we could just stick it in next time there's a major bump?
[10:15:44 CEST] <nevcairiel> why do you have images between 2 billion and 4 billion pixels wide? :d
[10:16:05 CEST] <nevcairiel> "less dumb" in itself is not e nough reason for me to really considersuch a change
[10:16:35 CEST] <rcombs> nobody does, but why are your fields signed when negative values are meaningless
[10:16:37 CEST] <nevcairiel> the way I see it, public api changes should be justified
[10:16:39 CEST] <rcombs> fair enough
[10:17:28 CEST] <rcombs> but oi stop using signed integers where they don't make any sense
[10:17:50 CEST] Action: rcombs shakes stick at ancient history
[10:22:30 CEST] <ubitux> JEEB: it's not a good idea to use unsigned for width/height
[10:22:47 CEST] <ubitux> it might actually slow down x/y loops over width/height ;)
[10:23:31 CEST] <ubitux> (overflow is defined in unsigned, so compiler can't make certain assumptions)
[10:24:20 CEST] <rcombs> none of those assumptions are relevant, though
[10:25:07 CEST] <rcombs> like, "it won't overflow" was already a given if you're doing `for (i = 0; i < height; i++)` and both i and height are unsigned
[10:25:51 CEST] <ubitux> for (y = slice_start; y < slice_end; y++)
[10:26:47 CEST] <rcombs> still can't overflow
[10:29:04 CEST] <ubitux> the compiler might not be able to tell if slice_start > slice_end
[10:29:46 CEST] <rcombs> hmm?
[10:32:08 CEST] <ubitux> the compiler might not be able to tell if slice_start = 100 and slice_end = 50 at the beginning of the loop, so he will assume y can go backward sometimes
[10:32:50 CEST] <ubitux> mmh wait sorry my bad
[10:32:59 CEST] <rcombs> it knows y is never decremented, and it can't overflow since there's a < check against a value of the same size
[10:33:03 CEST] <ubitux> what's the case i was thinking about...
[10:34:40 CEST] <ubitux> https://kristerw.blogspot.fr/2016/02/how-undefined-signed-overflow-enables.… a bunch of examples here
[10:34:58 CEST] <ubitux> i use a broken and wrong example, sorry
[10:37:23 CEST] <rcombs> all of those things are ways that signed overflow being undefined is more convenient to the compiler than it being implementation-defined or defined in an inconvenient way
[10:37:51 CEST] <rcombs> I don't think any of them are applicable here when compared to well-defined _unsigned_ overflow
[10:38:17 CEST] <nevcairiel> but we dont need the overflow, so any potential handling of it just adds more code?
[10:41:00 CEST] <rcombs> like, "it can assume the value will never become negative and use shifts instead of divisions" okay but an unsigned value will never become negative anyway
[10:43:12 CEST] <rcombs> I don't really care much about the suggested change; at this point I'm mostly curious if there really are any cases where unsigned is preferable to signed in cases where the value will never be negative for optimization reasons
[10:43:52 CEST] <ubitux> the point is to actually keep the signed values
[10:44:33 CEST] <rcombs> erm, sorry, swap those two
[10:44:38 CEST] <rcombs> where signed is preferable to unsigned
[10:48:08 CEST] <rcombs> I see a few possible cases around comparisons with (x + <constant>), I guess?
[13:20:17 CEST] <LA> hi there. I want to add custom network protocol (output).
[13:20:17 CEST] <LA> what is the proper way to do it? should it be a muxer - AVOutputFormat implementation
[13:20:17 CEST] <LA> or I have to make URLProtocol?
[15:36:24 CEST] <ubitux> i don't see the associated chunk in 5fa255b; noop i guess?
[15:46:46 CEST] <nevcairiel> so where is the info set in ffmpeg.c then?
[15:47:04 CEST] Action: nevcairiel pulls latest code
[15:48:43 CEST] <ubitux> it's in the !streamcopy case in transcode_init
[15:49:04 CEST] <nevcairiel> apparently transcode_init is too late in future changes, or so the commit makes one believe
[15:49:12 CEST] <ubitux> http://git.videolan.org/?p=ffmpeg.git;a=blob;f=ffmpeg.c;h=df55a49eebda5b4ea…
[15:49:15 CEST] <ubitux> this afaict
[15:49:37 CEST] <ubitux> i doubt i can move this in ffmpeg_opt
[15:49:48 CEST] <nevcairiel> appears so
[15:49:58 CEST] <ubitux> it seems to assume stuff like what goes out of the filtergraph etc
[15:52:18 CEST] <nevcairiel> you can always skip it and we will see what needs to be done about other things then, the immediate following commits dont seem to need it, but maybe later
[15:53:04 CEST] <nevcairiel> but its already quite different, so nothing really lost
[18:28:51 CEST] <kierank> any idea if alsa will let you send two mono streams to the same sound card?
[18:44:42 CEST] <BtbN> great, I'm getting a ton of bounces from the ml, because of dkim failures oO
[18:46:20 CEST] <cone-988> ffmpeg 03Timo Rothenpieler 07master:99b823f0a1be: avcodec/mpegvideo_enc: fix memory leak
[18:48:03 CEST] <nevcairiel> its just from one guy, i would guess his stuff is just too aggressive
[18:50:18 CEST] <BtbN> ok, so it's not me messing up my DNS
[18:50:29 CEST] <BtbN> messed around with DNSSEC
[18:51:19 CEST] <wm4> kierank: how does this question even make sense?
[18:51:38 CEST] <kierank> wm4: I want one mono stream on left and another mono stream on right
[18:51:52 CEST] <kierank> with two separate rtp sources
[18:51:57 CEST] <kierank> my question is does alsa mix them or not
[18:52:02 CEST] <BtbN> alsa will probably let you send as many streams as you want. But I doubt you'll be able to set a per-stream balance
[18:52:19 CEST] <BtbN> Provided dmix is set up or the device supports mixing natively
[18:52:36 CEST] <wm4> ALSA is a low level API, so you can access the hw device directly and workaround any plugins
[18:52:46 CEST] <wm4> and then you need to make sure the device itself does no mixing
[19:10:53 CEST] <kierank> hmm might have to try it
[19:17:36 CEST] <JEEB> heh, I had no idea of AVPanScan
[19:31:51 CEST] <wm4> JEEB: I'm sure the only people who know about it hate it
[19:33:49 CEST] <BtbN> wm4, haha, my toughts exactly regarding that ffprobe demuxer.
[19:34:08 CEST] <BtbN> I still haven't understood what the entire point of that thing is.
[19:34:41 CEST] <JEEB> wm4: is it even used anywhere?
[19:35:47 CEST] <wm4> JEEB: no idea, maybe some obscure API user?
[19:36:08 CEST] <JEEB> :D
[19:36:32 CEST] <JEEB> also I'm not sure I understand the position field in it
[19:36:58 CEST] <JEEB> int16_t AVPanScan::position[3][2] : position of the top left corner in 1/16 pel for up to 3 fields/frames
[19:37:26 CEST] <wm4> supposedly due to something with deinterlacing considerations
[19:37:41 CEST] <wm4> s/deinterlacing/interlacing
[20:20:31 CEST] <wm4> what is codecpar->initial_padding actually used for?
[20:20:37 CEST] <wm4> encoding?
[20:23:32 CEST] <jamrial> wm4: amount of samples that need to be discarded before starting decoding, afaik
[20:23:50 CEST] <wm4> it's not used for decoding, though
[20:23:53 CEST] <jamrial> and seeing how it's in codecpar, it's container level info
[20:23:54 CEST] <wm4> not from what I can see
[20:24:05 CEST] <wm4> instead, AVStream fields are used (?)
[20:24:34 CEST] <wm4> like AVStream.start_skip_samples
[20:24:59 CEST] <jamrial> probably because we implemented it one way, then merged libav's implementation
[20:25:13 CEST] <jamrial> can't say, really
[20:25:14 CEST] <wm4> which is turned into AV_PKT_DATA_SKIP_SAMPLES
[20:25:24 CEST] <wm4> which is actually used by libavcodec
[20:25:32 CEST] <wm4> oh right, the API user is supposed to use the codecpar fields
[20:26:13 CEST] <wm4> and AVCodecContext.delay was deprecated
[20:26:26 CEST] <wm4> (still using it in mpv...)
[20:26:27 CEST] <wm4> what a mess
[20:27:14 CEST] <jamrial> deprecated for encoding, acording to its doxy
[20:28:59 CEST] <wm4> hm yeah, I guess that's why the code checks it only for decoding
[20:33:45 CEST] <debianuser> kierank> "any idea if alsa will let you send two mono streams to the same sound card?" -- yes, if played to "default" pcm with no special configs both mono streams would be upmixed to stereo and added together. With a custom config you can do whatever you want, e.g. you can have mono stream added with 0.7 to the left channel and 0.3 to the right one.
[20:33:54 CEST] <kierank> upmixed?
[20:34:01 CEST] <kierank> what happens if i want them discrete?
[20:35:55 CEST] <debianuser> Like, playing one mono stream to left channel and another one to right channel?
[20:36:00 CEST] <kierank> correct
[20:36:16 CEST] <debianuser> Are they produced by the same program or different ones?
[20:36:20 CEST] <kierank> different program
[20:39:10 CEST] <Chloe> wm4: launching nethack?
[20:41:48 CEST] <wm4> undefined behavior
[20:42:05 CEST] <wm4> it seems it returns no value
[20:42:25 CEST] <wm4> actually, not sure if that is UB
[20:42:25 CEST] <debianuser> kierank: Then you can add to your ~/.asoundrc something like:
[20:42:27 CEST] <debianuser> pcm.left { type route; slave.pcm "dmix"; ttable.0.0 1; }
[20:42:29 CEST] <debianuser> pcm.right { type route; slave.pcm "dmix"; ttable.0.1 1; }
[20:42:29 CEST] <wm4> (fuck C)
[20:42:33 CEST] <debianuser> and configure your programs to play to "plug:left" or "plug:right" pcm. Can you configure your programs to play to a custom pcm? Because if it can only play to "default" - we can add one more line to read default pcm from env.variable for example.
[20:43:55 CEST] <kierank> Can add a custom pcm I guess
[20:44:11 CEST] <Chloe> why cant st->time_base be used instead?
[20:46:19 CEST] <jamrial> wm4: gcc 6.2 fails to compile it
[20:46:24 CEST] <debianuser> kierank: e.g. with pcm.!default { @func getenv vars [ ALSA_PCM_DEFAULT ] default "sysdefault" } added to ~/.asoundrc you can run your programs like `ALSA_PCM_DEFAULT=plug:left ./yourprogram`
[20:46:26 CEST] <jamrial> it complains it has no return of any kind
[20:47:07 CEST] <kierank> debianuser: hmmm ok seems a bit complex
[20:47:08 CEST] <jamrial> no idea about other compilers, but failing is certainly the sanest thing to do
[20:57:16 CEST] <debianuser> kierank: Well, I can explain it if you're curious (alsa plugins idea is similar to ffmpeg filters - you build a chain of modules passing the sound to each other, like default=plug->softvol->dmix->hw, and there're modules to reroute channels around). But if those two "left" and "right" pcms work for you - you probably don't need other complex ideas. :)
[21:12:27 CEST] <wm4> jamrial: ok, I guess I still don't know how that stuff is supposed to work, so no more comments from me
[21:18:02 CEST] <jamrial> wm4: apparently, for stream copy, using the codec timebase is needed (or preferable) than copying the input stream timebase
[21:18:10 CEST] <jamrial> a bunch of tests fail if you use the latter, like this one muxing into mxf that refuses to mux anything othewise
[21:18:38 CEST] <Chloe> why is it preferable? shouldnt they always be the same?
[21:19:14 CEST] <jamrial> apparently not in some cases
[21:19:33 CEST] <Chloe> Surely that's an issue then
[21:20:10 CEST] <nevcairiel> some containers dictate odd timebases, like mpegts is always 1/90000, but some other containers may prefer something else entirely
[21:20:23 CEST] <Compn> carl didnt document -dn option? :)
[21:20:24 CEST] <Compn> ehe
[21:21:30 CEST] <nevcairiel> so container timebase doesnt have to be related to the codec framerate at all
[21:22:00 CEST] <nevcairiel> while the codec timebase probably is, if its available at all, that is
[21:22:25 CEST] <Chloe> ah, so the avstream generally relates the the container
[21:22:38 CEST] <Chloe> how do different timebases work with containers and codecs?
[21:22:38 CEST] <nevcairiel> yea
[21:24:04 CEST] <Chloe> is it just soemthing like: 3 ticks on the container is equal to 1 codec tick where the timebases are 1/90000 and 1/30000 (for example)
[21:24:30 CEST] <nevcairiel> container timebases often depend on the container itself, like mpegts i mentioned is always a fixed rate, while some other containers have a global timebase you can set for the entire file, and some for each stream individually
[21:24:55 CEST] <nevcairiel> but it doesnt have to be related to the codec timebase or the frame rate at all
[21:26:30 CEST] <nevcairiel> the codec timebase isnt really used for much, which is why its often a hot topic for discussion, since it seems to mostly be used as a hacky thing for some weird special cases
[21:28:36 CEST] <wm4> (I still don't get it)
[21:31:19 CEST] <Chloe> so if time base is handled by the container, why would the codec have a different one?
[21:31:34 CEST] <Chloe> is it just a hack, or do some codecs actually have time bases?
[21:34:35 CEST] <wm4> there's actually no decoder which requires real timestamps (and thus a timebase), except external wrappers
[21:38:55 CEST] <nevcairiel> some codecs have it yes
[21:39:06 CEST] <nevcairiel> but as wm4 says, decoders dont really need it
[21:39:17 CEST] <nevcairiel> encoders typically write it when they have fps info for rate control
[21:39:53 CEST] <nevcairiel> h264 has some timestamping info to generate timestamps from a raw stream, but avcodec doesnt use it (although it did at a time)
[21:43:00 CEST] <cone-988> ffmpeg 03Michael Niedermayer 07master:69449da43616: avcodec/ansi: Check dimensions
[00:00:00 CEST] --- Tue Sep 27 2016
1
0
[00:01:10 CEST] <TwinTailed> btw, why the output video mp4 doesn't have metadata? No title, no duration, no resolution, even though i have done av_dict_copy from the input video
[00:02:38 CEST] <TwinTailed> I am also passing the AVDictionary to write_header
[01:23:49 CEST] <gestahlt> Hi
[01:24:30 CEST] <durandal_1707> hi
[01:24:35 CEST] <gestahlt> I want to stream a docker desktop for screen recording to a v4l2loopback device (/dev/video1). I passed the device (i can access and write to it) but ffmpeg fails me.. (i even tried it on the regular desktop and it didnt work). I dont know what i do wrong
[01:24:47 CEST] <gestahlt> here is what i try to do: ffmpeg -f x11grab -r 30 -s 1600x1200 -i :0.0+0,0 -vcodec rawvideo -threads 0 -f v4l2 /dev/video1
[01:25:12 CEST] <gestahlt> and this is the errormessage: Could not write header for output file #0 (incorrect codec parameters ?): Invalid argument
[01:25:27 CEST] <gestahlt> and also: [v4l2 @ 0x560046ce4e40] ioctl(VIDIOC_G_FMT): Invalid argument
[01:25:40 CEST] <gestahlt> I googled quite a bit, but no clue where i go wrong
[01:26:03 CEST] <gestahlt> both enviroments give me the same error (the real and the xvfb one). They also are different distributions (arch / ubuntu)
[01:26:50 CEST] <durandal_1707> check what pixel formats are supported
[01:27:41 CEST] <gestahlt> bgr0
[01:27:46 CEST] <durandal_1707> For v4l2 device
[01:27:52 CEST] <gestahlt> yeah bgr0
[01:28:35 CEST] <gestahlt> thats what v4l2-ctl --all tells me
[01:28:47 CEST] <durandal_1707> and what x11grab gives?
[01:28:55 CEST] <gestahlt> Dont know?
[01:29:04 CEST] <gestahlt> Uh how can i check that?
[01:29:45 CEST] <durandal_1707> look at ffmpeg output
[01:31:28 CEST] <gestahlt> ?
[01:31:41 CEST] <gestahlt> I can create a mpeg file?
[01:34:52 CEST] <durandal_1707> look description of x11grab input
[01:35:27 CEST] <durandal_1707> with command that fails
[01:35:47 CEST] <gestahlt> https://www.ffmpeg.org/ffmpeg-devices.html#x11grab
[01:41:05 CEST] <gestahlt> uh
[01:41:14 CEST] <gestahlt> No idea what to do
[01:41:41 CEST] <gestahlt> i can create files
[01:41:44 CEST] <gestahlt> no problem
[01:41:51 CEST] <gestahlt> except with "rawvideo"
[01:41:58 CEST] <gestahlt> it does create a file but is not readable by vlc
[01:46:08 CEST] <furq> gestahlt: pastebin the full output
[02:00:51 CEST] <gestahlt> http://pastebin.com/6cBhqexe
[02:44:42 CEST] <gestahlt> I just tried it ffserver and streamed to mpeg.. it does work (bad quality too, and has lots of issues) but at least it proves that it streams from the desktop
[02:44:56 CEST] <gestahlt> so the only issue is getting the output to /dev/video1 (v4l2loopback)
[03:17:48 CEST] <gestahlt> Hm
[03:17:52 CEST] <gestahlt> Maybe i do it wrong
[03:17:57 CEST] <gestahlt> i only need a stream
[03:17:59 CEST] <gestahlt> nothing else
[03:18:14 CEST] <gestahlt> It doesnt have to be a v4l2 device
[03:18:35 CEST] <gestahlt> I just need to be able to read from it (via opencv which uses ffmpeg libs anyway)
[03:19:08 CEST] <gestahlt> a "normal" video file does not suffice. It must be a stream (fixed size)
[03:19:52 CEST] <gestahlt> the less components i need, the better
[03:48:27 CEST] <gestahlt> YAY
[03:48:27 CEST] <gestahlt> ffmpeg -f x11grab -r 30 -s 1600x1200 -i :0.0+0,0 -f mpeg -threads 0 pipe:1 > /tmp/ffmpegpipe
[03:48:34 CEST] <gestahlt> That pretty much does it
[03:48:56 CEST] <gestahlt> Only quality is an issue
[03:49:05 CEST] <gestahlt> I need better quality
[03:50:48 CEST] <gestahlt> CPU is also pretty acceptable this way
[03:50:48 CEST] <gestahlt> yay
[03:50:51 CEST] <gestahlt> awesome
[03:51:15 CEST] <c_14> what codec is that using?
[03:51:24 CEST] <c_14> You'll probably want libx264
[03:51:29 CEST] <furq> mpeg1video
[03:51:31 CEST] <c_14> just set crf for quality and preset for speed
[03:51:40 CEST] <c_14> Yeah, you won't want mpeg1 (most likely)
[03:51:47 CEST] <furq> if it's going to a pipe then just use rawvideo
[03:52:43 CEST] <gestahlt> i couldnt open it with vlc with rawvideo
[03:52:51 CEST] <gestahlt> but i try again
[03:52:55 CEST] <furq> -f nut -c:v rawvideo
[03:53:01 CEST] <furq> i'm pretty sure nut is streamable
[03:54:16 CEST] <gestahlt> yeah
[03:54:19 CEST] <gestahlt> PERFECT
[03:54:21 CEST] <gestahlt> Thanks!
[03:54:33 CEST] <gestahlt> took me now a week to figure that stuff all out
[03:54:48 CEST] <gestahlt> Having a full desktop running as docker container
[03:54:51 CEST] <gestahlt> xvfb issues
[03:54:56 CEST] <gestahlt> and finally streaming
[03:54:59 CEST] <gestahlt> i could kiss you
[03:55:31 CEST] <gestahlt> And its completly in sync
[03:55:39 CEST] <gestahlt> with the desktop that shows in vnc
[03:56:03 CEST] <gestahlt> cpu usage is still good
[03:56:22 CEST] <furq> that should barely touch the cpu
[03:56:29 CEST] <furq> the only issue would be memory usage if you don't read from the pipe fast enough
[03:56:33 CEST] <furq> assuming /tmp is a tmpfs
[03:56:54 CEST] <gestahlt> it is
[03:57:07 CEST] <gestahlt> on this box i got plenty
[03:57:18 CEST] <furq> it shouldn't be an issue if you're reading frames as soon as they come in
[03:57:24 CEST] <gestahlt> i will set up a server anyway for this stuff.. i can throw so much mem in it
[03:58:08 CEST] <furq> that'll be something like 175MB/s, so you can imagine that adds up pretty fast
[03:58:16 CEST] <gestahlt> yepp
[03:59:04 CEST] <gestahlt> But having memory deal with it is just awesome. I was worried because of disk usage and lags due limited disk i/o. My plan was do create a ramdisk if i need diskio
[03:59:09 CEST] <gestahlt> but this is just the way i need it
[03:59:23 CEST] <furq> a tmpfs is pretty much a ramdisk
[03:59:27 CEST] <gestahlt> yepp
[03:59:53 CEST] <gestahlt> I wasnt thinking of that until you mentioned (didnt thought about using tmp.. i use tmp always for this kind of stuff until i figure out where it belongs)
[04:00:09 CEST] <gestahlt> and also good to know because when i put it on the servers, i will stick to tmpfs
[04:00:16 CEST] <furq> well this is a good candidate for /tmp anyway
[04:00:25 CEST] <furq> i doubt the old stream data is of any use after a reboot
[04:00:30 CEST] <gestahlt> yep.
[04:01:03 CEST] <gestahlt> I tried desperatly to write it as a v4l2 device. I read up on opencv more and there was stated, everything ffmpeg reads is fine
[04:01:06 CEST] <gestahlt> so
[04:01:08 CEST] <gestahlt> perfect
[04:01:26 CEST] <gestahlt> no additional devices.. i can keep security tight (v4l2 need privileged containers)
[04:02:18 CEST] <gestahlt> lol size accumulates pretty quickly
[08:46:43 CEST] <monery> gretings channel, I am not sure where I should be talking. Here for devel... got an error message when trying to use nvenc, As far as I know, I got the drivers and cuda from ubuntu repositories, 16.04 is version Iam on for OS
[08:49:04 CEST] <monery> haven't been able to find anything on 0x39007c0 nvEncodeAPIGetMaxSupportedVersion on google
[08:49:24 CEST] <monery> I'll check in after I get some sleep
[10:52:57 CEST] <golserma> If I'm compiling ffmpeg just for myself and I'd like to have all encoders avaiable to me do i --enable-gpl or not?
[10:53:44 CEST] <furq> you can't link against gpl libs without --enable-gpl
[10:54:49 CEST] <golserma> I need libfdk_aac and x264
[10:54:55 CEST] <golserma> so i enable libfdk_aac gpl and nonfree?
[10:54:59 CEST] <furq> yes
[10:55:02 CEST] <furq> and libx264
[10:55:27 CEST] <furq> enable-gpl is somewhat redundant since that binary isn't redistributable anyway
[10:55:48 CEST] <furq> but that's just how it is
[10:57:07 CEST] <golserma> I'm crosscompiling using mxe :/ for windows 64bit
[10:59:27 CEST] <golserma> The guid I'm using uses mp4box is this till a decent demultiplexer?
[11:00:08 CEST] <golserma> It uses neroaac too whitch crashes all the time for me :(
[11:06:16 CEST] <furq> guide for what
[11:21:32 CEST] <golserma> It is an old virtualdub howto. It uses external encoders. x264 for the video, nero aac for audio and mp4box to demux
[11:22:24 CEST] <golserma> Since somehow nero aac does not work on my windows pc I'm using ffmpeg (fdk_aac) for audio
[11:23:03 CEST] <furq> just use ffmpeg for the whole thing
[11:24:40 CEST] <golserma> The plan is to get it working and then switch everything to ffmpeg :)
[14:16:29 CEST] <nettezzz> hello folks
[14:18:30 CEST] <nettezzz> I'd like to request a little help with capturing my desktop
[14:18:40 CEST] <nettezzz> I am using this cmdline: ffmpeg -f x11grab -framerate 25 -video_size 1600x900 -i $DISPLAY -c:v libx264 -qp 0 -preset ultrafast tmp/x11_out.mp4 -f alsa -i default -c:a flac tmp/audio_out.wav
[14:19:13 CEST] <nettezzz> video part is good, but the sound is if I capture it using a mic ..... it's just not captured clearly
[14:19:52 CEST] <nettezzz> how do I capture using alsa or pulse the sound in the possibly the most clear phone like if I was `fishing' over the pcm channel ?
[14:20:03 CEST] <nettezzz> s/phone/form/
[14:20:52 CEST] <nettezzz> and btw, ffmpeg rocks, it's just a swiss-knife
[14:36:43 CEST] <mbarisa> hi guys, I have issues compiling ffmpeg for android with SSL support, tried everything.. but all that I try I end up with ERROR: openssl not found
[14:36:50 CEST] <mbarisa> can someone point me in right direction
[14:37:18 CEST] <mbarisa> i tried to compile openssl separate, that is fine, added /include and /lib where for other libs is.. and still can't find it
[14:45:33 CEST] <nettezzz> mbarisa: use .pc file for that
[14:46:06 CEST] <nettezzz> don't bother with libs or include, just PKG_CONFIG_PATH=/where/your/openssl.pc/is
[14:46:29 CEST] <nettezzz> moreover, check, if you ain't missing an openssl-dev package or such like
[14:48:51 CEST] <nettezzz> mbarisa: look for this /usr/lib64/pkgconfig/openssl.pc
[14:49:13 CEST] <nettezzz> but path might differ regarding your distro or custom openssl built
[14:55:44 CEST] <mbarisa> and where do I add that in my config params
[14:56:02 CEST] <furq> you don't
[14:56:09 CEST] <furq> just set PKG_CONFIG_PATH
[14:56:18 CEST] <mbarisa> and it will compile it for android
[14:56:22 CEST] <mbarisa> hmm
[14:56:32 CEST] <furq> if you're compiling for android then you probably don't want your system openssl pkg-config path
[14:56:49 CEST] <mbarisa> yes, I am compiling for android
[14:56:51 CEST] <furq> unless you installed the package with multiarch or something
[14:57:28 CEST] <mbarisa> i compiled openssl in /usr/local/ssl/..
[14:57:51 CEST] <mbarisa> http://pastebin.com/dd5WuBav
[14:58:06 CEST] <mbarisa> I tried to include SSL flags in cf and ld flags, but that doesn't pass as well
[14:58:14 CEST] <nettezzz> mbarisa: find /usr/local/ssl -type f -iname *.pc
[14:58:43 CEST] <nettezzz> mbarisa: again, configure your PKG_CONFIG_PATH for that ...
[14:58:53 CEST] <nettezzz> doing it manually is overkill
[14:58:58 CEST] <furq> you're not actually using SSL_EXTRA_LDFLAGS anywhere
[14:59:14 CEST] <furq> or _CFLAGS
[14:59:20 CEST] <mbarisa> yeah I am not at the moment, as it is not working
[14:59:30 CEST] <mbarisa> /usr/local/ssl/android-18/lib/pkgconfig/openssl.pc
[14:59:30 CEST] <mbarisa> /usr/local/ssl/android-18/lib/pkgconfig/libssl.pc
[14:59:31 CEST] <mbarisa> /usr/local/ssl/android-18/lib/pkgconfig/libcrypto.pc
[14:59:39 CEST] <furq> add that directory to PKG_CONFIG_PATH
[14:59:39 CEST] <mbarisa> those are paths for that find
[15:00:06 CEST] <mbarisa> and ffmpeg will know how to search for that?
[15:00:10 CEST] <furq> yes
[15:00:13 CEST] <mbarisa> do i need to enable-gnutls as well?
[15:00:21 CEST] <furq> i doubt it
[15:00:25 CEST] <mbarisa> ok thanks
[15:00:39 CEST] <furq> you would normally use gnutls instead of openssl
[15:00:45 CEST] <furq> at least that's how i use it
[15:01:11 CEST] <mbarisa> I added PKG_CONFIG_PATH=/usr/local/ssl/android-18/lib/pkgconfig/
[15:01:32 CEST] <mbarisa> Let's wait again 1 hour :)
[15:01:57 CEST] <furq> it would presumably help if you were setting $NUMBER_OF_CORES
[15:02:49 CEST] <mbarisa> i have 1 core on server :)
[15:02:56 CEST] <furq> oh fun
[15:03:29 CEST] <mbarisa> Since friday was a headache :D
[15:05:26 CEST] <mbarisa> I got again ERROR: openssl not found
[15:05:36 CEST] <nettezzz> btw, I hate android so much :D
[15:05:47 CEST] <furq> pastebin the last 100 lines or so of config.log
[15:06:27 CEST] <nettezzz> furq: why not that whole log :D
[15:06:46 CEST] <furq> because i don't want it to lock up my browser while it loads 40k lines
[15:07:20 CEST] <nettezzz> it won't lock your browser but whatever you say ;)
[15:07:37 CEST] <furq> it has done and will do that
[15:08:02 CEST] <furq> especially if it's pastebin.com which helpfully makes it 80k lines by having an editbox at the bottom that nobody ever uses
[15:08:58 CEST] <nettezzz> oh this, maybe the ppl shall learn themselves that they should give a link to raw paste whenerver possible and that they should not use pastebin.com - the most stupid and by adverts weeded pastebin site
[15:09:53 CEST] <nettezzz> furq: _paste() { _infile=/dev/stdin; test -z "$1" || _infile="$1"; curl -F 'sprunge=<-' http://sprunge.us < "$_infile"; }
[15:10:30 CEST] <mbarisa> http://pastebin.com/vx4UD43S
[15:10:38 CEST] <furq> nettezzz: http://vpaste.net/y0S07
[15:11:12 CEST] <furq> http://vpaste.net/q1qDm
[15:11:13 CEST] <furq> or that, rather
[15:11:18 CEST] <nettezzz> furq: nice, it's same like mine ;)
[15:11:36 CEST] <furq> mine even used to be sprunge.us
[15:11:46 CEST] <furq> until they ran out of app engine quota one month and i switched to something less flaky
[15:12:00 CEST] <nettezzz> oh really o.O
[15:12:18 CEST] <mbarisa> does anyone have another idea except PKG_CONFIG_PATH
[15:12:19 CEST] <furq> i'm not entirely happy with vpaste but it'll do
[15:12:20 CEST] <nettezzz> ok, let's back to the topic .... I originally asked a question for myself, still without reply
[15:13:11 CEST] <nettezzz> http://susepaste.org/view/raw/28184838
[15:13:17 CEST] <nettezzz> here is my original question
[15:13:33 CEST] <furq> mbarisa: what does `PKG_CONFIG_PATH=/usr/local/ssl/android-18/lib/pkgconfig/ pkg-config --cflags openssl` return
[15:13:52 CEST] <mbarisa> -I/usr/local/ssl/android-18/include
[15:14:02 CEST] <nettezzz> furq: I can tell you, that shall return ..... heh, he was faster
[15:14:47 CEST] <furq> it's probably not good that that directory isn't showing up in config.log
[15:15:23 CEST] <nettezzz> btw, if anybody replies my question I'd be very glad, if I'm capturing own sound with ``-f alsa -i default -c:a flac'' it sounds like it's captured by mic
[15:15:56 CEST] <mbarisa> furq: I guess, but have no idea why is that
[15:15:56 CEST] <nettezzz> so I can hear a hits to keyboard ... same with -f pulse .... I was checking other sources too (eg ffmpeg -sources)
[15:16:01 CEST] <mbarisa> i exported PKG_CONFIG_PATH
[15:16:03 CEST] <iive> well, probably because it is captured by mic
[15:16:10 CEST] <furq> i'm not sure how -c:a flac tmp/audio_out.wav is even working
[15:16:29 CEST] <nettezzz> iive: good .... it just records the sound, but from outside
[15:16:46 CEST] <furq> i doubt that's the problem but it should either be -c:a wav or audio_out.flac
[15:16:55 CEST] <nettezzz> yeah
[15:17:05 CEST] <nettezzz> but that's indeed not a problem
[15:17:22 CEST] <furq> i guess -i default is picking your mic
[15:17:52 CEST] <furq> https://trac.ffmpeg.org/wiki/Capture/ALSA#Selectingtheinputcard
[15:18:12 CEST] <nettezzz> ffmpeg -sources shows this: http://susepaste.org/view/raw/85701597
[15:18:29 CEST] <nettezzz> furq: ok, thanks for a link, just opening it
[15:19:55 CEST] <mbarisa> I added now .pc files where files from other libs are, because other libs like freetype or libass or libpng are in toolchain_android/lib/pkgconfig/
[15:21:18 CEST] <debianuser> nettezzz: Are you trying to capture whatever is playing now?
[15:21:47 CEST] <nettezzz> debianuser: ideally I'd like to capture just what goes through alsa/pulse pcm channel (so all without mic)
[15:22:05 CEST] <nettezzz> debianuser: and to your question - yes, exactly
[15:23:04 CEST] <nettezzz> debianuser: I just to fully record my desktop - video part is fine (even finer than I expected, quality is good and the cpu utilization low with the reasonably big file)
[15:23:05 CEST] <iive> there are some examples with snd-aloop at the end of the webpage from above.
[15:24:12 CEST] <debianuser> nettezzz: Ok, it's just there're many ways, depending on your audio system and hardware. You can manually connect it in jackd patchbay or select "Monitor" in `pavucontrol` if you have pulseaudio. For plain alsa you can use virtual snd-aloop "Loopback" card or your hardware card, if it supports loopback. Some hda-intel-based cards can be configured for hardware loopback. :)
[15:24:28 CEST] <nettezzz> debianuser: good, thanks
[15:24:41 CEST] <debianuser> nettezzz: Can you show show more details about your sound system? You can use alsa-info script: https://wiki.ubuntu.com/Audio/AlsaInfo it should automatically suggest you to upload your data and give you a link to it (you can run it as a regular user, it doesn't need root).
[15:24:42 CEST] <nettezzz> yeah, good tip
[15:25:06 CEST] <nettezzz> debianuser: I have just standard suse with pulseaudio, I can show ya aplay -L
[15:25:34 CEST] <nettezzz> debianuser: http://susepaste.org/view/raw/89338224
[15:27:24 CEST] <nettezzz> debianuser: I think that the answer to my question is in here https://trac.ffmpeg.org/wiki/Capture/ALSA#Selectingtheinputcard .... I consider it almost solved, I'll play with that for a while and will resolve that for sure
[15:28:34 CEST] Action: nettezzz brbs for meeting ... adiue for now !!!
[15:29:51 CEST] <debianuser> nettezzz: Actually, if you're using pulseaudio it's better to record it from default input (`ffmpeg -f alsa -i default ...`), but manually set that default input for ffmpeg in `pavucontrol` on "Recording" tab.
[15:38:38 CEST] <debianuser> nettezzz: or, if your ffmpeg was built with pulse support you can try using pulse directly (`ffmpeg -f pulse -i your-pulse-source-here ...`, see `pactl list sources` for the list), also see https://ffmpeg.org/ffmpeg-devices.html#pulse or https://trac.ffmpeg.org/wiki/Capture/Desktop
[15:39:05 CEST] <mbarisa> can someone help me? or is there a prebuilt ffmpeg for android with https support?
[17:10:43 CEST] <TwinTailed> JEEB: Hi, I am the annoying guy from yesterday, I came to annoy you today. boxdumper is failing to dump my mp4 file
[17:12:44 CEST] <TwinTailed> JEEB: Failed to dump box structure.
[17:20:17 CEST] <Paranoialmaniac> TwinTailed: then, the file is broken
[17:21:01 CEST] <TwinTailed> Paranoialmaniac: Is boxdumper supposed to output a dump file? Or just on screen text?
[17:22:14 CEST] <v4ult> I am struggling to work out which argument is invalid. please help? http://pastebin.com/0rwg499M
[17:22:22 CEST] <Paranoialmaniac> TwinTailed: stdout text
[17:23:17 CEST] <c_14> v4ult: [mp4 @ 0x7fb02a007800] Could not find tag for codec pcm_s24le in stream #0, codec not currently supported in container
[17:23:40 CEST] <c_14> If you want pcm in your output you'll have to use mov afair
[17:24:23 CEST] <TwinTailed> Paranoialmaniac: Do you know which ISO/IEC documentation has the packet structure for MP41?
[17:25:28 CEST] <Paranoialmaniac> packet structures are defined by the spec of encapsulation of each codec. not specific for mp41
[17:26:52 CEST] <Paranoialmaniac> if your question is specific for mpeg-4 codec, then the spec is 14496-14
[17:27:59 CEST] <TwinTailed> Paranoialmaniac: What is the best way to check the packets or the corruption in the MP4? Since its playing normally using VLC, but not with WMP
[17:29:27 CEST] <Paranoialmaniac> TwinTailed: first, you should confirm your file is mp4 or not. use ffprobe
[17:30:48 CEST] <TwinTailed> Paranoialmaniac: major_brand : isom
[17:31:03 CEST] <TwinTailed> Video: h264 (High) (avc1 / 0x31637661)
[17:31:11 CEST] <TwinTailed> Audio: aac (mp4a / 0x6134706D)
[17:31:39 CEST] <Paranoialmaniac> i wonder why boxdumper failed to dump
[17:32:11 CEST] <Paranoialmaniac> no dump at all?
[17:32:37 CEST] <TwinTailed> there is dump
[17:32:47 CEST] <TwinTailed> it stops at
[17:32:48 CEST] <TwinTailed> [avcC: AVC Configuration Box]
[17:32:48 CEST] <TwinTailed> position = 21792570
[17:32:48 CEST] <TwinTailed> size = 8
[17:32:48 CEST] <TwinTailed> Failed to dump box structure.
[17:32:58 CEST] <TwinTailed> i will pastebin it
[17:33:07 CEST] <Paranoialmaniac> obviously, broken
[17:33:24 CEST] <TwinTailed> http://pastebin.com/njj1mUH9
[17:33:30 CEST] <Paranoialmaniac> the size of the avcC must not be 8
[17:34:57 CEST] <TwinTailed> I am just using Libav's demux/mux and decode/encode functions, its not like I am manually writing to the file
[17:35:03 CEST] <TwinTailed> why is it corrupting
[17:35:31 CEST] <Paranoialmaniac> at least major_brand has nothing to do with it i think
[17:35:44 CEST] <TwinTailed> might this warning be it?
[17:35:45 CEST] <TwinTailed> [mp4 @ 0036cfe0] track 1: codec frame size is not set
[17:38:19 CEST] <TwinTailed> Paranoialmaniac: What might the problem be?
[17:38:31 CEST] <Paranoialmaniac> dunno
[17:38:38 CEST] <Paranoialmaniac> the warning is related to audio
[17:42:20 CEST] <TwinTailed> Paranoialmaniac: Where can I find the packet structure? What is its ISO name?
[17:43:27 CEST] <Paranoialmaniac> you need 14496-1, 14496-3, 14496-12, 14496-14, 14496-15 for avc+aac-in-mp4
[17:44:42 CEST] <flux> twintailed, I think that error is probably fatal. so how do you generate the file?
[17:45:03 CEST] <TwinTailed> flux: its not fatal since its continuing normally
[17:45:18 CEST] <Paranoialmaniac> it's fatal
[17:45:36 CEST] <Paranoialmaniac> the file is completely broken
[17:46:35 CEST] <TwinTailed> it should be set with oCodecCtx->frame_size = iCodecCtx->frame_size?
[17:46:59 CEST] <flux> well, according to source file it then sets some vbr flag on and carries on, so perhaps it will work. but doesn't hurt to set it.
[17:47:02 CEST] <flux> twintailed, sounds reasonable
[17:47:20 CEST] <TwinTailed> flux: But it still doesn't work even with that code line
[17:47:49 CEST] <TwinTailed> the warning is still there
[17:48:25 CEST] <flux> twintailed, perhaps you don't copy codec extradata
[17:48:45 CEST] <flux> though I wonder why it fails to dump the box structure
[17:48:46 CEST] <TwinTailed> flux: I don't
[17:49:17 CEST] <flux> MP4Box of gpac can do MP4Box -v -diso foo.mp4, perhaps it will give more information
[17:49:22 CEST] <flux> or just plain old hex editor
[17:49:38 CEST] <TwinTailed> flux: how to copy extradata?
[17:50:28 CEST] <flux> twintailed, codecpar comes with field extradata and extradata_size
[17:50:40 CEST] <flux> make a copy of the data from the original codecpar you have
[17:50:48 CEST] <TwinTailed> i can't copy codecpar, mp4 failes, since it doesn't support codec_tag
[17:51:45 CEST] <TwinTailed> if you are meaning to use AVCodecParameter
[17:53:37 CEST] <flux> yes
[17:53:52 CEST] <Paranoialmaniac> ????
[17:53:58 CEST] <TwinTailed> tried copying extradata
[17:54:00 CEST] <TwinTailed> didn't work
[17:54:09 CEST] <flux> did it change the dump?
[17:54:49 CEST] <flux> maybe it was able to pass that aac configuration by some other means, meaning it might not have affected nothing. alternatively, it fixed something else that was broken ;)
[17:55:52 CEST] <TwinTailed> flux: ypu :)
[17:55:54 CEST] <TwinTailed> yup
[17:56:03 CEST] <TwinTailed> flux: WMP can play the file too, but just audio no video
[17:56:08 CEST] <TwinTailed> flux: Thanks :)
[17:56:21 CEST] <flux> great :)
[17:56:30 CEST] <flux> I guess you're missing the same for video then?
[17:57:05 CEST] <TwinTailed> flux: No did for the video
[17:57:33 CEST] <flux> twintailed, how about the dump?
[17:57:44 CEST] <TwinTailed> flux: works
[18:05:33 CEST] <TwinTailed> flux: Do you think I am missin something for the video to no work? Its just black screen with audio playing, thats just on WMP though, VLC works
[18:10:19 CEST] <pi_____> WMP has missing codec :)
[18:11:21 CEST] <TwinTailed> pi_____:problem not from my video?
[18:15:07 CEST] <TwinTailed> doubt that, it also doesn't work with QuickTime player
[18:36:09 CEST] <TwinTailed> Are there and codec properties that without them an mp4 (AVC + AAC) video would not work?
[18:36:27 CEST] <TwinTailed> on Windows media player, but on VLC it is working even now
[18:40:13 CEST] <mbarisa> hi guys, can anyone help me with ERROR: openssl not found when building ffmpeg with SSL for android
[18:40:21 CEST] <mbarisa> I cannot seem to solve it for days :)
[20:02:09 CEST] <persina> I'm trying to make a video out of images csci_1880_1890.png, csci_1881_1891.png, csci_1882_1892.png, etc. using csci_%4d_%4d.png is not working?
[20:10:30 CEST] <DHE> doesn't work that way, only one instance of '%d' is allowed in the filename
[20:14:41 CEST] <persina> DHE: So I can't have two variable years in the filename?
[20:16:55 CEST] <DHE> pretty sure the answer is no...
[20:34:54 CEST] <flux> how it would end up with those filenames anyway?
[20:38:42 CEST] <persina> flux: What do you mean?
[20:39:55 CEST] <DHE> you'd need two different counters
[20:46:04 CEST] <flux> persina, even if it did support two %04d, it would logically end up with foo_0001_0001.png, foo_0002_0002.png etc
[20:46:30 CEST] <flux> persina, the solution is to create just foo_0001.png etc, and rename the files after running FFmpeg
[20:46:59 CEST] <persina> flux: OK thanks, got it.
[21:22:05 CEST] <persina> How do I make mp4 loop indefinitely?
[21:24:10 CEST] <Alexey__> AFAIK it can be done only at the player level; not at the format level
[21:24:32 CEST] <Alexey__> for example you can setup VLC to loop 1 or loop whole directory.
[21:24:36 CEST] <Alexey__> VLC media player
[21:45:33 CEST] <lavalike> hi, I have an mkv file with a video track of 43min1s, an audio track of the same length, but mediainfo shows Duration: 1h24m under General, I thought I could change that with mkvpropedit, but it can't, can I do it with ffmpeg?
[21:47:49 CEST] <kepstin> lavalike: well, you could try using ffmpeg in streamcopy mode to remux to a new mkv file, that might fix it. `ffmpeg -i original.mkv -map 0 -c copy new.mkv`
[21:50:00 CEST] <lavalike> kepstin: that's a good idea, I just tried, the files have different checksums but the duration is still wrong
[21:50:38 CEST] <lavalike> maybe I could tell ffmpeg to only copy up to 43m1s?
[21:51:04 CEST] <kepstin> hmm, could you pastebin the complete output of that ffmpeg command^^ that might have some explanation as to what happened.
[21:52:01 CEST] <lavalike> kepstin: sure thing
[21:53:18 CEST] <lavalike> kepstin: http://pastebin.com/raw/GAC8fcn5
[21:54:01 CEST] <kepstin> lavalike: well, it's pretty clear if you read that - your subtitle track is 1:24 long :)
[21:54:18 CEST] <lavalike> kepstin: geeze!
[21:54:32 CEST] <lavalike> now *that* I can fix with mkvthingamagij I believe
[21:55:04 CEST] <kepstin> I'm not sure if it'll work with streamcopy mode, but throwing a "-shortest" on that ffmpeg command might trim the subs for you.
[21:55:28 CEST] <lavalike> worth a try
[21:55:42 CEST] <lavalike> nope.
[21:57:59 CEST] <kepstin> hmm, might work if you "transcode" the subtitles by adding e.g. "-c:s subrip" (or "-c:s ass")
[21:59:04 CEST] <lavalike> does it mattere where I add those two options in the command line?
[21:59:22 CEST] <kepstin> yes. they have to be after the input file and before the output file
[21:59:32 CEST] <lavalike> ok so that I did correctly, no dice
[21:59:35 CEST] <kepstin> the "-c:s" option has to be after the "-c" option
[22:00:24 CEST] <lavalike> at the very least -map -0:s does fix it, getting rid of the subtitles
[22:00:35 CEST] <lavalike> that is good enough, thank you for the creativity kepstin :)
[22:03:01 CEST] <SouLShocK> when targeting multiple outputs, is it possible to make ffmpeg encode each output in parallel, so they don't affect each other's performance? I'm trying to target 2xmp3 and 2xaac at the same time
[22:03:03 CEST] <mbarisa> exit
[22:04:02 CEST] <SouLShocK> and since encoding 1 mp3 output takes about 10% cpu I figure I can run multiple
[22:05:02 CEST] <BtbN> just run ffmpeg multiple times
[22:05:15 CEST] <BtbN> ffmpeg is single threaded.
[22:05:23 CEST] <SouLShocK> ok
[22:05:29 CEST] <BtbN> so even when using multiple encoders, they will be run in sequence
[22:06:03 CEST] <SouLShocK> yeah ok. multiple ffmpeg processes is the answer
[22:08:21 CEST] <SouLShocK> cheer
[22:08:24 CEST] <SouLShocK> cheers
[22:08:59 CEST] <TwinTailed> [libav] Windows Media Player only plays the audio of my .mp4 file, video is just a black screen, however it works on VLC and Classic Media Player
[22:10:18 CEST] <technologov> TwinTailed, please check which codec do you use. It can be MPEG-4 or MPEG-4-AVC or HEVC or anything else...
[22:10:34 CEST] <TwinTailed> technologov: its avc
[22:10:35 CEST] <technologov> in VLC; Tools menu->codec information
[22:10:44 CEST] <technologov> which Windows is it ?
[22:10:52 CEST] <technologov> XP/7/10 ?
[22:10:56 CEST] <TwinTailed> 8.1
[22:11:09 CEST] <TwinTailed> Codec: H264 - MPEG-4 AVC (part 10) (avc1)
[22:11:14 CEST] <technologov> hmmm... 7+ supports MPEG-4-AVC out-of-the-box, really.
[22:11:29 CEST] <TwinTailed> i know that, its probably a problem in my code
[22:11:51 CEST] <TwinTailed> might i have forgotten a property i should set in codec context
[22:12:54 CEST] <technologov> TwinTailed, try on a clean Windows 7 (another PC or VirtualBox)
[22:13:16 CEST] <technologov> maybe you have bad video drivers or broken codec
[22:13:31 CEST] <technologov> it should not happen, but anything *can* happen
[22:13:32 CEST] <TwinTailed> why cant it be a problem with my code?
[22:13:58 CEST] <technologov> I dunno, but everything of MPEG-4-AVC variety works like a charm on my Win7 systems.
[22:14:52 CEST] <JEEB> it's his code failing at life
[22:16:02 CEST] <TwinTailed> JEEB: and JEEB here will help me fix it
[22:16:34 CEST] <JEEB> I have patches to send to FFmpeg instead :P
[22:16:52 CEST] <TwinTailed> JEEB: patches can wait :D
[22:17:00 CEST] <TwinTailed> JEEB: I can't catch you online everyday
[22:17:01 CEST] <JEEB> so if someone wants to fix your code for you, they can feel free to do that
[22:17:12 CEST] <TwinTailed> you "help" me fix it
[22:17:38 CEST] <TwinTailed> about the problem from yesterday, I have fixed it by copying extradata and extradata_size to the codec context
[22:18:02 CEST] <TwinTailed> Windows media player can now play my video file, but the video itself doesn't show, only audio plays
[22:18:43 CEST] <JEEB> post an `ffprobe file.mp4` of your output onto a pastebin-like site of your choice
[22:18:46 CEST] <JEEB> and then link here
[22:23:02 CEST] <TwinTailed> JEEB: http://pastebin.com/VtLdAhrf
[22:23:50 CEST] <JEEB> TwinTailed: now with "-v debug" before the file name
[22:24:45 CEST] <TwinTailed> JEEB: Is there an option to output to file?
[22:25:09 CEST] <JEEB> 2> file.txt
[22:25:15 CEST] <JEEB> at the end of your command line
[22:26:49 CEST] <TwinTailed> thats using bash, im on windows now
[22:27:02 CEST] <JEEB> that works with cmd.exe
[22:29:13 CEST] <TwinTailed> JEEB: pastebin is under "heavy load" -_-
[22:29:55 CEST] <JEEB> use github's gists or any other of the over 9000 alternatives
[22:31:20 CEST] <TwinTailed> JEEB: http://pastebin.com/4cYhHwdM
[22:41:36 CEST] <TwinTailed> JEEB: Does the ffprobe give any hints?
[22:57:16 CEST] <ss22ever22> Hi,I am a newbie and want to know how to get started
[22:57:52 CEST] <TwinTailed> JEEB: Did the log help?
[23:12:28 CEST] <TwinTailed> JEEB, still there?
[23:22:29 CEST] <mbarisa> hey guys, now after adding openssl, it cannot LINK EXECUTABLE, missing libssl.so.1.0.0
[23:22:40 CEST] <mbarisa> can't i wrap it inside my binary?
[23:38:13 CEST] <DHE> not in .so format. you need the .a to do that
[23:49:02 CEST] <mbarisa> DHE: I have *.a as well, but have no idea how to add
[00:00:00 CEST] --- Tue Sep 27 2016
1
0
[00:08:53 CEST] <BtbN> with the h264
[00:09:18 CEST] <BtbN> parser being somewhat external now, would it be possible to use it to extract ac53cc closed captions in for example cuvid?
[00:09:29 CEST] <BtbN> or is that still part of the decoder itself?
[00:09:45 CEST] <nevcairiel> you need to re-order for that to work, which is not something anything but teh decoder does
[00:09:46 CEST] <nevcairiel> so no
[00:10:40 CEST] <BtbN> hm, cuvid would have to pass some payload along
[00:11:29 CEST] <nevcairiel> personally I dont think these are important enough to warrant some evil hackery to get external hw apis to behave, just use a hwaccel if you want these extracted
[00:11:49 CEST] <BtbN> could have some kind of ring buffer of those, and use the timestamps to look it up.
[00:12:23 CEST] <BtbN> that would also be usefull for other things, not only cc
[01:08:39 CEST] <wm4_> nevcairiel, BtbN: I think somehow having the reorder logic available without full decoding would be pretty useful for many things
[07:55:30 CEST] <nevcairiel> wm4_: the re-order logic of h264 is super complex though, and somehow ripping that out would be extremely complex
[12:20:50 CEST] <kierank> nevcairiel: you can use poc
[12:20:55 CEST] <kierank> That's guaranteed to work
[12:34:15 CEST] <nevcairiel> getting h264 pocs is not entirely trivial either, although that info may actually be something the parser has
[13:12:30 CEST] <cone-336> ffmpeg 03Xiaolei Yu 07master:5a70e56f2f11: avcodec: fix vc1dsp dependencies
[14:02:37 CEST] <Chloe> ubitux: can you have aliases for the --enable stuff?
[14:03:00 CEST] <ubitux> probably not in a clean way
[14:06:22 CEST] <Chloe> it's actually a real pain to put it back to sdl, because of how the check-pkg-config stuff works
[14:07:12 CEST] <Chloe> it'll set sdl2 stuff if it's check_pkg_config sdl2, but the lib name need to be sdl for the --enable flags
[14:15:21 CEST] <Chloe> ubitux: do you maybe know of a solution?
[14:15:23 CEST] <Chloe> I guess I could rename the device entirely
[14:15:51 CEST] <ubitux> i think it's fine as sdl2 tbh
[14:17:25 CEST] <nevcairiel> i tend to agree, its not like any version change of other libraries, its significantly different and incomaptible to the old one
[14:18:30 CEST] <Chloe> I'll still add the alias for the device though
[14:48:09 CEST] <Chloe> carl says rename it :/
[15:21:46 CEST] <BtbN> Is there some way to generate an endless stream of frames with side data somehow, without a very large input file which has such data?
[15:24:17 CEST] <rcombs> BtbN: what type of side data?
[15:24:28 CEST] <BtbN> doesn't matter, any side data will do.
[15:24:34 CEST] <BtbN> see ticket #5799
[15:24:49 CEST] <rcombs> filter_complex color=black,mestimate?
[15:25:45 CEST] <BtbN> I'll try that
[15:35:57 CEST] <BtbN> rcombs, yeah "./ffmpeg -f lavfi -i testsrc2 -vf mestimate -c:v mpeg2video -f null -" works fine.
[15:36:01 CEST] <BtbN> endless memory hog
[15:37:35 CEST] <rcombs> "fine"
[15:37:48 CEST] <BtbN> well, I was looking for a way to reproduce the leak
[15:37:53 CEST] <rcombs> :P
[15:48:07 CEST] <Chloe> BtbN: ffmpeg hit 500MB pretty quickly with that command, testing fix for it now.
[15:53:46 CEST] <atana> Compn: I had dropped a mail to ffpmeg-devel mailing list regarding the idea.
[15:54:06 CEST] <Chloe> atana: looks like an interesting idea
[16:12:21 CEST] <atana> Chloe: glad you find it interesting :)
[16:53:23 CEST] <JEEB> so does the current decoder cropping just base on the fact that width and height are set accordingly?
[16:54:18 CEST] <JEEB> trying to look at how it's currently implemented and if similar ways can be reused
[17:08:07 CEST] <Chloe> I'm going to push the transparent re=addition of --enable-sdl and alias of sdl without changing the documentation tonight if no one else objects (carl wanted it soon). The change is insignificant, and the library *is* sdl2 not sdl.
[17:10:41 CEST] <omerjerk_> Hey
[17:10:55 CEST] <omerjerk_> So, I fell into some issues in my encoder patch.
[17:11:46 CEST] <omerjerk_> First one which I want to fix is that the reference decoder treat the original format as RAW instead of WAV.
[17:11:56 CEST] <omerjerk_> Is there some API to fix this?
[17:13:14 CEST] <omerjerk_> If I encode a file with ref encoder and decode with ref decoder, it treats the orig. format as WAV only.
[17:15:40 CEST] <omerjerk_> If I decode the .mp4 file (created by ffmpeg) using ref decoder, the ref decoder treats the original format as RAW.
[17:15:48 CEST] <omerjerk_> Any idea what could be done?
[17:16:00 CEST] <omerjerk_> I'm sure there must be some option in FFmpeg to fix this.
[17:16:53 CEST] <omerjerk_> @durandal_1707: if you could help. :)
[17:19:53 CEST] <durandal_1707> omerjerk_: either write code that reference code understands
[17:20:53 CEST] <durandal_1707> or improve ref code
[17:21:02 CEST] <omerjerk_> I did some rigorous testing, and turns there are quite a few issues with the encoder. Even the ALS mixer is not producing proper .als file which the ref decoder understands.
[17:21:21 CEST] <durandal_1707> looks like you want raw als muxer?
[17:22:31 CEST] <omerjerk_> @durandal_1707: No. there's an ALS muxer in my patch already. But it doesn't produce correct ALS file. Ref decoder gives error when I run it over this .als file.
[17:22:45 CEST] <omerjerk_> so there are quite a few issues as of now.
[17:23:17 CEST] <durandal_1707> what error?
[17:23:26 CEST] <omerjerk_> Also, there's some issue in the encoder algorithm as well. Which I'm not sure if I'll be able to fix.
[17:23:43 CEST] <omerjerk_> I'm listing them down
[17:24:26 CEST] <omerjerk_> 1. An issue in the encoding algorithm.
[17:24:52 CEST] <omerjerk_> 2. An issue in the ALS muxer.
[17:25:18 CEST] <omerjerk_> 3. Ref decoder considers the orig format of .mp4 file is RAW instead of WAV.
[17:25:33 CEST] <omerjerk_> I'll first tackle 2 and 3
[18:47:46 CEST] <noobe1> hi, where is the source code is the MP4 container create code?
[18:47:58 CEST] <JEEB> libavformat/movenc.c
[18:48:01 CEST] <noobe1> to write to mp4 file as output
[18:50:30 CEST] <noobe1> Thanks!
[18:54:16 CEST] <Chloe> ubitux: do I need to revert the documentation according to carl's request? I don't think this is the right approach
[18:55:15 CEST] <ubitux> what doc?
[18:55:49 CEST] <Chloe> the enable-sdl2 --help string
[18:56:22 CEST] <Chloe> The patch re-adds --enable-sdl but I suggested to do it silently so that scripts arent broken, but it's not explicitly encouraged
[18:56:36 CEST] <RiCON> on one side, it'll fail for old scripts because they'll except ffmpeg to look for sdl1, not sdl2
[18:57:34 CEST] <Chloe> yeah this was kinda my other point, re-adding --enable-sdl isnt a good idea because it's not the same dependency
[18:59:44 CEST] <RiCON> allowing --disable-sdl would make sense, --enable-sdl not so much
[19:00:13 CEST] <Chloe> err, I meant disable sdl sorry
[19:00:28 CEST] <Chloe> --enable-sdl will have no effect
[19:00:49 CEST] <RiCON> for the disabling it makes sense to also disable sdl2, it means the user doesn't want sdl
[19:00:55 CEST] <RiCON> imo.
[19:01:33 CEST] <Chloe> yep. and what about changing the help text?
[19:01:46 CEST] <Chloe> keep it as --disable-sdl2?
[19:02:11 CEST] <noobe1> hi, I'm trying to understand mp4 file format. Can I in theory create a mp4 file using AVIOContext and AVFormatContext?
[19:03:15 CEST] <noobe1> I'm going through ffmpeg examples, but if there is one good example please let me know. Thanks!
[19:03:36 CEST] <RiCON> Chloe: i also think it should stay as --disable-sdl2 and make no mention of sdl1, in the help text
[19:04:41 CEST] <Chloe> sure. I think this is what ubitux said earlier as well, but I'd just like to confirm.
[19:05:38 CEST] <ubitux> Chloe: no opinion
[19:05:54 CEST] <Chloe> ;_;
[19:05:56 CEST] <RiCON> people that used --enable-sdl are the sort that would like to know about different dependencies, i'd assume
[19:06:12 CEST] <RiCON> like distros
[19:06:21 CEST] <Chloe> it's mentioned in the news as well
[19:07:40 CEST] <cone-041> ffmpeg 03Michael Niedermayer 07master:9083e044f11b: ffmpeg: Fix bistream typos
[19:07:40 CEST] <cone-041> ffmpeg 03Michael Niedermayer 07master:b98dafe04564: avformat/avidec: Fix memleak with dv in avi
[19:07:48 CEST] <RiCON> ultimately it could go to vote, but that's kinda overkill
[19:07:59 CEST] <Chloe> pls no
[19:08:40 CEST] <RiCON> it's a different dependency, so it makes more sense for the option to be different
[19:09:33 CEST] <Chloe> Yes. I'm just gonna push it, carl can kick up a fuss if he so wishes.
[19:09:42 CEST] <cone-041> ffmpeg 03Josh de Kock 07master:fbb1fcd4d0b4: lavd/sdl2: remove unused code
[19:09:43 CEST] <cone-041> ffmpeg 03Josh de Kock 07master:21344991c0d2: lavd/sdl2: add sdl alias
[19:10:09 CEST] <ubitux> omg the horror of dv in avi
[19:10:19 CEST] <ubitux> the shit is this fuck
[19:11:00 CEST] <Chloe> rip
[19:13:03 CEST] <wm4> ubitux: dv and avi are horrors on their own, so combining them...
[19:16:29 CEST] <cone-041> ffmpeg 03Anton Khirnov 07master:1e93c1e30ff0: avconv: do not set encoder options when streamcopy is used
[19:16:30 CEST] <cone-041> ffmpeg 03Clément BSsch 07master:99dfa55d5a5a: Merge commit '1e93c1e30ff0e8bf6094a426ca60f005e9cdaed3'
[19:16:39 CEST] <jamrial> why is the avi demuxer freeing all those contexts?
[19:17:48 CEST] <cone-041> ffmpeg 03Clément BSsch 07master:485f75b2786a: doc: remove codecpar mention in libav-merge.txt
[19:18:17 CEST] <ubitux> 330 libav commits to merge
[19:18:20 CEST] <ubitux> i feel lazy
[19:18:28 CEST] <ubitux> anyone wants to give it a go?
[19:18:46 CEST] <Chloe> what's involved?
[19:18:57 CEST] <JEEB> see the merge doc
[19:19:16 CEST] <Chloe> on the wiki?
[19:19:21 CEST] <JEEB> http://git.videolan.org/?p=ffmpeg.git;a=blob;f=doc/libav-merge.txt;h=2011ae…
[19:19:58 CEST] <ubitux> Chloe: http://sprunge.us/deiT
[19:20:05 CEST] <ubitux> from top to bottom
[19:20:24 CEST] <ubitux> current TODO in addition to the HEVC stuff
[19:25:00 CEST] <Chloe> hevc stuff :D
[19:28:28 CEST] <cone-041> ffmpeg 03Clément BSsch 07master:95a7cbb09de1: doc: move out merge script to tools
[19:29:35 CEST] <ubitux> Chloe: yeah, see bottom of libav-merge.txt
[19:29:55 CEST] <Chloe> 'No subtopics Nothing found - bye'
[19:29:57 CEST] <ubitux> i wonder if we should add stuff like the hevc parser crap
[19:30:13 CEST] <ubitux> and prores etc
[19:30:58 CEST] <Chloe> libav is still many commits behind ffmpeg's hevc stuff in some places
[19:31:43 CEST] <jamrial> they didn't implement a lot of the openhevc changes
[19:32:12 CEST] <Chloe> I had a list of what they dont have somewhere
[19:32:15 CEST] <jamrial> and decided to go ahead without them, so things like incompatible hevc mc x86 happened
[19:35:45 CEST] <jamrial> most of those ~300 commits are probably easy, like int -> ptrdiff_t, K&R and such. others are noops since they change stuff we already changed
[19:36:03 CEST] <ubitux> those are the worse
[19:36:07 CEST] <jamrial> the potentially hard ones are those changing avconv.c/ffmpeg.c,
[19:36:19 CEST] <ubitux> they might be "easy" but they're the most annoying
[19:36:51 CEST] <ubitux> because you actually have to carefully check the slight differences (for stuff we already have), and for K&R space randomization you basically have to redo them completely
[19:37:06 CEST] <jamrial> i can handle those if you want
[19:38:33 CEST] <cone-041> ffmpeg 03Clément BSsch 07master:bd9e4254595e: doc/libav-merge: change gmane link to a ffmpeg.org one
[19:40:09 CEST] <ubitux> jamrial: the less i do about these merge the happier i am
[19:44:27 CEST] <Chloe> ubitux: is there maybe a collaborative checklist we can use? (do the merges have to be done in order?)
[19:46:26 CEST] <ubitux> yeah it's much better in order
[19:46:35 CEST] <ubitux> because you can actually "merge" them for real
[19:46:38 CEST] <ubitux> and not cherry-picj
[19:47:35 CEST] <Chloe> ah :/ and the checklist q?
[19:51:35 CEST] <jamrial> Chloe: look at libav-merge.txt and the script currently in tools. with it (or the git commands it uses) you can merge the commits in order
[19:52:29 CEST] <Chloe> yeah I got the script, I've added libav as a remote but im getting 'fatal: ambiguous argument 'libav/master': unknown revision or path not in the working tree.'
[19:54:03 CEST] <ubitux> git fetch libav
[19:59:48 CEST] <jamrial> ubitux: alright, i'll handle the annoying k&r and such commits for you
[19:59:57 CEST] <jamrial> we finally left codecpar/bsf behind, so the faster we get rid of this queue the better
[20:04:43 CEST] <ubitux> if we can be ready for the next evil plan with 0 merge behind that would be great
[20:05:01 CEST] <ubitux> i'm assuming the next evil plan will be parser related
[20:05:36 CEST] <jamrial> probably
[20:06:05 CEST] <jamrial> but they left it for after libav12, which is being postponed a lot for some reason
[20:07:10 CEST] <jamrial> this new bsf api is great, seeing it fixed things like keyframes not being marked, or even extradata in mpeg4_unpack_bframes not being propagated
[20:07:16 CEST] <jamrial> so their "evil plans" are not all so evil :p
[20:07:20 CEST] <philipl> nevcairiel: I have no idea how much you care, but I came across this: https://devtalk.nvidia.com/default/topic/965840
[20:07:33 CEST] <philipl> presumably if you updated to the new SDK headers you could enable it.
[20:09:40 CEST] <nevcairiel> I will never personally enable or advocate a mode that decodes in subpar quality, ie. truncated to 8-bit
[20:09:56 CEST] <jamrial> then again, maybe those bugs weren't from the old api but rather the compat stuff that was put in place
[20:09:58 CEST] <wm4> dithered, not truncated
[20:10:10 CEST] <wm4> but yeah, that kind of sucks
[20:10:31 CEST] <wm4> still better than "doesn't play", though
[20:10:52 CEST] <nevcairiel> falls back to software, so what do i care
[20:11:19 CEST] <nevcairiel> personally i wouldnt use cuvid for anything anymore
[20:13:14 CEST] <philipl> Can you get proper 10bit surfaces out of the decoder using one of the dxva flavours?
[20:13:52 CEST] <JEEB> yes
[20:13:59 CEST] <JEEB> DXVA2 gives you P010 HEVC
[20:15:30 CEST] <philipl> yeah, cuvid makes little sense on windows, given that fact and that vp8/9 is also supported by dxva.
[20:15:40 CEST] <jkqxz> How do the reference frames work when it does that? Does the output just accumulate error, or is it holding the real surfaces somewhere else that you aren't allowed to see?
[20:16:01 CEST] <philipl> jkqxz: The later.
[20:16:14 CEST] <wm4> jkqxz: can vaapi do 10 bit now?
[20:16:16 CEST] <philipl> The limitation is that the API definition says returned frames must be NV12 (in this particular case)
[20:17:14 CEST] <jkqxz> philipl: Well, can't you get the real surface out of it by doing mmap /dev/mem somemthing something then?
[20:17:26 CEST] <jkqxz> wm4: Probably. I don't have any hardware yet, though.
[20:17:35 CEST] <philipl> jkqxz: The real surface is in GPU-side memory, I'm sure.
[20:17:53 CEST] <philipl> and not mapped into the CPU's address space
[20:18:37 CEST] <wm4> uh, /dev/mem, are we qualcomm or what
[20:18:52 CEST] <wm4> (or whatever mobile gpu vendor did that)
[20:19:09 CEST] <philipl> I am reasonably confident that nvidia will add this ability at some point. Maybe even cuda 8, although that's now overdue release and the RC has garbage cuvid headers.
[20:21:13 CEST] <jkqxz> wm4: Everyone embedded does that. Once you have a SoC with one memory space and a well-defined memory map which can see everything on the chip it's the easiest way of doing all sorts of things.
[20:22:31 CEST] <wm4> so you're saying mobile is really terrible?
[20:22:45 CEST] <philipl> A universal truth.
[20:32:33 CEST] <philipl> Just for fun, I tried instantiating a cuvid decoder in a loop with output enum values > 0. No luck. There's no undocumented P010 in there. :-P
[21:06:20 CEST] <cone-041> ffmpeg 03James Almer 07master:aa0dc698dba8: avformat/avidec: remove warning about deprecated declarations
[21:13:26 CEST] <cone-041> ffmpeg 03James Almer 07master:e3842e87f2f0: avcodec/Makefile: Fix mlpenc dependencies
[21:19:49 CEST] <cone-041> ffmpeg 03James Almer 07master:3ac76d761851: ffmpeg: fix memleak of encoder options AVDictionary on failure
[21:19:50 CEST] <cone-041> ffmpeg 03James Almer 07master:449dc25f56fa: ffmpeg: fix memleak of bitstream filter context on failure
[21:28:21 CEST] <Chloe> oh wow, how *do* you merge the avconv changes?
[21:28:36 CEST] <Chloe> it's creating the 'avconv.c' file
[21:32:39 CEST] <nevcairiel> carefully
[21:32:43 CEST] <nevcairiel> those are a bit more tricky
[21:32:47 CEST] <JEEB> also gonna re-run the question, but is bitstream cropping currently only working from bottom upwards / from right border leftwards (because it's just setting the width/height values in the avcodeccontext)
[21:32:51 CEST] <JEEB> ?
[21:33:14 CEST] <JEEB> quickly tried to git grep the code base but didn't find more than that
[21:34:22 CEST] <nevcairiel> with h264 it should work, but if you use it from API you might need to set a new flag
[21:34:29 CEST] <nevcairiel> not sure if ffmpeg.c sets it
[21:35:21 CEST] <JEEB> just wondered if that could be extended to handling container cropping (as I stuck my face into MXF)
[21:36:34 CEST] <JEEB> basically, if it's something else than just setting width/height, similar things could be used for container cropping
[21:37:02 CEST] <DHE> is that for use when the image size doesn't match the codec requirements? (eg; h264 requires multiple of 16x16)
[21:37:52 CEST] <JEEB> yes, decoder cropping is that.
[21:38:19 CEST] <JEEB> then container cropping is when some person decides that they want to duplicate the non-active-picture lines of analog stuff in digital form
[21:38:36 CEST] <JEEB> so you need to do additional crop after the decoder cropping
[21:38:58 CEST] <nevcairiel> container cropping is evil and there are no easy solutions =p
[21:40:06 CEST] <JEEB> well, yeah. I guessed that would pop up. so in the short term I thought I could at least stick storage_width/height and display_width/height + display_x/y_offset into metadata so I could at least get them through some way later in the chain :D
[21:42:59 CEST] <BtbN> calling av_frame_unref should allways be safe, should it?
[21:43:07 CEST] <DHE> it's thread-safe, yes
[21:43:25 CEST] <DHE> assuming buffer-based frames
[21:43:25 CEST] <BtbN> more wondering about frame contents
[21:43:55 CEST] <BtbN> Wondering of the leak fix for the mpegvideo enc is actually correct
[21:44:08 CEST] <DHE> oh, I filed that. Yes it is
[21:44:24 CEST] <DHE> oh you mean the actual patch suggested. haven't checked it yet
[21:45:03 CEST] <BtbN> it works for me, but I'm not 100% sure if it's the right approach
[21:45:16 CEST] <BtbN> or if copy_props just shouldn't be used in the first place
[21:45:25 CEST] <DHE> didn't you suggest that the coded_frame field should just not carry side_data since the side_data feature and coded_frame feature's deprecation don't overlap
[21:45:39 CEST] <DHE> or something to that effect
[21:46:08 CEST] <BtbN> well, that's not that easy to achive, as it's just a normal frame
[21:46:20 CEST] <BtbN> and copy props has no notion of it being a coded frame
[23:33:14 CEST] <wm4> AVFrame not properly suppporting cropping suire is a PITA
[23:39:38 CEST] <nevcairiel> honestly it just never comes up =p
[23:39:51 CEST] <nevcairiel> top/left cropping is just neat theory not used in real-life
[23:39:59 CEST] <nevcairiel> screw mxf, its a huge headache in itself
[23:40:06 CEST] <JEEB> lol
[23:41:01 CEST] <nevcairiel> and container cropping typically tries to solve problems that people made themself
[23:41:58 CEST] <JEEB> I don't disagree with that one
[23:42:26 CEST] <JEEB> I have no idea why SMPTE ST386M decided to have the analog stuff on the top
[23:42:39 CEST] <JEEB> or well, I think I know why but it's still fun
[23:42:43 CEST] <JEEB> "fun"
[23:43:06 CEST] <JEEB> at least in MXF it's better defined than that one field in matroska
[23:43:12 CEST] <JEEB> since you have both x and y offsets
[00:00:00 CEST] --- Mon Sep 26 2016
1
0
[01:02:24 CEST] <tomasm-> ok so is ffmpeg still actively being developed? or is it all in avconv now?
[01:02:52 CEST] <c_14> subscribe to ffmpeg-devel and you'll find out just how active it is
[01:03:06 CEST] Action: KDDLB facepalms
[01:05:58 CEST] <furq> what is this, 2011
[01:08:47 CEST] <tomasm-> ok so I have this 'ffmpeg' command on my sytsem, but is it really ffmpeg or just an alias to avconv? ffmpeg has supported -noautorotate for a while I think, I have 2.5.10 (on ubuntu). but I get an error saying unrecognized option
[01:09:32 CEST] <purplex88> is it possible to check if video file is anamorphic? if its not anamorphic then is it good to convert to it? is there benefit of it?
[01:09:38 CEST] <furq> 2.5 is >18 months old
[01:09:52 CEST] <tomasm-> furq it says 2016
[01:10:02 CEST] <furq> well yeah that's the latest point release
[01:10:11 CEST] <furq> those only contain bugfixes
[01:10:20 CEST] <furq> in terms of features, you're stuck in december 2014
[01:10:55 CEST] <furq> the latest 2.5 point release, i mean
[01:11:08 CEST] <tomasm-> ok make sense
[01:11:40 CEST] <furq> i'm going to assume you got that from a ppa
[01:12:13 CEST] <furq> if you're stuck on an old ubuntu then use https://www.johnvansickle.com/ffmpeg/ or something
[01:15:34 CEST] <tomasm-> furq, yeah im getting the source now
[01:16:31 CEST] <tomasm-> #ffmpeg 335
[01:16:37 CEST] <tomasm-> #libav 59
[01:16:40 CEST] <tomasm-> hmmm =P
[01:16:51 CEST] <c_14> Well, tbf 99% of the people in here idle
[01:16:54 CEST] <tomasm-> guess that answers my question
[01:19:30 CEST] <kode54> tomasm-: the avconv fork provides a "compatibility" ffmpeg binary that claims that the command is obsolete and will be going away at any time
[01:19:44 CEST] <kode54> I'm not sure whether on new ubuntu, you can get real ffmpeg, or if you have to use a ppa
[01:19:52 CEST] <furq> well libav made it into a couple of ubuntu LTS releases so we can all look forward to answering this question again and again
[01:20:00 CEST] <tomasm-> yeah im getting the current source anyway
[01:20:08 CEST] <furq> kode54: real ffmpeg is back in the last couple of releases
[01:20:18 CEST] <furq> since 15.04 iirc
[01:20:31 CEST] <kode54> aha
[01:20:33 CEST] <furq> and 3.x is in jessie-backports on debian
[01:20:41 CEST] <furq> for those unfortunate souls who use jessie
[01:20:52 CEST] <klaxa> :(
[01:21:00 CEST] <tomasm-> i recall some other reason a while back why i hated avconv
[01:21:25 CEST] <klaxa> somewhere i have a screenshot why i didn't like avconv
[01:21:54 CEST] <furq> if you're not on a rolling release distro then you're better off not using the distro packages anyway
[01:22:01 CEST] <furq> and everyone is better off not using PPAs
[01:22:33 CEST] <tomasm-> so.... anyone deal with videos uploaded from mobile devices using input type=file? I'm noticing that it's rotated sideways, probably because of some metadata in my video, but i think the -noautorotate was supposed to fix that.
[01:22:54 CEST] <furq> -metadata:s:v:0 rotate=0
[01:22:54 CEST] <furq> iirc
[01:23:31 CEST] <furq> ffprobe -show_format will probably show you the current value
[01:23:44 CEST] <klaxa> there it is: https://files.klaxa.eu/2014-08-16-002239_1280x800_scrot.png
[01:24:32 CEST] <furq> well if you're using mpeg4 and vorbis then you're obviously just trying to find bugs
[01:24:46 CEST] <klaxa> oh?
[01:24:57 CEST] <tomasm-> quicktime FTW
[01:25:28 CEST] <klaxa> the same command worked with ffmpeg
[01:25:40 CEST] <furq> i actually found some .ogm files on my nas the other day
[01:25:45 CEST] <furq> that was an unpleasant surprise
[01:26:22 CEST] <klaxa> i remember the first software i used for screenrecording was just a front-end for a specific ffmpeg command and used theora for video
[01:26:27 CEST] <klaxa> not even sure it recorded audio
[01:26:35 CEST] <furq> was it "ffmpeg2theora"
[01:26:43 CEST] <furq> i used that for streaming to icecast years ago
[01:27:04 CEST] <furq> it's still kicking it in the debian repos
[01:28:31 CEST] <klaxa> pretty sure it was this one: http://recordmydesktop.sourceforge.net
[01:29:06 CEST] <furq> i've seen this website before and i don't understand why
[01:30:05 CEST] <klaxa> looks like you can't even change the encoding settings much
[01:30:25 CEST] <furq> i think someone in here about a month ago was asking if we recommended it
[01:30:33 CEST] <furq> the things people find with google
[01:32:59 CEST] <klaxa> the latest release is from 2008
[01:32:59 CEST] <tomasm-> furq, whats the diff between what you said and noautorotate?
[01:33:14 CEST] <furq> no idea, i've never heard of noautorotate
[01:33:44 CEST] <furq> apparently it's only an ffplay option
[01:33:52 CEST] <klaxa> also, grepping the source, looks like they used libtheora directly
[01:34:15 CEST] <c_14> furq: nah, it also works for ffmpeg
[01:34:25 CEST] <c_14> It makes ffmpeg ignore the rotate metadata
[01:34:43 CEST] <furq> does that do anything while remuxing
[01:34:48 CEST] <c_14> no
[01:34:50 CEST] <tomasm-> furq, i thought that rotate metadata command might differ depending on the video orientation.... ie it might need to be 0, 90, 180, etc
[01:34:55 CEST] <c_14> Only when reencoding
[01:34:59 CEST] <furq> yeah that makes sense
[01:35:26 CEST] <furq> tomasm-: 0 will give you the video with no rotation applied, same as noautorotate
[01:35:38 CEST] <tomasm-> ok then
[01:35:58 CEST] <furq> the phone might have just recorded it with 90 set
[01:36:24 CEST] <furq> in which case `-i in.mp4 -metadata:s:v:0 rotate=0 -c copy out.mp4` will just strip that
[01:37:03 CEST] <tomasm-> so the phone is doing it wrong?
[01:37:42 CEST] <klaxa> have phones ever done anything right? (video wise)
[01:37:44 CEST] <furq> shrug
[01:37:54 CEST] <furq> i'm pretty sure phones setting the rotate flag is a thing
[01:38:18 CEST] <furq> i've never recorded video with my phone held vertically because i don't want to be sent to a death camp
[01:38:53 CEST] <kode54> I've only ever recorded vertical video when the frame of what I wanted to record was actually vertical
[01:39:21 CEST] <c_14> What's even better is recording video in one orientation and then turning the camera while you're still recording.
[01:39:43 CEST] <kode54> guilty of that too
[01:40:57 CEST] <tomasm-> unfortunately im processing both smart phone videos and webcam videos, so orientation can be either way... not sure what to do other than output to a square shape... mainly to minimize a ridiculous amount of space on the sides when portrait. cropping isnt really an option
[01:41:19 CEST] <kode54> now I don't have to worry about rotating the camera while recording
[01:41:20 CEST] <tomasm-> c_14, what happens then, out of curiosity?
[01:41:25 CEST] <kode54> I just use Horizon camera app
[01:41:45 CEST] <c_14> Well, no matter how you turn it it'll be wrong at least half the time.
[01:42:04 CEST] <c_14> Plus the aspect ratio flips halfway through
[01:42:15 CEST] <kode54> Horizon auto levels a landscape frame inside the actual picture
[01:42:32 CEST] <tomasm-> so the black bars/background switches around
[01:42:58 CEST] <kode54> no
[01:43:08 CEST] <kode54> it crops and rotates a frame from what the camera captures
[01:58:56 CEST] <tomasm-> ok so i must be missing something..... I tried converting a file and the video disappeared: ffmpeg -noautorotate -t 30 -i test1.mp4 -vcodec mpeg4 -acodec aac -strict experimental -s 500x500 -y test2.mp4
[02:02:22 CEST] <tomasm-> it was originally h264. i just need something vcodec that browsers will support
[02:05:28 CEST] <furq> if you want something browsers support then use h264
[02:05:33 CEST] <furq> i don't think any of them support mpeg4
[02:05:53 CEST] <tomasm-> even though the file ends in .mp4? or is there a better file extension?
[02:06:18 CEST] <tomasm-> D.V.LS h264 H.264 / AVC / MPEG-4 AVC / MPEG-4 part 10
[02:06:58 CEST] <furq> you want h264 and aac in mp4
[02:07:10 CEST] <furq> that's the most widely supported combination
[02:07:15 CEST] <tomasm-> does that mean it wont re-encode back into h264? if i do -vcodec h264? just not sure if it's seeing the mp4 extension and assuming mpeg4 encoding or only falling back on that because h264 encoding doesnt seem enabled
[02:07:48 CEST] <tomasm-> I dont see an "E" with ffmpeg -codecs | grep h264
[02:08:13 CEST] <furq> did you --enable-libx264
[02:08:16 CEST] <DHE> mpeg4 is the old DivX style of codec. h264 is a generation above mpeg4. you want h264 at a minimum
[02:08:25 CEST] <furq> there's no builtin encoder
[02:08:46 CEST] <tomasm-> furq, no but i built it on two systems and one built it in and one didnt
[02:08:55 CEST] <tomasm-> am i missing a third party library?
[02:09:00 CEST] <c_14> libx264
[02:09:06 CEST] <DHE> yes, x264 hosted at videolan
[02:10:22 CEST] <furq> just use the static builds i pasted earlier if you don't have any special requirements
[02:10:32 CEST] <tomasm-> oh the good ol days of compiling code just to make a website work
[02:10:54 CEST] <tomasm-> furq, im stuck on ubuntu trusty 14.04
[02:11:17 CEST] <c_14> The static builds will work an most linuxes
[02:11:46 CEST] <tomasm-> confused what x264-10b-r* vs x264-r*
[02:11:59 CEST] <c_14> If you don't know what it is, you want the non 10b
[02:12:57 CEST] <tomasm-> hmmmm, im confused. it's a binary? dont i need a library, ie a .so file?
[02:13:05 CEST] <furq> they're static builds
[02:13:10 CEST] <furq> the libraries are in the binary
[02:13:59 CEST] <tomasm-> ok so what do i do with it then
[02:14:11 CEST] <tomasm-> where does it go
[02:14:19 CEST] <furq> put the binaries in /usr/local/bin
[02:14:27 CEST] <furq> and probably remove the ffmpeg you have now
[02:14:47 CEST] <tomasm-> no im talking about x264, not ffmpeg
[02:15:25 CEST] <furq> oh
[02:15:29 CEST] <furq> binaries of x264 are no good
[02:15:50 CEST] <furq> you should be able to use libx264-dev from repos if you want to go that route
[02:16:06 CEST] <furq> you should really just use the static ffmpeg builds though
[02:16:37 CEST] <tomasm-> well im using this from ruby, so im not sure if it pipes it to ffmpeg or uses some library interface
[02:17:19 CEST] <furq> it's almost certainly just calling the binary
[02:17:40 CEST] <furq> very few languages have functional libav* bindings
[02:18:03 CEST] <TwinTailed> in libav, the output h264 video has last few seconds of the video missing, but the audio continues till the end
[02:18:20 CEST] <TwinTailed> so the video freezes in the last few seconds but the audio is still there
[02:18:33 CEST] <TwinTailed> thats in VLC however, the video files doesn't even work with Windows Media Player
[02:19:25 CEST] <tomasm-> <3 VLC <3
[02:20:58 CEST] <TwinTailed> anyone has any idea why?
[02:21:14 CEST] <c_14> are you flushing the encoder/format?
[02:21:41 CEST] <c_14> and any filterchains etc
[02:21:46 CEST] <TwinTailed> I am but I don't know if its correct
[02:22:09 CEST] <c_14> Have you tried asking on the libav-user mailing list?
[02:22:37 CEST] <TwinTailed> c_14: they didn't reply till now, I have sent an email almost 5 days ago
[02:22:39 CEST] <TwinTailed> http://pastebin.com/zduDK3hG
[02:23:20 CEST] <TwinTailed> c_14: http://pastebin.com/jtb8rSV9
[02:23:22 CEST] <tomasm-> furq, where are the binaries, i just downloaded the package on the site and it seems to be source
[02:23:30 CEST] <TwinTailed> c_14: Is that how I should flush?
[02:23:39 CEST] <tomasm-> oh static builds?
[02:24:23 CEST] <tomasm-> why are the static builds the easiest to install and yet the last thing mentioned on the download page after a bunch of other things?
[02:24:51 CEST] <c_14> tomasm-: because the static builds aren't provided officially by the FFmpeg project
[02:25:15 CEST] <c_14> TwinTailed: I think you have to write_frame with NULL as the packet
[02:25:43 CEST] <furq> tomasm-: https://www.johnvansickle.com/ffmpeg/
[02:26:14 CEST] <Alexey_> hi all ! 2-pass Q
[02:26:16 CEST] <Alexey_> ffmpeg -y -i input -c:v libx264 -preset medium -b:v 555k -pass 1 -c:a libfdk_aac -b:a 128k -f mp4 /dev/null && \
[02:26:16 CEST] <Alexey_> ffmpeg -i input -c:v libx264 -preset medium -b:v 555k -pass 2 -c:a libfdk_aac -b:a 128k output.mp4
[02:26:21 CEST] <tomasm-> ok got them installed
[02:26:32 CEST] <Alexey_> Where does the 1st pass save intermediary data ?
[02:26:48 CEST] <Alexey_> And where from 2nd pass read it ?
[02:27:11 CEST] <Alexey_> I look at official FAQ/ guide
[02:27:12 CEST] <Alexey_> https://trac.ffmpeg.org/wiki/Encode/H.264
[02:27:49 CEST] <furq> Alexey_: the default is $PWD/ffmpeg2pass.log
[02:27:58 CEST] <furq> you can change it with -passlogfile
[02:28:08 CEST] <TwinTailed> c_14: After I do the flush for avcodec_receive_packet, the next loop I get avcodec_send_frame error
[02:28:25 CEST] <Alexey_> aha thx
[02:30:23 CEST] <c_14> TwinTailed: I'm not sure how exactly it works (I've never really used the API in depth), you might have to look at what other programs using the libraries do (like the ffmpeg binary)
[02:30:37 CEST] <Alexey_> how much better is two-pass encoding vs standard 1-pass encoding ?
[02:30:48 CEST] <TwinTailed> c_14: problem is that really few programs use the new API
[02:30:52 CEST] <TwinTailed> :P
[02:30:55 CEST] <TwinTailed> its ok i will keep trying
[02:31:03 CEST] <Alexey_> ie. 10% bitrate reduction ? 20% ?
[02:31:29 CEST] <tomasm-> crap. the video displays fine on my web page, not autorotated, but when i go full screen on it, it rotates crazy again... should i be stripping the metadata out?
[02:31:35 CEST] <furq> Alexey_: there's no reason to use 2-pass over crf unless you're targeting a particular filesize
[02:31:38 CEST] <furq> with x264, at least
[02:32:17 CEST] <furq> it also won't reduce the bitrate compared to using -b:a with 1pass
[02:32:23 CEST] <Alexey_> crf is typically used with "quality" parameter or "-b:v" bitrate parameter ?
[02:32:26 CEST] <furq> although it should improve the quality
[02:32:44 CEST] <furq> crf is the quality parameter
[02:33:00 CEST] <furq> if you don't specify anything it'll default to -crf 23
[02:33:03 CEST] <furq> lower values = higher quality
[02:33:23 CEST] <Alexey_> well I don't specify -crf but I always specify -b:v (bitrate)
[02:33:43 CEST] <furq> i meant if you don't specify -crf, -q:v or -b:v
[02:33:59 CEST] <Alexey_> aha okay
[02:40:47 CEST] <TwinTailed> In this doc page: http://ffmpeg.org/doxygen/trunk/group__lavc__encdec.html
[02:40:57 CEST] <TwinTailed> There is "End of stream situations."
[02:41:14 CEST] <TwinTailed> but when exactly do they occur? When what error do I receive and from which function??
[02:45:17 CEST] <Alexey_> furq, thanks
[02:45:33 CEST] <c_14> TwinTailed: I think if you get AVERROR EOF OR EIO
[03:19:26 CEST] <TwinTailed> c_14: From which function should i get those errors?
[03:19:35 CEST] <TwinTailed> to be count as an end of stream situation?
[07:59:59 CEST] <Spring> does -vframes override trim or work along with it (if trim is shorter than the vframes length for ex)?
[08:00:21 CEST] <furq> i assume you'll get whichever is shortest
[10:02:07 CEST] <DTON8> Hello
[10:02:35 CEST] <DTON8> I'm trying to do something, but I don't know if ffmpeg can do what I want
[10:03:07 CEST] <DTON8> I have a tcp stream of raw h264, and I want to decode it and display
[12:40:51 CEST] <trockner> is there a easy way to install the newest version of ffmpeg on ubuntu 15.04 or do i have to compile all codecs like this? https://trac.ffmpeg.org/wiki/CompilationGuide/Ubuntu
[12:44:41 CEST] <Alexey__> trockner, unless you know a specific PPA with newest version, I afraid you will have to copile (or use newest Ubuntu or Debian-unstable); I'm using Debian-testing which has reasonably recent version of ffmpeg
[12:46:15 CEST] <trockner> where can i find a ppa with the newest version?
[12:46:38 CEST] <jkqxz> trockner: Or use a static build, such as <https://www.johnvansickle.com/ffmpeg/>.
[12:49:43 CEST] <trockner> ok thanks
[12:53:49 CEST] <MR-2> Hello
[14:27:41 CEST] <popara> Can someone tell me why the -vsync drop, never works? It just gives me av_interleaved_write_frame(): Invalid argument
[14:27:50 CEST] <popara> no matter what the input/output is
[14:58:09 CEST] <TwinTailed> What error code for the 4 functions: avcodec_send_packet, avcodec_receive_frame, avcodec_send_frame, avcodec_receive_packet, means I should flush (End of stream situation)?
[15:00:20 CEST] <BtbN> The EOF one.
[15:14:35 CEST] <TwinTailed> BtbN: From which function?
[15:14:47 CEST] <BtbN> any of them.
[15:15:29 CEST] <TwinTailed> the procedure i should do is the same for all? Or one procedure for decoding functions, and one for encoding functions?
[15:16:19 CEST] <TwinTailed> BtbN: Is this what I should do in case of encoding? http://pastebin.com/a8t6z3Xd
[15:16:56 CEST] <BtbN> if you get an EAGAIN from any of the two functions, it just means it's about time to call the other one.
[15:17:19 CEST] <BtbN> EOF means the stream is actually EOF, and all left to do is read out the remaining packets/frames until you also get an EOF there.
[15:18:26 CEST] <TwinTailed> but it already returns EOF
[15:22:03 CEST] <TwinTailed> BtbN: reading out the remaining packets/frames after sending a NULL packet?
[15:22:42 CEST] <BtbN> If you send a NULL input, it signals the encoder/decoder that the input if EOF, so it will wrap things up, give you the remaining data, and then EOF itself.
[15:24:29 CEST] <TwinTailed> BtbN: Ok, lets say avcodec_send_frame returned an EOF, so I use avcodec_send_frame(ctx, NULL); then I go into a while loop calling avcodec_receive_packet until it returns EOF?
[15:25:01 CEST] <BtbN> send_* won't return an EOF until your send it a null input.
[15:25:17 CEST] <BtbN> but otherwise, yes.
[15:27:27 CEST] <TwinTailed> BtbN: Is that different if avcodec_receive_packet returns EOF? or in such case, i should send null to avcodec_send_frame and then keep avcodec_receive_packet packets until it returns EOF?
[15:28:10 CEST] <BtbN> once the function returns EOF, you don't need to call it anymore
[15:28:35 CEST] <BtbN> if the stream goes eof, you keep feeding null packets/frames to the receive function, until it returns EOF
[15:28:54 CEST] <BtbN> to the send function
[15:29:07 CEST] <BtbN> And then read out all the reamaining data, until eof
[15:29:12 CEST] <TwinTailed> the stream you mean av_read_frame?
[15:31:40 CEST] <TwinTailed> BtbN: What do you mean "stream goes eof"?
[15:31:57 CEST] <BtbN> well, at some point there has to be an end of it.
[15:33:09 CEST] <TwinTailed> BtbN: av_read_frame this function is the one to return EOF on end of stream?
[15:33:35 CEST] <BtbN> you are telling it when you reached the end...
[15:33:38 CEST] <BtbN> by sending null input
[15:34:35 CEST] <TwinTailed> BtbN: Im sorry I got lost, where exactly should i do the flushing process?
[15:37:48 CEST] <TwinTailed> BtbN: I do a av_read_frame as usual, then start with avcodec_send_packet->avcodec_receive_frame->avcodec_send_frame->avcodec_receive_packet, and if any of those 4 function return EOF, I start flushing depending if it was encoding or decoding?
[15:38:09 CEST] <BtbN> they won't return EOF until you send it a NULL input.
[15:38:45 CEST] <TwinTailed> then how can i detect end of stream situations?
[15:40:15 CEST] <TwinTailed> BtbN: How do i detect end of stream situations then?
[16:05:06 CEST] <TwinTailed> BtbN: I got the flushing working, thanks for the help :)
[16:05:27 CEST] <TwinTailed> BtbN: But why Windows Media Players says that the media file is corrupt? While VLC can play it normally?
[16:46:28 CEST] <Spideru> Hi, I need to scale 16 bit gray image to 8 bit. What library should I use? Thank you
[16:52:34 CEST] <TwinTailed> Spideru: OpenCV, but it might be a bit complicated for such a simple task.
[16:56:41 CEST] <durandal_1707> Spideru: zcscale via lavfi
[17:01:29 CEST] <Spideru> durandal_1707: thank you!
[17:23:02 CEST] <TwinTailed> How do I get metadata of a file? If I access fmtctx->metadata, I get segmentation error
[17:53:23 CEST] <TwinTailed> My output video file has major brand isom, how can i change it to "mp42"?
[17:53:36 CEST] <TwinTailed> i am talking about libav
[17:57:10 CEST] <TwinTailed> anyone?
[17:59:00 CEST] <TwinTailed> BtbN: How can I mux an mp42 brand video? My output media file is being ISOM MP41
[18:05:02 CEST] <DHE> can it be done with the ffmpeg commandline?
[18:17:02 CEST] <TwinTailed> DHE: Can you give me the command to write?
[18:17:08 CEST] <TwinTailed> Im not experienced with the CLI
[18:32:58 CEST] <DHE> no, that was my question.
[18:54:15 CEST] <TwinTailed> DHE: idk if its possible, but as far as I know, isom is not compatible with all video players
[19:03:50 CEST] <hypfer> restating my question from ##linux here
[19:04:20 CEST] <hypfer> i have a folder full of mp3s. I want to check if they are valid (valid means beginning and end "almost" quiet)
[19:04:29 CEST] <hypfer> valid also means not more than n% clipping
[19:05:00 CEST] <hypfer> can I do that with ffmpeg? why do I want to do this? I'm running streamripper on an online radio station and I only want "good" files. automatically
[19:12:35 CEST] <DHE> hypfer: some scripting will be required. for "almost" quiet there is a filter called volumedetect that prints audio statistics at the end of the run, but you'll have to arrange for it to only receive the last few seconds of audio. that might also be possible with filters
[19:15:11 CEST] <hypfer> so basically I'll have to run ffmpeg three times. first with volumedetect on the first few seconds. then on the last and finally on all to see if its not too loud
[19:15:28 CEST] <hypfer> DHE: is there a way to get the output of the volumedetect filter more scripting friendly?
[19:53:08 CEST] <DHE> hypfer: you can run one ffmpeg to do multiple jobs on a single file. not sure how it'll work here. if you can start each command with "ffmpeg -i input.mp3" then you can do it in one shot
[20:05:58 CEST] <hypfer> it works \o/
[20:06:35 CEST] <DTON8> Hey can someone help me?
[21:04:38 CEST] <golserma__> Hi I'm wondering how can I build ffmpeg using mxe including nonfree and faac as a static win64 build?
[22:44:19 CEST] <TwinTailed> Libav is outputting the video with major brand (isom mp41), how can I make it output mp42 video?
[22:44:44 CEST] <TwinTailed> tried setting context's metadata, didn't work
[22:47:29 CEST] <flux> twintailed, movenc has option "brand" that sets the major brand
[22:47:44 CEST] <flux> it of course won't affect anything else but the brand
[22:47:53 CEST] <TwinTailed> flux: what is movenc?
[22:48:03 CEST] <flux> movenc is the module responsible for making .mp4 files
[22:48:13 CEST] <TwinTailed> you mean cli?
[22:48:13 CEST] <flux> so mp4 encoder
[22:48:22 CEST] <flux> I mean the source code
[22:48:28 CEST] <flux> it can be invoked from the command line.. somehow
[22:48:48 CEST] <TwinTailed> so libav does not support mp42?
[22:48:53 CEST] <TwinTailed> even though it can read it?
[22:49:03 CEST] <flux> well do you know how mp42 differs from mp41?
[22:49:18 CEST] <flux> I'm guessing mp42 requires some additional information inside the file
[22:49:19 CEST] <TwinTailed> no
[22:49:31 CEST] <TwinTailed> yeah i know the ISO and the atoms
[22:49:36 CEST] <flux> and if ffmpeg writes mp41, then I bet it doesn't know how to write mp42
[22:49:38 CEST] <TwinTailed> but not much experienced in mp42
[22:49:49 CEST] <flux> I mean why not just otherwise always just write mp42 and put mp41 in the compatible brands
[22:50:14 CEST] <TwinTailed> flux: why do you bet that it doesnt know?
[22:50:26 CEST] <flux> by the fact that it doesn't do it by default?
[22:51:36 CEST] <TwinTailed> flux: i would say "For more compatiblity" but most video players don't support mp41
[22:51:49 CEST] <TwinTailed> aka windows media player
[22:55:02 CEST] <TwinTailed> flux: Will mp42 support be added anytime soon?
[22:55:30 CEST] <JEEB> uhh, that sounds as if wmp doesn't support mp4 files created by FFmpeg
[22:55:38 CEST] <JEEB> while the opposite is my experience so far
[22:55:55 CEST] <JEEB> WMP does have some bugs, but most definitely I can get the files playing
[22:56:12 CEST] <JEEB> see my most useless bug report ever for example https://social.technet.microsoft.com/Forums/windows/en-US/fed910ba-0b25-48f…
[22:56:38 CEST] <JEEB> (later I got a private comment from someone inside the corp that nobody cares about WMP inside MS :P )
[22:57:12 CEST] <BtbN> you probably just need to install LAVFilters and you're good
[22:57:18 CEST] <JEEB> no
[22:57:39 CEST] <JEEB> WMP12 can read files with MF and windows comes with AVC/AAC and ISOBMFF filters in MF by default
[22:57:42 CEST] <JEEB> so it won't even go to DShow
[22:58:09 CEST] <JEEB> DShow is a *fallback* in all newer versions of WMP and you have to hack around to get it to use DShow for things MS has filters for
[22:58:37 CEST] <BtbN> so they just made a bad mov parser?
[22:59:08 CEST] <JEEB> well, I haven't been able to generate a file which didn't work with WMP yet
[22:59:38 CEST] <BtbN> What's this "WMP needs mp42" stuff about then?
[23:00:12 CEST] <JEEB> let me check my sample's things but it's most definitely bullshit that ISOBMFF output by FFmpeg doesn't work with WMP
[23:01:15 CEST] <JEEB> https://fushizen.eu/samples/wmp12_mp4/merry_christmas.mp4 <- this one opens just fine in WMP for example
[23:01:43 CEST] <flux> so it seems there are two mp42's, the ISO/IEC MP4 file format version 2, and then some video encoding of the microsoft family called mp42
[23:01:58 CEST] <flux> it seems ffmpeg supports the latter but probably not the former
[23:02:52 CEST] <JEEB> the brands FFmpeg outputs are bullshit anyways, but as you can see by the file I linked that one can be opened just fine in any vanilla WMP since win7
[23:02:54 CEST] <flux> doesn't really sound to me either of them are particularly important
[23:03:55 CEST] <JEEB> and yeah, that file has major brand "isom", and then four compatible_brands
[23:04:03 CEST] <JEEB> isom, iso2, avc1, mp41
[23:04:52 CEST] <JEEB> (use L-SMASH's boxdumper with find/grep on "brand" to get a list)
[23:05:31 CEST] <TwinTailed> VLC can play the output video "isom" normally, but WMP can't, it says something about that the file is corrupt or it doesn't support that codec
[23:05:47 CEST] <JEEB> I just linked a file created by ffmpeg cli
[23:05:53 CEST] <JEEB> which uses libavformat/movenc.c
[23:06:35 CEST] <JEEB> so while I am pretty sure FFmpeg writes bullshit files in many ways if you actually start wanting to 100% follow the specs, I can most definitely say that WMP *does* play ISOBMFF that FFmpeg's muxer creates
[23:06:59 CEST] <JEEB> so if your file doesn't play, you might want to start looking into things a bit better instead of crying wolf
[23:07:00 CEST] <BtbN> I'd guess you instead put something inside of that mp4 which wmp can't play.
[23:07:22 CEST] <BtbN> Aren't there some versions of wmp without h264/mpeg2 support?
[23:08:00 CEST] <tdr> yes there are
[23:08:15 CEST] <JEEB> vista didn't have the MF filters by default, but it was released as an update later if I recall correctly
[23:08:29 CEST] <JEEB> XP is just so old that it lacked those things whatsoever
[23:09:15 CEST] <JEEB> and then you have those versions ("N" I think?) which they had to have available due to an EU thing, but those are usually only pirated in mistake, the sales of those are *very* small
[23:09:22 CEST] <JEEB> but those can still install the decoders and demuxers
[23:09:34 CEST] <TwinTailed> so the WMP with Windows 8.1 supports H264?
[23:09:38 CEST] <JEEB> yes
[23:09:45 CEST] <JEEB> or more exactly there are MF filters
[23:09:48 CEST] <JEEB> which WMP uses
[23:10:04 CEST] <JEEB> because WMP is a MF/DShow player
[23:10:09 CEST] <TwinTailed> might it be that i am writing wrong packets to the output?
[23:10:38 CEST] <JEEB> I would bet my ass at that or something like that. Try remuxing your stuff with ffmpeg cli first, then do your stuff and compare output of boxdumper
[23:11:10 CEST] <TwinTailed> "Windows Media Player cannot play the file. The Player might not support the file type or might not support the codec that was used to compress the file." that's WMP message
[23:11:15 CEST] <JEEB> also you might want to look into bitstream filtering since I'm not 100% sure that is still fully automagic
[23:11:33 CEST] <BtbN> iirc it's not automatic for mp4
[23:11:37 CEST] <BtbN> because of dashenc
[23:11:47 CEST] <TwinTailed> bitstream filtering is required?
[23:12:18 CEST] <JEEB> annex b -> avcc is required in that case
[23:12:44 CEST] <JEEB> anyways, just remux with the command line app once and see how that goes :P then start comparing with things like L-SMASH's boxdumper and shit
[23:15:31 CEST] <TwinTailed> JEEB: yeah it does work
[23:16:08 CEST] <TwinTailed> JEEB: Why my output file (With my code) produces a video with filesize 4 times bigger than the original? it works with VLC however
[23:17:28 CEST] <JEEB> how would I know what you're doing wrong :P and it's not really a big surprise that such players have support for various broken crap that people have managed to create during the years
[23:17:37 CEST] <JEEB> I've already given you plenty of hints on how to debug your issue
[23:18:37 CEST] <TwinTailed> JEEB: whats the possibility of it being because of bitsream filtering?
[23:19:20 CEST] <JEEB> -_- so you are asking me instead of looking at your goddamn output packets?
[23:19:39 CEST] <JEEB> it should be pretty damn obvious if you look at your extradata etc
[23:19:59 CEST] <TwinTailed> JEEB: What should be in my extradata?
[23:20:01 CEST] <JEEB> `boxdumper --box filename.mp4` will give you the needed offsets etc so you can open a hex editor
[23:20:33 CEST] <JEEB> TwinTailed: jesus christ... so you can complain about major brands for whatever reason but you're not capable of understanding that part of 14496-15?!
[23:21:01 CEST] <TwinTailed> JEEB: yes...
[23:21:35 CEST] <TwinTailed> JEEB: I self-learn, I don't learn from school or college you know?
[23:21:45 CEST] <JEEB> > implying this is taught in university
[23:21:50 CEST] <TwinTailed> JEEB: So I learn from people like you
[23:22:31 CEST] <JEEB> just google the document, grab it, build L-SMASH's boxdumper, grab a hex editor and start looking into the packets that you muxed
[23:23:02 CEST] <JEEB> boxdumper with the --box parameter gives you a dump of all of the boxes and all the offsets etc in a text form
[23:23:12 CEST] <TwinTailed> You and BtbN always don't give us a full answer, its not because you don't want to, its because you are really experienced in this that you think the others are just a little bit less experienced than you
[23:24:49 CEST] <radicaldev> his splaining made sense to me.
[23:25:06 CEST] <TwinTailed> last 2 paragraphs were clear
[23:25:18 CEST] <TwinTailed> other than that he was just throwing hints
[23:29:05 CEST] <JEEB> you're supposed to have some interest in your own creations, and the very least you could have done is try with the ffmpeg CLI
[23:29:08 CEST] <JEEB> which you didn't
[23:29:16 CEST] <JEEB> I'm not sure what you expect from others
[23:30:40 CEST] <TwinTailed> FFMpeg's documentation can be better
[23:30:44 CEST] <JEEB> totally
[23:30:57 CEST] <JEEB> FFmpeg also does a whole lot of crap wrong
[23:32:06 CEST] <JEEB> but still, this case is a clear case of "I didn't even try to verify if my code did the right thing" after finding out that some players didn't accept the file. also the file size being X times bigger with just a remux (?) should sound alarm bells
[23:32:45 CEST] <TwinTailed> JEEB: Its not just a remux
[23:33:02 CEST] <TwinTailed> I demux, decode and then encode the packets and mux
[23:33:35 CEST] <JEEB> but in any case, you now should have enough information to just look up if your packets look alright (mostly take a look at the extradata and if your samples adhere to the spec
[23:34:10 CEST] <JEEB> it should be pretty simple to find out if you pushed Annex B into AVCc or something like that
[23:34:16 CEST] <radicaldev> On my way out I noticed smoke in the middle of a farmer's pasture, so I told the dude who maintains it about it and he gave me a beer and we rode around trying to find the source.
[23:34:40 CEST] <radicaldev> We found this bubbling clay pit in the middle of his field that was emitting smoke/steam or whatever
[23:34:48 CEST] <radicaldev> and blowing mud all over the place
[23:35:10 CEST] <Mavrik> That sounds like a place from which H.265 came.
[23:35:14 CEST] <radicaldev> I thought it might be a gas line that broke or something, but he wasn't aware of any pipes in that area
[23:35:34 CEST] <radicaldev> geysers in east tx?
[23:35:34 CEST] <JEEB> Mavrik: hey - the spec is actually good. the business people are those who fucked it up :D
[23:35:43 CEST] <Mavrik> :P
[23:36:19 CEST] <Mavrik> I need to admit, I only had a cursory glance at the spec.
[23:36:26 CEST] <Mavrik> Did they get rid of interlaced video yet?
[23:36:35 CEST] <JEEB> they got rid of the stuff that made coding it hard
[23:36:40 CEST] <JEEB> so there's no more MBAFF/PAF
[23:36:42 CEST] <JEEB> *PAFF
[23:37:04 CEST] <JEEB> if someone wants to code fields, they still have the metadata entry to say "this coded picture is a field" but the rest of the video format doesn't give a flying fuck
[23:37:31 CEST] <Mavrik> Small victories then :=
[23:37:35 CEST] <JEEB> and when the cable tv mafia got to arms about it and started playing around MPEG rules the JCT-VC chair just told them to fuck off
[23:37:59 CEST] <JEEB> "blah blah we need special coding to get extra compression blah blah"
[23:39:51 CEST] <Mavrik> yuck
[23:39:59 CEST] <iive> iso14496-2 also almost got rid of interlace
[23:40:19 CEST] <iive> the only support was interlaced MB coding.
[23:40:27 CEST] <Mavrik> Oh well, I need to get my hands on some H.265 capable hardware slowly.
[23:40:29 CEST] <iive> afair
[23:40:55 CEST] <JEEB> yeah, 14496-10 seems to have been a sort of win for the cable companies etc
[23:41:06 CEST] <JEEB> since it got MBAFF and PAFF
[23:41:33 CEST] <JEEB> and then with 23008-2 they just got told to walk with the metadata field
[23:42:58 CEST] <Mavrik> Hmm, where do they even get gains with interlaced?
[23:43:06 CEST] <Mavrik> Since it was kinda less efficient at least with H.264
[23:43:28 CEST] <iive> same way they get gains in CRT
[23:43:44 CEST] <iive> in motion you have half resolution but full fps
[23:44:02 CEST] <iive> in static scenes you have full resolution but half fps
[23:44:05 CEST] <JEEB> Mavrik: well it's what they wanted which ended up being extra complexity in the format
[23:44:15 CEST] <JEEB> (Ž4@)
[23:44:26 CEST] <Mavrik> iive, yeah, but last time I checked doing H.264 at full resolution + FPS wasn't noticably worse.
[23:44:35 CEST] <Paranoialmaniac> JEEB: you can interlace by SAFF with H.265
[23:44:54 CEST] <Mavrik> And yeah, I had cable companies demand full interlaced support for their sports channels as well -_-
[23:44:54 CEST] <iive> Mavrik: interlace halves bitrate
[23:45:09 CEST] <Mavrik> Hmm, not really halves.
[23:45:23 CEST] <Mavrik> It was more like 20% best-case?
[23:45:37 CEST] <JEEB> Paranoialmaniac: is that just the metadata fields
[23:45:42 CEST] <JEEB> or something new
[23:45:44 CEST] <iive> well, it halves the picture data
[23:46:06 CEST] <Paranoialmaniac> JEEB: not a new thing. field coded picture
[23:46:51 CEST] <JEEB> so it's just the metadata field that says "I am a field"?
[23:48:09 CEST] <iive> in mpeg2 you have coded_picture that can be top/bottom field or both(frame) . Is that metadata if it is mandatory field?
[23:48:17 CEST] <Paranoialmaniac> JEEB: metadata is a SEI. it's another thing. SAFF (sequence adaptive field frame) is more limited than PAFF (picture adaptive field frame)
[23:48:35 CEST] <JEEB> ok, I need to re-check my HEVC stuff
[00:00:00 CEST] --- Mon Sep 26 2016
1
0