Ffmpeg-devel-irc
Threads by month
- ----- 2026 -----
- 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
October 2017
- 1 participants
- 62 discussions
[00:07:52 CEST] <jkqxz> wm4: Are you happy with the V4L2 size fixup thing now? I'd commit it along with that other V4L2 stuff.
[00:08:32 CEST] <wm4> jkqxz: yes, because it has been said good drivers ignore it
[00:09:43 CEST] <jkqxz> There are good drivers for V4L2?
[00:10:43 CEST] <wm4> dunno lol
[00:11:10 CEST] <JEEB> lol
[00:14:12 CEST] <cone-895> ffmpeg 03James Almer 07master:ede233a27889: configure: fix detecting libdl when dlsym requires extra linker flags
[00:27:40 CEST] <rcombs> "good" is relative
[01:08:04 CEST] <cone-895> ffmpeg 03Mark Thompson 07master:a0d076f3ef95: lavc/v4l2: Remove use of lfind()
[01:08:05 CEST] <cone-895> ffmpeg 03Mark Thompson 07master:8da5af258423: lavc/v4l2: Mark static const tables as such
[01:08:06 CEST] <cone-895> ffmpeg 03Jorge Ramirez-Ortiz 07master:44188993a186: avcodec/v4l2: set sizeimage param for non-raw buffers [fixes #6716]
[01:11:52 CEST] <JEEB> hmm, is there a clang style config that would match what FFmpeg requires?
[01:24:54 CEST] <cone-895> ffmpeg 03Michael Niedermayer 07master:df62b70de8aa: avcodec/x86/lossless_videoencdsp: Fix handling of small widths
[01:24:55 CEST] <cone-895> ffmpeg 03Michael Niedermayer 07master:26ea142658a8: avcodec/x86/lossless_videoencdsp: Fix warning: signed dword value exceeds bounds
[04:52:17 CEST] <cone-556> ffmpeg 03James Almer 07master:18279738f9a2: x86/blockdsp: use three operand form for an instruction
[07:37:44 CEST] <TimothyGu> michaelni: congrats on winning the Google Open Source Peer Bonus!
[09:56:55 CEST] <cone-730> ffmpeg 03Tobias Rapp 07master:c941e99b7f7b: avformat/wavenc: replace literal numbers with enum constants
[09:59:05 CEST] <cone-730> ffmpeg 03Mark Thompson 07master:e01a270762c1: lavc/v4l2: Fix printf format for int64_t
[10:32:00 CEST] <wm4> holy hell, h264 exports stereo3d metadata as AVDictionary instead of using the side data
[10:36:20 CEST] <cone-730> ffmpeg 03Tobias Rapp 07master:4f5fb7813423: doc/filters: align order of fps filter options to implementation
[10:36:21 CEST] <cone-730> ffmpeg 03Tobias Rapp 07master:0a499d6a5740: avfilter/vf_fps: clean-up filter options
[10:36:26 CEST] <rcombs> wm4: how even
[10:37:42 CEST] <wm4> av_dict_set(&dst->metadata, "stereo_mode", ff_h264_sei_stereo_mode(&h->sei.frame_packing), 0);
[10:38:21 CEST] <wm4> hevc does it correctly
[10:43:46 CEST] <rcombs> oh, on the frame
[10:43:59 CEST] <rcombs> quality
[10:46:29 CEST] <wm4> probably from before there was side data
[16:37:18 CEST] <cone-730> ffmpeg 03James Almer 07master:cafd9d66ed9e: build: add install targets for the examples
[16:41:13 CEST] <qwebirc25491> hello
[16:41:35 CEST] <qwebirc25491> I am trying to statically compile an ffmpeg binary for testing on macOS
[16:41:45 CEST] <qwebirc25491> But I cannot find any decent guide that can let me do this
[16:42:11 CEST] <nevcairiel> You probably want #ffmpeg, this channel is for development of ffmpeg, not questions on how to use or build it
[16:42:12 CEST] <qwebirc25491> I tried doing it with dependencies installed from homebrew, but when I try it on a different computer it gives me a dylib: image not found error
[16:42:16 CEST] <qwebirc25491> ok
[16:42:18 CEST] <qwebirc25491> thank you
[16:51:06 CEST] <jamrial> ubitux: can you test the latest merge whenever you have time? it's a "fine-grained link-time dependency" overhaul in the build system
[16:51:17 CEST] <jamrial> basically, instead of every module adding global "extralibs", it's done individually per ffmpeg library as needed
[16:52:10 CEST] <jamrial> had to adapt parts since we have a lot of external libraries libav doesn't, but some things like the avfoundation stuff is completely untested
[16:53:43 CEST] <jamrial> i pretty much guessed what to change with those :p
[16:55:16 CEST] <nevcairiel> iirc that change also had a bunch of bugs, should probably read a bit into the future of their commits
[16:57:37 CEST] <jamrial> where those found quickly or after a while? can't find any other commit related to this
[17:00:01 CEST] <jamrial> maybe d9da7151ee?
[17:06:26 CEST] <tmm1> jkqxz: did you get a chance to try that qsv repro on your win7 setup?
[17:12:05 CEST] <cone-730> ffmpeg 03Lukas Stabe 07master:1fd80106be3d: avformat: fix id3 chapters
[17:26:17 CEST] <kiroma> Is there a config option to enable all codecs?
[17:32:53 CEST] <nevcairiel> All codecs are enabled by default
[17:37:00 CEST] <kiroma> Oh so I can just omit all those --enable flags?
[17:38:14 CEST] <jamrial> that depends. if they are external libraries and you want them, no
[17:38:17 CEST] <jamrial> read the output of configure --help
[17:38:25 CEST] <jamrial> also, this is a subject for #ffmpeg, not this channel
[17:38:54 CEST] <kiroma> Okay, sorry.
[18:02:25 CEST] <jamrial> nevcairiel: thanks, squashed that one into the merge
[18:08:21 CEST] <nevcairiel> jamrial: 5e27ef800 probably as well
[18:18:06 CEST] <jamrial> nevcairiel: done
[18:19:46 CEST] <jamrial> nevcairiel: if you want to help testing the merge, i'd be grateful :p
[19:15:27 CEST] <graphitemaster> does ffmpeg have a function for defining custom allocation functions?
[19:20:54 CEST] <atomnuker> custom allocation functions for avframes? yep
[19:21:11 CEST] <nevcairiel> he probably means a generic allocator
[19:21:14 CEST] <graphitemaster> custom allocation functions for the entire library, yes
[19:21:25 CEST] <jkqxz> ELF interposition.
[19:21:40 CEST] <jkqxz> (Just like every other library.)
[19:21:50 CEST] <graphitemaster> I noticed the configure script permits a custom allocator like tcmalloc and jemalloc, but I need something that is provided by the application
[19:22:07 CEST] <nevcairiel> its kind-of supported, as long as your allocators start with a defined prefix and are linked at compile time
[19:22:12 CEST] <nevcairiel> not at runtime
[19:23:11 CEST] <graphitemaster> how difficult would it be to provide a runtime allocator registration as part of avutil, since it seems all the relevant stuff just uses av_(malloc,realloc) anyways?
[19:23:40 CEST] <nevcairiel> it would require global state, and we really dont like global state
[19:23:43 CEST] <graphitemaster> kind of sucks there is no context param for it though, so it would be global state which sucks
[19:24:51 CEST] <graphitemaster> looks like the only way is to build ffmpeg against a wrapper malloc implementation which lets me register my own hooks then
[19:25:22 CEST] <graphitemaster> does ffmpeg make allocations in global constructors anywhere?
[19:25:38 CEST] <nevcairiel> we dont use global constructors (yet)
[19:25:55 CEST] <graphitemaster> okay so then I don't have to worry about heap allocations before main is entered in my application
[19:26:00 CEST] <graphitemaster> thanks.
[19:26:20 CEST] <nevcairiel> there is no guarantee that it wont start doing that at some point tho
[19:27:18 CEST] <graphitemaster> *sigh*
[19:29:43 CEST] <graphitemaster> the rationale for this is to build a video player who's backing memory is represnted by an allocator which mlocks the pages so no sensitive information (like video frames) are included in the coredump for crash reports sent to us.
[19:31:28 CEST] <nevcairiel> video frames get a custom allocator anyway
[19:31:38 CEST] <nevcairiel> you can provide one by using get_buffer2
[19:32:53 CEST] <graphitemaster> well it was more generally about having full coverage of the library as a whole, e.g network subsystem too
[19:34:36 CEST] <nevcairiel> you cant really tell where an allocation is from though and if all memory is locked out, core dumps would seem quite a bit less useful
[19:36:25 CEST] <graphitemaster> if anything it is more useful because the coredump is filtered against the application instead of libraries linked
[21:23:11 CEST] <wm4> will I have to call a vote on this opaque_ref patch bullshit
[21:24:19 CEST] <BtbN> internal_opaque_ref
[21:25:08 CEST] <wm4> no
[21:27:14 CEST] <wm4> opaque_ref _is_ already "internal"
[21:27:58 CEST] <wm4> passing an AVFrame with opaque_ref set to some other piece of code makes no sense at all, unless it's for merely passing it through
[21:28:07 CEST] <wm4> (like in libavfilter, for which this was created)
[21:30:11 CEST] <jamrial> wm4: instead of a vote, call for more opinions. there are other developers that could contribute here
[21:30:34 CEST] <jamrial> they probably ignored/skipped the thread for being called "cuvid hwaccel"
[21:31:41 CEST] <jamrial> so far, you think it's ok and safe, michael that it's bad and risky. so what we need is to know what do other devs think
[21:39:35 CEST] <jkqxz> I don't understand the discussion at all. The output AVFrame is bound by the API contract /not/ to be the same as the one in get_buffer2 (since the former is allocated by the user and the latter by lavc), so why would it matter what route any metadata on it takes?
[21:40:19 CEST] <wm4> the patch tries to preserve opaque_ref from get_buffer2
[21:40:29 CEST] <wm4> I don't know why, I find this unnecessary
[21:42:23 CEST] <jkqxz> Yeah, I can see making sure some metadata matches, fine. But the AVFrame structure itself doesn't matter - the user can't keep any pointers to it because it would be fine for a decoder to move the reference to another AVFrame and free it as soon as get_buffer2 returns.
[22:06:49 CEST] <saml_> how can I apply patch like https://github.com/FFmpeg/FFmpeg/commit/bb1014279d865597c281c651c9d78dfb56c… ?
[22:07:11 CEST] <saml_> patch -p0 < mypatch asks me File to patch:
[22:07:17 CEST] <jkqxz> -p1
[22:08:20 CEST] <saml_> ah thanks. should've read man page more carefully
[22:08:34 CEST] <JEEB> git itself can apply patches as well
[22:08:39 CEST] <JEEB> git am with commit messages
[22:08:44 CEST] <JEEB> and git apply for just diffs
[22:12:32 CEST] <BtbN> git applying patches is not the most pleasant experience sadly
[22:12:49 CEST] <BtbN> It fails at the slightest issue, where patch just shows an offset and applies away
[22:14:17 CEST] <jkqxz> "git am -3"? But yeah, it still gives up annoyingly often.
[22:16:04 CEST] <saml_> nice thanks
[22:19:54 CEST] <alallein> is there any interest in a patch making -vcodec copy -acodec copy -avoid_negative_ts make_zero behavior the default when you do -vcodec copy -acodec copy?
[22:24:40 CEST] <Compn> -c copy :P
[22:24:47 CEST] <Compn> but uh... changing a default , alallein ?
[22:25:05 CEST] <llogan> TimothyGu: i added doc/mailing-list-faq.texi on tuesday. i was assuming generate-doc.sh is executed regularly and would deal with adding it to the online docs, but it has not shown up (yet). got any suggestions?
[22:25:09 CEST] <Compn> alallein : i mean, patch welcome , maybe someone would use it. it would start a discussion on the current default of course
[22:25:46 CEST] <alallein> Compn: well, this just bit me badly, since I only noticed the odd behavior after running on a large number of files :)
[22:26:05 CEST] <Compn> aww
[22:26:23 CEST] <Compn> well did you run it on a large number of files with your option on and notice any problems?
[22:26:26 CEST] <Compn> could go both ways
[22:26:38 CEST] <alallein> investigating further now
[22:26:51 CEST] <alallein> maybe re-encoding is really the way to go?
[22:28:46 CEST] <Compn> what is your use case
[22:28:54 CEST] <Compn> running a porn-hub type site ?
[22:29:02 CEST] <Compn> ehe
[22:29:05 CEST] <alallein> haha
[22:29:24 CEST] <alallein> no, just chopping up a bunch of larger files into scenes for further analysis
[22:29:45 CEST] <Compn> some kind of research ?
[22:29:50 CEST] <Compn> fine i wont ask if you dont want to say lol
[22:30:02 CEST] <alallein> yep, CV research
[22:30:05 CEST] <Compn> what container format ?
[22:30:09 CEST] <alallein> mp4
[22:30:20 CEST] <Compn> for automated vehicle system? :P
[22:30:21 CEST] <Compn> ehe
[22:30:25 CEST] <alallein> no ;)
[22:30:50 CEST] <Compn> you might want to use the mp4box for splitting mp4
[22:31:19 CEST] <alallein> hm
[22:31:22 CEST] <alallein> never heard of that one
[22:34:04 CEST] <Compn> it may or may not work better for your purposes
[22:34:08 CEST] <Compn> i make no promises...
[22:34:47 CEST] <alallein> actually
[22:34:59 CEST] <alallein> there appears to be an actual bug being surfaced here
[22:35:10 CEST] <alallein> a bunch of these files only have audio streams, no video stream at all
[22:35:13 CEST] <alallein> according to ffprobe
[22:35:13 CEST] <Compn> what ver ffmpeg are you using ?
[22:35:31 CEST] <alallein> something very recent, sec
[22:37:01 CEST] <llogan> you should move this discussion to #ffmpeg, then use pastebin to show your actual command and the complete console output
[22:37:34 CEST] <Compn> (and upload a sample and report a bug on http://trac.ffmpeg.org )
[22:39:26 CEST] <alallein> will do, perhaps tomorrow
[22:39:31 CEST] <alallein> using 3.2.4
[22:39:46 CEST] <alallein> so a few point releases behind
[00:00:00 CEST] --- Fri Oct 6 2017
1
0
[00:39:16 CEST] <joshu> hey folks, is there a way to concatenate several mp4 files into one, while making chapter markers at the beginning of each new file?
[01:24:10 CEST] <jaggz> vids have chapter markers?
[01:24:41 CEST] <JEEB> various containers have chapters
[01:24:55 CEST] <JEEB> matroska probably being the most popular
[03:46:51 CEST] <memeka> is there a way for a codec to automatically set -pix_fmt ?
[05:09:27 CEST] <Johnjay> Well apparently the msys2 channel on Oftc is dead. even though it has dozens of users
[05:09:46 CEST] <Johnjay> good thing ffmpeg compiled on my first try with just installing a few packages
[06:47:21 CEST] <dunpeal> Hi. I have a fairly large recording in M4A format. What's the easiest way to cut of a part of its beginning?
[06:47:41 CEST] <dunpeal> Note that it has some chapter marks, which I'd like to keep intact.
[07:32:40 CEST] <Johnjay> not sure about the chapter marks
[07:32:49 CEST] <Johnjay> i use -ss and -t/-to options to cut sections i need
[08:07:12 CEST] <dunpeal> Thanks!
[08:13:51 CEST] <Johnjay> np
[09:16:19 CEST] <Bear10> d]
[09:16:58 CEST] <Bear10> has anyone gotten this message when streaming from udp to a file and seen this error / message? stderr: [libmp3lame @ 0x7fa91a838a00] Queue input is backward in time
[09:17:14 CEST] <Bear10> when I open my file the audio is fine but when i try to restream that file to an RTMP for example the audio is choppy
[11:29:13 CEST] <Bear10> https://stackoverflow.com/questions/46582105/mediarecorder-ffmpeg
[12:06:12 CEST] <HD|Laptop> hello all
[12:07:12 CEST] <HD|Laptop> assuming I have a Raspberry Pi with a USB webcam (Logitech) and a server on the Internet, can I use ffmpeg on the Pi to stream the video in best quality to the server, and re-encode it as HLS on the server using ffmpeg?
[12:07:27 CEST] <HD|Laptop> All the HLS examples I've seen on the net assume a static video file that's splitted
[12:08:10 CEST] <HD|Laptop> I know about the latency and buffering issues with HLS, that's fine with me, I dont need absolute realtime but can live with up to 5min of delay
[12:09:17 CEST] <BtbN> yes
[12:09:44 CEST] <HD|Laptop> @BtbN do you have any examples I can use as starting point?
[12:10:27 CEST] <BtbN> Not at hand, no. But I'm sure there are some to find easily.
[12:10:35 CEST] <BtbN> You want to use nginx-rtmp on the server though.
[12:11:26 CEST] <HD|Laptop> so, basically, rtmp from pi to server, and hls from server to internet?
[12:11:52 CEST] <HD|Laptop> needs to be HLS for distribution to make sure people with stupid firewalls or restricted internet can access it, too
[12:11:53 CEST] <JEEB> depends on what you get from the webcam
[12:12:06 CEST] <JEEB> nginx-rtmp is a module for nginx that takes in RTMP ingest
[12:12:07 CEST] <HD|Laptop> hmm it's a standard Logitech one
[12:12:10 CEST] <JEEB> and then produces DASH/HLS
[12:12:47 CEST] <HD|Laptop> does it need to be nginx? :/
[12:12:51 CEST] <BtbN> h264 from webcams is almost always trash
[12:13:08 CEST] <BtbN> And from my experience, even a Pi3 is too weak to re-encode mjpeg or whatever they output otherwise
[12:13:10 CEST] <JEEB> HD|Laptop: well if you can find other things that handle media servinf :)
[12:13:21 CEST] <JEEB> yea you don't want to do *any* transcoding on the device
[12:13:23 CEST] <JEEB> on the rpi
[12:13:30 CEST] <HD|Laptop> @btbn thats why I wanted to use the pi as stream dumper only ;)
[12:13:44 CEST] <JEEB> HD|Laptop: so check what formats you get from the camera
[12:13:45 CEST] <BtbN> Well, a raw uncompressed stream is not something you can stream
[12:13:56 CEST] <BtbN> And even mjpeg might be too much for the slow network the Pi has
[12:13:58 CEST] <JEEB> well he already noted that he had some other box he can transcode on
[12:14:07 CEST] <JEEB> sure, if the network is relaly bad
[12:14:09 CEST] <JEEB> it will fuck up
[12:14:10 CEST] <BtbN> The Pi only has 100Mbit out
[12:14:17 CEST] <BtbN> and it's a USB nic that shares with the webcam
[12:14:20 CEST] <JEEB> MJPEG should be "OK" I think if that's what it comes
[12:14:23 CEST] <JEEB> oh
[12:14:23 CEST] <JEEB> lol
[12:14:24 CEST] <JEEB> :D
[12:14:26 CEST] <BtbN> That _easily_ gets overwhelmed
[12:14:45 CEST] <HD|Laptop> how do I find out what the camera supplies?
[12:14:56 CEST] <HD|Laptop> and I mean, people have done livestreams on the pi already
[12:14:59 CEST] <JEEB> HD|Laptop: so start with trying to check a) what the camera outputs b) pick best alternative what to throw out
[12:15:07 CEST] <JEEB> yea, they usually use the rpi3 hw encoder for video
[12:15:17 CEST] <JEEB> which is crap so you don't want to use it if only possible
[12:15:30 CEST] <BtbN> Well, it's ok to get decent quality in less than 100Mbit/s
[12:15:30 CEST] <HD|Laptop> oh. :D
[12:15:31 CEST] <JEEB> although if you push enough bit rate into it it might be "bearable"
[12:15:44 CEST] <HD|Laptop> i'm not trying to pull cinema stuff here ;)
[12:15:50 CEST] <blap> Those who do wish for the [things of] the Hereafter, and strive therefor with all due striving, and have Faith,- they are the ones whose striving is acceptable [to Allah].
[12:15:51 CEST] <JEEB> and then you re-transcode on the other thing
[12:16:37 CEST] <BtbN> Just don't ever try to use h264 directly from a webcam
[12:16:45 CEST] <BtbN> that stuff is the most horrible and broken trash you can get
[12:17:40 CEST] <HD|Laptop> hmm I had hoped Logitech would do decent quality... I mean, when I use it as a webcam in a browser using HTML5 getMediaSource() it produces a pretty decent FullHD video
[12:18:39 CEST] <BtbN> That does not use h264.
[12:18:46 CEST] <BtbN> It's most likely raw frames
[12:20:00 CEST] <HD|Laptop> ah, with encoding on the device then
[13:05:38 CEST] <memeka> how can i profile ffmpeg?
[13:08:47 CEST] <Nacht> what ?
[13:12:52 CEST] <JEEB> memeka: perf and friends?
[13:13:06 CEST] <JEEB> just remember that you don't want to strip
[13:13:09 CEST] <JEEB> --disable-stripping
[13:13:54 CEST] <memeka> yeah :)
[13:28:16 CEST] <abel-abel> Hello, is there any simple way to convert .mkv to .flv? I tried `ffmpeg -i S03E01.mkv -c copy out.flv` but failed with:
[13:28:39 CEST] <abel-abel> [flv @ 0x7f8a43000000] FLV does not support sample rate 48000, choose from (44100, 22050, 11025)
[13:28:39 CEST] <abel-abel> [flv @ 0x7f8a43000000] Audio codec ac3 not compatible with flv
[13:28:39 CEST] <abel-abel> Could not write header for output file #0 (incorrect codec parameters ?): Function not implemented
[13:30:39 CEST] <relaxed> abel-abel: ffmpeg -i S03E01.mkv -c:v copy -c:a libmp3lame -ar 44100 out.flv
[13:31:15 CEST] <relaxed> ffmpeg -h muxer=flv
[13:32:16 CEST] <memeka> JEEB: is there a way for ffmpeg to decode then do nothing with the frames?
[13:33:09 CEST] <relaxed> memeka: -f null -
[13:33:16 CEST] <abel-abel> relaxed: Thank you so much! I'm trying your method but it seems that it takes much time. :(
[13:33:45 CEST] <relaxed> memeka: https://trac.ffmpeg.org/wiki/Null
[13:34:14 CEST] <Fyr> guys, I have the images with names are as following: "s01000.png", "s02000.png" etc. how to create a video from them?
[13:34:20 CEST] <abel-abel> relaxed: maybe not that much time. :)
[13:34:32 CEST] <abel-abel> Thank you!
[13:34:38 CEST] <relaxed> abel-abel: you're welcome
[13:35:08 CEST] <Fyr> ffmpeg -framerate 1 -start_number 0 -i "snapshot%07d.png" -c:v libx264 -filter:v "fps=1" 1.mp4
[13:35:08 CEST] <Fyr> creates video with the only image
[13:35:34 CEST] <Fyr> oops, "s%05d.png"
[13:35:49 CEST] <Fyr> "*.png" returns error.
[13:36:38 CEST] <relaxed> Fyr: look at, ffmpeg -h demuxer=image2
[13:39:32 CEST] <relaxed> Fyr: https://trac.ffmpeg.org/wiki/Slideshow
[13:40:00 CEST] <Fyr> thanks
[13:40:07 CEST] <Fyr> it was really helpful.
[13:45:29 CEST] <Fyr> why "image2" and not "image"?
[13:49:43 CEST] <Fyr> is there a difference between -vf "format=yuv420p" and -pix_fmt yuv420p?
[13:50:02 CEST] <Fyr> I mean, is there a specific order if I apply more filters?
[13:50:11 CEST] <JEEB> other is specific regarding the video filter chain, another is implicit at "some point"
[13:50:15 CEST] <JEEB> so I prefer the -vf
[13:50:29 CEST] <JEEB> it's explicit at which point that conversion is done, if the chain is any longer
[13:50:49 CEST] <JEEB> I think the pix_fmt is basically like appending format=BLAH in the filter chain's end
[13:56:02 CEST] <Fyr> ok, thanks
[14:03:45 CEST] <Fyr> can FFMPEG deal with 120 000 images?
[14:18:47 CEST] <klaxa> i don't see why not
[14:19:07 CEST] <klaxa> i think it's more a question of your computer's resources
[14:23:41 CEST] <q66> might take a few minutes
[14:23:56 CEST] <q66> at theoretical processing speed of 60 images per second, it will take around 30 minutes
[14:28:00 CEST] <broman> Hi everybody! I have some .mov files want to stream to nginx rtmp. I have already tried to stream a single .mov by FFMPEG command in terminal and it works, nginx can display the thing i streaming in live. this is the command i am using: ffmpeg -re -i file1.mov -vcodec libx264 -f flv rtmp://localhost/livepkgr/livestream ||| Now i want to stream multiple files, I tried to use above command one by one, but it seems Flash media server stop the streaming whe
[14:28:00 CEST] <broman> n file1 is finished, then start the stream with file2. It makes the stream player stopped when file1 is finish, and have to refresh the page in order to continue on file2. I wonder is that possible to let FFMPEG constantly deliver the stream by multiple files source without stopped when a file finish? or still there something i can use for coding using FFMPEG to achieve what I want to do?
[14:29:27 CEST] <thebombzen> broman: use the concat filter
[14:29:29 CEST] <thebombzen> !filter concat
[14:29:29 CEST] <nfobot> thebombzen: http://ffmpeg.org/ffmpeg-filters.html#concat
[14:29:44 CEST] Action: relaxed pets nfobot
[14:43:21 CEST] <memeka> thx relaxed
[15:20:54 CEST] <JohnDoe2> ffmpeg is driving me crazy I tried https://pastebin.com/i8mETCNx and all I get is a file with a shorter end but the start point option is always ignored. Does -ss not apply to audio?
[15:25:49 CEST] <JohnDoe2> meh not worth it, I'll just fire up audacity I guess
[16:21:27 CEST] <jerem> hi everybody
[16:21:51 CEST] <Guest80957> i need some help to compile ffmpeg 2.8.13 with lib opus on centos 7
[16:22:07 CEST] <Guest80957> please
[16:22:24 CEST] <BtbN> That's ancient
[16:22:32 CEST] <Guest80957> i have the next error : ERROR : opus not found using pkg-config
[16:22:50 CEST] <relaxed> Guest80957: did you read https://trac.ffmpeg.org/wiki/CompilationGuide/Centos
[16:22:50 CEST] <Guest80957> yes it's sure but it'necessary to product clipbucket
[16:23:56 CEST] <Guest80957> yes the problem is linked to libopus
[16:24:25 CEST] <relaxed> look at the end of ffmpeg's config.log for the issue
[16:25:51 CEST] <relaxed> where did you install libopus?
[16:34:55 CEST] <Guest80957> pkg-config don't find opus package
[16:36:17 CEST] <Guest80957> to compile do you add systematically prefix in ./configure command ?
[16:40:08 CEST] <Guest80957> i resolve my problem
[16:40:19 CEST] <Guest80957> i install devel library
[16:42:32 CEST] <qwebirc25491> hello
[16:42:40 CEST] <qwebirc25491> I am trying to statically compile an ffmpeg binary for testing on macOS
[16:42:47 CEST] <qwebirc25491> But I cannot find any decent guide that can let me do this
[16:42:55 CEST] <qwebirc25491> I tried doing it with dependencies installed from homebrew, but when I try it on a different computer it gives me a dylib: image not found error
[16:46:19 CEST] <relaxed> qwebirc25491: never built them for macs, but http://www.ffmpegmac.net/HowTo/
[16:47:03 CEST] <qwebirc25491> Yeah that's what I'm looking at, but I'm a tad confused on the instructions
[16:47:11 CEST] <qwebirc25491> Are all of these commands ran in Terminal?
[16:47:31 CEST] <qwebirc25491> or is it just the ones with $ that are ran there?
[16:47:52 CEST] <relaxed> former
[16:48:00 CEST] <qwebirc25491> ah ok
[16:48:16 CEST] <qwebirc25491> and why would you have to make a RAM disk for this
[16:48:40 CEST] <relaxed> no idea, I don't use macs
[16:48:57 CEST] <qwebirc25491> ok
[16:49:24 CEST] <relaxed> faster build times, I assume
[16:49:36 CEST] <qwebirc25491> one last question, when you see something like ${TARGET} do you replace it with something else, or is everything typed up exactly as seen?
[16:50:12 CEST] <relaxed> latter, it's a bash variable
[16:50:21 CEST] <qwebirc25491> ah ok
[16:50:43 CEST] <qwebirc25491> and you set it by doing MES=/Packages/ or TARGET="/Volumes/..." in cmd line
[16:50:48 CEST] <qwebirc25491> ?*
[16:51:30 CEST] <relaxed> it doesn't appear to be a very good howto
[16:51:46 CEST] <qwebirc25491> eh :P
[16:52:35 CEST] <Johnjay> wait qwebirc gives automatic nick names?
[16:52:39 CEST] <Johnjay> since when?
[16:53:15 CEST] <Johnjay> qwebirc25491: What version of mac os are you running?
[16:53:54 CEST] <qwebirc25491> 10.10
[16:54:52 CEST] <qwebirc25491> Johnjay: I tried using some static ffmpeg scripts I found on GitHub but neither worked due to some error with nasm
[16:56:59 CEST] <relaxed> what's the error?
[16:58:04 CEST] <qwebirc25491> I can't remember exactly, but off the top of my head it said something about nasm or yasm didn't come pre configured and you needed to run --disable-asm ?
[16:58:17 CEST] <qwebirc25491> https://github.com/zimbatm/ffmpeg-static
[16:58:21 CEST] <qwebirc25491> https://github.com/markus-perl/ffmpeg-build-script
[16:58:24 CEST] <qwebirc25491> I tried both of those ^
[16:58:39 CEST] <relaxed> compile the latest nasm and put it in your $PATH
[16:59:39 CEST] <qwebirc25491> Ok
[16:59:40 CEST] <relaxed> qwebirc25491: http://www.nasm.us/pub/nasm/releasebuilds/2.13.01/macosx/
[17:00:14 CEST] <qwebirc25491> I mean is there an easier way to do all of this? I just need to build an ffmpeg with just libvpx and libopus and I would assume there would be some script that just works off the bat :P
[17:00:33 CEST] <qwebirc25491> The scripts in the github download the nasm version automatically so idk why it wouldnt work with its own compile process?
[17:01:02 CEST] <relaxed> the easiest way would be to use linux and grab one of my builds :P
[17:02:05 CEST] <qwebirc25491> yeah but this has to be for macos :P
[17:02:26 CEST] <relaxed> do the macos static builds not work for you?
[17:02:37 CEST] <qwebirc25491> They include libx264
[17:02:42 CEST] <relaxed> so?
[17:02:45 CEST] <qwebirc25491> and I don't want to use that bc I need LGPL
[17:02:51 CEST] <qwebirc25491> and libx264 makes it GPL
[17:02:54 CEST] <qwebirc25491> (licensing)
[17:02:54 CEST] <relaxed> ah
[17:03:44 CEST] <JEEB> x264 lets you either use GPL or get a license from x264 LLC
[17:03:44 CEST] <Johnjay> qwebirc25491: does nasm and yasm have os builds?
[17:05:35 CEST] <qwebirc25491> I know but I don't want to use GPL or have to get a license, I'm not even using x264 encoding so I just need an ffmpeg with libvpx JEEB
[17:05:43 CEST] <qwebirc25491> and Johnjay I believe so, I'm not too sure
[17:06:18 CEST] <qwebirc25491> I haven't done this whole "compiling" thing in C before so I don't know a lot about getting it all to work
[17:07:31 CEST] <JEEB> qwebirc25491: yea if you don't need AVC encoding then just don't enable libx264
[17:09:39 CEST] <qwebirc25491> I know but my problem is getting it to statically compile
[17:09:43 CEST] <qwebirc25491> so it works on other mac os pcs
[17:09:59 CEST] <qwebirc25491> and that's the part I am unable to figure out
[17:10:06 CEST] <qwebirc25491> --enable-static and --disable-shared dont work
[17:10:09 CEST] <qwebirc25491> when I run ./configure
[17:10:18 CEST] <qwebirc25491> and I have the dependencies downloaded from homebrew
[17:12:09 CEST] <relaxed> qwebirc25491: --extra-ldflags="-static"
[17:13:18 CEST] <qwebirc25491> so does that compile my homebrew dependencies into the binary
[17:13:33 CEST] <qwebirc25491> I just need them included with the binary so I don't get a "dylib: image not found error"
[17:14:47 CEST] <relaxed> it should, unless they're shared libs
[17:16:11 CEST] <qwebirc25491> how do I make sure they're not shared libs lol
[17:16:21 CEST] <relaxed> but first I'd see you can compile only ffmpeg statically
[17:16:23 CEST] <bperry_> I have two files, idx and sub used with vob
[17:16:40 CEST] <bperry_> i'd like to pass the idx file via stdin, and specify where the sub file is on the fs
[17:16:40 CEST] <HD|Laptop> BtbN: still here?
[17:16:45 CEST] <bperry_> is that possible?
[17:17:17 CEST] <bperry_> ffmpeg -f vobsub -i - --sub-file ~/fdsa.sub
[17:17:26 CEST] <bperry_> that's basically what I want
[17:17:45 CEST] <HD|Laptop> i have the webcam now attached to a linux PC for now, and installed ffmpeg from the debian repos
[17:18:04 CEST] <HD|Laptop> how do I check what quality I can achieve with this webcam's built-in h264 output?
[17:18:35 CEST] <qwebirc25491> ok
[17:18:36 CEST] <HD|Laptop> can I use VLC on another PC as RTMP receiver, maybe?
[17:18:51 CEST] <relaxed> bperry_: did you see "ffmpeg -h demuxer=vobsub"
[17:19:05 CEST] <bperry_> I didn't relaxed, how does that work?
[17:19:08 CEST] <bperry_> oh
[17:19:10 CEST] <bperry_> -h is help
[17:19:16 CEST] <bperry_> I will look at that
[17:20:15 CEST] <relaxed> bperry_: it will go before the -i -
[17:20:37 CEST] <Sebas_> hi :) I am transcoding to non-muxed, webm hdr+chunks (VP9+Vorbis), now I try to combine 2x video hdr and 2x audio hdr into a mpd manifest, it gives me 'Duplicate elements' when reading the first hdr file, any tips?
[17:21:00 CEST] <bperry_> relaxed: perfect
[17:21:01 CEST] <bperry_> vobsub AVOptions: -sub_name <string> .D...... URI for .sub file
[17:21:09 CEST] <bperry_> thanks so much
[17:21:14 CEST] <relaxed> you're welcome
[17:22:35 CEST] <Johnjay> vobsub? is that in vlc?
[17:33:20 CEST] <Fyr> guys, when playing a video, the player doesn't play the last a few seconds. is it connected to the parameters FFMPEG sets?
[17:34:35 CEST] <Fyr> now it doesn't play the last 8 seconds!
[17:44:20 CEST] <kiroma> Is there an option in configure to compile ffmpeg with every possible codec?
[17:46:15 CEST] <DHE> it does by default, but external libraries are typically not checked for unless explicitly enabled.
[17:47:41 CEST] <kiroma> That's what I wanted to do.
[17:48:08 CEST] <kiroma> I wanted to enable all external libraries to check how many codecs can I fit in from official repos.
[18:05:30 CEST] <ZexaronS> hello
[18:05:48 CEST] <ZexaronS> is output status console text part of ffmpeg?
[18:06:05 CEST] <ZexaronS> warnings and stuff was, but not sure for frame, size, rate, speed
[18:06:14 CEST] <ZexaronS> im trying to find "kbit/s"
[18:06:51 CEST] <ZexaronS> because I'd like to change the spacing 512.4kbit/s into 512.4 kbit/s
[18:07:07 CEST] <ZexaronS> but I can't find where is the coded in the repo, I did a grep
[18:10:26 CEST] <relaxed> ZexaronS: grep 'bitrate=' ffmpeg.c
[18:11:36 CEST] <ZexaronS> oh thanks
[18:13:34 CEST] <ZexaronS> oh lool it's kbits/s not kbit/s
[18:13:54 CEST] <Sebas_> does anyone have experience with non-muxed, chunked, webm(VP9/Vorbis)? I get a 'Duplicate element' error from the first .hdr file when trying to create a dash manifest.
[18:45:13 CEST] <Sebas_> hmm also when not chunked (figured I would split them up myself) it gives me an error 'Could not write header for output file #0 (incorrect codec parameters ?): Operation not permitted'
[18:51:07 CEST] <relaxed> pastebin.com your command/console output and maybe someone can help
[18:56:50 CEST] <Sebas_> sure hold on
[19:00:48 CEST] <Sebas_> Info: I am creating 2x video and 2x audio webm's and after that trying to create a manifest https://pastebin.com/Vh7b5teE
[19:01:14 CEST] <Sebas_> spawning ffmpeg from my code
[19:13:17 CEST] <steve555> Hi I'm trying to get my new installation of gentoo going. However when I'm trying to build ffmpeg using emerge, it is complaining that it cannot find openjpeg. I have re-emerged it, but ffmpeg is still complaining that it cannot find it.
[19:15:48 CEST] <DHE> that's likely a gentoo problem then. their ebuild should ensure openjpeg is properly installed or it should give the ffmpeg build system the options it needs
[19:19:31 CEST] <iive> steve555: check ffmpeg configure.log for the exact reason..
[19:19:56 CEST] <iive> afaik, gentoo does not have separate development packages, so everything needed should be present.
[19:22:02 CEST] <steve555> iive: ok I'll have a look
[19:23:35 CEST] <relaxed> steve555: could be https://trac.ffmpeg.org/ticket/6719
[19:23:39 CEST] <iive> depending of version, the file might be moved into a subdirectory, e.g. ffmpeg-source/ffbuild/
[19:28:40 CEST] <steve555> Hi relaxed, thanks for the info, I think that could be the problem. The current version of openjpeg on gentoo is openjpeg-2.3.0
[19:42:17 CEST] <relaxed> steve555: I'm sure ffmpeg will fix it soon
[19:52:06 CEST] <steve555> relaxed: would I have to wait long?
[20:17:15 CEST] <hanna> is it possible that the paletteuse filter is just completely broken?
[20:17:32 CEST] <hanna> following the examples from http://blog.pkh.me/p/21-high-quality-gif-with-ffmpeg.html I get Failed to inject frame into filter network: Internal bug, should not have happened
[20:18:24 CEST] <hanna> What's weird is that I even need to bother with setting a palette because this is a grayscale animation that I'm trying to convert to an 8-bit gif
[20:18:28 CEST] <hanna> so it should be lossless without dithering
[20:24:46 CEST] <relaxed> steve555: probably not, you build without openjpeg or use https://www.johnvansickle.com/ffmpeg/ for now
[20:27:22 CEST] <steve555> relaxed: I'm talking also on the #gentoo channel for help. Even though that they suggested that I remove openjpeg form my package.use, ffmpeg fails to compile. Someone is helping me on that channel though.
[20:42:02 CEST] <fred1807> This is a famous example of an Alsa "normalizer" plugin made with compressor and limiter: https://paste.debian.net/plain/989208. Please, how/where can I set/incrase buffer_size in here ?
[20:43:45 CEST] <Sebas_> I am having this problem: https://trac.ffmpeg.org/ticket/5760 any tips?
[20:48:10 CEST] <hiihiii> hello
[20:49:03 CEST] <durandal_1707> hello
[20:49:11 CEST] <hiihiii> is there any set of rule to how forge/craft the command using the "Encoding settings" and the info in https://thepasteb.in/p/Mjhx44onMpQFV
[20:49:20 CEST] <hiihiii> for example*
[20:49:53 CEST] <hiihiii> I've read in the wiki that ffmpeg has presets but you can override them
[20:51:03 CEST] <blap> hu
[20:54:36 CEST] <hiihiii> so if there's no preset to match the "Encoding settings" I'll have to write in all of it manually, correct?. Profile, CABC, aspect ratio, framerate, color space, etc those are all settings easy to match
[20:56:08 CEST] <JEEB> set the closest preset
[20:56:18 CEST] <JEEB> and then modify what's needed
[20:57:41 CEST] <hiihiii> ok so you only specify what is to be overridden. makes sense
[21:04:48 CEST] <hiihiii> I often have to edit videos downloaded online but don't want to re-encode it again and 1) suffer from degradation 2) have to wait long periods before processing is finished
[21:06:34 CEST] <hiihiii> so I thought of splitting>re-encode the 5 seconds I need>join everything back.
[21:16:34 CEST] <Sebas_> when I do 'ffmpeg -i 480.hdr' it says Duplicate element, how can there be a duplicated 'element' in a single hdr file?
[21:19:01 CEST] <furq> Sebas_: ffmpeg didn't support rgbe last i checked
[21:26:22 CEST] <Sebas_> Did not specify any rgbe, also the input file is a mp4, that worked with h264 dashing (but has copyrights on it so I am switching codec)
[21:32:38 CEST] <Sebas_> added -pix_fmt:v yuv420p to the transcoder lines without effect
[21:32:47 CEST] <BytesBacon> Are the -tune and -qcomp switches worth it when encoding x264 from a bluray source that's action based (lots of motion on the screen).
[21:36:59 CEST] <cryptodechange> is there a rule of thumb when taking x264 params and applying it to x265?
[21:38:14 CEST] <cryptodechange> as it'll be possible to rip 4k bds soon, I'm thinking of starting to experiment with x265
[21:38:34 CEST] <cryptodechange> not sure if already possible
[21:39:19 CEST] <relaxed> https://trac.ffmpeg.org/wiki/Encode/H.265
[21:40:23 CEST] <cryptodechange> I suppose I'll go full x265 when I eventually go AMD Epyc
[21:40:39 CEST] <cryptodechange> As transcoding that on the fly will bottleneck my 6 core Xeon
[21:45:19 CEST] <ffmpegguy> hey
[21:45:22 CEST] <ffmpegguy> when compiling ffmpeg
[21:45:37 CEST] <ffmpegguy> what do the flags --enable-pthreads and --enable-filters do
[21:46:39 CEST] <furq> they enable pthreads and filters
[21:46:57 CEST] <ffmpegguy> like whats a pthread
[21:47:01 CEST] <ffmpegguy> you mean parallel processing
[21:47:06 CEST] <furq> https://en.wikipedia.org/wiki/POSIX_Threads
[21:47:29 CEST] <ffmpegguy> ah ok
[21:47:37 CEST] <furq> they're both enabled by default anyway
[21:47:41 CEST] <ffmpegguy> ah lol
[21:47:53 CEST] <ffmpegguy> so what would be the "optimal" flags for ffmpeg
[21:47:57 CEST] <ffmpegguy> or are they all enabled by default
[21:48:27 CEST] <furq> it depends on what you want
[21:50:20 CEST] <ffmpegguy> ok
[21:50:45 CEST] <furq> generally you just want to add the external libraries that you want to use
[21:50:50 CEST] <furq> e.g. libx264
[21:52:08 CEST] <ffmpegguy> I mean disregarding external libs
[21:52:29 CEST] <ffmpegguy> Like flags that dont regard enabling / disabling libs / encoders / decoders
[21:52:37 CEST] <ffmpegguy> flags that regard "optimizing" in general how ffmpeg runs
[21:52:52 CEST] <furq> there aren't really any of those except maybe --enable-lto
[21:53:23 CEST] <ffmpegguy> ah ok
[21:53:28 CEST] <ffmpegguy> thank you
[21:53:28 CEST] <furq> and you'd need to configure all your external encoders with that as well or it won't have a noticeable effect
[21:53:35 CEST] <ffmpegguy> yeah
[21:53:41 CEST] <ffmpegguy> what is enable lto anyway?
[21:53:48 CEST] <ffmpegguy> link-time optimizer?
[21:54:03 CEST] <furq> as long as you don't do something stupid like --disable-runtime-cpudetect then it should run about as well as it can
[21:54:09 CEST] <furq> and yeah
[21:54:37 CEST] <ffmpegguy> ok so --enable-runtime-cpudetect is a good thing?
[21:54:45 CEST] <furq> it's enabled by default
[21:54:50 CEST] <ffmpegguy> why would disabling it be stupid? I didn't I just don't know what it does :P
[21:55:11 CEST] <furq> it allows ffmpeg to detect cpu features (mmx, sse, avx etc) at runtime
[21:55:35 CEST] <furq> x264 etc will do the same thing by default
[21:59:37 CEST] <ffmpegguy> ok
[21:59:38 CEST] <ffmpegguy> thanks
[22:16:30 CEST] <alallein> hi, just found out about the difference between -vcodec copy -acodec copy and -vcodec copy -acodec copy -avoid_negative_ts make_zero recently, after cutting a lot of files :( is there a simple way to use ffprobe or similar to find files that won't open correctly? or should I just re-encode everything?
[22:20:12 CEST] <BtbN> acodec/vcodec are deprecated. Use -codec or just -c and stream suffixes
[22:20:47 CEST] <blap> "we had these magnificent German soldiers protecting us!"
[22:42:46 CEST] <durandal_170> blap: are you ban evader?
[22:45:29 CEST] <blap> no
[22:55:57 CEST] <blap> jews are so evil
[22:59:34 CEST] <blap> !- blap was kicked from #politics by HeyJude [blap]
[23:00:41 CEST] <Sebas_> lol @ troll
[23:02:35 CEST] <Sebas_> I looked at the ffmpeg source.. it seems 'Duplicate element' means there are multiple level1's in my webm .hdr file, howto solve this?
[23:03:49 CEST] <Johnjay> sarah silverman was evilly CUTE in "The Way of the Gun"
[23:04:05 CEST] <Johnjay> also a great comedian unlike certain netflix stars we know
[23:08:47 CEST] <blap> i keep fighting
[23:09:58 CEST] <durandal_170> dont troll
[23:13:44 CEST] <blap> "The Germans are not human beings.. .nothing gives us so much joy as German corpses." Jew Ilya Ehrenburg
[23:20:53 CEST] <llogan> thanks
[23:23:57 CEST] <furq> it gives you a new appreciation for "allah is doing"
[23:24:09 CEST] <furq> he was my favourite ;_;
[23:26:22 CEST] <BytesBacon> Is there a easier way to set zones? Or some library that can run a sample to automatic looking for motion to change the crf value.
[23:27:11 CEST] <furq> i don't understand the question
[23:27:51 CEST] <BytesBacon> The zone switch, where you can set between key frames to encode at a different bitrate/crf.
[23:28:28 CEST] <BytesBacon> I'm wondering if there is a library to aid with that, or some project, even if it's gui (don't really want to use a gui).
[23:28:54 CEST] <furq> i can't imagine you would ever need to use that with crf
[23:29:12 CEST] <furq> the whole point of crf is that it adjusts the quantiser based on the frame characteristics
[23:29:39 CEST] <BytesBacon> Well for example with credits at the end could just use crf=22 for that part to lowest overall file size.
[23:30:24 CEST] <furq> if you want a tool that does it automatically, it's crf
[23:34:21 CEST] <BytesBacon> Well I set as one of my switches, just want to see if I can dynamically change it as needed.
[23:41:18 CEST] <Sebas_> Can anyone see why my .hdr files(VP8/Vorbis,non-muxed,chunked) are badly generated/badly interpreted? https://pastebin.com/y3HmHaVP
[23:41:43 CEST] <Sebas_> (Error on last few lines)
[00:00:00 CEST] --- Fri Oct 6 2017
1
0
[00:46:34 CEST] <jkqxz> tmm1: I have an N3700, which fits between your J1800 and N3450 in generations (though Windows 7 rather than 10). I've never seen any problems on it, but I will try with your sample.
[00:47:06 CEST] <tmm1> i was trying with -f lavfi -i color=black:640x480 and could not reproduce, nor with the test.avi that was on the ticket before
[00:47:13 CEST] <tmm1> but the sample i uploaded triggers it
[00:47:20 CEST] <tmm1> definitely curious if you can repro
[00:49:23 CEST] <jkqxz> I tried with some cases provided by Zeranoe a while ago, but could never get it.
[01:07:29 CEST] <cone-950> ffmpeg 03Martin Vignali 07master:cbbec68847ed: libavcodec/blockdsp : add AVX version
[01:13:34 CEST] <cone-950> ffmpeg 03John Stebbins 07master:248dc5c1646d: h264dec: fix dropped initial SEI recovery point
[01:13:35 CEST] <cone-950> ffmpeg 03John Stebbins 07master:cd7a2e1502f1: asfdec: fix reading files larger than 2GB
[01:13:36 CEST] <cone-950> ffmpeg 03James Almer 07master:73c85d3af242: Merge commit '248dc5c1646dcdd96fe79761105c4ae889e711fd'
[01:13:37 CEST] <cone-950> ffmpeg 03James Almer 07master:1902bbbe7225: Merge commit 'cd7a2e1502f174c725c0de82711d2c7649057574'
[01:26:06 CEST] <cone-950> ffmpeg 03Lou Logan 07master:d17a00379e7a: doc: Add mailing list FAQ
[01:30:32 CEST] <cone-950> ffmpeg 03Anton Khirnov 07master:b2788fe9347c: svq3: fix the slice size check
[01:30:33 CEST] <cone-950> ffmpeg 03James Almer 07master:cb222d73225a: Merge commit 'b2788fe9347c02b1355574f3d28d60bfe1250ea7'
[01:32:43 CEST] <cone-950> ffmpeg 03James Almer 07master:3f258f5ee05c: apetag: fix flag value to signal footer presence
[01:32:44 CEST] <cone-950> ffmpeg 03James Almer 07master:4cc0227040ad: apetag: account for header size if present when returning the start position
[01:32:45 CEST] <cone-950> ffmpeg 03James Almer 07master:9266cc54aa5c: Merge commit '4cc0227040adb9efc63be6a5765e3214f5c6f662'
[01:35:55 CEST] <tmm1> jkqxz: just repro'd on a Win10 i5-6600k as well
[01:57:00 CEST] <cone-950> ffmpeg 03Anton Khirnov 07master:984736dd9e5b: lavc: make sure not to return EAGAIN from codecs
[01:57:01 CEST] <cone-950> ffmpeg 03James Almer 07master:5678b2a82074: Merge commit '984736dd9e5b50987a5910e22495304e4a6d975c'
[01:58:40 CEST] <cone-950> ffmpeg 03Diego Biurrun 07master:da8093f712d6: fate: Use bitexact optimizations in the svq3-2 test
[01:58:41 CEST] <cone-950> ffmpeg 03James Almer 07master:93d27e022fb1: Merge commit 'da8093f712d625db7ce4a2526fb52994e01921ec'
[02:19:18 CEST] <cone-950> ffmpeg 03Zhong Li 07master:fd7cb86468cc: mpegdec: fix redundant dummy frames issue of interlaced clips
[02:19:19 CEST] <cone-950> ffmpeg 03Michael Niedermayer 07master:dcf9bae4a93f: avcodec/aacdec_template: Clear tns present flag on error
[02:19:20 CEST] <cone-950> ffmpeg 03Michael Niedermayer 07master:44874b4f5ec2: avcodec/truemotion2: Fix integer overflows in tm2_high_chroma()
[02:19:21 CEST] <cone-950> ffmpeg 03Michael Niedermayer 07master:d662143f0646: avcodec/dxv: Check for end of input in dxv_decompress_dxt5()
[02:19:22 CEST] <cone-950> ffmpeg 03Ingo Brückl 07master:08c751309670: avformat/mp3dec: Fix definition of MIDDLE_BITS
[02:30:27 CEST] <cone-950> ffmpeg 03Diego Biurrun 07master:4141a5a240fb: Use modern avconv syntax for codec selection in documentation and tests
[02:30:28 CEST] <cone-950> ffmpeg 03James Almer 07master:a2b0602cdad8: Merge commit '4141a5a240fba44b4b4a1c488c279d7dd8a11ec7'
[02:59:14 CEST] <cone-950> ffmpeg 03Luca Barbato 07master:150e99d694f3: rtsp: Factor out packet reading
[02:59:15 CEST] <cone-950> ffmpeg 03Luca Barbato 07master:b9b82151a1aa: rtsp: Move the pollfd setup out of the for loop
[02:59:16 CEST] <cone-950> ffmpeg 03Luca Barbato 07master:5263f464db5f: rtsp: Lazily allocate the pollfd array
[02:59:17 CEST] <cone-950> ffmpeg 03James Almer 07master:c244d4af43a1: Merge commit '150e99d694f33ab9ad678834964909aa315d14a1'
[02:59:18 CEST] <cone-950> ffmpeg 03James Almer 07master:7c74efeaf891: Merge commit 'b9b82151a1aaa8bbf389853a6142c4e101d80b86'
[02:59:19 CEST] <cone-950> ffmpeg 03James Almer 07master:c2916564d8e4: Merge commit '5263f464db5f2df74ddf712f6d1221b24475fa8e'
[03:13:19 CEST] <cone-950> ffmpeg 03Diego Biurrun 07master:c483398bb7ef: build: Drop DOC_ prefix from EXAMPLES-related variables
[03:13:20 CEST] <cone-950> ffmpeg 03James Almer 07master:749b35799cc5: Merge commit 'c483398bb7ef66f61ed2dcb09f3d6160683da0eb'
[04:00:13 CEST] <cone-950> ffmpeg 03Diego Biurrun 07master:698ac8f9cabd: fate: Make null comparison method more useful
[04:00:14 CEST] <cone-950> ffmpeg 03James Almer 07master:e1f01ce8d20b: Merge commit '698ac8f9cabd053f2c19346a77b92f8eae4218fc'
[04:04:53 CEST] <cone-950> ffmpeg 03Ben Chang 07master:d8f36a6aa33e: nvenc: Fix the preset mapping list
[04:04:54 CEST] <cone-950> ffmpeg 03James Almer 07master:85fb45586804: Merge commit 'd8f36a6aa33e9f904fa47caa0329ddaac391cd7d'
[04:14:29 CEST] <memeka> hi, how can i change codec preferences?
[04:15:11 CEST] <memeka> e.g. h264 is used, even if h264_vdpau is available
[04:20:16 CEST] <cone-950> ffmpeg 03Luca Barbato 07master:79331df362fb: rtsp: Lazily set up the pollfd array once
[04:20:17 CEST] <cone-950> ffmpeg 03James Almer 07master:1e7b6e47d275: Merge commit '79331df362fb05a0d04ca9489c87e5b80077a3f4'
[04:41:05 CEST] <cone-950> ffmpeg 03Diego Biurrun 07master:e1a6d63c7eef: fate: Rename WMV8_DRM decoder tests to WMV3_DRM
[04:41:06 CEST] <cone-950> ffmpeg 03James Almer 07master:9e009ee312ad: Merge commit 'e1a6d63c7eeff2f0ec8173546357bfaa9deecea4'
[04:53:23 CEST] <philipl> google for: "vk_khr_external_memory" cuda
[04:53:37 CEST] <philipl> get 8 hits
[04:53:37 CEST] <philipl> what is wrong with them?
[06:05:33 CEST] <cone-950> ffmpeg 03Diego Biurrun 07master:21cca00dfeae: build: Explicitly disable external libraries when not explicitly enabled
[06:05:33 CEST] <cone-950> ffmpeg 03Michael Niedermayer 07master:d7b2bb5391bf: h264_sei: Check actual presence of picture timing SEI message
[06:05:34 CEST] <cone-950> ffmpeg 03James Almer 07master:63b9fd75db40: Merge commit '21cca00dfeaec08ca93cf94ed33f4311cf1d8c84'
[06:05:35 CEST] <cone-950> ffmpeg 03James Almer 07master:ade77f9c1395: Merge commit 'd7b2bb5391bf55e8f9421bff7feb4c1fddfac4bf'
[06:15:04 CEST] <cone-950> ffmpeg 03Diego Biurrun 07master:d154bdd3d053: configure: Simplify dlopen check
[06:15:05 CEST] <cone-950> ffmpeg 03James Almer 07master:84b3f53acadc: Merge commit 'd154bdd3d053128c908a994bb26e14bbc17f0e53'
[08:33:29 CEST] <wm4> philipl: wut?
[08:34:05 CEST] <wm4> BtbN: it checked the avcodeccontext class instead the avcodec one, broke our cuvid wrapper
[08:34:36 CEST] <wm4> so, we could just drop the cuvid AVHWAccels
[08:34:43 CEST] <wm4> and modify ff_get_format
[08:35:13 CEST] <wm4> nothing else required (except maybe an internal AVCodec cap to skip the check in ff_get_format)
[09:44:32 CEST] <ubitux> wm4: "While the AVFrame is within libavcodec
[09:44:39 CEST] <ubitux> you meant in libavutil, right?
[09:44:59 CEST] <wm4> no, libavcodec
[09:45:25 CEST] <wm4> as in while the AVCodecContext code holds a reference to an AVFrame instance
[09:45:49 CEST] <wm4> the owner of a reference gets to decide what opaque_ref means
[09:46:04 CEST] <ubitux> oh ok, my bad
[10:17:18 CEST] <durandal_1707> kode54: was atrac9 re-ed or its only shim over another lib?
[10:19:17 CEST] <JEEB> :o
[10:19:33 CEST] <JEEB> which reminds me I should totally finish work on the MPEG-PS mappings for that since a lot of samples are in MPEG-PS
[10:19:50 CEST] <JEEB> mappings/parser
[10:27:22 CEST] <JEEB> can I request a push on http://ffmpeg.org/pipermail/ffmpeg-devel/2017-September/217102.html ?
[10:32:11 CEST] <wm4> JEEB: LGTM
[10:37:28 CEST] <ldts> wm4: I have a fix for https://trac.ffmpeg.org/ticket/6716; should I close the ticket after having validated the fix or after the fix is merged?
[10:38:04 CEST] <wm4> I don't know/care about the bug tracker
[10:38:04 CEST] <JEEB> I'd close it after commenting on it that it's validated, or if there are no replies
[10:38:19 CEST] <JEEB> as in, comment that the reporter can test it now
[10:38:21 CEST] <wm4> it's pretty much /dev/null to me
[10:38:31 CEST] <wm4> (too much noise in any case)
[10:38:49 CEST] <wm4> I think we usually reference the ticket number in the commit message
[10:38:50 CEST] <ldts> wm4: I see JEEB: yes I tested it with the poster
[10:38:58 CEST] <JEEB> ok, then it's validated?
[10:39:02 CEST] <ldts> yes
[10:39:04 CEST] <JEEB> close with a comment towards the hash
[10:39:06 CEST] <ldts> he tested on his board
[10:39:09 CEST] <JEEB> which fixes it on master
[10:39:33 CEST] <ldts> ok so will send the patch first and then wait to be merged and then closed
[10:40:15 CEST] <ldts> JEEB: yes this all happened in the #kodi channel this morning so I shared the patches with him
[10:40:32 CEST] <JEEB> yup
[12:59:54 CEST] <cone-950> ffmpeg 03Clément BSsch 07master:8be3fc88d3fa: build: make h264 VT encoder select the VT encoder dependency
[13:18:42 CEST] <cone-950> ffmpeg 03Jan Ekström 07master:ffc58b2ce27e: movenc: take packet dts shifting into mention in check_pkt
[13:19:10 CEST] <ubitux> (^ patch applied after irc request)
[13:19:54 CEST] <wm4> doesn't JEEB have push rights
[13:20:21 CEST] <JEEB> wm4: I haven't gotten to doing the key thing yet
[13:20:36 CEST] <wm4> ah
[13:20:39 CEST] <JEEB> and I'm not at home/machine that I'm doing FFmpeg dev at
[13:58:31 CEST] <JEEB> whew
[13:58:40 CEST] <JEEB> happy that FATE failures are not due to me :P
[13:59:04 CEST] <JEEB> `src/libavfilter/x86/af_afir.asm:22: fatal: unable to open include file `libavutil/x86/x86util.asm'`
[13:59:08 CEST] <JEEB> on FreeBSD things
[16:47:53 CEST] <philipl> wm4: Just my frustration that nvidia won't talk about cuda vulkan interop
[16:48:38 CEST] <philipl> It clearly doesn't exist: vk_khr_external_memory explicitly enumerates the external types it understands and those are dx and gl right now
[16:49:17 CEST] <nevcairiel> nvidias primary market for cuda is cuda and cuda and more cuda, why would they care? =p
[16:49:39 CEST] <BtbN> Because they have interop with everything else?
[16:50:53 CEST] <nevcairiel> thats not a reason
[16:51:28 CEST] <wm4> philipl: ah, but that's no nvidia specific issue?
[16:51:38 CEST] <wm4> or do other vendors provide interop?
[16:51:46 CEST] <wm4> I guess for vaapi interop is a non-issue
[16:51:51 CEST] <wm4> (DMA buf stuff)
[16:52:52 CEST] <wm4> so I guess what it'd need is some sort of cuda extension that exports raw memory buffers
[16:53:02 CEST] <philipl> cuvid is useless with vulkan without it
[16:53:30 CEST] <nevcairiel> i still doubt the big use for vulkan in video processing
[20:49:29 CEST] <wm4> öl
[20:49:31 CEST] <wm4> lol
[20:49:35 CEST] <wm4> that linked in message
[20:49:48 CEST] <wm4> oh, it's to ffmpeg-security
[20:49:51 CEST] <wm4> that's even more fun
[20:50:16 CEST] <wm4> (it's basically badly disguised spam apparently from linked in directly)
[20:53:19 CEST] <ubitux> wm4: ffmpeg-security is subject to a lot of spam
[20:53:46 CEST] <ubitux> you may not see it all, but since i don't have a spam filter (yet) i can tell
[20:54:05 CEST] <ubitux> i'd say one out of 20 is spam on that ml
[20:54:51 CEST] <wm4> I get a lot of spam on it, yes
[20:55:08 CEST] <wm4> probably more than real mail
[22:25:47 CEST] <kode54> durandal_1707: I think it was re-ed, but the source is still being documented
[22:50:01 CEST] <cone-895> ffmpeg 03Marton Balint 07master:cbf09f23b655: MAINTAINERS: change the decklink maintainer to myself
[22:50:01 CEST] <cone-895> ffmpeg 03Marton Balint 07master:3dc01223ef52: avdevice/decklink_dec: fix multipacket op47 decoding
[22:50:02 CEST] <cone-895> ffmpeg 03Devin Heitmueller 07master:b6782a192e18: avdevice/decklink: Fix segfault when running -list_devices on OSX
[00:00:00 CEST] --- Thu Oct 5 2017
1
0
[00:45:57 CEST] <Johnjay> the -stream_loop option is cool
[00:46:09 CEST] <Johnjay> But how do I combine that with a fixed time interval?
[00:46:24 CEST] <Johnjay> i.e. loop this file x times until you reach 15s or 67s etc?
[00:58:58 CEST] <klaxa> Johnjay: -t 15 or -t 67
[01:02:44 CEST] <Johnjay> hrm ok
[01:04:22 CEST] <klaxa> if you have an audiofile length you want to match use -shortest
[01:28:22 CEST] <Johnjay> anybody compile ffmpeg under msys2?
[01:28:53 CEST] <JEEB> I've done that OK recently, although I get my mingw-w64 toolchain separately due to :reasons:
[01:31:29 CEST] <Johnjay> i'm still a little confused at the difference between mingw, mingw-w64, msys, msys2
[01:31:41 CEST] <Johnjay> right now I have msys2 and it says it has mingw-32 and mingw-64 subsystems or something
[01:32:54 CEST] <JEEB> msys2 is a set of tools based on cygwin, mingw is also called "ye olde mingw" and not utilized by anyone except for perverts wanting windows 2000 compatibility. mingw-w64 is a fork of ye olde mingw, which originally was meant to add 64bit windows compatibility. after a while it ended up being just better for any modern windows version than ye olde mingw
[01:33:53 CEST] <JEEB> generally you can think of "I'm using msys2 tools and package management to cross-compile for native 32bit or 64bit windows using mingw-w64 toolchains"
[01:34:42 CEST] <JEEB> the main difference between the three shortcuts is what toolchain is the default (aka "without a cross-prefix")
[01:35:38 CEST] <Johnjay> i tried compiling zlib as a test but it needs some weird patch or something b/c I got a library error because there is no wopen library
[01:35:42 CEST] <JEEB> if I recall correctly with the msys2 shell the default gcc/ld are for msys2, with the 32bit mingw one it's what otherwise would be i686-w64-mingw32-gcc/ld, and with the 64bit one it would be x86_64-w64-mingw32-gcc/ld
[01:36:09 CEST] <JEEB> Johnjay: you probably used the wrong Makefile or so
[01:36:24 CEST] <Johnjay> I just downloaded zlib from the site and used the makefile it has after running configure
[01:36:27 CEST] <JEEB> or you are building for msys2 and not mingw-w64
[01:36:45 CEST] <Johnjay> i don't understand clearly teh difference there but ok
[01:36:46 CEST] <JEEB> I distinctly remember the configure in zlib not working on mingw-w64
[01:36:48 CEST] <Johnjay> one is posix or something
[01:36:53 CEST] <Johnjay> correct
[01:37:18 CEST] <JEEB> your confusion is because all of them are for your "windows binaries that run on windows" :P
[01:37:30 CEST] <JEEB> msys2 stuff all depends on the msys2 cygwin libraries
[01:38:06 CEST] <Johnjay> so msys2 is basically taking all the mingw and mingw-64 stuff and making it usable
[01:38:08 CEST] <JEEB> so for a lot of stuff msys2-targeting tools (f.ex. what by default is "gcc") the result is more *nix like, but it's not normal windows
[01:38:12 CEST] <Johnjay> for teh binaries on teh windoze
[01:38:36 CEST] <JEEB> msys2 is the tools and package management for you if you want to build stuff for native windows (mingw-w64 32bit or 64bit)
[01:38:45 CEST] <Johnjay> ah ok
[01:38:53 CEST] <JEEB> then you can install mingw-w64 toolchains with msys2 package management
[01:39:04 CEST] <Johnjay> right that's what the tutorial i followed did
[01:39:13 CEST] <Johnjay> I went to the ffmpeg snapshot dir and typed ./configure and now it's frozen
[01:39:19 CEST] <Johnjay> so... yeah
[01:39:42 CEST] <JEEB> and to make you even more confused if you use the mingw shortcuts the mingw-w64 toolchains it automagically makes the matching mingw-w64 toolchain the one without a prefix
[01:39:50 CEST] <JEEB> so while usually "gcc" would be the msys2 one
[01:40:01 CEST] <JEEB> if you start with the mingw one, it will be the mingw-w64 one
[01:40:26 CEST] <JEEB> Johnjay: the configure script will take some time because fork() is slow as hell on windows
[01:40:34 CEST] <Johnjay> ok.
[01:40:36 CEST] <JEEB> on my 4790K I think half a minute or so?
[01:40:47 CEST] <Johnjay> yes i see it has mingw-w64,32, and msys subsystems
[01:40:54 CEST] <Johnjay> and gcc works on one but not the other
[01:40:56 CEST] <Johnjay> all very confusing
[01:41:19 CEST] <JEEB> yes, since it's trying to hide stuff from you with them :)
[01:41:46 CEST] <Johnjay> ok i installed pkg-config like it wanted
[01:41:50 CEST] <Johnjay> restarting
[01:42:00 CEST] <Johnjay> i ran the mingw-w64 one if it matters. i'm on win7 64 bit
[01:42:07 CEST] <JEEB> you need nasm and yasm for x86_64 builds
[01:42:13 CEST] <JEEB> for hand-written SIMD
[01:42:22 CEST] <Johnjay> erm ok, but not for 32 bit build?
[01:42:23 CEST] <JEEB> which you do want to take advantage of
[01:42:26 CEST] <Johnjay> ok
[01:42:30 CEST] <JEEB> well in general for x86
[01:42:46 CEST] <JEEB> it will tell you "are you really sure?" if yasm/nasm can't be found
[01:43:04 CEST] <JEEB> and you have to specifically disable asm to make that error go away and successfully configure
[01:43:05 CEST] <Johnjay> here's the tutorial I used: https://github.com/orlp/dev-on-windows/wiki/Installing-GCC--&-MSYS2
[01:43:54 CEST] <JEEB> well there's two targets for mingw-w64 (yes, due to historical reasons it's called like that even though it targets both i686 and x86_64)
[01:44:11 CEST] <JEEB> (since mingw-w64 started as a project to enable win64 support)
[01:44:17 CEST] <Johnjay> right
[01:44:21 CEST] <Johnjay> i understand that much at least
[01:44:37 CEST] <Johnjay> whenever I do a pacman -S it gives me a i686 and a x86_64 and a msys package
[01:44:44 CEST] <JEEB> yes
[01:44:49 CEST] <Johnjay> but when I installed tar it installed it for all 3 subsystems
[01:45:12 CEST] <Johnjay> and emacs ran in a gui window for i686 but command line for msys lol
[01:45:26 CEST] <JEEB> yea they keep some stuff weirdly separated
[01:46:02 CEST] <Johnjay> it says i have yasm in stalled already
[01:46:06 CEST] <Johnjay> but i'm installing nasm just to be safe
[01:46:10 CEST] <Johnjay> now what
[01:46:12 CEST] <Johnjay> just make?
[01:46:27 CEST] <JEEB> anyways, if you do gcc --version you should see whichever target your current "default" GCC is doing
[01:46:37 CEST] <JEEB> if it's msys or mingw-w64
[01:46:56 CEST] <Johnjay> gcc.exe (Rev1, Built by MSYS2 project) 7.2.0
[01:47:05 CEST] <JEEB> later I would guess
[01:47:12 CEST] <JEEB> in the version output
[01:47:23 CEST] <Johnjay> that's it. the rest is a coypright
[01:47:32 CEST] <JEEB> bleh
[01:47:34 CEST] <Johnjay> i'm in the 64 bit subsystem though
[01:47:43 CEST] <Johnjay> it says it wants to install in /usr/local
[01:47:46 CEST] <Johnjay> so i'm gonna try make install
[01:47:54 CEST] <JEEB> ah
[01:48:00 CEST] <JEEB> gcc -dumpmachine
[01:48:14 CEST] <Johnjay> the configure script dumped a long list of hwaccels and supported decoders and whatnot
[01:48:18 CEST] <JEEB> yes
[01:48:25 CEST] <JEEB> it will dump all the things it could find/enable
[01:48:36 CEST] <Johnjay> resample_lavr_opts is deprecated <--- first warning
[01:48:45 CEST] <JEEB> warnings like that are usual in FFmpeg
[01:48:53 CEST] <Johnjay> this is going much more smoothly than on my raspberry pi running raspbian
[01:48:53 CEST] <JEEB> when we deprecate stuff we can't yet remove it
[01:49:09 CEST] <JEEB> basically it's warning us that we have deprecated some functionality
[01:49:21 CEST] <Johnjay> deprecate usually means to me the compiler saying you can't do X because X is deprecated
[01:49:34 CEST] <JEEB> deprecated means that "this will be removed in the future"
[01:49:45 CEST] <JEEB> in FFmpeg that's usually in two versions' time
[01:49:46 CEST] <Johnjay> er, so it's something you yourself mark in the code?
[01:49:48 CEST] <JEEB> yes
[01:49:54 CEST] <Johnjay> hmm ok didn't know you could do that
[01:49:56 CEST] <JEEB> then after a release has gone or two
[01:50:10 CEST] <Johnjay> so you are a regular developer?
[01:50:15 CEST] <JEEB> you cut it off and if someone didn't notice the warning when building their own stuff they will get a fat error :P
[01:50:37 CEST] <JEEB> but as I said, there can be very long distances between deprecation and removal
[01:50:57 CEST] <JEEB> I think we recently removed some code that was deprecated... quite a few years ago
[01:51:14 CEST] <Johnjay> it's compiling libavformat/* at the moment
[01:51:15 CEST] <JEEB> I'm just a random developer in some components within FFmpeg
[01:51:31 CEST] <Johnjay> unknown conversion type character 's' as in '%s' in something
[01:51:38 CEST] <Johnjay> heh fair enough
[01:51:50 CEST] <Johnjay> i'm just a random user who uses ffmpeg to encode youtube vids for my workouts
[01:52:06 CEST] <Johnjay> i've managed to get enough of this blasted windows scripting to work for me
[01:52:08 CEST] <JEEB> everything from "stuff related to work" to "oi, the blu-ray subtitles have wrong colors"
[01:52:20 CEST] <Johnjay> to the point i can just download the youtube video and have ffmpeg automatically convert it when it finishes downloading
[01:52:30 CEST] <Johnjay> ah ok
[01:55:14 CEST] <JEEB> but yea, if you want to get the real feeling of how the stuff you're doing should go, you should be using the full prefix :) that way it's the exact same thing in cygwin, standard msys2 and linux etc. and then you just switch from mingw-w64 to some ARM toolchain and you'll be able to build for your rpi on a PC :P
[01:55:22 CEST] <johnjay_> now it's on libavcodec
[01:55:41 CEST] <JEEB> also you shouldn't generally do make install if you just want the ffmpeg.exe, since that gets made just fine
[01:56:03 CEST] <johnjay_> ah i think i disc'd and missed what you said before
[01:56:13 CEST] <johnjay_> what is the full prefix and how does it make cross compiling easier?
[01:56:22 CEST] <JEEB> it just gets you used to the idea :P
[01:56:35 CEST] <johnjay_> cross compiling for my rpi from msys2 would be nice. running a linux virtual machine can be costly
[01:56:36 CEST] <JEEB> and if you want the headers/libraries you generally then want to use your own prefix so you know where you have your stuff
[01:56:58 CEST] <JEEB> dunno if msys2 has it packaged. if VM is costly then maybe the windows subsystem for linux thing?
[01:57:10 CEST] <johnjay_> what's wrong with LIBRARY_PATH=/mingw64/lib and INCLUDE_PATH=/mingw64/include?
[01:57:12 CEST] <JEEB> anyways, basics are the same for all architectures
[01:57:31 CEST] <JEEB> Johnjay: that's where the package management puts stufF?
[01:57:35 CEST] <johnjay_> I can check for any package with pacman -S if you give me the name
[01:57:58 CEST] <JEEB> I usually put my development stuff under /home/jeeb/ffmpeg_test_root etc
[01:58:16 CEST] <johnjay_> the tutorial i read suggested passing those parameters to gcc
[01:58:22 CEST] <JEEB> lol
[01:58:29 CEST] <JEEB> why would you need to do that
[01:58:35 CEST] <johnjay_> idk lol
[01:58:37 CEST] <JEEB> the compiler should know its sysroot
[01:58:51 CEST] <JEEB> and anything extra should come from pkg-config because it exists
[01:58:51 CEST] <JEEB> lol
[01:59:00 CEST] <johnjay_> but i guess if i wanted to cross compile for my rpi i'd have to use different dirs for those
[01:59:19 CEST] <JEEB> yea, I have /home/jeeb/ownapps/armv7_prefix for example for arm stuff I do
[01:59:37 CEST] <JEEB> symbolically linked to the latest directory I made for some build for android or whatever
[01:59:44 CEST] <johnjay_> so like there's a armv7_prefix/bin, armv7_prefix/lib, etc for cross compiling?
[02:00:05 CEST] <JEEB> things get installed like that, but of course you can't run those libraries or binaries you build on the PC
[02:00:31 CEST] <johnjay_> armv7_prefix is a symbolic link?
[02:00:38 CEST] <JEEB> in my case yes
[02:00:53 CEST] <JEEB> the base premise is that you just decide outside of the system's stuff where you want to put your stuff
[02:01:06 CEST] <JEEB> it's like a case of using either my documents or a directory on some disk or whatever
[02:01:09 CEST] <JEEB> :P
[02:01:33 CEST] <JEEB> what you don't want to do is put stuff into the same place with x86(_64) stuff or where the package management handles things
[02:01:34 CEST] <johnjay_> heh well as long as it works i guess
[02:02:11 CEST] <JEEB> but yea, for android I use "--prefix=/home/jeeb/ownapps/armv7_prefix --arch=armv7 --cpu=armv7-a --enable-cross-compile --target-os=android --cross-prefix=arm-linux-androideabi-"
[02:02:28 CEST] <JEEB> those are the basic parameters for cross compilation :)
[02:02:36 CEST] <JEEB> (for FFmpeg)
[02:02:38 CEST] <johnjay_> and what does armv7_prefix point to for example?
[02:02:52 CEST] <JEEB> it's just a directory that I use to build all my stuff to
[02:02:59 CEST] <JEEB> so for all the things I need I set the prefix
[02:03:06 CEST] <JEEB> when building
[02:03:11 CEST] <JEEB> FFmpeg being just one thing in the chain
[02:03:26 CEST] <johnjay_> but it's a command to build ffmpeg for android right
[02:05:18 CEST] <JEEB> yes, and by switching arch/cpu to x86_64 and target-os to mingw64 and cross-prefix to say x86_64-w64-mingw32- you are suddenly cross compiling for windows
[02:06:05 CEST] <JEEB> oh, cpu isn't needed I think
[02:06:21 CEST] <JEEB> "--arch=x86_64 --target-os=mingw32 --cross-prefix=x86_64-w64-mingw32- --enable-cross-compile"
[02:06:26 CEST] <JEEB> this one is for 64bit windows
[02:06:38 CEST] <johnjay_> i guess i don't see what --cross-prefix does then
[02:06:40 CEST] <JEEB> see how the options are the same and some values just get changed
[02:06:46 CEST] <johnjay_> i thought it would be the directory you install to on the target
[02:06:54 CEST] <JEEB> cross-prefix is not prefix
[02:07:11 CEST] <JEEB> prefix is common *nix build language for "where do we install things"
[02:07:20 CEST] <JEEB> cross-prefix is the prefix for the build tools
[02:07:29 CEST] <JEEB> see how it ends with a dash
[02:07:35 CEST] <johnjay_> right
[02:07:40 CEST] <JEEB> after that you can think of gcc or ld
[02:08:01 CEST] <johnjay_> oh meaning the particular execuable that does the work
[02:08:13 CEST] <johnjay_> so a x86_64-w64-mingw32-gcc, as opposed to android-eabi-gcc
[02:08:24 CEST] <JEEB> yes, "you will find the relevant tools with this prefix" kind of thing
[02:09:09 CEST] <johnjay_> so this is taking place against a background of "here are my tools to cross compile for android, and here are the tools for armv8, and here are..."
[02:09:20 CEST] <johnjay_> which on linux i suppose is a different package for each one?
[02:09:26 CEST] <JEEB> on msys2 as well
[02:09:34 CEST] <JEEB> I mean, i686 mingw-w64 is one
[02:09:38 CEST] <JEEB> x86_64 mingw-w64 is one
[02:09:43 CEST] <JEEB> msys targeting one is one
[02:10:05 CEST] <johnjay_> but gcc itself doesn't do all that
[02:10:14 CEST] <johnjay_> i'm guessing each one is a different add on or something for gcc to do it
[02:10:33 CEST] <johnjay_> by the way ffmpeg works. i'm amazed that somethign compiled successfully
[02:10:47 CEST] <JEEB> no, as I said when you run one of the mingw shortcuts it will actually make one of those cross prefixes the one "without the prefix" :P
[02:10:56 CEST] <JEEB> it will hide the fact it's doing cross compilation from you
[02:10:58 CEST] <JEEB> :)
[02:11:02 CEST] <johnjay_> all I needed was to pacman -S mingw-w64-x86_64-pkg-config
[02:11:15 CEST] <JEEB> the pkg-config thing is just a warning
[02:11:34 CEST] <JEEB> although pkg-config is good and not enough people use it properly
[02:11:48 CEST] <johnjay_> oh ok. it said WARNING: pkg-config not found, library detection may fail.
[02:11:52 CEST] <johnjay_> i checked ffmpeg -filters and it seems to be updated
[02:12:33 CEST] <JEEB> yea, it will warn if pkg-config (with your possible cross-prefix) is not found
[02:12:37 CEST] <JEEB> because pkg-config is good
[02:12:44 CEST] <johnjay_> yeah i guess that makes sense
[02:12:52 CEST] <JEEB> but as you see, you installed the x86_64-w64-mingw32 one ;)
[02:12:57 CEST] <JEEB> msys2 is just hiding it from you
[02:13:08 CEST] <johnjay_> if i'm on win32 then then mingw-w64-i686 part is targeting 32 but the x86_64 part is targeting x86_64
[02:13:33 CEST] <JEEB> if you go to the msys2 shell I wouldn't be surprised if you could access x86_64-w64-mingw32-gcc :)
[02:13:54 CEST] <JEEB> and that would be the same as the gcc you are running with the 64bit mingw shell
[02:14:16 CEST] <JEEB> unless msys2 did something even more funky
[02:14:24 CEST] <johnjay_> in msys2 it says I can only access x86_64-pc-msys-gcc.exe
[02:14:39 CEST] <johnjay_> gcc gives not found error
[02:14:56 CEST] <JEEB> so if you do x86_64-w64-mingw32-<tab><tab> there's nothing?
[02:15:03 CEST] <johnjay_> although in the 64 window gcc -dumpmachine says x86_64-w64-mingw32
[02:15:14 CEST] <johnjay_> I did x <tab> <tab> and looked through the list
[02:15:21 CEST] <JEEB> ok
[02:15:32 CEST] <johnjay_> in the 64 bit window I have access to x86_64-w64-mingw32-gcc.exe
[02:15:33 CEST] <JEEB> I guess they actually separate the things then, I never really looked too much into it
[02:15:35 CEST] <johnjay_> but not in the msys window
[02:15:51 CEST] <JEEB> but yea, x86_64-w64-mingw32-gcc is what your "gcc" actually is :)
[02:16:10 CEST] <JEEB> msys2 is just trying to not make you think that you're actually cross-compiling
[02:16:16 CEST] <JEEB> which is a good thing and a bad thing
[02:16:35 CEST] <JEEB> because then when people get to cross-compilation they're completely out there about cross-prefixes and all that stuf
[02:16:38 CEST] <JEEB> *stuff
[02:16:42 CEST] <johnjay_> what's funny is if I type pacman -S -s gcc it says I have msys/gcc installed
[02:16:48 CEST] <johnjay_> along with the i686 and x86_64 toolchains
[02:16:57 CEST] <JEEB> yea, the directories are just separated I think
[02:16:59 CEST] <johnjay_> but in the msys2 window gcc <tab><tab> gives nothing
[02:17:11 CEST] <JEEB> and yes, I wouldn't be surprised if the actual msys2 gcc is hidden
[02:17:18 CEST] <JEEB> behind x86_64-pc-msys-gcc.exe
[02:17:28 CEST] <JEEB> because most "normal people" do not want to build for msys
[02:17:33 CEST] <tdr> yeah it wont put your cross compiler as part of normal path or it would cause havoc
[02:17:36 CEST] <johnjay_> right i guess that must be it
[02:18:09 CEST] <JEEB> tdr: I have multiple cross compilers in my path and I'm fine?
[02:18:34 CEST] <tdr> JEEB, i can do it to but "gcc" doesn't ever call a cross-arch one first
[02:18:41 CEST] <JEEB> yes
[02:18:51 CEST] <JEEB> well, that would be incorrect basically :P
[02:18:58 CEST] <JEEB> "gcc" should always be your native one
[02:19:08 CEST] <johnjay_> well. i'm cross compiling anyway if I start mingw64.exe vs mingw32.exe
[02:19:16 CEST] <johnjay_> but you're sa ying it renames it to gcc to fool me?
[02:19:36 CEST] <JEEB> in this case it does make your life "easier" since you can just do "configure"
[02:19:42 CEST] <JEEB> instead of setting cross-prefix
[02:20:16 CEST] <JEEB> anyways, I need to sleep for four hours now before I get to work o/
[02:21:06 CEST] <johnjay_> ok thanks for the help
[02:21:15 CEST] <johnjay_> i'm always happy when i can at least compile the code
[02:21:22 CEST] <johnjay_> because then it's possible to actually do something. :D
[02:22:11 CEST] <johnjay_> by the way there's a guide to doing ccompile for windows from linux on zeronoe's site
[02:22:21 CEST] <johnjay_> but the link to the script gives an error message lol
[02:22:25 CEST] <johnjay_> https://trac.ffmpeg.org/wiki/CompilationGuide/CrossCompilingForWindows
[02:39:00 CEST] <thebombzen> how do I scale to 10-bit 4:2:0 with scale_npp? I tried p010le, p010, yuv420p10le, yuv420p10 and none of them worked
[02:56:38 CEST] <johnjay_> is scale_npp a filter?
[02:56:51 CEST] <johnjay_> it doesn't appear on my snapshot of ffmpeg I just compiled an hour ago
[02:59:11 CEST] <furq> !filter scale_npp
[02:59:12 CEST] <nfobot> furq: http://ffmpeg.org/ffmpeg-filters.html#scale_005fnpp
[03:02:05 CEST] <johnjay> libnpp huh
[03:02:14 CEST] <johnjay> i have an nvidia card but maybe it wasn't selected when i compiled?
[03:03:54 CEST] <thebombzen> when I say "none of them worked" I mean it recognized them all but wouldn't scale to them
[03:04:00 CEST] <thebombzen> it also wouldn't scale to yuv444p16 either
[03:04:46 CEST] <heth> hi. where can I report this? https://pastebin.com/raw/ZFMSs4Gs
[03:05:23 CEST] <johnjay> thebombzen: since i'm stupid can you pastebin what your command is?
[03:07:07 CEST] <thebombzen> johnjay: ffmpeg -f lavfi -i yuvtestsrc -vf hwupload_cuda,scale_npp=w=1920:h=1080:interp_algo=lanczos:format=p010le -c:v h264_nvenc -f null -
[03:07:49 CEST] <thebombzen> http://sprunge.us/JdWf
[03:08:16 CEST] <thebombzen> the command works as expected if you replace p010le with nv12 (or yuv420p)
[03:10:52 CEST] <johnjay> ah ok the documentation doesn't say what the format options are you said such as p0101e
[03:11:12 CEST] <johnjay> and anyway i'm not sure why my immediate build of ffmpeg doesn't have that filter
[03:23:07 CEST] <johnjay> does git use .obj files instead of .diff files?
[03:23:25 CEST] <johnjay> this email is submitting a patch and has .obj as the ext
[03:29:48 CEST] <johnjay> lol what is this, a patch for a starfield?
[03:29:50 CEST] <johnjay> http://ffmpeg.org/pipermail/ffmpeg-devel/2017-September/216565.html
[03:34:00 CEST] <broman> Hi everybody! I have some .mov files want to stream to nginx rtmp. I have already tried to stream a single .mov by FFMPEG command in terminal and it works, nginx can display the thing i streaming in live. this is the command i am using: ffmpeg -re -i file1.mov -vcodec libx264 -f flv rtmp://localhost/livepkgr/livestream ||| Now i want to stream multiple files, I tried to use above command one by one, but it seems Flash media server stop the streaming when file1 i
[03:34:00 CEST] <broman> s finished, then start the stream with file2. It makes the stream player stopped when file1 is finish, and have to refresh the page in order to continue on file2. I wonder is that possible to let FFMPEG constantly deliver the stream by multiple files source without stopped when a file finish? or still there something i can use for coding using FFMPEG to achieve what I want to do?
[03:35:43 CEST] <johnjay> i'm envious you have nginx and rtmp working at all
[03:35:47 CEST] <johnjay> i couldn't get that to work on windoze
[03:36:59 CEST] <broman> :)
[03:37:05 CEST] <broman> look for arut nginx rtmp
[03:37:24 CEST] <johnjay> are you on linux?
[03:37:36 CEST] <broman> yes
[03:37:46 CEST] <broman> you can always set a virtual machine for it :)
[03:49:11 CEST] <broman> nobody?
[03:51:42 CEST] <furq> there's no particularly good solution if you want a constant playlist or something
[03:51:52 CEST] <furq> if you just want to stream four or five files in a row then use the concat filter
[03:52:16 CEST] <thebombzen> johnjay: you need to compile ffmpeg with --enable-libnpp
[03:52:23 CEST] <thebombzen> using --enable-cuda and --enable-cuda-sdk are not enough
[03:54:33 CEST] <broman> actually, this video files keep increasing
[04:07:26 CEST] <johnjay> thebombzen: ah that makes sense
[04:08:39 CEST] <johnjay> hmm good thing ffmpeg tells you the configure line it was used with
[04:08:47 CEST] <johnjay> I didn't tell it anything... lol
[04:09:35 CEST] <johnjay> the ffmpeg binary i have from Zeranoe was with --enable-cuda
[04:09:38 CEST] <johnjay> but not --enable-libnpp
[04:10:22 CEST] <johnjay> also there's a line of several items starting with libavutil, libavcodec,libavformat
[04:10:36 CEST] <johnjay> but for some reason my windows build has libpostproc there but the one in mingw build does not
[04:11:41 CEST] <johnjay> configure --help doesn't show a --enable-postproc option though
[04:11:46 CEST] <thebombzen> yes it does
[04:12:00 CEST] <johnjay> oh
[04:12:03 CEST] <thebombzen> it's probably --enable-libpostproc though
[04:12:04 CEST] <johnjay> it shows --disable-postproc
[04:12:07 CEST] <johnjay> that's why i didn't see it lol
[04:12:07 CEST] <thebombzen> ah, there it is
[04:12:24 CEST] <thebombzen> for future reference, you can use: ./configure --help | less
[04:12:40 CEST] <thebombzen> and then you can scroll through it with up/down/pageup/pagedown/mousewheel and search by typing /
[04:13:22 CEST] <johnjay> that works on msys
[04:13:31 CEST] <johnjay> i'm starting to like this msys2 thing
[04:13:37 CEST] <johnjay> i can do linuxy stuff and i don't have to run a VM
[04:13:42 CEST] <johnjay> and best of all... it actually works and compiles things
[04:13:47 CEST] <johnjay> which is still mind blowing to me
[04:14:50 CEST] <johnjay> almost as much as the bread i'm baking in my slow cooker right now
[04:16:32 CEST] <memeka> hi, how can i change codec order? e.g. h264 is used, even if h264_vdpau is available; can i set h264_vdpau to default (w/o using -vcodec) ?
[04:38:43 CEST] <thebombzen> memeka: it depends on why you'd want to do that, but no, you can't set default options for FFmpeg's CLI like that
[04:39:07 CEST] <memeka> thebombzen: can i do it in code? I can recompile ffmpeg
[04:39:10 CEST] <thebombzen> if you're trying to set it for ffplay, then I recommend getting a true media player like mpv
[04:39:24 CEST] <thebombzen> and yea, you could modify the code to do it
[04:39:38 CEST] <memeka> thebombzen: any idea from where?
[04:39:39 CEST] <thebombzen> change the order of the codecs in libavcodec/allcodecs.c or something
[04:39:50 CEST] <thebombzen> I believe that's what it's called. higher ones have higher priority
[04:40:10 CEST] <thebombzen> if you put h264_vdpau above h264, it'll use that over the internal. I don't recommend this though
[04:40:55 CEST] <thebombzen> for H.264, software decoding is fast enough, and H.264 hardware decoding will only support 4:2:0 8-bit input
[04:41:43 CEST] <memeka> thebombzen: i'm thinking actually about kodi, i'm not sure there's a way to specify codec, issit?
[04:42:24 CEST] <thebombzen> I'm not sure what Kodi is
[04:42:36 CEST] <memeka> kodi media player
[04:42:56 CEST] <memeka> thebombzen: how about mpv? is there a way to do it all the time, or do i need to use -vd ?
[04:43:17 CEST] <thebombzen> if you're using an FFmpeg-based media player, it's the players' responsibility to choose the hardware decoder. not FFmpeg's. as for mpv, yes you can
[04:43:52 CEST] <thebombzen> launch mpv with --hwdec=vdpau --hwdec-codecs=h264. You can add these options to mpv.conf (see the mpv docs) to have it do that by default
[04:44:07 CEST] <thebombzen> I suggest joining #mpv and asking there. and check out the docs at https://mpv.io/
[04:45:23 CEST] <memeka> thanks thebombzen
[05:11:16 CEST] <thebombzen> either way, where does libnpp's scaler document its supported pixel types?
[05:26:51 CEST] <johnjay> is ffplay intended to be limited in functionality?
[05:27:00 CEST] <johnjay> you compare it to a "true media player"
[05:28:13 CEST] <furq> yes it is
[05:29:13 CEST] <furq> it says right on the manpage
[05:29:18 CEST] <furq> FFplay is a very simple and portable media player using the FFmpeg libraries and the SDL library. It is mostly used as a testbed for the various FFmpeg APIs.
[05:33:40 CEST] <johnjay> ah ok. haven't used it before on windows
[09:29:24 CEST] <anandjeyahar> Hi, I am trying to use -filter_complex ainterleave filter to interleave two audio files.
[09:29:59 CEST] <anandjeyahar> however, by default it seems to pick a small set of frames. Can I specify it to interleave in say (10 second slices?) how to configure it?
[09:30:33 CEST] <anandjeyahar> The docs say nothing about an option. http://www.ffmpeg.org/ffmpeg-filters.html#interleave_002c-ainterleave
[09:57:46 CEST] <durandal_1707> anandjeyahar: use astnsamples for both 2 inputs?
[10:00:27 CEST] <anandjeyahar> i am using 'ffmpeg -i Mansi.mp3 -i Prathamesh.mp3 -filter_complex "[0:0:a][1:a] ainterleave " mansi_prathamesh.mp3
[10:00:45 CEST] <anandjeyahar> will try: ffmpeg -i Mansi.mp3 -i Prathamesh.mp3 -filter_complex "[0:0:a][1:a] ainterleave astnsamples 100000" mansi_prathamesh.mp
[10:46:18 CEST] <Guest14508> I am trying to merge 2 videos of 5 seconds and apply watermark with one command. It outputs an 10 second video but only plays the first video without watermark. Anybody knows whats wrong with this command? https://pastebin.com/fCaL172y
[11:05:27 CEST] <johnjay> it plays the first video with a watermark and second without?
[11:20:03 CEST] <Guest77023> hey guys. I'm receiving RTMP stream by ffmpeg, is there any option to bufferize few seconds of stream before muxing/decoding?
[11:40:54 CEST] <styler2go> Does ffmpeg support multi-core for vp9? I use -threads 16 but it only runs on core 1
[11:42:32 CEST] <JEEB> the encoder depends on the version, is up to the version of libvpx used
[11:42:44 CEST] <JEEB> the decoder if you are utilizing the internal one is threaded
[11:43:06 CEST] <styler2go> The vp9 encoder is reeeeally slow
[11:43:58 CEST] <JEEB> yes
[11:44:20 CEST] <JEEB> make sure you're using the very latest libvpx and it should have support for multithreading in theory
[11:44:27 CEST] <JEEB> libavcodec in FFmpeg supports it
[11:44:40 CEST] <JEEB> let's just say that libvpx got no love :P
[11:44:40 CEST] <styler2go> yes, on my pc it works
[11:44:53 CEST] <styler2go> on the server it ried it was avconv so maybe that's just being a retard
[11:44:58 CEST] <JEEB> it's just old
[11:45:02 CEST] <JEEB> most likely
[11:45:21 CEST] <JEEB> build your own latest libvpx and FFmpeg, or get a newer binary
[11:46:59 CEST] <styler2go> Why is VP9 so slow? Is it just how it works for vp9?
[11:47:58 CEST] <JEEB> there are parameters you can tweak but yes - it is slower than libvpx with vp8 or x264
[11:48:22 CEST] <JEEB> but as I said, newer libvpx *is* faster than a very old libvpx
[11:48:28 CEST] <JEEB> (and has threading)
[11:48:46 CEST] <JEEB> but it still will be slower than libvpx with vp8 or x264
[11:49:01 CEST] <JEEB> I mean, youtube doesn't care about your use case :D
[11:49:07 CEST] <JEEB> and what controls libvpx?
[11:49:09 CEST] <JEEB> GOOG
[11:50:34 CEST] <JEEB> but do still understand that with any reasonable resulting settings an encoder for a more complex (for encoding) format will be somewhat slower than older generations. but still, things can be optimized with time. in both psychovisual parts and speed.
[11:54:07 CEST] <styler2go> Do i need to build ffmpeg with additional param for vp9?
[11:56:54 CEST] <styler2go> Ok, found it
[12:01:36 CEST] <LA> any idea how to make bufferization when receiving live stream?
[12:02:33 CEST] <LA> I need some delay buffer for N seconds before muxing/decoding
[12:19:07 CEST] <JEEB> styler2go: for decoding it's internal, for encoding you need a new enough libvpx installed (most likely the one in your repo is old) and --enable-libvpx
[13:07:47 CEST] <styler2go> Yay now i get 8fps
[13:08:12 CEST] <styler2go> https://p.styler2go.de/6264936 running on 16 threads haha
[13:22:20 CEST] Action: CoreX sends a pray to styler2go
[13:37:55 CEST] <wouterstreamit> I am new to ffmpeg and trying to select a specific (hardware) AVCodec for a certain codec ID, but avcodec_find_decoder always gives me the software version of the decoder - is there any way to 'hint' ffmpeg to use a hardware decoder if it is available?
[13:43:06 CEST] <JEEB> wouterstreamit: if it's a "proper hwaccel" then it needs some additional work
[13:43:36 CEST] <JEEB> otherwise, if it's like mediacodec_xxx then you have just get the exact decoder by its name rather than format
[13:44:16 CEST] <JEEB> take a look at doc/examples/hw_decode.c
[13:44:21 CEST] <JEEB> that utilizes the proper hwaccels
[14:00:41 CEST] <wouterstreamit> JEEB: thank you, I think I can just use find_decoder_by_name.
[14:00:50 CEST] <JEEB> yea
[14:02:49 CEST] <wouterstreamit> Is it just me or is this kind of a flaw in ffmpeg? For instance I would like to get a list of compatible decoders for a given codec ID that are currently available
[14:04:24 CEST] <JEEB> not 100% sure if there isn't a way to loop through AVCodecs for a specific codec id
[15:06:39 CEST] <Caterpillar> Hi there. I want to convert a h264 mkv file into a DNxHD mp4 file. I tried ffmpeg -i Sample_preview.mkv -c:v dnxhd output_file.mp4 but I got message <<Error initializing output stream 0:0 -- Error while opening encoder for output stream #0:0 - maybe incorrect parameters such as bit_rate, rate, width or height>> . I tought I could use ffmpeg without having to specify such parameters, because I do
[15:06:41 CEST] <Caterpillar> not know them, and I am afraid of making errors. What could I do?
[15:09:29 CEST] <DHE> JEEB: av_codec_next(AVCodec *prev) is available, but would require hunting for yourself to find what you want...
[15:09:47 CEST] <DHE> doable, but avcodec_find_* just does the work for you
[16:35:39 CEST] <Bear10> Has anyone experienced an issue with using udp to stream to facebook and getting double audio on facebook?
[17:15:56 CEST] <Caterpillar> I have to re encode a video with such specs https://paste.fedoraproject.org/paste/3OpoUNAPdzrk1H0XqDSoEQ into dnxhd codec. I tried to follow https://video.stackexchange.com/questions/15780/converting-files-to-avid-fr… but I always get ffmpeg errors related to wrong bitrate format
[17:16:17 CEST] <Caterpillar> for example I tried ffmpeg -i sample_preview.mkv -vcodec dnxhd -f rawvideo -b:v 185M -flags +ildct -y output_video
[17:51:46 CEST] <alexpigment> Caterpillar: works over here
[17:52:04 CEST] <alexpigment> what version of ffmpeg are you using, and what are the errors specifically?
[17:57:06 CEST] <Caterpillar> Error initializing output stream 0:0 -- Error while opening encoder for output stream #0:0 - maybe incorrect parameters such as bit_rate, rate, width or height
[17:57:07 CEST] <Caterpillar> Conversion failed!
[17:57:13 CEST] <Caterpillar> ffmpeg-3.3.4-1.fc26.x86_64
[17:57:31 CEST] <alexpigment> ok, so one of the things I'm seeing is that you're trying to convert from 24fps to interlaced
[17:57:35 CEST] <alexpigment> lemme see what happens when i try that
[17:59:19 CEST] <alexpigment> nope, that works as well
[17:59:38 CEST] <alexpigment> try removing -flags +ildct
[17:59:46 CEST] <alexpigment> then add -an somewhere
[18:00:15 CEST] <alexpigment> although, i am curious - are you trying to preserve the audio channels?
[18:01:04 CEST] <Caterpillar> alexpigment: yes, I would like to preserve everything as much as possible and only convert to a protools compatible codec
[18:01:32 CEST] <alexpigment> ah, well your command line up there is basically throwing away everything but the video stream
[18:02:05 CEST] <alexpigment> when you're converting, can you tell that stream 0:0 is the video stream?
[18:02:12 CEST] <alexpigment> or is it possibly the audio or subtitles?
[18:02:39 CEST] <Caterpillar> ???
[18:03:32 CEST] <relaxed> Caterpillar: pastebin.com your command and console output
[18:05:06 CEST] <Caterpillar> relaxed: https://pastebin.com/2AcW189G thank you
[18:05:50 CEST] <alexpigment> resoltuion is 1916x1036; interesting
[18:06:22 CEST] <alexpigment> before you get too far into this, are you sure that the problem isn't just that Protools doesn't support the MKV container?
[18:06:29 CEST] <alexpigment> DNXHD is way overkill for this
[18:06:49 CEST] <alexpigment> try ffmpeg -i [input] -c copy output.mov
[18:07:35 CEST] <alexpigment> now i'm not saying it'll be optimized for ProTools, but you're taking a 5mbps video and turning it into 185mbps
[18:07:46 CEST] <alexpigment> that just seems like a weird idea
[18:07:53 CEST] <relaxed> Caterpillar: [dnxhd @ 0x55b621e61ae0] video parameters incompatible with DNxHD. Valid DNxHD profiles
[18:08:39 CEST] <alexpigment> relaxed: yep, it's the resolution
[18:08:43 CEST] <Caterpillar> alexpigment: protools does not support mkv container so I tried to give to it mp4 and mov files that are the kind of h264 codec, but had no success. So I am trying DNxHD
[18:09:18 CEST] <Caterpillar> mpeg-4 codec should work, but DNxHD should be native for protools, so it should be better
[18:09:56 CEST] <alexpigment> Caterpillar: true, although there is a point of diminishing returns
[18:10:13 CEST] <alexpigment> you said you had no success with MP4 and MOV - do you think it's the audio format by chance?
[18:10:46 CEST] <alexpigment> you could quickly try -i [input] -c:v copy -an output.mov
[18:11:01 CEST] <alexpigment> if that imports and works ok, then you need to change the audio format only
[18:11:10 CEST] <alexpigment> and that'll be your most efficient workflow
[18:11:31 CEST] <alexpigment> and of course, you'll save *a lot* of time
[18:11:44 CEST] <Caterpillar> alexpigment: interesting, but unfortunately to test Protools I have to go to send the videofile to the studio that uses protools , or I have to get there
[18:11:53 CEST] <Caterpillar> anyway I try your command
[18:11:56 CEST] <alexpigment> ok, well you need to change your resolution then
[18:12:46 CEST] <FishPencil> For decoding does FFmpeg use frame slicing like it does for filtering, or multi frame? I'm curious how the threading works
[18:12:57 CEST] <Caterpillar> [18:11] <alexpigment> ok, well you need to change your resolution then
[18:12:58 CEST] <Caterpillar> ??
[18:13:11 CEST] <alexpigment> sorry, was just checking to make sure MXF supported ac-3
[18:14:10 CEST] <alexpigment> ffmpeg -i samplevideo.mkv -c:v dnxhd -pix_fmt yuv422p -b:v 185M -c:a copy outputvideo.mxf
[18:14:27 CEST] <alexpigment> that's going to copy only the first audio stream I believe, but hopefully that's not a concern
[18:14:46 CEST] <Caterpillar> alexpigment: just a sec, I was trying to enter your command ffmpeg -i sample_preview.mkv --c:v copy -an output.mov but I got message Unrecognized option '-c:v'.
[18:14:55 CEST] <Caterpillar> ah, --
[18:14:58 CEST] <alexpigment> you put --c:v
[18:15:11 CEST] <alexpigment> er
[18:15:21 CEST] <alexpigment> haha, i forgot to actually put in the most important part of the command above
[18:15:32 CEST] <Caterpillar> uh?
[18:15:33 CEST] <alexpigment> ffmpeg -i samplevideo.mkv -c:v dnxhd -pix_fmt yuv422p -s 1920x1080 -b:v 185M -c:a copy outputvideo.mxf
[18:15:36 CEST] <alexpigment> try that
[18:16:13 CEST] <alexpigment> or "sample_preview.mkv" in your case
[18:16:22 CEST] <Caterpillar> [mxf @ 0x55dd3103a040] track 1: could not find essence container ul, codec not currently supported in container
[18:16:24 CEST] <Caterpillar> Could not write header for output file #0 (incorrect codec parameters ?): Operation not permitted
[18:16:25 CEST] <Caterpillar> Error initializing output stream 0:0 --
[18:16:27 CEST] <Caterpillar> Conversion failed!
[18:17:23 CEST] <alexpigment> hmmm
[18:18:27 CEST] <alexpigment> i guess even though the MXF container supports AC-3, ffmpeg doesn't like that
[18:19:23 CEST] <relaxed> use -c:a pcm_s16le for the audio
[18:19:26 CEST] <alexpigment> 1 second, checking your original video pastebin for 16 or 24
[18:19:59 CEST] <alexpigment> yeah, original stream is 16bit
[18:20:37 CEST] <alexpigment> relaxed: I didn't realize the mxf muxer was so limited in ffmpeg until doing some tests over here
[18:20:54 CEST] <alexpigment> are you aware of anyone working on addressing that?
[18:22:31 CEST] <relaxed> nope
[18:22:39 CEST] <alexpigment> hmmm
[18:22:59 CEST] <alexpigment> well i checked earlier and the wiki says MXF supports "virtually anything"
[18:23:14 CEST] <alexpigment> ac3 would seem to at least be supported
[18:23:16 CEST] <alexpigment> oh well
[18:23:38 CEST] <relaxed> pcm_s16le is lossless, so no harm done
[18:23:42 CEST] <alexpigment> right
[18:23:53 CEST] <alexpigment> it just took me a few tries to get something that worked
[18:23:57 CEST] <alexpigment> big endian also failed
[18:24:07 CEST] <alexpigment> although 16le and 24le did work
[18:25:13 CEST] <alexpigment> at any rate, Caterpillar has now got a nice little 1GB file that should work :)
[18:25:30 CEST] <Caterpillar> ?
[18:25:49 CEST] <alexpigment> Caterpillar: your 38 second file is probably 1GB or so, right?
[18:26:01 CEST] <alexpigment> the MXF version
[18:26:18 CEST] <Caterpillar> alexpigment: 0 bytes
[18:26:27 CEST] <alexpigment> ffmpeg -i samplevideo.mkv -c:v dnxhd -pix_fmt yuv422p -s 1920x1080 -b:v 185M -c:a pcm_s16le outputvideo.mxf
[18:27:01 CEST] <relaxed> protools can't use h264/ac3 ?
[18:27:16 CEST] <alexpigment> relaxed: i asked that earlier. i was told 'no'
[18:27:35 CEST] <relaxed> it has to support h264
[18:27:47 CEST] <alexpigment> yeah, i agree
[18:27:55 CEST] <alexpigment> (read above for this being covered earlier)
[18:29:42 CEST] <relaxed> this says yes, http://avid.force.com/pkb/articles/en_US/Compatibility/Avid-Qualified-video…
[18:30:13 CEST] <cryptodechange> for low crf encodes, should I not worry about psy-trellis? I've set live action/pixar films to aq=3:0.8, psy-rd=1,0 and deblock=-3,-3
[18:30:37 CEST] <cryptodechange> These are for raw-bds
[18:30:58 CEST] <alexpigment> basically he said he can't locally test, so he's just going by what he knows should work. i'd guess it's just the MKV container, but perhaps they don't like AC-3
[18:31:01 CEST] <cryptodechange> Regarding deblocking, I noticed it didn't work well for Ghost in the shell, so i re-encoded with -2,-2
[18:31:04 CEST] <relaxed> Caterpillar: also try, ffmpeg -i sample_preview.mkv -map 0:v -map 0:a:0 -c:v copy -c:a pcm_s16le output.mov
[18:32:57 CEST] <relaxed> cryptodechange: have you tried using just -tune animation and -crf ?
[18:36:03 CEST] <Caterpillar> [18:26] <alexpigment> ffmpeg -i samplevideo.mkv -c:v dnxhd -pix_fmt yuv422p -s 1920x1080 -b:v 185M -c:a pcm_s16le outputvideo.mxf I just putted the mxf file in the file list that tomorrow will be tested with protools. If it will work, I hope that I can use the same setting with the other video files I have to reconvert (they are a loooot)
[18:37:18 CEST] <alexpigment> Caterpillar: cool. again, though, I think it's better to not re-encode if you have the ability to do a test
[18:37:48 CEST] <alexpigment> first try ffmpeg -i sample_preview.mkv -c copy output.mov
[18:38:10 CEST] <alexpigment> next try ffmpeg -i sample_preview.mkv -c:v copy -c:a copy output1.mov
[18:38:33 CEST] <alexpigment> then try ffmpeg -i sample_preview.mkv -c:v copy -c:a pcm_s16le output2.mov
[18:38:49 CEST] <alexpigment> if you figure out which of those 3 works, use that instead
[18:39:07 CEST] <cryptodechange> relaxed: live action Ghost in the shell
[18:39:31 CEST] <Caterpillar> alexpigment: in case I have to re encode, is it possible to use OpenCL ?
[18:39:32 CEST] <alexpigment> cryptodechange -tune film
[18:40:05 CEST] <alexpigment> Caterpillar: not to my knowledge. dnxhd doesn't have a hardware implementation to my knowledge
[18:40:20 CEST] <Caterpillar> alexpigment: what about mpeg-4?
[18:41:08 CEST] <alexpigment> Caterpillar: yes, but the results are much better doing H.264 on the CPU. you'd really only want to do hardware if time is a huge factor, or if you're trying to live stream something while you're already using a lot of system resources
[18:41:45 CEST] <Caterpillar> alexpigment: I did not know that GPU resulted in lower quality
[18:42:20 CEST] <alexpigment> yep, GPU encoding trades quality for speed
[18:42:28 CEST] <Caterpillar> :-OO
[18:42:39 CEST] <alexpigment> also, that isn't done through openCL, it's done by the specific encoder chips on modern GPUs
[18:42:42 CEST] <alexpigment> Nvidia has NVENC
[18:42:47 CEST] <alexpigment> Intel has Quick Sync
[18:42:50 CEST] <alexpigment> AMD has VCE
[18:42:51 CEST] <Caterpillar> Radeon RX480 here
[18:43:01 CEST] <alexpigment> well, unfortunately, FFMPEG doesn't support AMD VCE yet
[18:43:34 CEST] <alexpigment> but yes, openCL is useless in this case anyway. someone would have to write a whole encoder that uses compute/cuda cores
[18:43:51 CEST] <alexpigment> and it would almost certainly be slower on most systems
[19:10:38 CEST] <BytesBacon> Has anyone tried ffmpeg on the cloud servers? Have access to a service with 13 CPUs and wondering if ffmpeg would benefit from it if at all.
[19:10:49 CEST] <furq> isn't there some rudimentary vce support through vaapi now
[19:11:12 CEST] <furq> BytesBacon: probably? it depends on the service, cpus, contention etc etc
[19:11:18 CEST] <furq> try it and find out
[19:11:54 CEST] <alexpigment> furq: not sure re: VCE through VAAPI
[19:12:13 CEST] <alexpigment> for my purposes on Windows though, I'm still waiting to see anything with VCE in FFMPEG
[19:12:23 CEST] <furq> yeah i'm p sure there's nothing on windows yet
[19:12:28 CEST] <alexpigment> there's a time and a place for VCE, certainly
[19:12:38 CEST] <alexpigment> it was slated for H2 2017 the last time I checked
[19:12:56 CEST] <alexpigment> i don't know how realistic that estimate is anymore
[19:12:58 CEST] <BytesBacon> B/c I see x264 doesn't seem to work with dual CPU like I would have thought. Wondering if the cloud works, then maybe if I setup esxi on a dual CPU setup and then use ffmpeg in a VM on the hardware that way to fix the issue and allow all 24 cores to run.
[19:13:51 CEST] <jkqxz> VCE through VAAPI works - AMD has done a bit of work on it recently so stuff fits together more sensibly (you don't need the crazy environment variable any more), but you're still stuck with H.264 only and no extradata.
[19:14:22 CEST] <furq> BytesBacon: x264 with split memory pools doesn't work well iirc
[19:15:09 CEST] <furq> if you need to encode multiple streams then you'd probably get better performance by running two processes at once with affinity bound
[19:15:21 CEST] <JEEB> oppan numactl
[19:39:12 CEST] <DHE> yeah, use memory affinity as much as possible. I'm using control groups and launch with cgexec (centos has cgroup management tools I use extensively)
[19:39:34 CEST] <DHE> (control groups might be a little bit overkill for affinity, but I use them for other things as well)
[19:40:14 CEST] <BtbN> I don't think any of those various cloud services gives you VMs that span multiple NUMA nodes
[19:41:00 CEST] <DHE> unless you rent bare metal. some will do that. there's an openstack project for it for example
[20:00:38 CEST] <BytesBacon> Okay thanks guy, it's done spinning up, so I'm going to test it. Would love to speed up this encodes, too bad GPU encoding with x264 isn't as good of quality.
[20:04:06 CEST] <YokoBR> hi folks
[20:06:05 CEST] <YokoBR> I'm trying to stream for both facebook and youtube rtmp, but it keeps dropping. Is there any way to improve this? -> https://gist.github.com/jersobh/02764c265e90743127ad21e5f1b15d41
[20:31:29 CEST] <DHE> BytesBacon: it's not just visual quality. the actual GPU processing isn't necessarily any faster than having a CPU do it.
[20:31:51 CEST] <DHE> tested with a core i7 (older generations) as the CPU
[20:32:47 CEST] <alexpigment> DHE: in this case, GPU is going to be faster than an older core i7
[20:32:55 CEST] <alexpigment> well, it should be anyway
[20:33:12 CEST] <alexpigment> NVENC is very fast and the quality tradeoff isn't too bad imho
[20:33:29 CEST] <DHE> NVENC != x264
[20:33:39 CEST] <DHE> x264 with GPU means opencl offload of lookahead
[20:33:43 CEST] <alexpigment> did Yoko literally mean gpu x264?
[20:33:46 CEST] <alexpigment> oh
[20:33:53 CEST] <alexpigment> I didn't know that was even possible
[20:34:00 CEST] <JEEB> yea it's a PoC by MultiCoreWare
[20:34:08 CEST] <JEEB> which does work, yes. but it most likely is not useful
[20:34:17 CEST] <JEEB> at least according to the numbers I've seen
[20:34:20 CEST] <DHE> but that's all it is. I've seen improvement gains from +20% to -20% on various test loads on this system
[20:34:24 CEST] <JEEB> also it operates on a lower resolution IIRC
[20:34:26 CEST] <BytesBacon> Yea I'm after x264 encodes right now. I would go with x265 but the hardware support for play back is limited. I am keeping an eye out for VC1 for the future tho.
[20:34:43 CEST] <alexpigment> VC1 is kinda dead from what I've observed
[20:34:44 CEST] <DHE> vc1 == what vp10 would have been?
[20:34:48 CEST] <JEEB> no
[20:34:58 CEST] <alexpigment> is there a resurgence in VC1?
[20:34:58 CEST] <JEEB> VC1 is what was standardized out of WMV3
[20:35:03 CEST] <JEEB> alexpigment: no
[20:35:18 CEST] <alexpigment> right, but it was an early Blu-ray format that basically all major studios dropped before hardware support was even really ubiquitous
[20:35:32 CEST] <YokoBR> is it possible to stream both facebook and youtube simultaneously without dropping frames?
[20:35:37 CEST] <alexpigment> do phones/tablets even have VC1 support?>
[20:35:53 CEST] <JEEB> most likely if the SoC's ASIC was ever used for blu-ray
[20:36:02 CEST] <JEEB> since it is still one of the mandated formats IIRC
[20:36:15 CEST] <YokoBR> I mean, I'm trying it only for youtube right now and it says that the viewers will have buffering problems
[20:36:37 CEST] <JEEB> that just means that according to some metric it doesn't like something in the stream
[20:36:40 CEST] <BytesBacon> Sorry meant to say AV1, so many encoder names.
[20:36:40 CEST] <alexpigment> yeah, Blu-ray definitely has to have it, but again, because all major studios stopped using it almost immediately, it never caught on outside of Blu-ray and Windows from what I could tell
[20:36:40 CEST] <JEEB> not that your encoding is bad
[20:37:06 CEST] <JEEB> alexpigment: yea only X360 and blu-ray pretty much. even on windows you generally had vanilla wmv3 instead of vc-1
[20:37:10 CEST] <alexpigment> BytesBacon: ahhh, AV1 - that's a bit different :0
[20:37:45 CEST] <alexpigment> JEEB: well, the Windows encoders give you a choice. I recall though that interlaced VC-1 is poorly supported in a lot of cases too, but it was used on early Blu-rays for some reason
[20:37:52 CEST] <BytesBacon> Yea sorry, meant to say that one, as it's the next thing Google's working on. Seems very interesting, but the rendering time is currently insane.
[20:38:41 CEST] <JEEB> YokoBR: and if you either use the API to push same transcoded stuff into two avformatcontexts, or use the tee muxer which lets you have two hacked-up avformatcontexts
[20:39:03 CEST] <JEEB> you should be able to push the exact same transcoded stream into two RTMP ingests
[20:39:07 CEST] <JEEB> (or something else)
[20:48:25 CEST] <Guest67150> Hello everyone
[20:48:29 CEST] <YokoBR> JEEB: I've tryied -f tee -map 0 [f=flv:onfail=ignore]rtmp://live-api-a.facebook.com:80/rtmp/'+config_facebook+'|[f=flv:onfail=ignore]rtmp://a.rtmp.youtube.com/live2/'+config_youtube, but only youtube works. But if I try just '-f', 'flv','rtmp://live-api-a.facebook.com:80/rtmp/'+config_facebook, it works flawlessly on facebook
[20:48:50 CEST] <JEEB> rip
[20:48:59 CEST] <Guest67150> I would like to convert a folder containing 25 .mkv files with DTS audio codec to .mkv with AC3, would you like to help me? I don't have any experience with ffmpeg :(
[20:49:46 CEST] <Guest67150> My TV is fine with .mkv but can not handle DTS audio
[20:49:56 CEST] <alexpigment> Guest67150: what OS are you using?
[20:49:56 CEST] <YokoBR> Guest67150: ffmpeg -i myvideofile.mkv -map 0 -vcodec copy -scodec copy -acodec ac3 -b:a 640k myvideofilewithAC3.mkv
[20:50:06 CEST] <Guest67150> Windows 10 x64
[20:50:08 CEST] <JEEB> YokoBR: just let me note that this isn't a problem with the API, but probably with the tee thing
[20:50:12 CEST] <JEEB> (Ž4@)
[20:50:44 CEST] <alexpigment> Guest67150: I can make a batch script for you that will allow you to drag the 25 files at once onto the .bat file and it will convert them all in sequence
[20:50:45 CEST] <YokoBR> alexpigment told me about this tee muxer yesterday
[20:50:55 CEST] <alexpigment> YokoBR: no, that wasn't me
[20:50:59 CEST] <YokoBR> oops
[20:51:10 CEST] <YokoBR> someone told me about this tee mux yesterday
[20:51:24 CEST] <JEEB> which in theory would let you do this thing
[20:51:33 CEST] <Guest67150> Ah almost forgot: There are 3 soundtracks. These should either be converted or the remaining 2 should be deleted
[20:51:35 CEST] <JEEB> unfortunately I have no idea how to use it nor to check if you are using it correctly
[20:51:42 CEST] <alexpigment> YokoBR: I only helped you find your original problem, which is that you were converting in one part of your code, and then passing along the original codes in the second part of your code (which was causing the failure)
[20:52:08 CEST] <Guest67150> thank you alexpigment & YokoBR
[20:53:42 CEST] <YokoBR> yep, now it works.. I just don't know how to stream to both
[20:54:22 CEST] <alexpigment> Guest67150: https://pastebin.com/1wQ6Ez8s
[20:54:33 CEST] <alexpigment> save that as a .bat file and put it in the same folder as ffmpeg.exe
[20:54:51 CEST] <alexpigment> then highlight all the 25 video files and simply drag them on top of the .bat file at once
[20:55:05 CEST] <Guest67150> Thank you so much
[20:55:21 CEST] <alexpigment> np
[20:55:39 CEST] <Guest67150> will it convert all tracks?
[20:55:46 CEST] <alexpigment> nope, should just be the first one
[20:55:51 CEST] <alexpigment> do you need the other tracks?
[20:56:58 CEST] <Guest67150> No, but I'm not sure what my TV does if there's another DTS track in it
[20:57:09 CEST] <Guest67150> I just need the first track (german)
[20:57:16 CEST] <alexpigment> well the code I gave you will only have the first track
[20:58:13 CEST] <Guest67150> Ok sounds good :) I will try it
[20:58:45 CEST] <YokoBR> which is faster to encode, libmp3lame or aac?
[20:59:31 CEST] <alexpigment> YokoBR: not sure, but you can just make a 10 hour silent audio track and see which one finishes first
[21:00:00 CEST] <YokoBR> https://www.youtube.com/watch?v=09kk57kJTlY
[21:00:04 CEST] <YokoBR> This is my live stream
[21:00:26 CEST] <YokoBR> now I'm using aac, but it's a little bit cracky I guess
[21:02:04 CEST] <alexpigment> aac is faster, but only by a very small amount
[21:02:07 CEST] <alexpigment> according to my tests
[21:02:17 CEST] <alexpigment> 195x for MP3, 205x for AAC
[21:02:26 CEST] <alexpigment> this could change depending on your CPU cores and clock speed
[21:03:41 CEST] <Guest67150> @alexpigment saved the .bat in the same folder as ffmpeg.exe - drag and drop the .mkv's. A small command line windows appears and disappears
[21:03:59 CEST] <Guest67150> and there is no new mkv
[21:04:17 CEST] <alexpigment> Guest67150: add the word PAUSE to a new line at the end of the .bat
[21:04:19 CEST] <alexpigment> what's the error?
[21:04:39 CEST] <alexpigment> (context, pause will make the window stay up rather than leaving the screen)
[21:05:27 CEST] <Guest67150> The command "ffmpeg. exe" is either misspelled or the command could not be found <-- translated by me
[21:05:49 CEST] <Guest67150> and yes I am sure the bat is in the same folder as the ffmpeg.exe
[21:05:58 CEST] <alexpigment> it should work, but try adding the full file path before ffmpeg.exe
[21:06:02 CEST] <alexpigment> and put that file path in quotes
[21:06:07 CEST] <Guest67150> OK
[21:06:13 CEST] <alexpigment> e.g. "C:\MyFolder\ffmpeg.exe"
[21:06:52 CEST] <alexpigment> I could have also added "%~dp0ffmpeg.exe" I guess, but that usually shouldn't be necessary
[21:07:56 CEST] <Guest67150> OK this works :)
[21:08:02 CEST] <Guest67150> [ac3 @ 0000000002ab2260] [Eval @ 00000000005fe3e0] Invalid chars 'bps' at the end of expression '224kbps' [ac3 @ 0000000002ab2260] Unable to parse option value "224kbps" [ac3 @ 0000000002ab2260] Error setting option b to value 224kbps.
[21:08:16 CEST] <Guest67150> I think I should have not change your settings :D mea culpa
[21:08:28 CEST] <alexpigment> ah yeah
[21:08:45 CEST] <alexpigment> i did 448 because that's pretty high without being so high that I worry about TV support
[21:08:58 CEST] <alexpigment> 384kbps is what most broadcast TV uses
[21:09:07 CEST] <alexpigment> 448kbps is what DVD occasionally used
[21:09:22 CEST] <alexpigment> 640kbps is more rarely used, but it would be hard to hear the difference imho
[21:09:22 CEST] <Guest67150> 384 is the source DTS
[21:09:32 CEST] <Guest67150> Can I use that?`
[21:09:38 CEST] <alexpigment> yeah you can use that if you'd like
[21:11:06 CEST] <Guest67150> OK something is wrong: Invalid chars 'bps' at the end of expression '384kbps'
[21:11:26 CEST] <Guest67150> Excuse me for being so tiring.
[21:16:48 CEST] <YokoBR> so nobody knows how to do that tee mux thing?
[21:18:18 CEST] <Guest67150> Nope :( Do you know whats wrong with the command "ac3 -b:a 384kbps"?
[21:18:40 CEST] <saml_> is this web scale
[21:20:19 CEST] <saml_> let's build ffmpeg. is it sane to statically link ffmpeg?
[21:20:24 CEST] <saml_> with all codecs and stuff
[21:27:37 CEST] <alexpigment> Guest67150: set it to 384000
[21:28:18 CEST] <BtbN> The error is quite clear about what's wrong. The "bps" is just wrong there.
[21:28:34 CEST] <Guest67150> Hi there :) had a similar idea a moment ago: works with 384k instead of 384kbps
[21:28:51 CEST] <alexpigment> you can use either 384000 or 384k - my apologies if my command line had kbps
[21:29:00 CEST] <Guest67150> Just converted the first file :) I will try it now. Wish me luck
[21:30:56 CEST] <Guest67150> alexpigment you are my hero! Thank you so much
[21:31:01 CEST] <Guest67150> works perfect!
[21:31:12 CEST] <alexpigment> np. hopefully that batch file makes the process go by quicker
[21:31:28 CEST] <alexpigment> you can do all of them at once without having to babysit each one
[21:32:06 CEST] <Guest67150> You saved me a lot of boring evenings
[21:32:31 CEST] <alexpigment> :)
[21:37:52 CEST] <Guest67150> Good night and thanks again e
[21:58:55 CEST] <vans163> what are error concealment methods in a decoder?
[21:59:11 CEST] <vans163> i see things like FRAME_COPY, SLICE_COPY, FRAME_COPY_CROSS_IDR, etc..
[22:57:46 CEST] <jaggz-t> Why's ffmpeg output 4x frames for every frame of video if I just do ffmpeg foo.mp4 images/%05.jpg ?
[22:58:38 CEST] <jaggz-t> fps of the video is 29.97. it's 08:05.04 long. That comes out to 14536 frames.
[22:59:29 CEST] <jaggz-t> I get about 58202 frames
[22:59:49 CEST] <jaggz-t> I say "about" cuz I did md5 sums on the outputs and found each frame is repeated 4 times
[23:00:09 CEST] <jaggz-t> (and then removed those).. but I'd like to make my initial ffmpeg conversion handle the output frames properly
[23:01:42 CEST] <akkad> other than deshake, are there another filters folks typically use on high action gopro video to make it more watchable?
[23:13:24 CEST] <alexpigment> jaggz: are you setting the frame rate before or after -i ?
[23:13:40 CEST] <jaggz> alexpigment, I did not set it
[23:14:21 CEST] <jaggz> how can I just leave it at the original framerate (to get every frame)?
[23:14:23 CEST] <alexpigment> it sounds like it's just using a default value then. the average person probably isn't going to want 1 image per frame for, say, a time lapse video
[23:14:38 CEST] <alexpigment> well, there's no "original framerate" for images
[23:14:53 CEST] <alexpigment> you have to define them because you're introducing time to something that never had time
[23:15:06 CEST] <jaggz> ah, yes, I missed in the output it's saying 120 fps.
[23:15:16 CEST] <alexpigment> oh wait
[23:15:16 CEST] <alexpigment> nm
[23:15:22 CEST] <jaggz> is there no option "keep input fps"?
[23:15:33 CEST] <alexpigment> i was thinking this was the other way around
[23:15:39 CEST] <jaggz> :)
[23:15:55 CEST] <alexpigment> ok so you have a 120fps video that you're getting images from?
[23:15:57 CEST] <alexpigment> or the other way around?
[23:16:03 CEST] <jaggz> yes
[23:16:10 CEST] <jaggz> video -> images
[23:16:20 CEST] <alexpigment> and in the video which is at 120fps, each frame is unique?
[23:16:30 CEST] <alexpigment> or does the image change every 4th frame?
[23:17:34 CEST] <jaggz> the video is 29.97
[23:17:50 CEST] <jaggz> (with some meta data "com.android.capture.fps: 30.000000")
[23:18:07 CEST] <alexpigment> ok, so i'm not understanding where the 120fps is coming into play
[23:18:09 CEST] <jaggz> each frame should be unique, at 29.97. Unless my cellphone is stupid :)
[23:18:28 CEST] <jaggz> alexpigment, I noticed in the output of ffmpeg, it showed the Output (images) were using 120 fps
[23:18:33 CEST] <jaggz> ffmpeg came up with that 120 somehow
[23:18:37 CEST] <alexpigment> well, try just setting the -r to 30, then
[23:18:44 CEST] <alexpigment> (after the input)
[23:18:57 CEST] <alexpigment> foo.mp4 -r 30 images/%05.jpg
[23:19:02 CEST] <jaggz> Duration: 00:08:05.04, start: 0.000000, bitrate: 12100 kb/s
[23:19:02 CEST] <jaggz> Stream #0:0(eng): Video: h264 (Baseline) (avc1 / 0x31637661), yuvj420p(pc, bt470bg/bt470bg/smpte170m), 1280x720, 11997 kb/s, SAR 1:1 DAR 16:9, 29.97 fps, 120 tbr, 90k tbn, 180k tbc (default)
[23:19:11 CEST] <jaggz> That's the input's info
[23:19:20 CEST] <alexpigment> ah, the tbr is 120
[23:19:31 CEST] <alexpigment> well, either way, try setting the rate as I suggested
[23:19:32 CEST] <dystopia> dont use -r 30 if it really is 29.974
[23:19:39 CEST] <alexpigment> true
[23:19:49 CEST] <alexpigment> -r 30000/1001
[23:20:08 CEST] <jaggz> From ffmpeg mailing list: "tbr is guessed from the video stream and is the value users want to see when they look for the video frame rate, except sometimes it is twice what one would expect because of field rate versus frame rate."
[23:20:12 CEST] <jaggz> https://superuser.com/questions/410765/what-does-the-video-output-stream-de…
[23:20:39 CEST] <jaggz> that's weird.. if you have a video of a known fps, why's ffmpeg take a guess at what the user *really* wants? :)
[23:20:42 CEST] <alexpigment> jaggz: well, even if the field rate were a factor (which it's not if it's actually taken by a cell phone), it wouldn't be 120
[23:21:11 CEST] <alexpigment> in the case of a field rate, you have an *effective* FPS of 2x the actual FPS
[23:21:31 CEST] <alexpigment> in other words, the motion fludity of 29.97i is the exact same as 59.94p
[23:23:30 CEST] <jaggz> I'd have to look into how it calculates it.. but okay, so I just have to specify I guess
[23:23:40 CEST] <alexpigment> i believe so
[23:23:41 CEST] <jaggz> weird to not have an option to just use the input's rate
[23:23:53 CEST] <alexpigment> jaggz: that's how it usually works tbh
[23:23:54 CEST] <jaggz> I wonder what the android metadata is saying 30, if the mp4 is 29.97
[23:24:01 CEST] <alexpigment> i'm not sure
[23:24:07 CEST] <jaggz> exactly, we need a "tbh" option :)
[23:24:26 CEST] <alexpigment> if you end up with the occasional duplicate frame, it may be worth trying the integer version rather than the decimal
[23:24:38 CEST] <alexpigment> or vice versa
[23:24:48 CEST] <jaggz> I'll try 30000/1001
[23:24:53 CEST] <alexpigment> probably the safest way
[23:25:56 CEST] <jaggz> thanks :)
[23:26:02 CEST] <alexpigment> np
[23:27:40 CEST] <jaggz> how's life?
[23:27:47 CEST] <jaggz> :)
[00:00:00 CEST] --- Thu Oct 5 2017
1
0
[00:13:31 CEST] <cone-830> ffmpeg 03James Almer 07master:712ee85816ef: avcodec/encode: free non-referenced packets' side data in the old encode API functions
[01:53:33 CEST] <jamrial> michaelni: the new test (fate-svq3-2) yields different results if configuring with --enable-memory-poisoning compared to not
[01:53:40 CEST] <jamrial> i think that hints at some issue somewhere...
[01:54:44 CEST] <jamrial> noticed this just now seeing that all the fate clients are failing at it (i didn't use --enable-memory-poisoning for the build i used to merge and test the commit)
[01:55:30 CEST] <jamrial> i'll update the hash so fate is not all yellow, but no idea what could be at fault here
[02:43:33 CEST] <cone-830> ffmpeg 03James Almer 07master:aa4fe2765746: fate: disable fate-svq3-2
[02:44:52 CEST] <jamrial> michaelni: disabled the test until it's fixed. some fate clients don't use memory poisoning, so there would have been failure reports no matter what
[06:53:09 CEST] <ldts> if anyone is interested, I have backported v4l2_m2m to 3.3.3 https://github.com/ldts/FFmpeg/commits/v3.3.3/v4l2_m2m_backport
[09:00:57 CEST] <wm4> ldts: normally we don't add new features to stable releases
[09:38:56 CEST] <ldts> wm4: yes makes sense...at Linaro we are making a release for db410/db820 had to backport to the OE release we have which uses 3.3.3 (so just sharing here in case anyone had any use for it since the changes to v4l2_m2m_dec.c (mayority of the backport) werent completly straightforward
[10:31:09 CEST] <ayum> Hi, I am using ffmpeg to read video from 2 v4l2 device(/dev/video0 and /dev/video1), I found that ffmpeg doesn't open 2 stream at same time, so I want to modify the source code, and open 2 v4l2 device simultaneously. I want to modified libavdevice/v4l2.c, but failed. any suggestions?
[10:35:20 CEST] <ldts> ayum: cant you use two separate ffmpeg instances, one for each device?
[10:35:42 CEST] <kierank> You can't open two devices simultaneously
[10:35:47 CEST] <kierank> It's the major flaw in v4)
[10:35:50 CEST] <kierank> V4l
[10:36:05 CEST] <ayum> @ldts, I added a compare filter in ffmpeg, so it will compare 2 video stream
[10:36:48 CEST] <ayum> so I can not use 2 ffmpeg read from 2 device separately
[10:37:21 CEST] <ayum> actually, second device will delay about 1 second, then open
[10:37:27 CEST] <wm4> kierank: wat
[10:38:19 CEST] <JEEB> funky
[10:38:41 CEST] <ldts> kierank: are you sure that the same process can not open to v4l2 devices? I can't imagine any reason why it shouldnt..
[10:38:56 CEST] <kierank> wm4: how do you sync video from v4l2 and audio from alsa
[10:39:06 CEST] <kierank> Answer is you can't they are two separate fds
[10:39:09 CEST] <wm4> isn't that a different issue
[10:40:47 CEST] <ldts> ayum: do you have your tree somewhere?
[10:40:52 CEST] <ldts> I can have a look if you want
[10:41:21 CEST] <kierank> You can't open two fds simultaneously
[10:41:39 CEST] <wm4> fd1=open("a"),fd2=open("b")
[10:41:48 CEST] <ayum> @ldts, I using this command to read from 2 devices: ffmpeg -i /dev/video0 -i /dev/video1 -filter_complex "compare" ....
[10:42:12 CEST] <ldts> I thought you said you modified v4l2.c?
[10:42:30 CEST] <wm4> kierank: I mean, I get it, they're not synced, but the way you say it doesn't make it obvious
[10:42:35 CEST] <ayum> yes, I am trying to modify v4l2.c, add some synchronize function
[10:42:48 CEST] <ldts> ayum: where is your v4l2.c?
[10:43:12 CEST] <ayum> libavdevice/v4l2.c
[10:44:35 CEST] <ayum> ffmpeg is using thread to manage the input, right? I use pthread_self() to print the thread ID, If I have 2 inputs, there are 2 different threads.
[10:45:04 CEST] <BtbN> ffmpeg.c does not use threads
[10:46:47 CEST] <ayum> yeah, but I think it's in somewhere
[10:55:41 CEST] <BtbN> threading generally only happens internally of codecs or filters
[10:56:57 CEST] <ayum> @BtbN, if that's true, how ffmpeg manage the multiple inputs? I thought there is a thread queue for every input.
[10:57:07 CEST] <BtbN> sequentially one after the other
[11:28:12 CEST] <JEEB> so whereabouts the mpeg-ts timestamp rolling was handled again?
[11:28:44 CEST] <JEEB> I remember it was in utils
[11:28:51 CEST] <JEEB> (in lavf, IIRC)
[12:00:22 CEST] <wm4> I thought there is threaded input
[12:00:34 CEST] <wm4> but generally ffmpeg.c isn't too well designed for blocking input
[13:48:31 CEST] <JEEB> michaelni or so, unless there's any additional comments on http://ffmpeg.org/pipermail/ffmpeg-devel/2017-September/217102.html , can it be pushed?
[14:20:56 CEST] <michaelni> JEEB, no additional comments from me
[14:26:31 CEST] <wm4> libavcodec/vda.h:41:10: fatal error: VideoDecodeAcceleration/VDADecoder.h: No such file or directory
[14:26:35 CEST] <wm4> the fuck did I do now
[14:26:43 CEST] <wm4> it's not broken in master I assume
[14:27:01 CEST] <selsta> fd5f4ac0813c27c34c387f00044905a859e29e37 seems to break OS X compilation with `./configure --enable-opencl`
[14:53:15 CEST] <selsta> linkage error https://www.irccloud.com/pastebin/t7skbYvM/
[15:15:37 CEST] <wm4> ok this was much easier than I thought
[15:16:18 CEST] <wm4> uh did it send only mail 7/7
[15:23:22 CEST] <wm4> the server must be pretty slow
[15:31:29 CEST] <wm4> philipl, BtbN: review of the cuvid patches would be appreciated... there is also hevc support in Libav, which I'd merge later
[15:43:02 CEST] <BtbN> wm4, I really want to know how to use cuvid as a filter now
[15:44:03 CEST] <wm4> BtbN: hm?
[15:44:14 CEST] <wm4> it outputs the same thing as our cuvid decoder
[15:44:26 CEST] <BtbN> In theory, cuvid can take in raw frames, apply video processing on it, and return another raw frame
[15:44:31 CEST] <wm4> oh yeah,v if you mean stuff like deint, no idea
[15:44:36 CEST] <BtbN> So it can be used as a filter for scaling/deinterlacing
[15:44:55 CEST] <BtbN> The API is there, but absolutely no documentation on how to use it
[15:44:57 CEST] <wm4> for pure decoding, it will be better, because nvidia's parser tends to be flaky
[15:45:10 CEST] <BtbN> When I asked some nvidia people about it, they were like "Yes, that's possible."
[15:45:24 CEST] <wm4> you should ask them harder
[15:45:26 CEST] <philipl> wm4: renaming ours means a compatibility break. Is this in the context of the next break? I lost track.
[15:45:34 CEST] <BtbN> It does not rename ours
[15:45:36 CEST] <BtbN> just the file
[15:45:57 CEST] <wm4> yep
[15:46:02 CEST] <wm4> it also renames the Libav hwaccel names
[15:46:16 CEST] <wm4> so if anyone were to rely on those names, it wouldn't be API-compatible to Libav
[15:49:13 CEST] <jamrial> selsta: ping
[15:51:22 CEST] <philipl> wm4: ok
[15:53:18 CEST] <BtbN> wm4, I still don't quite understand how it solves the delay-problem. It seems to still immediately pull the frame from CUVID after it returns it
[15:53:59 CEST] <BtbN> Or does it rely on calling receive_frame late enough, so the delay has to be implemented outside?
[15:54:08 CEST] <wm4> BtbN: well there is infrastructure for delaying with the patches
[15:54:30 CEST] <wm4> not sure how that works though
[15:54:52 CEST] <BtbN> decode_receive_frame_internal pulls the frame from CUVID to CUDA
[15:55:20 CEST] <philipl> Well, we can try it out and see how fast it gets.
[15:55:25 CEST] <selsta> jamrial: Im here
[15:55:37 CEST] <wm4> hm I guess "delayed" refers to "after frame threading"
[15:55:51 CEST] <wm4> BtbN: did you look at cuvid_retrieve_data in cuvid.c?
[15:56:00 CEST] <BtbN> I'm not there yet.
[15:57:25 CEST] <jamrial> selsta: can you test https://pastebin.com/raw/1awDw01D to see if it fixes your opencl failure?
[15:59:48 CEST] <selsta> jamrial: will test it in ~30 minutes
[16:00:11 CEST] <philipl> wm4: I don't see you using the new codec_cap
[16:02:42 CEST] <wm4> philipl: which one?
[16:03:52 CEST] <philipl> wm4: Ah, ok. You don't need to add it to the new one
[16:35:41 CEST] <jkqxz> wm4: Can we please not add more hacks around lavc get_format setup for hwaccels and instead delete all of the dummy ones?
[16:37:21 CEST] <jkqxz> <https://lists.libav.org/pipermail/libav-devel/2017-September/084804.html> and series. If I sent it to ffmpeg would that be helpful?
[16:37:59 CEST] <jkqxz> (It was easier to sort out in libav because there are fewer of them there, but it should be pretty much identical here.)
[16:38:07 CEST] <wm4> jkqxz: yes I'd agree
[16:38:28 CEST] <wm4> also, a different mechanism than get_format, but that's even further out there
[16:39:26 CEST] <wm4> I'm also just noticing that "AVCodecHWConfig" sounds too much like a runtime thing (like instantiated decoder parameters or so) - bikeshed time?
[16:39:48 CEST] <jkqxz> What do you want there? I tried to suggest making this configuration setup be used for software formats as well and making the new callback be select_config, but elenril at least didn't like that.
[16:40:04 CEST] <jkqxz> What do you want to call it?
[16:40:11 CEST] <wm4> so it's down to what elenril likes
[16:40:21 CEST] <wm4> instead of "AVCodecHWConfig"? uh good question... yellow?
[16:40:33 CEST] <wm4> or maybe AVCodecHWAccel (durrrrrrrrr)
[16:40:55 CEST] <iive> wm4: it has always been like that
[16:40:56 CEST] <jkqxz> It's not just for HWAccels, it also applies to decoders (like CUVID).
[16:41:12 CEST] <selsta> jamrial: I get `error: patch failed: fftools/Makefile:20`
[16:41:20 CEST] <wm4> iive: like what
[16:41:21 CEST] <iive> imho, that structure should not even exist, and avcodeccontext be used instead.
[16:41:35 CEST] <wm4> jkqxz: I know
[16:41:44 CEST] <wm4> but as in "hardware accelerated codec"
[16:41:55 CEST] <wm4> "AVCodecHWCaps"
[16:42:04 CEST] <wm4> "AVCodecHWSupport"
[16:42:14 CEST] <iive> "wm4> so it's down to what elenril likes" it has always been like that.
[16:42:14 CEST] <jkqxz> I hate the term "acceleration" here. Most of these are just whole-decoder implementations in hardware, there is no acceleration.
[16:42:25 CEST] <iive> ofloading?
[16:42:31 CEST] <iive> offloading?
[16:42:37 CEST] <wm4> iive: well, it's actually possible to convince elenril of something, also he's often right
[16:42:41 CEST] <jkqxz> iive: What do you mean? There is no AVCodecContext at this point, it's in AVCodec.
[16:42:46 CEST] <jkqxz> offloading is good, yes.
[16:43:24 CEST] <iive> jkqxz: the one usually shorten to avxtx
[16:43:28 CEST] <iive> avctx
[16:44:54 CEST] <wm4> there isn't one
[16:45:03 CEST] <wm4> this is for information before a codec is opened
[16:45:30 CEST] <iive> applications used to pass info to the codecs there
[16:45:50 CEST] <wm4> wat
[16:47:39 CEST] <jamrial> selsta: it applies fine for me. try with git am
[16:49:31 CEST] <selsta> jamrial: https://www.irccloud.com/pastebin/tWdZVC2a/
[16:52:40 CEST] <selsta> jamrial: wait a moment
[16:54:12 CEST] <selsta> your patch works :) I fucked up with the applying lol
[16:54:36 CEST] <jkqxz> wm4: Ok, I'll look at making that series for ffmpeg later.
[16:54:50 CEST] <jkqxz> Assuming noone else has any objects to it.
[16:55:46 CEST] <wm4> I'd welcome it - I don't love these hacks
[16:55:56 CEST] <selsta> jamrial: would be good if this patch gets pushed soon, as homebrew ffmpeg git uses --enable-opencl
[16:56:05 CEST] <wm4> preferably they should not be applied in a slightly different way to Libav later, though
[16:56:12 CEST] <jamrial> selsta: yes, in a bit
[16:56:57 CEST] <jkqxz> That is generally why it is easier to start in libav. Would you prefer I sent it again there?
[16:58:39 CEST] <wm4> jkqxz: that would probably be better - is it Elenril Approved (TM) yet?
[16:59:15 CEST] <iive> jkqxz: what is HWConfig supposed to do?
[16:59:33 CEST] <jkqxz> wm4: We talked about it a bit at VDD, but not enough to get that badge.
[16:59:43 CEST] <cone-950> ffmpeg 03James Almer 07master:3e6829a8aa1e: build: fix compilation of tools with OpenCL enabled
[17:00:18 CEST] <jkqxz> iive: Tell you how you need to configure a codec for it to use hardware.
[17:00:40 CEST] <iive> jkqxz: like *display ?
[17:01:20 CEST] <jkqxz> I'm not sure what you mean.
[17:01:34 CEST] <selsta> jamrial: bit OT, why does git apply fail and git am work? and thanks for the quick fix
[17:01:57 CEST] <iive> accelerations that go through X display driver, take display as parameter.
[17:02:00 CEST] <jamrial> no idea. maybe lack of newlines somewhere
[17:02:55 CEST] <jkqxz> iive: Kindof. If there were a hwcontext device encapsulating an X11 display then it could tell you that you need to pass that.
[17:03:57 CEST] <jkqxz> iive: Though really those APIs work on a higher abstraction to avoid the dependence on X11. You can pass a VAAPI or a VDPAU device.
[17:04:14 CEST] <jkqxz> (Which could have been created from an X11 display.)
[17:04:33 CEST] <iive> jkqxz: so you use it to pick the acceleration you want?
[17:05:09 CEST] <iive> do you have a link to the proposed patch/content of that hwconfig?
[17:05:10 CEST] <jkqxz> It describes what accele^Woffloading methods are possible, and what you need to do to use them.
[17:05:20 CEST] <jkqxz> Link above has it.
[17:06:33 CEST] <jkqxz> Later patches in the series use it in avconv (ffmpeg).
[17:08:35 CEST] <wm4> to be honest, "offloading" sounds just like "hwaccel" in that it's not clear whether all or just some decoding is done on the GPU
[17:09:37 CEST] <jkqxz> At least it doesn't imply that some happens on the CPU.
[17:10:10 CEST] <J_Darnley> FUCK THESE AUTOMATIC DEPENDENCIES! I FUCKING HATE THEM!
[17:10:12 CEST] <wm4> "offloading" is often used for partial things
[17:10:42 CEST] <wm4> anyway.
[17:12:01 CEST] <iive> jkqxz: gah... what I see is completely useless.. It just connects pix_fmt to some flags...
[17:12:25 CEST] <wm4> ...
[17:13:04 CEST] <iive> some of these flags should not exist.
[17:13:29 CEST] <jkqxz> Such as?
[17:14:05 CEST] <iive> hw_device_ctx, I do assume that one depends heavily of the acceleration that is going to be picked
[17:14:19 CEST] <iive> but that is done by get_format().
[17:14:41 CEST] <iive> I guess this whole thing is an attempt to get rid of the get_format() path?
[17:14:55 CEST] <jkqxz> Not yet, but it could be at some later stage.
[17:15:08 CEST] <wm4> getting rid of get_format would be a bonus
[17:15:15 CEST] <wm4> but certainly not the whole purpose
[17:17:00 CEST] <wm4> iive: anyway, get_format and AVHWAccel is even more useless than the proposed patch (which you call useless)
[17:17:34 CEST] <wm4> both ffmpeg.c and mpv have to keep their own lists of supported hwaccels, and they contain redundant info that could be exported via the proposed patch
[17:20:12 CEST] <jkqxz> Note that one end result of this patch series is that there is that there is no mention at all of the generically-implemented hwaccels (DXVA2, VAAPI, etc.) in fftools/*.
[17:21:28 CEST] <wm4> jkqxz: I also wonder if we should avoid arrays of structs, so we can add new fields to it
[17:22:03 CEST] <wm4> so, we'd have either "const AVCodecHWConfig **hw_configs;", or accessor functions which access the struct array internally
[17:22:10 CEST] <jkqxz> Would you prefer an iterate_hw_configs function?
[17:22:37 CEST] <iive> wm4: yeh... it's all bad design from everywhere. and
[17:22:44 CEST] <wm4> jkqxz: it might be needed
[17:22:45 CEST] <jkqxz> Yeah, maybe. Care to define exactly how that works?
[17:22:46 CEST] <wm4> iive: what
[17:23:03 CEST] <iive> yes, **hw_configs is a must
[17:23:59 CEST] <iive> most of these pix_fmt <> flags would be generic and constant.
[17:24:02 CEST] <wm4> we could also add a "void *extensions;" field to the end of the struct, but that doesn't seem very nice either
[17:24:29 CEST] <wm4> (then we could use or replace this pointer and have it point to a new struct with new fields)
[17:24:46 CEST] <wm4> whatever avoids potential ABI issues
[17:25:14 CEST] <wm4> jkqxz: the simplest would be an accessor: const AVCodecHWConfig *av_codec_get_hw_config(AVCodec *codec, int index);
[17:25:27 CEST] <wm4> then the user would never see a AVCodecHWConfig[]
[18:36:12 CEST] <cone-950> ffmpeg 03Michael Niedermayer 07master:a56ec48d426f: avformat/mxfenc: Add IEC DV25
[18:36:13 CEST] <cone-950> ffmpeg 03Michael Niedermayer 07master:ef973bd98d8e: avformat/mxfenc: Fix labels for IEC PAL DV 420
[19:04:16 CEST] <cone-950> ffmpeg 03James Almer 07master:87e625c2633a: avcodec/encode: do proper cleanup on failure
[20:38:01 CEST] <cone-950> ffmpeg 03Michael Niedermayer 07master:fbdab6eca787: avcodec/hevcdsp_template: Fix undefined shift
[20:38:02 CEST] <cone-950> ffmpeg 03Michael Niedermayer 07master:c37138e01a93: avcodec/proresdec2: SKIP_BITS() does not work with len=32
[20:38:03 CEST] <cone-950> ffmpeg 03Michael Niedermayer 07master:4ee77cefaed0: avcodec/proresdec2: Use LAST_SKIP_BITS where possible
[21:30:13 CEST] <pgorley> rcombs: hi, i tested your patch on today's master (https://ffmpeg.org/pipermail/ffmpeg-devel/2017-September/216828.html) and it fails to compile, here are my logs: https://pastebin.com/6Ekess4M
[21:30:29 CEST] <pgorley> this is on android api 18, btw
[21:31:39 CEST] <rcombs> ah
[21:31:44 CEST] <rcombs> I think v4l2_buffers.c was added since I wrote that
[21:32:04 CEST] <rcombs> should just need to #include "libavformat/os_support.h" in that file
[21:32:06 CEST] <rcombs> give it a go?
[21:32:37 CEST] <pgorley> sure, i'll test that out
[21:33:54 CEST] <rcombs> pgorley: oh, that should correct the mmap issue you're seeing there, but it won't correct the lfind issue; that's independent
[21:34:28 CEST] <pgorley> yes i know, but if it does correct the mmap issue it's a step in the right direction
[21:34:59 CEST] <rcombs> do you actually need v4l2 on android pre-21?
[21:35:57 CEST] <pgorley> no clue, i was having trouble compiling ffmpeg on android earlier because of mmap, and that lead me to this
[21:36:08 CEST] <jkqxz> I noticed that function (lfind) in review and thought wtf because I'd never seen it before, but apparently it's in POSIX since 2001.
[21:36:13 CEST] <pgorley> it does fix the mmap issue
[21:36:23 CEST] <jkqxz> So another case of Android totally failing at standards?
[21:36:26 CEST] <rcombs> yup
[21:36:41 CEST] <rcombs> OK, sounds like we'll just want an ff_lfind or something
[21:36:53 CEST] <rcombs> it's pretty trivial: https://github.com/bminor/glibc/blob/73dfd088936b9237599e4ab737c7ae2ea7d710…
[21:36:55 CEST] <jkqxz> Or just write it in code, because it's trivial.
[21:37:02 CEST] <rcombs> yeah, or that
[21:37:08 CEST] <rcombs> it's used 5 times, though
[21:37:17 CEST] <jkqxz> And, like, you wouldn't need the pointless compare function.
[21:37:19 CEST] <rcombs> could just poach the glibc impl (LGPL!)
[21:38:02 CEST] <JEEB> jkqxz: welcome to bionic
[21:38:05 CEST] <jkqxz> Is it in more recent Bionic?
[21:38:09 CEST] <rcombs> yeah, 21
[21:38:18 CEST] <JEEB> right
[21:38:24 CEST] <JEEB> so if he raises API level it gets OK
[21:38:26 CEST] <rcombs> I feel like this could probably be done well by a macro that takes a comparator as an arg (rather than a function pointer)
[21:39:17 CEST] <rcombs> but ¯\_(Ä)_/¯ whatever works, as long as it's not leaving the call to glibc lfind
[21:39:30 CEST] <rcombs> could do a wrapper in os_support.h, alternately
[21:43:24 CEST] <rcombs> jkqxz: hey, did that API to check whether a hardware device advertises support for a given profile ever pan out?
[21:50:34 CEST] <jkqxz> For probing? It got a bit further, but it's a bit too awkward to do in a useful way because you don't know enough information without some of the stream. The conclusion was that it's better to just make the codec and try to use it.
[21:51:25 CEST] <jkqxz> pgorley: Testplz <http://sprunge.us/JRgU>.
[21:52:01 CEST] <jkqxz> Definitely a "why would you ever use this function": "30 insertions(+), 71 deletions(-)".
[21:54:56 CEST] <pgorley> corrupt patch at line 158 there's the version number missing
[21:55:21 CEST] <JEEB> that usually means a missing endline when you grabbed the patch
[21:55:29 CEST] <pgorley> ah maybe
[21:56:03 CEST] <pgorley> yup
[21:56:57 CEST] <jkqxz> Yeah. git-formatted patches avoid that by the trailing thing at the end, but that's just a diff.
[21:57:27 CEST] <pgorley> jkqxz: is this for android?
[21:57:35 CEST] <jkqxz> Removing lfind.
[21:57:54 CEST] <jkqxz> I can build it here, I'm really wondering whether there are any other crazy functions which don't work.
[21:58:02 CEST] <pgorley> oh, alright
[21:58:11 CEST] <rcombs> jkqxz: I've got code to try it and fallback, but it involves actually starting ffmpeg.c, probing, etc&, so I'd like to get around that overhead in the common "device supports what it advertises and the file is pretty vanilla" case
[21:58:40 CEST] <rcombs> I mean, did you see how mmap() doesn't
[21:59:29 CEST] <jkqxz> Well, you were fixing that :P
[21:59:41 CEST] <jkqxz> Or shall I add that too?
[21:59:53 CEST] <rcombs> nah I'll get it
[21:59:58 CEST] <rcombs> just a missing #include
[22:06:32 CEST] <pgorley> jkqxz: it successfully built
[22:08:04 CEST] <rcombs> filed an issue about this: https://github.com/android-ndk/ndk/issues/537
[22:08:37 CEST] <jkqxz> Thanks for testing. Patch on ML.
[23:15:58 CEST] <tmm1> jkqxz: have you seen this before (h264_qsv fails randomly with MFX_ERR_DEVICE_FAILED on windows)?
[23:17:10 CEST] <jkqxz> I've seen that bug, but I've never seen it at all myself. I think it must be somehow restricted to only some subset of devices, but I've no idea how.
[23:17:50 CEST] <tmm1> i have a windows machine that never hits it, but i just got access to another one which is hitting it very often
[23:18:13 CEST] <tmm1> i can run the same command over and over and it fails almost half the time
[23:19:56 CEST] <jkqxz> Maybe write in the bug exactly what those machines are and the driver versions?
[23:21:09 CEST] <cone-950> ffmpeg 03Carl Eugen Hoyos 07master:9ba9c08aab9d: fate: Add a test for latm-in-dvb auto-detection, ticket #6657.
[23:22:55 CEST] <tmm1> sure, i'll add more details to the ticket
[23:23:29 CEST] <tmm1> trying to think of things i can try changing in qsvenc.c now that i'm able to repro consistently
[23:25:17 CEST] <BtbN> wm4, what's wrong with the hwaccel class logic? It looks fine to me?
[23:29:50 CEST] <cone-950> ffmpeg 03Carl Eugen Hoyos 07master:4590d073ccdc: lavf/mxfdec: Search all components of material track for source package.
[00:00:00 CEST] --- Wed Oct 4 2017
1
0
[00:00:52 CEST] <JEEB> dunno about genius, but he is clearly capable of getting things done/started
[00:01:21 CEST] <Dianaxxyyzz> if we had 100 mans like Fabrice Bellard I think sotware was like in StarTreck
[00:01:25 CEST] <durandal_1707> lookat code qualuty
[00:01:49 CEST] <JEEB> ^ as good as this English
[00:01:58 CEST] <furq> i've never looked at his code
[00:01:58 CEST] <durandal_1707> lol
[00:02:07 CEST] <furq> i'm going to be really upset if it turns out he's one of those guys who uses 1-space indentation
[00:03:34 CEST] <Dianaxxyyzz> :)
[00:04:06 CEST] <Dianaxxyyzz> does a man like Fabrice have a personal life?
[00:04:15 CEST] <Dianaxxyyzz> time for kids , wife , a dog
[00:04:16 CEST] <Dianaxxyyzz> ?
[00:04:27 CEST] <Dianaxxyyzz> or just time for coding ?
[00:04:28 CEST] <Dianaxxyyzz> :)
[00:05:02 CEST] <durandal_1707> no at all, he is on irc stalking random people all the time
[00:05:53 CEST] <JEEB> furq: indentation usually tends to be the least of the issues
[00:06:04 CEST] <JEEB> something like clang's style nazi app can generally fix that
[00:06:28 CEST] <JEEB> the problem is when you've got 1990s optimization techniques and "totally clear to me" stuff :D
[00:07:50 CEST] <JEEB> furq: when I was doing my google summer of code submission, this is what I was requested to make out of "align to 32bit" http://git.videolan.org/?p=ffmpeg.git;a=blob;f=libavcodec/utvideoenc.c;h=84…
[00:08:00 CEST] <JEEB> this is what I consider the primary issue with readability
[00:08:03 CEST] <Dianaxxyyzz> i made some coding about ffmpeg and rtmpdump , but just because I needed to do
[00:08:05 CEST] <JEEB> (at least I was let to have the comment there)
[00:08:13 CEST] <Dianaxxyyzz> I found complicated to code for them
[00:09:14 CEST] <Dianaxxyyzz> first time i head about ffmpeg i said :wtf we need it for
[00:09:20 CEST] <Dianaxxyyzz> and now it looks a genious tool
[00:09:50 CEST] <JEEB> FFmpeg's libraries are most likely on your TV, and are powering pretty much all video services on the internets
[00:10:07 CEST] <Dianaxxyyzz> yes
[00:10:15 CEST] <Dianaxxyyzz> audo video streaming is the future
[00:10:27 CEST] <durandal_1707> lies, its gstreamer
[00:10:46 CEST] <Dianaxxyyzz> i gund gstreamer too buggy
[00:10:55 CEST] <Dianaxxyyzz> maybe will be good for future
[00:11:11 CEST] <Dianaxxyyzz> but for my needs in 2015 was not goot , just ffmpeg was
[00:11:37 CEST] <Dianaxxyyzz> i had a video streaming palform to android tv boxes
[00:11:57 CEST] <Dianaxxyyzz> i found ffmpeg magnific
[00:12:02 CEST] <Dianaxxyyzz> and wowza too
[00:12:12 CEST] <Dianaxxyyzz> ffmpeg is not good like a steaming server
[00:12:51 CEST] <Dianaxxyyzz> but can be used in way you dnt care about that
[00:13:30 CEST] <JEEB> you can write a media server utilizing FFmpeg's libraries if you want to, but yes - ffmpeg.c is not a media server
[00:14:00 CEST] <Dianaxxyyzz> ffserver is problem
[00:14:04 CEST] <Dianaxxyyzz> ffmpeg is good
[00:14:24 CEST] <Dianaxxyyzz> but maybe ffserver was not improved for too long time
[00:14:45 CEST] <BtbN> ffserver is dead
[00:14:55 CEST] <Dianaxxyyzz> ..that must be the reason
[00:15:21 CEST] <BtbN> A lot of people want it to be gone. But others fight for it, but also don't want to maintain it.
[00:15:39 CEST] <Dianaxxyyzz> i see
[00:16:00 CEST] <JEEB> also ffserver was this weird mutation of not really media server and not really a transcoder
[00:16:06 CEST] <Dianaxxyyzz> is first time i come to this channel , never talked to somebody about ffmpeg , i just write my personal experience
[00:16:08 CEST] <furq> and not really good
[00:16:10 CEST] <JEEB> and it utilized a lot of the internals (and still does as far as I can tell)
[00:18:15 CEST] <Dianaxxyyzz> yes
[00:18:26 CEST] <Dianaxxyyzz> i cound not use ffserver for nothing
[00:18:35 CEST] <Dianaxxyyzz> even if it worked for searming some movies
[00:18:43 CEST] <Dianaxxyyzz> some did not straemed good
[00:18:47 CEST] <Dianaxxyyzz> and a lot of crashes
[00:18:59 CEST] <Dianaxxyyzz> but waza was good
[00:19:10 CEST] <rabbe> ffplay was not included in the static builds.. is that obsolete?
[00:19:11 CEST] <Dianaxxyyzz> and lol wowza worked nice with ffmpeg
[00:19:39 CEST] <Dianaxxyyzz> ffpay is like a demo of ffmpeg playing videos
[00:19:42 CEST] <Dianaxxyyzz> from what i knowws
[00:19:46 CEST] <durandal_1707> rabbe: no, ffplay is not obsolete
[00:21:50 CEST] <furq> ffplay does exactly what it's supposed to do
[00:21:52 CEST] <furq> which is not much
[00:22:32 CEST] <Dianaxxyyzz> for me was ok the sourec of ffplay , helped me to undestand the code better
[00:22:38 CEST] <Dianaxxyyzz> demuxing etc
[00:22:57 CEST] <Dianaxxyyzz> of course i needed a stripped down version of ffpay
[00:23:31 CEST] <durandal_1707> ffpay - i need that too
[00:24:01 CEST] <Dianaxxyyzz> the problem with ffpay and ffmpeg is that you can not find inside the source some coments about what code do for some "beginers"
[00:24:17 CEST] <Dianaxxyyzz> i searched all internet to try to undestand what is what and what it really do
[00:24:27 CEST] <durandal_1707> ffplay != ffpay
[00:24:37 CEST] <Dianaxxyyzz> but after i got familiar with code was better
[00:25:29 CEST] <Dianaxxyyzz> is god we still ahve the console out of erros ,we cehck the errors text to undetstand what he do
[00:25:30 CEST] <Dianaxxyyzz> :))
[00:25:45 CEST] <Dianaxxyyzz> We undestand what he failed to do :))
[00:25:57 CEST] <Dianaxxyyzz> from errors text
[00:30:53 CEST] <Dianaxxyyzz> all pppls from thsi chat develop for ffmpeg ?
[00:30:54 CEST] <Dianaxxyyzz> :)
[00:31:34 CEST] <vans163> does framerate have a big effect on bandwith?
[00:31:55 CEST] <vans163> 30fps vs 60fps, is not double bandwith is it?
[00:32:07 CEST] <Dianaxxyyzz> it is
[00:32:24 CEST] <Dianaxxyyzz> more fps mode band for streaming needed
[00:32:32 CEST] <Dianaxxyyzz> but
[00:32:38 CEST] <Dianaxxyyzz> depends what you do
[00:32:51 CEST] <Dianaxxyyzz> if you have a live camera
[00:33:08 CEST] <Dianaxxyyzz> is you want to improve streaming , you must lower the fps of camera
[00:33:19 CEST] <Dianaxxyyzz> if you have a mp4 taht you want to stream
[00:33:26 CEST] <Dianaxxyyzz> you must lower the quality
[00:34:05 CEST] <Dianaxxyyzz> depends what you do
[00:34:38 CEST] <Dianaxxyyzz> if you record at 30 fps you can have 1 minute of video = 50 mb
[00:34:48 CEST] <Dianaxxyyzz> if you record at 60 fps you can have 1 minute of video = 80 mb
[00:34:56 CEST] <Dianaxxyyzz> must not exacly be doubled
[00:34:59 CEST] <Dianaxxyyzz> but is increased lol
[00:35:25 CEST] <Dianaxxyyzz> it also depends if camera fims movieng objects or not
[00:36:04 CEST] <Dianaxxyyzz> if you compress on the fly the camera stream , and no objects move , or is night , the band will be lower than if you record and compress a day movie
[00:38:17 CEST] <furq> vans163: depends on a bunch of things, but if you're stuck with baseline it'll likely be a big bump if you double the framerate
[00:38:36 CEST] <vans163> thanks, i see yes stuck baseline likely
[00:38:59 CEST] <ZEEX> capturing a desktop window with GDI
[00:38:59 CEST] <ZEEX> have to supply the name of the window to the -i parameter
[00:38:59 CEST] <ZEEX> ffmpeg -f gdigrab -i title="theWindow" -framerate ...
[00:38:59 CEST] <ZEEX> is there a way to use wildcard or Regular Expressions
[00:38:59 CEST] <ZEEX> for window name ?
[00:39:05 CEST] <furq> if you were using like 16 bframes on low-motion video then you can get much better results
[00:39:36 CEST] <furq> but that's probably completely out of the question because of latency
[00:41:14 CEST] <Dianaxxyyzz> ZEEX: yes it is a way
[00:41:30 CEST] <vans163> furq: yes out, in the close future it maybe possible to stream VP9
[00:41:45 CEST] <vans163> as long as the hardware decoder supportsit
[00:41:54 CEST] <vans163> VP9 cpu decoding is insanely expensive
[00:41:58 CEST] <ZEEX> :)
[00:41:59 CEST] <Dianaxxyyzz> ZEEX: put the ffmpeg command in a bash script and execute any expression and ffmpeg from that too and use title="$value"
[00:42:02 CEST] <Dianaxxyyzz> bla bla
[00:42:35 CEST] <ZEEX> wildcards would be fine... ?/*...
[00:42:36 CEST] <furq> vans163: decoding's not that slow
[00:42:40 CEST] <Dianaxxyyzz> man
[00:42:45 CEST] <furq> i'm pretty sure ffvp9 is faster than ffh264
[00:43:02 CEST] <furq> a lot of browsers still use libvpx's decoder though, which sucks
[00:43:29 CEST] <ZEEX> expanded wildcard funcionality like *chrome* would be great...
[00:43:36 CEST] <Dianaxxyyzz> ZEEX: just do this inside a script.sh i have this code : $val= search for my windows , and then in same script ffmpeg -f gdigrab -i title="$val" -framerate ...
[00:43:44 CEST] <Dianaxxyyzz> i gived you the ideea not working code
[00:43:52 CEST] <vans163> furq: wow really? i remember watching 4k youtube videos, nightmare on media boxes
[00:44:07 CEST] <vans163> maybe it wasnt vp9.. but vp8 or h264 in 4k?
[00:44:17 CEST] <Dianaxxyyzz> h264 k4
[00:44:20 CEST] <Dianaxxyyzz> 4k
[00:44:25 CEST] <furq> i don't think you'd ever get served vp8 unless you were on windows xp
[00:44:44 CEST] <furq> maybe h264 if you showed up just after the video was uploaded
[00:44:49 CEST] <ZEEX> this is for Windows... no BASH...
[00:45:01 CEST] <Dianaxxyyzz> android play mp4 container and h264 codecs very good , so all are mp4 h264
[00:45:09 CEST] <vans163> furq: thats interesting i should give vp9 a try then as chrome supports it
[00:45:18 CEST] <furq> chrome on *nix uses the ffmpeg decoder afaik
[00:45:19 CEST] <Dianaxxyyzz> ZEEX: use a .bat
[00:45:29 CEST] <vans163> i didnt realize the cpu usage of the software decoder would be par/lower then h264 cpu decoder (openh264)
[00:45:37 CEST] <vans163> not sure what chrome uses for vp9 probably ffmepg
[00:45:43 CEST] <Dianaxxyyzz> ZEEX: or write a prigram that modify on the fly the ffmpeg parameters
[00:45:45 CEST] <furq> but yeah obviously on a phone or something vp9 is likely to suck unless it's very new
[00:45:46 CEST] <ZEEX> yep... but the $thing do not work... as you may know...
[00:46:22 CEST] <Dianaxxyyzz> write a program taht search for windows name and put that for ffmpeg param and execute it
[00:49:59 CEST] <lightslategray> Hi. "ffmpeg -i v.webm -vf scale=100:100 -i a.webm outp.webm" fails with "Option vf (set video filters) cannot be applied to input url a.webm ..." what is correct syntax?
[00:51:49 CEST] <Dianaxxyyzz> ffmpeg -i v.webm -i a.webm outp.webm -vf scale=100:100
[00:52:30 CEST] <Dianaxxyyzz> if you put "-vf scale=100:100 " before any "-i" , you apply video filtering to that "-i" , and you put it before audio
[00:52:47 CEST] <Dianaxxyyzz> so it try to apply video filters to your audio input
[00:53:06 CEST] <Dianaxxyyzz> jo just move "vf scale=100:100 " after "-i"
[00:53:47 CEST] <Dianaxxyyzz> ffmpeg -i v.webm -i a.webm vf scale=100:100 outp.webm
[00:53:51 CEST] <Dianaxxyyzz> try that
[00:53:59 CEST] <Dianaxxyyzz> bout you di dnot specify any codecs
[00:54:23 CEST] <lightslategray> Dianaxxyyzz: it works. thank you
[00:54:30 CEST] <Dianaxxyyzz> ok
[00:54:33 CEST] <Dianaxxyyzz> np
[00:56:02 CEST] <Dianaxxyyzz> ffmpeg -i v.webm -i a.webm -vf scale=100:100 outp.webm (i forgot a - )
[00:56:20 CEST] <Dianaxxyyzz> any way the ideea is if you put any filters before "-i" it will aply to taht input
[00:56:33 CEST] <lightslategray> Dianaxxyyzz: yes, I added the hyphen
[00:58:18 CEST] <lightslategray> Dianaxxyyzz: do I understand correctly that -fv is an _output_ processing thing? Or relates to inputs? Or it just king of global?
[00:58:18 CEST] <Dianaxxyyzz> lightslategray: great! :) ffmpeg is so complicated it can not be understand in one day , so just dnt worry sometime you will knwo all !
[00:58:19 CEST] <Dianaxxyyzz> :)
[00:59:00 CEST] <lightslategray> "kind of global", correction
[00:59:24 CEST] <Dianaxxyyzz> so
[00:59:29 CEST] <Dianaxxyyzz> if I write
[00:59:59 CEST] <Dianaxxyyzz> ffmpeg -vf scale=100:100 -i v.mp4 , it try to aply filter before it outputs
[01:00:04 CEST] <Dianaxxyyzz> for xample
[01:00:07 CEST] <Dianaxxyyzz> if i do
[01:01:00 CEST] <Dianaxxyyzz> ffmpeg -read_fps 10 -i v.mp4 it will read just 10 fps per second from input video , (-read_fps do not exists just you do undestand)
[01:01:11 CEST] <Dianaxxyyzz> but if you do it after -i
[01:01:41 CEST] <Dianaxxyyzz> ffmpeg -i v.mp4 -vf scale=100:100 -o output-scalled.mp4 , then it will aply filter to output video
[01:01:53 CEST] <Dianaxxyyzz> -i just specify a input
[01:02:03 CEST] <Dianaxxyyzz> -i a.mp4 , specify input is a.mp4
[01:02:33 CEST] <Dianaxxyyzz> but if you add anything before -i , it try to aply it to the input whyle it read the input ,
[01:02:49 CEST] <Dianaxxyyzz> and filters can not be aplyit to input because require first a demuxing etc
[01:03:11 CEST] <Dianaxxyyzz> just the output can be a filtered video , so it must be after -i
[01:04:22 CEST] <Dianaxxyyzz> ffmpeg -re -f lavfi -i aevalsrc="sin(400*2*PI*t)" -ar 8000 -f mulaw -f rtp rtp://127.0.0.1:1234
[01:04:38 CEST] <Dianaxxyyzz> here aply -re and format of video to -i
[01:05:00 CEST] <Dianaxxyyzz> it tells ffmpeg to (-re) read at native speed and (-f lavfi) format is lavfi
[01:05:02 CEST] <lightslategray> Dianaxxyyzz: so it relates to what it precedes, and in case of outp.webm it relates to output (where -o was omitted), and it formally can be applied to input also (if precedes -i ), but this just not works?
[01:05:35 CEST] <Dianaxxyyzz> -re -f lavfi can be put before -i
[01:05:47 CEST] <Dianaxxyyzz> it tells ffmpeg to read at native speed and the input format is lavfi
[01:05:53 CEST] <Dianaxxyyzz> but this do not inpact output
[01:06:21 CEST] <Dianaxxyyzz> ffmpeg -re -f mpegts -i a.ts -o x.flv
[01:06:37 CEST] <Dianaxxyyzz> i tell ffmpeg to read input at native speed and inut format is mpegts
[01:06:48 CEST] <lightslategray> Dianaxxyyzz: now I got it. Thank you very much, Dianaxxyyzz!
[01:06:49 CEST] <Dianaxxyyzz> but output will be a flv :)
[01:07:09 CEST] <Dianaxxyyzz> great!
[01:07:10 CEST] <Dianaxxyyzz> :)
[01:07:12 CEST] <Dianaxxyyzz> np
[01:09:02 CEST] <Dianaxxyyzz> normaly you do not need anything before -i
[01:09:03 CEST] <Dianaxxyyzz> :)
[01:10:09 CEST] <Dianaxxyyzz> but in some complicates situations you need to put something before -i , for exampel when ffmpeg do not know what the format input file is , you put before -i the file format option for example (-f mpegts -i a.ts_
[01:13:47 CEST] <lightslategray> Dianaxxyyzz: got it, like when it can't figure it itself, eg when reading weird file or from stdin
[01:13:56 CEST] <Dianaxxyyzz> yes
[01:14:04 CEST] <Dianaxxyyzz> i needed to put before -i
[01:14:14 CEST] <Dianaxxyyzz> when i read input from a socket
[01:14:27 CEST] <Dianaxxyyzz> it did not know what data format comes
[01:14:34 CEST] <Dianaxxyyzz> or from you read raw data
[01:14:36 CEST] <Dianaxxyyzz> of images
[01:14:41 CEST] <Dianaxxyyzz> it do not knwo pix format
[01:14:46 CEST] <Dianaxxyyzz> so you have to tell him
[01:15:24 CEST] <Dianaxxyyzz> you someday will have a file data.raw
[01:15:40 CEST] <Dianaxxyyzz> that contains a raw video
[01:15:52 CEST] <Dianaxxyyzz> so you must specify teh pix format and yuv
[01:16:09 CEST] <Dianaxxyyzz> cause it is a raw file it does nto have a medatada
[01:16:15 CEST] <Dianaxxyyzz> it do not knwo what is inside file
[01:17:20 CEST] <Dianaxxyyzz> it must to know what file contains so he to knwo what demuxes he use
[01:18:01 CEST] <lightslategray> Dianaxxyyzz: seems ffmpeg is a great and extremely versatile tool. thanks for your explanations
[01:18:17 CEST] <Dianaxxyyzz> and in some special cases more often when you deal with sockets or raw data , he can not read metadata of file , cause you dnt have a medatata like in a mp4 so you must put someting before -i
[01:18:31 CEST] <Dianaxxyyzz> np
[01:20:07 CEST] <Dianaxxyyzz> that had to be writed somehwre "do not put anything before -i ,you need in just special cases" , taht wold same me a lot of time too
[01:20:08 CEST] <Dianaxxyyzz> :)
[01:20:23 CEST] <Dianaxxyyzz> *save
[01:26:40 CEST] <jasan> hello everyone
[01:26:47 CEST] <kevev1> Hello everyone
[01:27:06 CEST] <kevev1> I am seeking some help with an hls live stream where the audio is slowly going out of sync.
[01:27:15 CEST] <Guest39397> i'm stumpted trying to change aspect ratio without stretching video
[01:27:18 CEST] <kevev1> I am attempting to use ffprobe to figure out the issue, but am confused.
[01:27:22 CEST] <kevev1> Anyone willing to help?
[01:27:24 CEST] <Guest39397> ffmpeg -i "a.mov" -i "b.mp4" -filter_complex "[0:v]setsar=sar=${SAR}[a]; [1:v]setsar=sar=${SAR}[b]; [a][0:a] [b][1:a] concat=n=2:v=1:a=1 [v] [a]" -map "[v]" -map "[a]" -preset veryfast -crf 18 "merged.mp4" using the above code I am able to successfully merge a.mov(1920x816) with b.mov(1920x816). However, Youtube end screens require video to be 16:9 aspect ratio. Thus I tried scale filter and setting SAR to 16:9. however this lead
[01:27:56 CEST] <Guest39397> the 816 height video to fit the 1080 height.
[01:28:35 CEST] <Guest39397> using the above code I am able to successfully merge a.mov(1920x816) with b.mov(1920x816). However, Youtube end screens require video to be 16:9 aspect ratio.
[01:28:46 CEST] <Guest39397> Thus I tried scale filter and setting SAR to 16:9. however this leads to the output video stretching to fit the 16:9 ratio
[01:29:03 CEST] <furq> !filter pad @Guest39397
[01:29:03 CEST] <nfobot> Guest39397: http://ffmpeg.org/ffmpeg-filters.html#pad-1
[01:29:06 CEST] <Guest39397> Essentially The remaining vertical space should just be black without stretching the 816 height video to fit the 1080 height.
[01:29:23 CEST] <Guest39397> filter pad
[01:29:34 CEST] <Guest39397> ?
[01:29:40 CEST] <redrabbit> is there a windows software to transcode on demand so i can access my media library from example, my phone
[01:29:52 CEST] <redrabbit> that uses ffmpeg of course
[01:30:37 CEST] <redrabbit> ideally would output a folder that is the mirror of my media library but when i open the files it should serve me a transcoded file
[01:30:58 CEST] <Guest39397> furq where would i add the pad in my code
[01:31:13 CEST] <furq> replace both setsars with pad
[01:31:59 CEST] <furq> or just get rid of them and add pad after concat
[01:32:18 CEST] <furq> also are you sure youtube requires 16:9
[01:32:53 CEST] <Guest39397> so instead of this setsar=sar=${SAR} --> pad=1920:1080:black
[01:34:03 CEST] <Guest39397> yes I received an error while trying to add endscreens on non 16:9 video
[01:35:36 CEST] <kevev1> the source stream is being forwarded as the main stream. This one is being pushed via ffmpeg as an rtmp stream. The nginx server is forwarding this main stream and transcoding. The transcodes streams are beginning to have audio drift slowly.
[01:38:05 CEST] <kevev1> exec_push /root/bin/ffmpeg -r 30 -i rtmp://127.0.0.1:1935/$app/$name -async 1 -vsync -1 -c:v libx264 -c:a aac -b:v 256k -b:a 32k -vf "scale=480:trunc(ow/a/2)*2" -tune zerolatency -preset veryfast -crf 23 -f flv rtmp://127.0.0.1:1935/show/$name_low -c:v libx264 -c:a aac -b:v 768k -b:a 64k -vf "scale=720:trunc(ow/a/2)*2" -tune zerolatency -preset veryfast -crf 23 -f flv rtmp://127.0.0.1:1935/show/$name_mid -c copy -f flv rtmp://127.0.0.1
[01:38:16 CEST] <kevev1> That's the command I use.
[01:38:30 CEST] <kevev1> I can't figure out why the audio drifts out of sync. Driving me nuts.
[01:41:02 CEST] <redrabbit> -async 1
[01:41:40 CEST] <redrabbit> nvm actually idk
[01:41:50 CEST] <kevev1> redrabbit: I already have that.
[01:42:07 CEST] <kevev1> Or do I need to put it for each stream in that command?
[01:45:53 CEST] <kevev1> ./ffmpeg -version ffmpeg version N-86920-g1193301 Copyright (c) 2000-2017 the FFmpeg developers built with gcc 5.4.0 (Ubuntu 5.4.0-6ubuntu1~16.04.4) 20160609 configuration: --prefix=/root/ffmpeg_build --pkg-config-flags=--static --extra-cflags=-I/root/ffmpeg_build/include --extra-ldflags=-L/root/ffmpeg_build/lib --bindir=/root/bin --enable-gpl --enable-libass --enable-libfdk-aac --enable-libfreetype --enable-libmp3lame --enable-libx264
[01:49:25 CEST] <kevev1> Anyone know how I can use ffprobe to check the time stamps?
[01:50:03 CEST] <JEEB> -show_streams -show_frames -of json
[01:50:10 CEST] <JEEB> and then parse the json with python or something
[01:50:58 CEST] <kevev1> ffprobe -show_streams -show_frames -of json -i http://host:port
[01:51:03 CEST] <kevev1> Is that correct?
[01:51:40 CEST] <JEEB> oh, live stuff?
[01:51:48 CEST] <JEEB> also no -i needed for ffprobe
[01:52:07 CEST] <kevev1> yes live stuff
[01:52:08 CEST] <kevev1> m3u8
[01:52:19 CEST] <JEEB> possible but can be funky
[01:52:28 CEST] <kevev1> arg
[01:52:28 CEST] <kevev1> :p
[01:52:41 CEST] <JEEB> ffmpeg -debugts -v debug -i thing -f null -
[01:52:47 CEST] <JEEB> is probably more useful, maybe
[01:52:49 CEST] <kevev1> JEBB trying to figure out why audio drifts out of sync when transcoding live stream. Not sure where to start.
[01:52:56 CEST] <Guest39397> furq I tried to use pad="ih*16/9:ih:(ow-iw)/2:(oh-ih)/2"
[01:53:15 CEST] <Guest39397> The term 'ow-iw' is not recognized as the name of a cmdlet
[01:53:23 CEST] <Guest39397> i get the error: The term 'ow-iw' is not recognized as the name of a cmdlet
[01:54:39 CEST] <furq> sounds like powershell is interpreting the parens
[01:54:43 CEST] <furq> try escaping them i guess
[01:54:46 CEST] <kevev1> Unrecognized option 'debugts'. Error splitting the argument list: Option not found
[01:55:57 CEST] <kevev1> -debug_ts :D
[01:58:59 CEST] <kevev1> JEBB not sure how to decipher this stuff :P
[02:00:46 CEST] <kevev1> cur_dts is invalid (this is harmless if it occurs once at the start per stream)
[02:00:53 CEST] <kevev1> I see this a bunch. Is that bad?
[02:06:17 CEST] <kevev1> I rejoined as kevev :)
[03:41:25 CEST] <kevev_1> I'm back
[03:41:44 CEST] <kevev_1> I am still working on the audio sync issue.
[03:42:01 CEST] <kevev_1> hls live stream transcode. Audio drifts out of sync over time.
[03:42:20 CEST] <kevev_1> Have tried -async 1
[10:01:44 CEST] <Nacht> Anyone ever experianced audio sync problems when transmuxing TS to MP4 ? If my automatic process does it at night, I sometimes get shifts in audio sync, but if I re-create it during the day with the exact same source files, it goes correctly
[10:47:58 CEST] <dragmore88> hi, i have some files where the AC3 track is generating some decoding errors on my stb. Is there a way to use FFPROBE to fully decode the whole file and log debug info to a file ?
[11:53:52 CEST] <feliwir> anyone can tell me how to reset a video stream to the beginning?
[11:54:20 CEST] <feliwir> av_seek_frame(format_ctx, 0, 0, AVSEEK_FLAG_BYTE); not working
[12:02:54 CEST] <Wodjin> Hello everyone, anyone has a guess on how to loop an audio track into a video using a complex filter?
[12:14:04 CEST] <feliwir> why does that not work: https://gist.github.com/feliwir/94eba85944d22d94fdf7c1fb7a8eca5c#file-video… ?
[12:14:47 CEST] <feliwir> i reset my avio context and my format_ctx :(
[12:21:27 CEST] <feliwir> anyone?
[12:33:31 CEST] <feliwir> avcodec_flush_buffers doesn't help either
[14:07:05 CEST] <rom1v> hi
[14:09:11 CEST] <rom1v> suppose I have H.264 NALS stored in-memory (in a huge char[]). Is there a method similar to avformat_open_input() that may open the content from the buffer instead of a char* url?
[14:16:47 CEST] <rom1v> ok, I get it: call avio_alloc_context() and set the result in the AVFormatContext->pb field
[14:58:22 CEST] <dystopia> what settings do i need to add to my line to get "High 4:4:4 Predictive@L4" in the output video?
[14:58:41 CEST] <dystopia> i tried "-pix_fmt yuv444p" but that didn't seem to work
[15:10:15 CEST] <relaxed_> dystopia: pastebin your command and output
[15:20:11 CEST] <dystopia> i worked it out relaxed_
[15:20:44 CEST] <dystopia> i think having it before -vcodec libx264 in line caused the issue, placing it after that worked
[16:43:20 CEST] <YokoBR> hi folks
[16:43:28 CEST] <YokoBR> which audio codec is compatible with flv?
[16:47:41 CEST] <Nacht> In short, MP3 and AAC. Long version: http://download.macromedia.com/f4v/video_file_format_spec_v10_1.pdf#page=76
[16:50:10 CEST] <YokoBR> I'm getting this error: FFMPEG:WriteN, RTMP send error 32 (42 bytes)
[16:50:17 CEST] <YokoBR> does anyone knows what it means?
[17:06:27 CEST] <YokoBR> please, could someone help me to improve this? https://gist.github.com/jersobh/e3b733d5dff3599bb73b629d10608d01
[17:22:29 CEST] <arpu> hi how can i use ffmpeg as a video live stream mixer ?
[17:22:47 CEST] <arpu> the idea i had is to use a named pipe fifo for input and output
[17:23:28 CEST] <arpu> how can i connect the pipe with ffmpeg and write a black frame if no conect is coming from the input pipe (ffmpeg should not get closed on empty input pipe)
[17:23:39 CEST] <arpu> hopefully the question is clear :/
[17:24:16 CEST] <JEEB> I would rather do that with the API
[17:24:49 CEST] <JEEB> because with multiple inputs I bet it wouldn't be able to discern if there was something there or not and would just wait for input
[17:24:54 CEST] <JEEB> possibly jamming the flow
[17:25:01 CEST] <YokoBR> how can I put two outputs? '-c' 'copy' isn't working
[17:26:26 CEST] <alexpigment> YokoBR: https://trac.ffmpeg.org/wiki/Creating%20multiple%20outputs
[17:27:46 CEST] <arpu> JEEB, what do you mean with the API ?
[17:28:05 CEST] <JEEB> libav{format,codec,filter}
[17:28:20 CEST] <JEEB> the stuff that FFmpeg provides, and ffmpeg.c is one of the clients using them
[17:28:25 CEST] <arpu> so to make my own ffmpeg client
[17:28:26 CEST] <YokoBR> alexpigment: I've read that. Mine is now '-f', 'flv', 'rtmp://live-api-a.facebook.com:80/rtmp/mydata'. But I wan't to send to another rtmp server simultaneously
[17:28:45 CEST] <YokoBR> the '-c copy' option gives me an error
[17:28:49 CEST] <arpu> JEEB, hm i think this is not needed
[17:29:00 CEST] <JEEB> well godspeed then
[17:29:06 CEST] <arpu> :>
[17:29:16 CEST] <arpu> but i do not know how
[17:29:20 CEST] <alexpigment> YokoBR: what is the error?
[17:39:09 CEST] <YokoBR> alexpigment: https://pastebin.com/7YKLhfcF
[17:39:48 CEST] <alexpigment> i don't think flv supports vp8/opus
[17:40:25 CEST] <YokoBR> but if I use only 1 output it works
[17:40:29 CEST] <alexpigment> i believe what's happening here is that you're copying the *original* stream rather than the re-encoded stream
[17:41:18 CEST] <alexpigment> you're trying to copy streams 1:0 and 1:1 but you're actually copying 0:0 (vp8) and 0:1 (opus)
[17:43:47 CEST] <alexpigment> now this is where my knowledge gets kinda spotty, but I'm not sure if you need to be doing a separate ffmpeg process to copy from the output, or if you can use the -map options to copy the particular streams from the output
[17:44:00 CEST] <alexpigment> someone else here would know better
[17:46:29 CEST] <thebombzen> I'm pretty certain if you want to use ffmpeg.c to mux the same encoded stream twice, you have to split it with a separate process
[17:47:12 CEST] <thebombzen> something like: ffmpeg -i inputs OPTIONS -f matroska - | ffmpeg -f matroska -i - -c copy out1.flv -c copy out2.flv
[17:56:05 CEST] <YokoBR> mine now is https://gist.github.com/jersobh/7e944edc39324496cb2d08440d59d1cf
[17:56:10 CEST] <YokoBR> but still doesn't work
[18:05:08 CEST] <YokoBR> now I'm trying with tee
[18:16:52 CEST] <thebombzen> have you considered perhaps following my advice
[18:26:35 CEST] <furq> thebombzen: the tee muxer will totally do that
[18:26:39 CEST] <furq> that's the whole point
[18:26:54 CEST] <thebombzen> furq: when was the tee muxer added?
[18:26:59 CEST] <thebombzen> I haven't heard of it :O
[18:27:00 CEST] <furq> ages ago
[18:27:03 CEST] <thebombzen> wow
[18:27:04 CEST] <thebombzen> okay
[18:27:05 CEST] <furq> !muxer tee
[18:27:05 CEST] <nfobot> furq: http://ffmpeg.org/ffmpeg-formats.html#tee-1
[18:27:49 CEST] <thebombzen> huh, that works
[18:27:57 CEST] <thebombzen> I thought they meant /usr/bin/tee :O
[18:27:59 CEST] <thebombzen> which wouldn't
[18:38:55 CEST] <Fenrirthviti> Hmm, anyone heard of nvenc failing to start with ffmpeg while premiere is open? Just looking to gather some facts or see if anyone on the ffmpeg side has looked into it
[18:39:10 CEST] <JEEB> not many have premiere open here most likely :D
[18:47:08 CEST] <relaxed> Fenrirthviti: I think so, doesn't premiere use cuda?
[18:49:13 CEST] <relaxed> pretty sure someone in here said you need a quadro card for multiple instances
[18:52:41 CEST] <jkqxz> Yeah, you're limited to two instances on cheap cards. If another program is using both of those then making another just doesn't work.
[18:54:53 CEST] <Hopper_> furq: Thanks for all your help recently, it looks like I've got my video feed working! https://imgur.com/a/hgoXt
[18:55:34 CEST] <Hopper_> I've got data updating for a .txt bottom left every frame, and a frame counter on the right.
[18:55:55 CEST] <Hopper_> And just imagine the 2 720 video streams hstacked above that.
[18:56:10 CEST] <Hopper_> You can see the bottoms of the frames.
[18:56:19 CEST] <Hopper_> Seems stable, running overnight.
[19:05:49 CEST] <Fenrirthviti> relaxed: It does, but this is a recent issue
[19:06:14 CEST] <Fenrirthviti> and it's only ffmpeg that has the problem, apparently.
[19:06:28 CEST] <Fenrirthviti> applications that have "native" nvenc implementations aren't affected
[19:06:32 CEST] <Fenrirthviti> shadowplay still works, etc.
[19:07:25 CEST] <Fenrirthviti> so I'm not convinced it's an nvenc/driver problem.
[19:07:53 CEST] <Fenrirthviti> The error being returned by ffmpeg is: OpenEncodeSessionEx failed: out of memory (10)
[19:08:01 CEST] <Fenrirthviti> which is just nonsense and a red herring here
[19:08:40 CEST] <JEEB> well it is the darn error that was returned
[19:08:53 CEST] <JEEB> the fact that it is not representative of reality is a separate thing
[19:09:12 CEST] <JEEB> unless the strings for the errors are now incorrect, that's the only thing possibly
[19:09:24 CEST] <JEEB> because it prints out the number as well in case that goes wrong
[19:13:51 CEST] <pgorley> hi, configure seems to still set _FILE_OFFSET_BITS=64 when i'm cross compiling for armv7 32 bits on my x64 machine
[19:16:54 CEST] <jkqxz> pgorley: Yes. Why would you ever want it not to?
[19:17:29 CEST] <pgorley> jkqxz: ndk 15+ makes it no longer compile
[19:17:38 CEST] <pgorley> https://github.com/android-ndk/ndk/issues/449
[19:18:15 CEST] <pgorley> _FILE_OFFSET_BITS=64 was a noop on android before ndk 15
[19:19:30 CEST] <JEEB> pgorley: I thought FFmpeg already had those workarounds for android
[19:19:38 CEST] <JEEB> since rcombs poked me towards them in mpv
[19:19:54 CEST] <JEEB> and I can build FFmpeg and mpv just fine for ARMv7 with NDK R15C
[19:20:25 CEST] <JEEB> "--arch=armv7 --cpu=armv7-a --enable-cross-compile --target-os=android --cross-prefix=arm-linux-androideabi-"
[19:20:30 CEST] <JEEB> this being the primary part :P
[19:20:59 CEST] <JEEB> and since they switched to clang, "--cc=arm-linux-androideabi-clang"
[19:21:13 CEST] <JEEB> since I cannot tell the configure that base CC name is "clang" and not "gcc"
[19:21:16 CEST] <JEEB> (Ž4@)
[19:21:23 CEST] <JEEB> or at least I haven't found the option
[19:21:30 CEST] <JEEB> otherwise the cross-prefix is enough
[19:22:40 CEST] <pgorley> if you still have those workarounds handy, could you link me to them?
[19:22:50 CEST] <JEEB> I mean, no. I'm building vanilla
[19:23:00 CEST] <JEEB> the workarounds/fixes are *in* FFmpeg proper
[19:23:20 CEST] <JEEB> so if it doesn't build for you, you've got something really old
[19:23:34 CEST] <pgorley> 3.3.3
[19:23:45 CEST] <pgorley> i'm looking into bumping it further up though
[19:23:53 CEST] <JEEB> dunno, but likely I've built master from around that during 2016
[19:24:00 CEST] <JEEB> although NDK R15C is newer
[19:24:30 CEST] <JEEB> I can vouch that with an API level 21 (no 64bit off_t) standalone toolchain from NDK R15C current master builds JustFine
[19:24:33 CEST] <JEEB> :P
[19:24:46 CEST] <JEEB> with the toolchain in PATH and those parameters
[19:24:57 CEST] <JEEB> (I have more to enable jni/mediacodec etc, but those are the base cross compilation parameters)
[19:26:09 CEST] <JEEB> pgorley: also I then added the same workarounds to mpv https://github.com/mpv-player/mpv/commit/f4c80d44021dd917aee64f58b0e2a79f20…
[19:26:13 CEST] <JEEB> :P
[19:26:57 CEST] <pgorley> thanks
[19:27:33 CEST] <JEEB> those workarounds are what I gathered from FFmpeg's master already ("based on libavformat's things")
[19:28:00 CEST] <JEEB> there was some mmap stuff if you're aiming for <21, for which rcombs has posted some patches that might have gotten merged
[19:28:04 CEST] <JEEB> but you're not hitting that
[19:28:09 CEST] <JEEB> if it's the 64bit stuff
[19:28:10 CEST] <JEEB> :P
[19:28:34 CEST] <JEEB> anyways, I think android has had the 64bit offset workaround for ages
[19:28:48 CEST] <JEEB> *android in FFmpeg
[19:29:14 CEST] <pgorley> i'll get on a more recent version of ffmpeg and see if it compiles
[19:29:31 CEST] <JEEB> pgorley: http://git.videolan.org/?p=ffmpeg.git;a=commit;h=d5a6f1127263dd3dfcf08d2643…
[19:29:37 CEST] <JEEB> so in 2014
[19:29:54 CEST] <JEEB> although no, that's not the exact thing
[19:31:47 CEST] <JEEB> ah right, no, that was it :)
[19:31:52 CEST] <JEEB> so yea
[19:31:57 CEST] <JEEB> 2014-> should be OK
[19:32:23 CEST] <JEEB> most likely the define is defined, but FFmpeg itself should build just fine and it has all of the workarounds :P
[19:32:34 CEST] <JEEB> against android bionic insanity
[19:33:04 CEST] <JEEB> otherwise I wouldn't a) get it built b) have stuff like 64bit offsets work
[19:58:03 CEST] <laforest> Has anyone ever seen a problem where, when fetching an audio and video stream, then outputing them as two separate outputs, the audio is fine, but the video framerate drops from 30fps to ~10fps?
[20:00:05 CEST] <laforest> Command: ffmpeg -re -i <video url> -re -i <audio url> -map 0 -f rawvideo pipe:5 -map 1 -f wav pipe:6 (where file descriptors 5 and 6 are previously created)
[20:00:33 CEST] <laforest> Doing the same with two separate ffmpeg instances works fine, but falls out of sync eventually of course.
[20:11:30 CEST] <Fenrirthviti> JEEB: (belated response, lunch happened) Yeah, I understand. It's just strange that other applications that use NVENC will work fine under the exact same circumstances, and a quick check of available/reserved/used VRAM shows that it can't possibly be an actual out of memory condition.
[20:12:13 CEST] <JEEB> well blame nvidia for the misleading string unless it's an incorrect integer->string mapping in FFmpeg :P (most likely that error message comes also from nvidia, though)
[20:12:24 CEST] <Fenrirthviti> Oh no doubt, yes.
[20:12:36 CEST] <Fenrirthviti> I'm fully leaning toward nvidia being the one to blame here.
[20:13:03 CEST] <Fenrirthviti> I'm just trying to understand what the heck could be going on that other applications who are directly implementing nvenc support themselves work, whereas ffmpeg does not.
[20:13:07 CEST] <Fenrirthviti> Gotta be some difference.
[20:13:20 CEST] <Fenrirthviti> That's my current hangup that I'm trying to understand.
[20:13:36 CEST] <JEEB> you'd have to trace the API calls
[20:13:36 CEST] <Fenrirthviti> Or I wouldn't have even brought it up here, and instead to nvidia directly
[20:13:46 CEST] <JEEB> for FFmpeg you know what it does
[20:13:55 CEST] <pgorley> JEEB: it's still not compiling, it's complaining about an implicit mmap declaration: https://pastebin.com/AecaRyr9
[20:13:59 CEST] <JEEB> for a proprietary thing you'd have to use something like strace :P
[20:14:12 CEST] <JEEB> pgorley: yes the mmap thing happens on API level less than 21
[20:14:26 CEST] <JEEB> rcombs made a patch for that but I guess it wasn't merged yet?
[20:14:55 CEST] <pgorley> i'm on master now, just did a git pull
[20:14:55 CEST] <JEEB> yea, it hasn't been merged yet
[20:15:04 CEST] <JEEB> just checked http://git.videolan.org/?p=ffmpeg.git&a=search&h=HEAD&st=author&s=Rodger+Co…
[20:15:14 CEST] <Fenrirthviti> yeah, but outside my skillset currently to do something like that, was more asking if anyone had come across a similar case and dug into it
[20:15:31 CEST] <Fenrirthviti> But I appreciate the direction regardless.
[20:16:11 CEST] <JEEB> pgorley: https://ffmpeg.org/pipermail/ffmpeg-devel/2017-September/216828.html
[20:16:33 CEST] <JEEB> feel free to comment that it works for you on the mailing list if it works for you
[20:16:55 CEST] <pgorley> alright, thanks! :)
[20:17:12 CEST] <JEEB> because the only negative comment person didn't really understand the issue :P
[20:18:00 CEST] <JEEB> I'm building on API level 21 myself so I don't have this issue
[20:18:32 CEST] <JEEB> (the opengl renderer I'm using worked on zero 4.4.4 devices so it was really a no-problem to raise the minimum API level requirement)
[20:19:09 CEST] <JEEB> or well, one guy adamantly tried to say that it worked on his magical 4.4.4 device, but I will believe it when I see it
[20:27:16 CEST] <pgorley> JEEB: how do i check what api i'm building against?
[20:27:36 CEST] <pgorley> seems to be working as of yet, doesn't fail as quickly as without the patch
[20:27:49 CEST] <JEEB> when you create your standalone toolchain you set it
[20:28:08 CEST] <JEEB> --api 21 being API level 21
[20:28:11 CEST] <JEEB> etc
[20:28:16 CEST] <JEEB> see https://developer.android.com/ndk/guides/standalone_toolchain.html
[20:29:48 CEST] <pgorley> aww, it didn't work
[20:30:59 CEST] <Mista_D> Anyway to reduce Key-frame flickering when force-fey-frame is used? The video goes blurry on keyframe, using strict CBR x264
[20:32:28 CEST] <JEEB> pgorley: ?
[20:32:48 CEST] <pgorley> libavcodec/v4l2_buffers.c:409:44: error: implicit declaration of function 'mmap' is invalid in C99 [-Werror,-Wimplicit-function-declaration]
[20:32:57 CEST] <JEEB> did you apply the patch?
[20:33:03 CEST] <pgorley> as well as: libavcodec/v4l2_fmt.c:125:12: error: implicit declaration of function 'lfind' is invalid in C99 [-Werror,-Wimplicit-function-declaration]
[20:33:05 CEST] <pgorley> yes
[20:33:19 CEST] <JEEB> weird, because it should be fixing exactly that
[20:33:27 CEST] <pgorley> it fails further down the line
[20:33:34 CEST] <JEEB> no, that's an error
[20:33:36 CEST] <JEEB> it failed right ther
[20:33:59 CEST] <JEEB> the patch I mentioned specifically adds the osdep stuff in the v4l2 thing
[20:34:09 CEST] <pgorley> no no, it failed earlier in the build without the patch
[20:34:13 CEST] <JEEB> yes
[20:34:26 CEST] <pgorley> but it's weird that it still fails on mmap
[20:34:41 CEST] <JEEB> osdep not being included somewhere? you not cleaning the build dir?
[20:35:25 CEST] <pgorley> just cleaned it to see
[20:37:52 CEST] <JEEB> pgorley: if it still fails on current master with that patch, poke rcombs on #ffmpeg-devel
[20:38:00 CEST] <JEEB> (he will respond when he's around)
[20:38:12 CEST] <pgorley> alright, cool
[22:13:39 CEST] <doublya> I'm building ffmpeg with --enable-vaapi. vainfo shows hevc profile available. ./configure of ffmpeg shows h263_vaapi and h264_vaapi in Enabled hwaccles; however, after build, ffmpeg -codecs | grep vaapi is none
[22:14:50 CEST] <jkqxz> You aren't building the encoders?
[22:15:06 CEST] <doublya> i want to is there a flag i'm missing
[22:15:48 CEST] <jkqxz> They should come by default with --enable-vaapi if you have a version supporting them, which H.265 support would indicate.
[22:15:54 CEST] <jkqxz> What is your configure line?
[22:16:48 CEST] <jkqxz> (Though note that encoders appear in the "encoders" section of configure output.)
[22:17:12 CEST] <doublya> quite long, but I'm currently just using PKG_CONFIG_PATH="<my-path>" ./configure --enable-vaapi
[22:18:42 CEST] <doublya> I don't see any vaapi encoders in the 'Enabled encoders:' section. Only under Enabled hwaccels
[22:19:44 CEST] <doublya> I'm linking against libva built from source, which is linked against libdrm and mesa built from source.
[22:20:51 CEST] <jkqxz> Is it maybe a very old version? I'm not sure how else you could get the hwaccels but not the encoders.
[22:21:08 CEST] <doublya> I've build the 2017Q2 graphics stack
[22:21:40 CEST] <doublya> I've built libva with only drm, no X11 as I intend to use this build on a headless machine
[22:22:15 CEST] <jkqxz> Hmm. That shouldn't make a difference. Paste your ffbuild/config.log somewhere?
[22:27:05 CEST] <doublya> https://pastebin.com/sBNiXTJN
[22:28:07 CEST] <jkqxz> "fatal error: va/va.h: No such file or directory" Something very odd is happening at configure time.
[22:32:44 CEST] <jkqxz> But the link test for libva actually working passes. I think you have something very odd going on with your toolchain; no idea what else to suggest.
[22:34:17 CEST] <doublya> Thank you for looking into it for me. It's very strange that libva-utils build and works, but ffmpeg will not
[22:46:12 CEST] <ChocolateArmpits> Hey, I'm trying to encode a video using mjpeg, however surprisingly at the same bitrate a higher resolution version provides better detail for some reason. Is there any reason for this?
[22:47:06 CEST] <BtbN> well, it's a higher resolution
[22:47:52 CEST] <ChocolateArmpits> well that sort of goes against intuition or lower resolution having higher bits per pixel distribution
[22:47:55 CEST] <BtbN> How do you even define "same bitrate". I don't think you can run mjpeg in any kind of cbr more, can you?
[22:48:01 CEST] <ChocolateArmpits> at 1mbps a 1024x768 has more detail preserved than 640x480, both are scaled from 768x576
[22:48:40 CEST] <ChocolateArmpits> both look like poo, but an upscale much less
[22:48:47 CEST] <ChocolateArmpits> slightly rather than much
[22:50:30 CEST] <YokoBR> please folks, I still couldn't manage to stream multiple outputs using the tee mux
[22:50:33 CEST] <YokoBR> Output #0, tee, to '[f=flv:onfail=ignore]rtmp://a.rtmp.youtube.com/live2/mykey|[f=flv:onfail=ign…': Output file #0 does not contain any stream
[22:50:47 CEST] <furq> YokoBR: pastebin the full command
[22:51:02 CEST] <ChocolateArmpits> YokoBR, you need -map 0
[22:51:07 CEST] <ChocolateArmpits> or any mapping command
[22:51:15 CEST] <furq> ChocolateArmpits: by "upscale" do you mean less downscaled
[22:51:43 CEST] <YokoBR> https://gist.github.com/jersobh/cb1eba58afc88da0aecec5f3d43ce67e
[22:51:53 CEST] <YokoBR> ChocolateArmpits: where would that command be?
[22:52:21 CEST] <ChocolateArmpits> YokoBR, in the output commands, place it right after -f tee just so you know better
[22:53:19 CEST] <alexpigment> ChocolateArmpits: by chance, are you viewing with VLC? They do some stupid scaling by default that creates aliasing that isn't in the original stream. There's a setting to fix it, but I'd have to look it up.
[22:53:43 CEST] <ChocolateArmpits> alexpigment, I didn't notice anything funny
[22:53:49 CEST] <alexpigment> (I could go on for days about everything that VLC does wrong by default, but oh well)
[22:54:38 CEST] <alexpigment> ChocolateArmpits: you said that 1024x768 looked better than 640x480, even though they were from the same source. my question is if you're viewing them in VLC
[22:54:50 CEST] <ChocolateArmpits> alexpigment, I was
[22:54:53 CEST] <ChocolateArmpits> both of em
[22:55:25 CEST] <alexpigment> lemme, look at the vlc settings on my home system. i finally looked into it one day because it was 1 of a handful of reasons I never use it
[22:55:28 CEST] <YokoBR> Thanks, ChocolateArmpits . Do you know if that command would push the stream to both services?
[22:56:08 CEST] <YokoBR> '-map', '0', '[f=flv:onfail=ignore]rtmp://a.rtmp.youtube.com/live2/'+_config_youtube+'|[f=flv:onfail=ignore]rtmp://live-api-a.facebook.com:80/rtmp/'+_config_facebook
[22:56:24 CEST] <YokoBR> because it's working for youtube only
[22:57:30 CEST] <ChocolateArmpits> YokoBR, the -map 0 is a mapping command that maps input streams to output streams. It's tee that performs stream multiplication if you can call it that
[22:58:36 CEST] <ChocolateArmpits> YokoBR, if you can, try streaming to facebook separately to investigate the issue more closely, I think I had some problems related to it, can't remember exactly though
[22:58:55 CEST] <YokoBR> ChocolateArmpits: without the tee muxer it works flawlessly
[23:01:25 CEST] <alexpigment> ChocolateArmpits: well I can't figure out what the setting is, but either way, VLC is a garbage player. you might try another player and see if 1024x768 still looks better so much better. I only say this because 720x480 videos were unwatchable on my end, but anything high def was fine. Windows Media Player played the files correctly
[23:20:01 CEST] <ChocolateArmpits> ok here it is https://i.imgur.com/4wbp8wi.jpg . The video is initially downscaled to sub-sd, then piped to another instance of ffmpeg where it gets parallelly encoded to two mjpeg variants, one with the incoming resolution, other with upscaled. The upscaled one preserves original detail better (big player) than the incoming resolution encode (smaller player). You can see the command line in the top row
[23:20:37 CEST] <ChocolateArmpits> both are encoded at 500k bitrate
[23:21:18 CEST] <ChocolateArmpits> this isn't a unique scene or some artifact, this keeps happening repeatedly
[23:21:45 CEST] <ChocolateArmpits> I want to understand why this is
[23:24:28 CEST] <qmr> how can I mix together an audio file with existing audio with an offset and change volume levels? I want to mess with audio without generation loss on video
[23:25:03 CEST] <qmr> I'm editing videos of flying. cameras are obviously super noisy from the engine and prop, but I have cockpit audio recorded on my phone
[23:27:12 CEST] <klaxa> qmr: you probably want avolume, adelay and amix: https://ffmpeg.org/ffmpeg-filters.html maybe also see: https://stackoverflow.com/questions/44712868/ffmpeg-set-volume-in-amix
[23:27:30 CEST] <furq> it's just volume, not avolume
[23:27:33 CEST] <klaxa> oh
[23:27:54 CEST] <qmr> oh yea the last bit, sort of mentioned but didnt' finish thought, sorry, I want to mix camera audio and cockpit audio
[23:28:10 CEST] <qmr> little bit of vrrrrrrrrrrrrrrr in background for ambience, but the cockpit audio should be loud and clear
[23:28:38 CEST] <furq> well yeah you want amix then
[23:28:42 CEST] <furq> !filter amix @qmr
[23:28:42 CEST] <nfobot> qmr: http://ffmpeg.org/ffmpeg-filters.html#amix
[23:28:43 CEST] <klaxa> maybe it would be easier to do this in a graphical editor like audacity? then mux the audio and video again
[23:30:42 CEST] <alexpigment> ChocolateArmpits: are the actual files the same file size?
[23:31:25 CEST] <ChocolateArmpits> alexpigment, hmm I streamed the encode directly to ffplay for viewing, didn't think of writing them
[23:31:37 CEST] <ChocolateArmpits> could do it
[23:31:38 CEST] <alexpigment> it's possible your bitrates aren't being used
[23:32:29 CEST] <klaxa> also by design (afaik) jpeg images are always divided into 8x8 pixel blocks, so a bigger picture will have more blocks showing more details
[23:32:47 CEST] <furq> qmr: presumably something like -i camera.wav -i cockpit.wav -filter_complex "[0:a]adelay=12345,volume=-6dB,[1:a]amix"
[23:33:06 CEST] <alexpigment> klaxa: I thought of that to, but this does look like more macroblocking due to bandwidth starvation imho
[23:33:39 CEST] <klaxa> maybe
[23:34:06 CEST] <furq> the real question is, why are you using mjpeg in 2017 ad
[23:34:09 CEST] <ChocolateArmpits> alexpigment, welp looks like mjpeg encoder doesn't respect the bitrate in either case
[23:34:16 CEST] <alexpigment> i figured so
[23:34:22 CEST] <ChocolateArmpits> one ends up with ~700kbps other with ~2000kbps
[23:34:27 CEST] <furq> oh nice
[23:34:30 CEST] <furq> yeah that'll do it
[23:35:10 CEST] <alexpigment> another thing to take a look at is why one is 560x240 and one is 1120x480. those aren't the resolutions you mentioned, so it may be worth looking into it
[23:35:14 CEST] <furq> a lot of the builtin encoders tend to ignore you if you give them some hopelessly optimistic bitrate
[23:36:00 CEST] <klaxa> huh, that's what he said though, one is the (below-SD) downscaled one and the other is upscaled
[23:36:02 CEST] <alexpigment> fwiw, I'm looking at my own notes from the past and I always used -q:v 2 for MJPEG. either I didn't want to set the bitrate, or I ran into the same thing
[23:36:03 CEST] <ChocolateArmpits> alexpigment, nah the end effect is the same, so I guess bitrate misrespect is basically happening in the original case too
[23:36:59 CEST] <alexpigment> it may be worth setting both -q:v [whatever] and also the bitrate, and see if it gets honored there
[23:37:07 CEST] <alexpigment> some encoders require both if i recall correctly
[23:38:03 CEST] <alexpigment> ChocolateArmpits: re: the resolutions, I'm not saying it's a factor in what you're saying, it's just that you mentioned 1024x768 and 640x480 specifically before. I'm not seeing those in the ffmpeg info in your screenshot. if the size is fine, no worries
[23:38:34 CEST] <ChocolateArmpits> alexpigment, that was another case, don't have access to those files atm so have to improvise
[23:38:41 CEST] <alexpigment> gotcha
[23:39:04 CEST] <ChocolateArmpits> nope -b:v -q:v don't make it worth
[23:39:28 CEST] <alexpigment> interesting
[23:39:52 CEST] <alexpigment> well, I guess 1mbps bitrate and MJPEG aren't going to be workable in ffmpeg
[23:40:04 CEST] <alexpigment> it does raise the question of why you need MJPEG at that bitrate though
[23:40:11 CEST] <alexpigment> (in 2017, or any year prior)
[23:40:39 CEST] <alexpigment> rather, 500kbps in this case
[23:41:44 CEST] <ChocolateArmpits> the destination is an old version of vlc from that doesn't support x264 intra refresh decoding so to achieve lower latency only mjpeg can be used
[23:41:48 CEST] <ChocolateArmpits> from '08
[23:41:57 CEST] <alexpigment> gotcha
[23:42:15 CEST] <alexpigment> is DivX / XviD an option?
[23:42:36 CEST] <ChocolateArmpits> actually it is slice based decoding
[23:42:36 CEST] <alexpigment> I don't know about the relative latencies of XviD MJPEG
[23:42:54 CEST] <ChocolateArmpits> the penalty is player buffering
[23:43:02 CEST] <ChocolateArmpits> I don't think those will work
[23:43:31 CEST] <ChocolateArmpits> haven't tested though
[23:43:32 CEST] <alexpigment> ok, I'm going to go out on a limb here
[23:43:38 CEST] <klaxa> i use jpeg for low latency live streaming as well
[23:43:42 CEST] <alexpigment> would using x264 with a gop of 1 work?
[23:44:01 CEST] <alexpigment> that should still be better than MJPEG, although functionally similar
[23:44:05 CEST] <pzich> GOP of 1? :O
[23:44:20 CEST] <klaxa> intra-only is not invalid
[23:44:27 CEST] <klaxa> worth a shot
[23:44:29 CEST] <klaxa> imo
[23:45:05 CEST] <alexpigment> probably worth trying -intra -g 1 -coder 0
[23:45:38 CEST] <alexpigment> and if they works, try taking away -coder 0
[23:45:42 CEST] <alexpigment> *that
[23:47:41 CEST] <ChocolateArmpits> alexpigment, What does -intra do? Can't find it in the docs
[23:48:23 CEST] <alexpigment> it sets it to intra-only mode encoding. I think it's effectively the same as -g 1, but if I recall, the H.264 profile reflects that it's an intra profile
[23:48:37 CEST] <alexpigment> don't quote me on that, I did these tests a long time ago and I'm just looking at my notes ;)
[23:49:04 CEST] <alexpigment> either there was some reason I specified both, or there wasn't. i'm hoping there was a reason
[23:50:50 CEST] <ChocolateArmpits> -tune lowlatency should be enough to replace -coder 0
[23:51:05 CEST] <ChocolateArmpits> coder 0 turns off cabac which lowlatency does too along with a few other
[23:51:31 CEST] <alexpigment> cool, i didn't know what VLC from 2008 supported or not
[23:53:46 CEST] <furq> it's zerolatency
[23:54:00 CEST] <furq> but yeah gop size of 1 is overkill, just turning off bframes is sufficient
[23:54:53 CEST] <furq> intra-refresh doesn't actually reduce latency afaik, it just avoids bitrate spikes at gop boundaries
[23:59:15 CEST] <Hopper_> furq: Mentioned you earlier, did you see my message?
[00:00:00 CEST] --- Wed Oct 4 2017
1
0
[00:23:29 CEST] <cone-949> ffmpeg 03James Almer 07master:cf3d2d52b59d: avcodec/avpacket: deprecate av_copy_packet_side_data()
[02:37:51 CEST] <kode54> what's the correct way to pass the macOS min spec build switch to the build process there?
[02:38:55 CEST] <kode54> I use: --extra-cflags="-fPIC -isysroot /Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX.sdk -mmacosx-version-min=10.6"
[02:39:26 CEST] <kode54> should probably upgrade that to 10.7, but still, I see things complaining about binaries built for 10.13
[02:40:35 CEST] <BBB> I think you need extra-libs also, if youre building shared libraries
[02:41:13 CEST] <BBB> (extra-libs=-mmacosx-version-min=10.6
[02:41:15 CEST] <BBB> )
[02:41:32 CEST] <BBB> kode54: ^^
[02:41:55 CEST] <kode54> I'm building static libraries in this case
[02:42:08 CEST] <kode54> but yeah, it probably needs that
[02:45:30 CEST] <BBB> I suppose you still need it for the binaries (ffmpeg, ffplay, etc.), yes
[02:47:07 CEST] <kode54> I currently only use the libraries in a format plugin or two
[02:47:18 CEST] <kode54> GPL licensed audio player
[02:47:39 CEST] <kode54> that I have not actually tested on 10.7, so I don't know if my minspec actually makes it work there
[02:48:05 CEST] <kode54> hell, I just barely started using Sparkle correctly
[02:48:05 CEST] <jamrial> kode54: isn't -fPIC added automatically for you?
[02:48:21 CEST] <kode54> probably, I just stole someone else's script and have modified it over time
[02:48:37 CEST] <kode54> it basically just disables everything but the libraries, and selectively enables a bunch of audio codecs
[02:48:56 CEST] <kode54> I also had to selectively disable a bunch of MP4 video codecs, because enabling the mp4 parser enables them automatically
[02:49:32 CEST] <BBB> probably demuxer <> parsers, but sure, if you only need audio that should be fine
[02:49:53 CEST] <kode54> I support a couple of video related containers, but only handle audio in them
[02:50:14 CEST] <kode54> my frontend code sets the disable/skip flag on the streams so the parser doesn't try to decode them
[02:50:59 CEST] <kode54> it only decodes one audio stream at a time, as requested either by the player, or the library (FFmpeg based player plugin, and VGMStream based plugin)
[02:51:22 CEST] <kode54> sadly, the way my code is arranged, both plugins have to import their own copies of FFmpeg
[02:51:41 CEST] <kode54> I should get around to changing some of these redundant deps to dylibs so I can stuff them in a common location
[02:52:10 CEST] <kode54> I just got around to adding my DSA public key to the binary a few releases ago
[02:52:37 CEST] <kode54> for reasons unknown, Sparkle didn't used to verify the DSA signature for delta patches, only verified the code signature of the resulting output app bundle
[02:53:06 CEST] <kode54> I didn't know I needed to include the DSA public key, that should have been a big DUH moment for me, how else can it verify that crap?
[02:53:31 CEST] <kode54> I have a FATE patch to submit too
[02:53:37 CEST] <kode54> I need to finalize it though
[02:53:56 CEST] <kode54> I made a 1 second test file, when I realized there's already a 10 second test MP3 in the FATE repository
[02:54:18 CEST] <kode54> my test sample source is 7 seconds long, a simple ~128kbps MP3 should be fine from that length, right?
[08:10:35 CEST] <ubitux> kode54: i saw some patches in libav tree for that
[08:11:15 CEST] <ubitux> 81bffae368f331b6cd386a814f225a58e3f32f40
[08:11:33 CEST] <ubitux> which is then reverted
[08:11:35 CEST] <ubitux> for 0d8013b88b1cb7d65da891a8819d3beebafb9bb5
[08:11:55 CEST] <ubitux> not sure if that helps
[08:12:16 CEST] <kode54> I submitted a patch months ago, but it got held up by the need for a fate test
[10:40:29 CEST] <durandal_1707> what was at ffmpeg metting at vdd?
[10:45:04 CEST] <JEEB> not much, explaining to people why lavfi doesn't work with subtitles and stuff like that (= AVFrame doesn't yet handle subtitles)
[10:45:11 CEST] <JEEB> and discussions about VANC
[10:45:14 CEST] <JEEB> some other things
[11:01:17 CEST] <ubitux> there is a patchset for the subtitles in AVFrames, i need to honor some of wm4 comments
[11:01:31 CEST] <ubitux> (i won't be able to honor them all)
[11:03:19 CEST] <JEEB> yes, oct 2016 or so
[11:03:29 CEST] <JEEB> I remember looking at the RFC patch at one point
[11:03:53 CEST] <ubitux> the alloc is going to be different/ugly in any case
[11:04:04 CEST] <durandal_1707> JEEB: im asking about special meeting
[11:04:19 CEST] <JEEB> I don't think there was any other meeting at VDD for FFmpeg
[11:04:35 CEST] <JEEB> than the technical one on Saturday
[11:04:56 CEST] <JEEB> of course people talk in other places as well but you can't really call that a "meeting"
[11:17:10 CEST] <durandal_1707> JEEB: the one that was at same tima as libav one
[11:17:20 CEST] <JEEB> yes, that was what I was talking about
[11:18:23 CEST] <JEEB> various questions regarding things, like why lavfi doesn't support subtitles, VANC related stuff, someone wanting another library with a lot of the common client stuff in it (closer to ffms2 level than lavf/lavc)
[13:47:23 CEST] <nevcairiel> BBB: kode54: instead of --extra-libs you should really use --extra-ldflags (in addition to --extra-cflags), just for correctness sake. that flag is not a library to link to :)
[13:47:48 CEST] <BBB> <- build n00b
[13:48:09 CEST] <BBB> tnx ;)
[16:16:00 CEST] <cone-844> ffmpeg 03James Almer 07master:a22c6a4796ca: avcodec/encode: remove usage of av_dup_packet()
[16:46:30 CEST] <funman> can I specify stream specific options together with -map ?
[16:46:50 CEST] <funman> or even without -map
[16:46:56 CEST] <funman> ffmpeg -i ird.ts
[16:46:59 CEST] <funman> [mpegts @ 0x259fde0] Could not find codec parameters for stream 3 (Audio: s302m (BSSD / 0x44535342), stereo, s32 (20 bit), 2304 kb/s): unspecified sample rate
[16:47:04 CEST] <funman> ffmpeg -ar 48000 -i ird.ts
[16:47:06 CEST] <funman> Option sample_rate not found.
[16:57:29 CEST] <wm4> BtbN, philipl: again, how to update the cuvid headers? I might want to try porting libav's cuvid
[17:47:12 CEST] <nevcairiel> wm4: the two cuvid headers are mostly identical to their upstream original, only custom is the cuda one, just add functions as you need them
[17:47:46 CEST] <nevcairiel> and add new functions to dynalink_loader.h as well so they actually get loaded
[17:51:55 CEST] <wm4> ah
[19:27:37 CEST] <jamrial> so, the av_dup_packet() call in frame_thread_encoder.c
[19:28:07 CEST] <jamrial> is it really needed? can the packet it handles be non ref counted?
[19:28:36 CEST] <jamrial> coverage shows, at least as far as FATE tests, that it's currently a noop
[19:37:34 CEST] <wm4> the old encode API can give you not refcounted packets, right?
[19:37:44 CEST] <wm4> oh wait, the encoder gets AVFrames
[19:38:06 CEST] <wm4> so we're talking about output
[19:39:02 CEST] <wm4> maybe some hw codec wrappers could do it
[19:49:43 CEST] <jamrial> wm4: any idea how to replace it with av_packet_ref()? the same i did for encode.c maybe?
[19:59:47 CEST] <wm4> jamrial: yeah...
[20:00:12 CEST] <wm4> or you could av_assert0 on it being refcounted or so
[20:01:09 CEST] <wm4> tbh I don't know much about avcodec_encode_video2... there's some scary associated legacy logic with "optimized" packet allocation
[20:06:06 CEST] <cone-830> ffmpeg 03James Almer 07master:0c1ffd0aa55c: avdevice/decklink_dec: use av_packet_add_side_data()
[20:16:31 CEST] <cone-830> ffmpeg 03James Almer 07master:e91f0c4f8b3e: avdevice/decklink_dec: remove av_dup_packet() usage
[20:43:19 CEST] <cone-830> ffmpeg 03John Stebbins 07master:5d3953a5dcfd: matroskaenc: factor ts_offset into block timecode computation
[20:43:20 CEST] <cone-830> ffmpeg 03James Almer 07master:45121cbdda00: Merge commit '5d3953a5dcfd5f71391b7f34908517eb6f7e5146'
[20:44:33 CEST] <jamrial> jkqxz: i suppose libav commit 156bc0193b is unneded seeing we have similar tests?
[20:45:25 CEST] <jamrial> we don't even have the sample files in the fate suite, so yeah, gonna noop it
[20:45:55 CEST] <ubitux> shouldn't we sync them?
[20:46:30 CEST] <ubitux> that's usually what we do
[20:46:54 CEST] <jamrial> ubitux: we have like five samples and webp tests for alpha, non alpha, lossless, lossy, etc
[20:47:11 CEST] <jamrial> i don't mind syncing them, but seems superfluous in this case
[20:47:19 CEST] <ubitux> ok ok
[20:48:26 CEST] <jkqxz> Yeah, that one was just added as a generic alpha test (it's one of the google exmaple files). There are others in ffmpeg so it isn't needed.
[20:50:52 CEST] <jamrial> ubitux: btw, coverage.ffmpeg.org suddenly stopped having src/ in the path. looks like it started after the merge moving the cli programs to a separate folder
[20:51:09 CEST] <jamrial> could it be because there are no more files being checked in the root?
[20:58:08 CEST] <cone-830> ffmpeg 03Mark Thompson 07master:156bc0193bd4: fate: Add webp alpha test
[20:58:09 CEST] <cone-830> ffmpeg 03James Almer 07master:ff29db4ebf22: Merge commit '156bc0193bd47d3f4b3adaa93be0e206e12686ab'
[21:01:47 CEST] <cone-830> ffmpeg 03John Stebbins 07master:fec3456ce188: fate: Update fate-lavf-mkv after commit 5d3953a5dc
[21:01:48 CEST] <cone-830> ffmpeg 03Luca Barbato 07master:04d2afa93b6c: mkv: Update the seek test to match 5d3953a5dc
[21:01:49 CEST] <cone-830> ffmpeg 03James Almer 07master:0451c3db4ee2: Merge commit '04d2afa93b6c6f320ac45dd99ce1226f3c3d5ac8'
[21:02:17 CEST] <ubitux> jamrial: maybe& is it causing issues?
[21:02:52 CEST] <jamrial> don't think so, just unexpected i guess
[21:05:26 CEST] <ubitux> yeah, interesting
[21:06:58 CEST] <cone-830> ffmpeg 03Diego Biurrun 07master:ed6a891c364f: Place attribute_deprecated in the right position for struct declarations
[21:06:59 CEST] <cone-830> ffmpeg 03James Almer 07master:f40cd7899188: Merge commit 'ed6a891c364f8b0850b557d9578b8920cc15a937'
[21:15:19 CEST] <cone-830> ffmpeg 03Martin Storsjö 07master:c582cb853736: arm/aarch64: vp9lpf: Keep the comparison to E within 8 bit
[21:15:21 CEST] <cone-830> ffmpeg 03Martin Storsjö 07master:3bf9c48320f2: aarch64: vp9lpf: Use dup+rev16+uzp1 instead of dup+lsr+dup+trn1
[21:15:21 CEST] <cone-830> ffmpeg 03Martin Storsjö 07master:575e31e931e4: arm: vp9lpf: Implement the mix2_44 function with one single filter pass
[21:15:22 CEST] <cone-830> ffmpeg 03Martin Storsjö 07master:402546a17233: arm: vp9itxfm: Avoid reloading the idct32 coefficients
[21:15:23 CEST] <cone-830> ffmpeg 03Martin Storsjö 07master:65aa002d5443: aarch64: vp9itxfm: Avoid reloading the idct32 coefficients
[21:15:24 CEST] <cone-830> ffmpeg 03Martin Storsjö 07master:de06bdfe6c8a: arm: vp9itxfm: Reorder the idct coefficients for better pairing
[21:15:25 CEST] <cone-830> ffmpeg 03Martin Storsjö 07master:09eb88a12e00: aarch64: vp9itxfm: Reorder the idct coefficients for better pairing
[21:15:27 CEST] <cone-830> ffmpeg 03Martin Storsjö 07master:08074c092d8c: arm: vp9itxfm: Reorder iadst16 coeffs
[21:15:28 CEST] <cone-830> ffmpeg 03Martin Storsjö 07master:b8f66c0838b4: aarch64: vp9itxfm: Reorder iadst16 coeffs
[21:15:29 CEST] <cone-830> ffmpeg 03James Almer 07master:9f5d238a66ea: Merge commit 'b8f66c0838b4c645227f23a35b4d54373da4c60a'
[21:17:25 CEST] <jamrial> ubitux: commit 8e4d4efc67 adds a test we don't have and probably could use. how do we sync the sample?
[22:41:57 CEST] <ubitux> jamrial: you should poke nevcairiel or michaelni
[22:42:08 CEST] <jamrial> ah ok
[22:43:18 CEST] <jamrial> michaelni, nevcairiel: does the test from libav commit 8e4d4efc67 have any use for us? i don't know if we ever had that regression to begin with
[22:43:51 CEST] <jamrial> if it does, please add the sample to the fate sample suite so i may merge the commit
[22:55:22 CEST] <jamrial> michaelni, nevcairiel: https://pastebin.com/raw/9MHbLgqJ uh, guess no point adding it? we can't even decode it...
[23:00:13 CEST] <jamrial> ah, yet another edit list regression i guess
[23:00:27 CEST] <jamrial> -ignore_editlist 1 passed to the demuxer fixes it
[23:02:00 CEST] <jamrial> what then? do we add the sample and merge the test forcing that option for the time being, and report it to Sasi Inguva to look at it?
[23:03:39 CEST] <michaelni> repoting the issue to Sasi Inguva is probably a good idea either way
[23:03:44 CEST] <JEEB> agreed
[23:04:09 CEST] <thebombzen> re: stripping issue, how does stripping at install-time affect cross-compiling? If you're thinking about /usr/bin/install -s then it might have issues with cross-compilation
[23:04:31 CEST] <JEEB> I am still kind of the opinion that the demuxer just can't handle edit lists by itself, as the spec itself notes (Since the edits can be on sample level etc)
[23:04:43 CEST] <BtbN> thebombzen, why would it be any different from stripping at build time?
[23:05:04 CEST] <BtbN> The cross compiler/stripper won't be gone by then
[23:05:10 CEST] <JEEB> you would expose the edit list from the demuxer and then the upper layer would then use the demuxer and decoder to present the edit list
[23:05:19 CEST] <thebombzen> stripping at build-time during cross-compilation can use arch-vendor-platform-strip
[23:05:26 CEST] <JEEB> but it seems like this train went past way before :)
[23:05:39 CEST] <thebombzen> stripping at install-time might use /usr/bin/install -s, which might not be able to find the right stripper
[23:05:46 CEST] <thebombzen> if it can, then ignore me. but I've had issues where it can't in the past
[23:06:06 CEST] <jamrial> thebombzen: not using -s, if you're talking about my patch
[23:06:30 CEST] <thebombzen> I'm worried more about /usr/bin/install -s during cross-compilation, not about actually stripping at install-time
[23:06:42 CEST] <thebombzen> so if your patch avoids that then I have no worries
[23:06:58 CEST] <thebombzen> my opinion doesn't exactly matter here, but I figured I'd point this out
[23:07:19 CEST] <jamrial> we never use install -s anyway, before or after the patch
[23:07:55 CEST] <thebombzen> hey, at least it's not libtool
[23:07:55 CEST] <jamrial> since the strip binary can be chosen at configure time with an option
[23:08:02 CEST] <JEEB> CROSS-PREFIX-strip I think by default?
[23:08:18 CEST] <thebombzen> alright, then I have no worries
[23:08:50 CEST] <thebombzen> I've just had to build something for another platform and had libtool relink in the cross-prefix into the rpath which really irritated me, so I'm a bit on edge right now about cross-compilation
[23:08:53 CEST] <jamrial> michaelni: yeah, probably opening a ticket to keep track of it as well. but my question is, is it worth adding the test and sample right now?
[23:09:13 CEST] <thebombzen> either way, if libraries are already stripped at compile-time then it sounds like a good idea, if nothing else for the sake of consistency
[23:09:22 CEST] <thebombzen> er, stripped at install-time
[23:13:44 CEST] <michaelni> jamrial, uploaded
[23:14:00 CEST] <jamrial> michaelni: ok, thanks
[23:32:08 CEST] <cone-830> ffmpeg 03Diego Biurrun 07master:8e4d4efc67e1: fate: Add another SVQ3 test to increase coverage
[23:32:09 CEST] <cone-830> ffmpeg 03James Almer 07master:b591329c3afe: Merge commit '8e4d4efc67e154fdffd65964a7cfeef740320827'
[00:00:00 CEST] --- Tue Oct 3 2017
1
0
[00:01:34 CEST] <JEEB> Durandal: probably http://git.videolan.org/?p=ffmpeg.git;a=commit;h=5a3b602acda68fe5ca09082dc7…
[00:01:55 CEST] <JEEB> although wait that's not it
[00:08:05 CEST] <Durandal> I'm guessing that applies to the alternate implementation, not libopus
[00:09:09 CEST] <Durandal> here's my command line: ffmpeg -i in.mkv -c:a libopus -b:a 212K -mapping_family 1 -map 0:a:0 out.ogg
[00:09:41 CEST] <Durandal> the source stream looks like this on ffprobe: Stream #0:1(eng): Audio: dts (DTS), 48000 Hz, 5.1(side), fltp, 1536 kb/s (default)
[00:23:33 CEST] <JEEB> Durandal: http://git.videolan.org/?p=ffmpeg.git;a=commit;h=37941878f193a2316c514bd5ba…
[00:23:36 CEST] <JEEB> this was it then
[00:23:46 CEST] <JEEB> you specifically setting mapping family gave the hint out :P
[01:41:05 CEST] <lindylex> How can I change the color of this audio wave to green? This is what I tried ::: ffmpeg -i hgs.m4a -filter_complex "[0:a]volume=2, showwaves=s=1280x720:mode=line,colorkey=#123456,format=yuv420p[v]" -map "[v]" -map 0:a -c:v libx264 -c:a copy -y output.mkv
[01:48:45 CEST] <lindylex> Never mind I solved it : ffmpeg -i hgs.m4a -filter_complex "[0:a]volume=2, showwaves=s=1280x720:mode=line:colors=white,format=yuv420p[v]" -map "[v]" -map 0:a -c:v libx264 -c:a copy -y output.mkv
[09:02:16 CEST] <rabbe> for live camera streaming to browser, using ffmpeg -> FLV -> nginx, what WebRTC implementation can i use?
[09:02:31 CEST] <rabbe> (FLV over rtmp)
[09:05:04 CEST] <rabbe> do I configure nginx with for example "dash on" and something else to expose a dash stream which can then be opened by the browser running a WebRTC player on the client side?
[09:57:21 CEST] <rabbe> hm, if i stream dash or hls, i don't need a player browser side, html5 video tag will work?
[09:58:10 CEST] <JEEB> there are few players that take things straight into a <video> tag, mostly MS Edge and Apple's thing (Edge supports DASH and HLS manfiests/playlists in a video tag, the Apple thing HLS only)
[09:58:32 CEST] <JEEB> so you have to utilize dash.js or hls.js to parse the things and feed them separately to the decoders instead (it is a video tag underneath, though)
[10:01:09 CEST] <rabbe> ok, so i need dash.js and hls.js on the web page. how much code do i need for parsing?
[10:02:02 CEST] <rabbe> have an example anywhere?
[10:02:34 CEST] <JEEB> they handle it for you, just google for those libraries and the usage example
[10:02:44 CEST] <rabbe> will i get better performance using separate player?
[10:03:23 CEST] <JEEB> dunno, that would be a general browser | not a browser thing
[10:05:32 CEST] <rabbe> in nginx, i would just need dash on; dash_path /tmp/dash; to send in dash format?
[10:06:14 CEST] <JEEB> that is nginx-rtmp specific so see its configuration
[10:06:47 CEST] <JEEB> and it's probably more correct to say "offer" content in that format, since you're not pushing but the client is pulling
[10:06:57 CEST] <rabbe> right
[10:07:08 CEST] <rabbe> oh, and i need some manifest file for dash?
[10:07:21 CEST] <JEEB> it should generate that by itself if it's generating DASH
[10:07:24 CEST] <JEEB> since it's part of it
[10:07:31 CEST] <rabbe> oh
[10:08:00 CEST] <rabbe> so on the web page, i will just need something like this? view-source:http://dashif.org/reference/players/javascript/1.4.0/samples/ge…
[10:08:11 CEST] <JEEB> yes, or any of the newer versions :P
[10:08:23 CEST] <JEEB> you can even first test with one of the examples
[10:08:30 CEST] <JEEB> https://reference.dashif.org/dash.js/
[10:12:10 CEST] <rabbe> thanks, i'll try
[10:19:52 CEST] <rabbe> wait, was this solution only for MS Edge and Apple?
[10:20:19 CEST] <rabbe> i need a separate js player for other browsers?
[10:21:20 CEST] <JEEB> dash.js is for everything, MS Edge supports HLS and DASH manifest URL right in the video tag
[10:22:06 CEST] <rabbe> so for like chrome i need dash.js + some separate player?
[10:22:16 CEST] <JEEB> dash.js itself gives you basic playback capabilities
[10:22:24 CEST] <furq> hls.js and dash.js work with a regular video tag
[10:22:35 CEST] <furq> you can use another player on top of that if you want to but you don't need to
[10:22:36 CEST] <JEEB> and if you wanted a separate player those generally already include hls.js/dash.js
[10:22:42 CEST] <furq> and yeah, that
[10:23:10 CEST] <rabbe> for chrome i need some extra code to give the video tag the feed?
[10:23:18 CEST] <furq> yeah but only a few lines
[10:23:27 CEST] <rabbe> okay
[10:23:34 CEST] <rabbe> example anywhere?
[10:23:37 CEST] <JEEB> ...
[10:23:45 CEST] <JEEB> have you actually tried reading the docs in the dash.js repo or so?
[10:23:52 CEST] <JEEB> or do you expect being spoonfed everything?
[10:24:10 CEST] <rabbe> hehe.. just stressed, sorry
[10:24:15 CEST] <rabbe> i will check
[10:24:18 CEST] <JEEB> I mean you even linked dash.js docs *yourself* for christ's sake :)
[10:24:34 CEST] <rabbe> :)
[10:37:39 CEST] <Nacht> There are quite a few players around as well
[10:37:58 CEST] <Nacht> Theo player, JW player, Meister Player
[10:38:29 CEST] <Nacht> https://www.theoplayer.com/ https://www.jwplayer.com/ https://www.meisterplayer.com/
[11:48:41 CEST] <cart_man> Hi everyone
[11:48:51 CEST] <cart_man> I am trying to install FFMPEG from .deb packages only ! BUT I cannot see to find and install any of the libavcodec-ffmpeg packages
[11:49:04 CEST] <cart_man> I get told that its missing libavcodec-ffmpeg56 but when I try and install it it just says it does not exist ...
[11:49:05 CEST] <cart_man> So then later on I see that Ubuntu16 has libavcodec-ffmpeg57 now but that can not install either ... tried -> " sudo apt-get install libavcodec-extra57 libavformat57 libvutil55 " : Unable to locate packages
[11:52:15 CEST] <BtbN> You'll have to ask your distribution about that. FFmpeg does not provide deb packages, let alone binaries.
[11:54:20 CEST] <cart_man> where can I go to ask distribution for it though?
[11:54:27 CEST] <cart_man> Just thought people in this channel isntall its quite allot
[12:02:26 CEST] <tittybang> https://packages.debian.org/source/jessie/libav
[12:02:27 CEST] <tittybang> ?
[12:05:17 CEST] <BtbN> That's not ffmpeg.
[12:08:38 CEST] <tittybang> https://wiki.debian.org/ffmpeg
[12:09:45 CEST] <tittybang> its not nesc. a distribution issue, if the distributions arent informed on how to setup its kind of impossible to maintain.
[12:12:22 CEST] <cart_man> I have installed it in the past using apt-get BUT I had to install a couple of packages prior to it
[12:12:31 CEST] <cart_man> and I remember it was libav packages
[12:12:37 CEST] <cart_man> tittybang ^^
[12:12:38 CEST] <furq> you really shouldn't have to do that
[12:13:07 CEST] <furq> it sounds like either your repos are messed up or you've got some custom PPA that's fucking with things
[12:16:55 CEST] <cart_man> furq : Ok so it says to run "apt-get -f install" to fix the issue ... that might be what you are referring too? Problem is I need to be able to install these packages on a machine with no internet. Has to be version locked soo running apt-get -f install is not an option
[13:03:10 CEST] <rabbe> if ffmpeg streams to rtmp://localhost/live/test and nginx is configured with: live on; record off; dash on; dash_path /tmp/dash; it will create a manifest file inside /tmp/dash which the web page can reference using http://localhost/something.. or should it be rtmp://something?
[13:33:17 CEST] <c_14> http://, though you probably want to use /path to make it protocol agnostic
[13:40:16 CEST] <rabbe> i changed dash_path to /tmp/dashfolder.. i see a test.mpd being created inside that folder.. but i can't get video using source src="http://localhost/live/test.mpd"
[13:40:23 CEST] <rabbe> on the webpage
[13:42:33 CEST] <rabbe> if i used source src = "http://dash.edgesuite.net/envivio/dashpr/clear/Manifest.mpd" it worked
[14:39:09 CEST] <rabbe> should this produce a valid manifest file? ffmpeg -f x11grab -s 1920x1080 -i :0.0 -c:v libx264 -profile:v baseline -preset veryfast -tune zerolatency -pix_fmt yuv420p -x264opts crf=20:vbv-maxrate=3000:vbv-bufsize=100:intra-refresh=1:slice-max-size=1500:keyint=30:ref=1 -f flv rtmp://localhost/live/test
[14:46:13 CEST] <celyr> any idea on why this mp3: https://paste.debian.net/988681/ is not working in a car mp3 radio reader ?
[14:51:35 CEST] <Guest72430> hi I need some help I've tried to use ffmpeg to split audio from video while preserving the folder structure but I just can't get it done.
[14:51:55 CEST] <Guest72430> here is a link to a bat file I've made
[14:51:56 CEST] <Guest72430> http://www.filedropper.com/videotoaudioonlyv0021
[14:52:00 CEST] <relaxed> celyr: ffmpeg -i x.mp3 -map 0:a -c copy out.mp3
[14:52:22 CEST] <celyr> relaxed, tnx for the spoonfeed and what i'm doing ? :XD
[14:52:32 CEST] <Guest72430> I pretty much don't know what I'm doing though
[14:52:43 CEST] <relaxed> celyr: ignoring the album art
[14:52:50 CEST] <celyr> cool
[14:52:58 CEST] <Guest72430> I've googled everything and tried using the manual but I still cant get it done
[14:54:15 CEST] <relaxed> Guest72430: pastebin the script
[14:54:25 CEST] <Guest72430> k
[14:55:17 CEST] <Guest72430> https://pastebin.com/kJ7rEGdQ
[14:56:42 CEST] <Guest72430> I'm hacking it together since I don't really understand what I'm doing
[14:57:41 CEST] <Guest72430> I've got a lot of fodlers and subfolders
[14:59:33 CEST] <Guest72430> converting everything and then sorting it again would take hours. I really need something to convert/split audio from video while keeping the folder structure intact.
[14:59:58 CEST] <Guest72430> converting every folder would be my last resort but doing that would also take very long
[15:10:23 CEST] <Guest72430> anyone?
[15:10:27 CEST] <Nacht> iek Windows
[15:11:16 CEST] <Guest72430> well some of us don't work as admin and have to use windows
[15:11:18 CEST] <relaxed> it looks like you're mixing windows batch and bash
[15:11:28 CEST] <Nacht> yeah
[15:11:31 CEST] <Guest72430> oh ok
[15:11:37 CEST] <Nacht> Does For even work in Windows ?
[15:11:40 CEST] <Nacht> I know of FORFILES
[15:12:26 CEST] <relaxed> "for" is valid
[15:13:08 CEST] <Guest72430> I could use Cygwin
[15:13:17 CEST] <Guest72430> if windows is a problem
[15:13:30 CEST] <Nacht> Nah, Windows shouldnt be much of a problem
[15:14:57 CEST] <Nacht> So to get it streight, you want a script that copies only the audio of all the mp4 files in your input folder, and create audio files of it in the output folde r?
[15:15:28 CEST] <Guest72430> it ok if it's in the same folder
[15:15:40 CEST] <Guest72430> or the folder structure need to be copied
[15:15:52 CEST] <Nacht> Are the video's all useing the same audio codec ?
[15:16:06 CEST] <Guest72430> probably
[15:16:18 CEST] <Guest72430> is that important?
[15:16:31 CEST] <Guest72430> it could get mixed sometimes
[15:16:40 CEST] <Nacht> Then it's best to transcode
[15:17:13 CEST] <Guest72430> yes
[15:17:48 CEST] <Nacht> So you get something like this: ffmpeg -i <input> -vn -c:a mp3 -f mp3 <output>.mp3
[15:18:31 CEST] <Guest72430> yes the problem is I can't convert everything in subfolders with it
[15:18:40 CEST] <Guest72430> only one folder after another
[15:18:46 CEST] <Guest72430> I can do that
[15:19:28 CEST] <Guest72430> My problem is like I said keeping the folder structure
[15:20:13 CEST] <Guest72430> something like convert everything in the folder and subfolders and palce it in that same folder
[15:20:19 CEST] <Nacht> So your problem lies outside the usage of ffmpeg
[15:20:33 CEST] <Guest72430> does it?
[15:20:52 CEST] <Guest72430> Im new to this
[15:21:41 CEST] <Nacht> You're using a script to parse trough the folder/files. So you want to know what directory you're in, so you can give the same directory to ffmpeg
[15:22:19 CEST] <Guest72430> yes I think so
[15:22:55 CEST] <Nacht> I'm no expert in windows scripting, but I might have something. Give me a few mins to test it
[15:23:22 CEST] <Guest72430> that would be awesome
[15:25:41 CEST] <Guest72430> it doesn't have to be windows script I'll take anything
[15:26:44 CEST] <Guest72430> the reason I have the bat file is because that's what I found per google
[15:31:03 CEST] <Nacht> you don't happen to have Windows 10 and BASH installed ?
[15:36:00 CEST] <Guest72430> nope
[15:36:21 CEST] <Guest72430> but I an install cygwin
[15:36:52 CEST] <Guest72430> or use my deb hdd
[15:41:19 CEST] <dystopia> anyway to handle bink video with ffmpeg?
[15:41:49 CEST] <JEEB> bink v1 is implemented
[15:41:54 CEST] <JEEB> bink v2 is not yet
[15:41:59 CEST] <JEEB> Watches Pelcome
[15:42:17 CEST] <JEEB> thankfully you can get the official player from bink itself :)
[15:42:25 CEST] <JEEB> so you can just reverse engineer that
[15:44:05 CEST] <Nacht> Jeez, Windows scripting feels so restrictive
[15:44:18 CEST] <JEEB> powershell isn't that bad
[15:44:35 CEST] <JEEB> also in addition to batch windows for a very long time has had visual basic and JS based scripting
[15:44:45 CEST] <JEEB> but yes, batch is old and barren and full of special cases
[15:45:12 CEST] <JEEB> the one thing I really liked about PS is that it let you poke around registry as if it was a file system
[15:45:16 CEST] <JEEB> which is <3
[15:45:57 CEST] <Nacht> Guest72430: Do you have powershell ?
[15:46:34 CEST] <Guest72430> nope
[15:46:57 CEST] <Nacht> okido, relative paths it is then
[15:47:54 CEST] <Nacht> FORFILES -p "C:\mount\Test\input" /m *.mp4 /s -c "cmd /c ffmpeg -i @path -vn -c:a mp3 -f mp3 @PATH.mp3"
[15:48:10 CEST] <Nacht> doesn't even like relative paths
[15:48:23 CEST] <Guest72430> that short o.O?
[15:48:25 CEST] <Nacht> So what does this do ? FORFILES will go recursively trough all your subfolders
[15:48:34 CEST] <Guest72430> dang nice
[15:48:37 CEST] <Nacht> finding all files that end with .mp4
[15:48:42 CEST] <Guest72430> you'r my here :D
[15:48:45 CEST] <Guest72430> hero
[15:49:01 CEST] <Nacht> it will then paste it to ffmpeg and it will make an mp3 in the SAME folder, but ending with .mp3
[15:49:10 CEST] <Guest72430> I'll test it out asap
[15:49:11 CEST] <Nacht> its dirty, but it does the job
[15:49:22 CEST] <Guest72430> just waht I needed
[15:52:59 CEST] <sash__> Hey, I'm hitting the same issue this guy has hit: https://lists.ffmpeg.org/pipermail/ffmpeg-user/2013-March/014050.html - Basically, when transcoding to mpegts, the start time is always 1.4 seconds for no reason. Can anyone help?
[16:00:59 CEST] <Guest72430> did you run it from command promt or as a bat file?
[16:02:36 CEST] <Guest72430> lol I forgot to put ffmpeg in system32
[16:03:53 CEST] <Guest72430> nope still getting errors
[16:05:37 CEST] <Guest72430> ERROR: Invalid argument/option - '-i'.Type "FORFILES /?" for usage.
[16:10:19 CEST] <Guest72430> strange I used /? and it should work everything is in doublequotes
[16:18:52 CEST] <Guest72430> you've tested the script right?
[16:25:40 CEST] <rabbe> how to solve this? Specified type attribute of application/dash+xml is not supported. Load of media resource http://localhost/live/test.mpd failed.
[16:25:55 CEST] <rabbe> i've added it to ginx mime.types
[16:26:43 CEST] <funman> /usr/bin/ffmpeg -ar 48000 -i ird.ts
[16:26:46 CEST] <funman> Option sample_rate not found.
[16:27:11 CEST] <funman> what am I missing?
[16:28:22 CEST] <funman> -ar:0:3 (i want the option for 3rd audio track) doesn't change a thing
[16:31:57 CEST] <DHE> you don't set the sample rate for the input unless it's a headerless format that needs it specified
[16:36:38 CEST] <funman> it's a headerless format that needs it specified
[16:37:34 CEST] <funman> another one:
[16:37:39 CEST] <funman> /usr/bin/ffmpeg -non_pcm_mode copy -y -i ird.ts -map 0:3 -c:a:0 pcm_s32le -f s32le s302.raw
[16:37:44 CEST] <funman> Codec AVOption non_pcm_mode (Chooses what to do with NON-PCM) specified for input file #0 (ird.ts) has not been used for any stream. The most likely reason is either wrong type (e.g. a video option with no video streams) or that it is a private option of some decoder which was not actually used for any stream.
[16:40:29 CEST] <Guest72430> does anyone what I'm doing wrong here: cmd is: FORFILES -p "C:\mount\Test\input" /m *.mp4 /s -c "cmd /c ffmpeg -i @path -vn -c:a mp3 -f mp3 @PATH.mp3" error I get is: ERROR: Invalid argument/option - '-i'.Type "FORFILES /?" for usage.
[16:40:54 CEST] <Guest72430> I get that FORFILES has a problem with the ffmpeg -i command
[16:41:08 CEST] <Guest72430> I tried putting it in quotes but that didn't work
[16:41:22 CEST] <Nacht> I put it in a .bat file btw
[16:42:02 CEST] <Nacht> Did you change the path ?
[16:42:58 CEST] <Guest72430> same problem msg with the bat
[16:43:25 CEST] <Guest72430> and yes I changed to a path with the subfolders and files in it
[16:45:02 CEST] <Guest72430> to me it looks like forfiles has a problem with the ffmpeg commands
[16:45:33 CEST] <Guest72430> but if it woked for you I'm kinda stuck
[16:47:18 CEST] <Guest72430> god damn windows
[16:48:50 CEST] <Guest72430> I just found this: To include special characters in the command line, use the hexadecimal code for the character in 0xHH format (ex. 0x09 for tab). Internal CMD.exe commands should be preceded with "cmd /c".
[16:50:06 CEST] <Guest72430> maybe it's not working because ffmpeg is not a cmd.exe command>
[16:50:08 CEST] <Guest72430> ?
[16:50:33 CEST] <Guest72430> I've used and tested ffmpeg though
[16:51:04 CEST] <Nacht> It worked for me ?
[16:51:09 CEST] <Guest72430> and the error only states that it has problems with -i
[16:51:26 CEST] <Guest72430> god damn it I hate this kinda stuff
[16:51:36 CEST] <Guest72430> feel like I'm cursed
[16:53:07 CEST] <Nacht> ffmpeg is in your PATH ?
[16:54:52 CEST] <Guest72430> what do you mean with in my path?
[16:55:13 CEST] <Guest72430> I put it in win32 so I can use it in cmd.exe without path
[16:55:24 CEST] <Guest72430> I mean system32
[17:00:12 CEST] <Nacht> If you want to run a binairy in windows in your cmd without having to use the entire path, you should put it in your envoirement path
[17:00:16 CEST] <Nacht> NOT system32
[17:02:33 CEST] <Guest72430> holy shit I found the problem I had to remove the "" around the path
[17:47:16 CEST] <vans163> what is the difference between baseline and constrained baseline?
[17:47:38 CEST] <JEEB> baseline has various additional features which are not found in main/high profiles
[17:47:46 CEST] <JEEB> pretty much nothing uses or implements those
[17:47:55 CEST] <JEEB> constrained baseline is what is a subset of main/high
[17:48:08 CEST] <JEEB> (and it is what is meant with "baseline" in 99% of all cases)
[17:48:14 CEST] <furq> x264 baseline profile is actually CBP
[17:48:25 CEST] <furq> so there's usually no practical difference unless you're dealing with some weird hardware encoder
[17:48:34 CEST] <vans163> JEEB: ah thanks, so contrained baseline is an improvement over baseline
[17:48:37 CEST] <vans163> not worse
[17:48:46 CEST] <furq> CBP supports fewer features than baseline
[17:48:57 CEST] <vans163> oh
[17:49:01 CEST] <furq> https://en.wikipedia.org/wiki/H.264/MPEG-4_AVC#Profiles
[17:49:05 CEST] <furq> see the table
[17:49:10 CEST] <vans163> baseline is already so bad though.. this is for WebRTC
[17:49:32 CEST] <JEEB> vans163: the thing is, pretty much nothing supports those additional features
[17:49:36 CEST] <furq> right
[17:49:42 CEST] <furq> openh264 only outputs CBP afaik
[17:49:54 CEST] <vans163> JEEB: ah i got it, yes they use Openh264 decoder
[17:49:56 CEST] <JEEB> so constrained baseline is pretty much what people mean when they say "baseline"
[17:49:57 CEST] <vans163> and encoder
[17:50:11 CEST] <furq> also those additional features in baseline are all for error prevention afaik
[17:50:22 CEST] <furq> they won't make the picture any nicer
[17:51:25 CEST] <vans163> got it. il have to play with webrtc later and try to get the browsers hardware decoder to decode main/high instead of baseline
[17:51:54 CEST] <vans163> and if software decoder is chosen, fallback to CBP so openh264 can decode it in decent speed
[17:52:13 CEST] <vans163> i noticed openh264 can decode main/high profiles, but it takes almost 2x if not more CPU usage and time
[17:52:24 CEST] <furq> i take it you can't just bump the bitrate
[17:52:36 CEST] <vans163> furq: i can
[17:52:45 CEST] <furq> baseline should look fine if you throw enough rate at it
[17:52:58 CEST] <furq> at least with x264 it will, idk about openh264
[17:53:17 CEST] <vans163> furq: any idea what the recommended rate is for 30fps 720p and 1080p?
[17:53:29 CEST] <furq> depends massively on the source
[17:53:37 CEST] <furq> you'll probably just have to go with trial and error
[17:53:39 CEST] <vans163> source is very colorful(?_
[17:54:05 CEST] <vans163> i noticed for 30fps 720p at 16mbps is much better than 8mbps
[17:54:14 CEST] <vans163> and 16->32mbps not much increase
[17:54:41 CEST] <vans163> but afaik a main/high profile with 5-8mbps looks like the 16mbps baseline, but im not sure
[17:55:01 CEST] <furq> if that's main/high from x264 then i'd expect that to be better in general
[17:55:12 CEST] <furq> the only reason to use openh264 is that there's no licensing fee afaik
[17:55:26 CEST] <vans163> its main/high from nvenc
[17:55:32 CEST] <furq> if that's not of concern to you then you're probably better off using x264 for baseline as well
[17:55:35 CEST] <furq> oh
[17:55:50 CEST] <vans163> but i want the client to decode it which is a webrtc browser (chrome, firefox)
[17:56:11 CEST] <furq> well yeah any constrained baseline stream should work, regardless of encoder
[17:59:51 CEST] <vans163> furq, JEEB: thanks good to know what CBP is now
[18:00:00 CEST] <vans163> oh while were on the topic
[18:00:12 CEST] <vans163> theres an option for level-asymmetry-allowed 1/0
[18:00:28 CEST] <vans163> any idea what this option could mean
[18:03:29 CEST] <vans163> i see so Main and High give you Interlaced Coding and CABAC which I guess is respinsible for the bandwith savings
[18:03:50 CEST] <vans163> b slices im not using as they case latency in the decoder
[18:05:15 CEST] <JEEB> cabac is the biggest thing
[18:06:00 CEST] <JEEB> b-pictures are useful for compression but yes, add latency (on the level of N frames up to 16 I think)
[18:06:28 CEST] <vans163> going from main to high seems to offer 8x8 vs 4x4 transform adaptivity
[18:06:50 CEST] <vans163> and then the next step up i guess is high244
[18:06:57 CEST] <vans163> for "perfect" color
[18:07:39 CEST] <vans163> openh264 repo does have a cabac decoder
[18:07:50 CEST] <vans163> which is maybe why i noticed it can decode main?
[18:08:45 CEST] <JEEB> yes, 8x8dct is a high profile only feature. limited use compared to cabac/b-pictures you get with main
[18:08:57 CEST] <JEEB> or well, limited results
[18:11:03 CEST] <vans163> JEEB: i see, so basically I just want CABAC as the main bitrate saving feature. 1 annoying thing I noticed at 8mbps vs 16mbps on a baseline profile was, at 8mbps every time the iframe came (every 3~ seconds at 30 fps 100 frames) the picture blurred
[18:11:11 CEST] <vans163> at 16mbps the blur never happened
[18:11:35 CEST] <vans163> it blurred for like 10-15 frames
[18:21:03 CEST] <Johnjay> Why do I need the v=0 in this command line?
[18:21:25 CEST] <Johnjay> https://pastebin.com/pZEMAu6C
[18:21:39 CEST] <MooseMoose> Is there a way to chain -f mpegts -map p:19 to lavfi? I've got an MPTS where I'd like to be able to extract the subcc based off the program number.
[18:22:42 CEST] <furq> !filter concat @Johnjay
[18:22:42 CEST] <nfobot> Johnjay: http://ffmpeg.org/ffmpeg-filters.html#concat
[18:25:03 CEST] <Johnjay> yes it says the default of v is 1
[18:25:06 CEST] <Johnjay> but i only have audio files
[18:25:12 CEST] <Johnjay> so why is saying v=0 necessary
[18:26:41 CEST] <furq> because the filter defaults to 2
[18:26:44 CEST] <furq> or 1, even
[18:30:01 CEST] <Johnjay> hmm ok
[18:30:08 CEST] <Johnjay> the error message was totally confusing
[18:32:02 CEST] <Johnjay> Stream specifier ':a:0' in filtergraph description [0:a:0] [1:a:0] concat=n=2:a= 1 [a] matches no streams.
[18:32:14 CEST] <Johnjay> But when I put the v=1 in it goes away
[18:32:33 CEST] <Johnjay> er v=0
[18:35:14 CEST] <Hopper_> Hey FFMPEG, getting an error when trying to overlay text on my video stream. https://pastebin.com/pfDCUpeb
[18:39:30 CEST] <furq> Hopper_: remove the " after hstack
[18:40:18 CEST] <Hopper_> But then there is still one at the start of drawtext=
[18:40:48 CEST] <furq> looks like you get to have fun with escaping quotes
[18:40:52 CEST] <furq> lucky~
[18:41:11 CEST] <Hopper_> I have no idea how this syntax operates...
[18:41:11 CEST] <furq> you don't actually need the ones around drawtext tbh
[18:41:18 CEST] <furq> if the whole thing is in quotes
[18:41:21 CEST] <Hopper_> But I'm using spaces.
[18:41:32 CEST] <furq> right, but the entire filterchain is quoted
[18:41:36 CEST] <Hopper_> Oh, okay.
[18:41:51 CEST] <Hopper_> I'll try that
[18:41:53 CEST] <furq> also you want to get rid of that trailing : after fontsize=24
[18:42:12 CEST] <Hopper_> Oh, that implies another filter, right?
[18:42:36 CEST] <Hopper_> Perameter*
[18:42:51 CEST] <Johnjay> correct
[18:43:00 CEST] <Johnjay> the doc makes the syntax of filtergraphs very confusing at first
[18:43:53 CEST] <Hopper_> "No such filter: 'hstack drawtext'"
[18:44:02 CEST] <furq> hstack,drawtext
[18:46:24 CEST] <Hopper_> furq: Just when I thought I was getting a hang of FFMPEG, >.<
[18:46:25 CEST] <Hopper_> https://pastebin.com/uhjWeUiB
[18:47:33 CEST] <furq> good old windows path separators
[18:48:00 CEST] <tdr> Both text and text file provided. Please provide only one <--- shouldnt be that bad
[18:48:01 CEST] <furq> i think last time i tried to pass an absolute path to fontfile i gave up and just put it in the working directory
[18:48:20 CEST] <furq> you probably want to replace those \s with \\ or \\\ or \\\\ or...
[18:48:36 CEST] <furq> or maybe / but idk if that works
[18:51:14 CEST] <Johnjay> Hopper why are you taking input from 2 different cameras?
[18:51:44 CEST] <Hopper_> Johnjay: 2 side of my device need monitoring.
[18:51:58 CEST] <Hopper_> furq: Ya, it is in the working directory.
[18:52:05 CEST] <furq> pass a relative path then
[18:52:07 CEST] <Hopper_> I guess I should take out the path.
[18:53:50 CEST] <tdr> or at least change those backslashes that are being interpreted as escapes
[18:54:02 CEST] <tdr> (furq's suggestion)
[18:54:16 CEST] <furq> well my suggestion is just pass a relative path with no slashes at all
[18:54:22 CEST] <furq> anything else is a giant pain on windows iirc
[18:54:44 CEST] <tdr> furq, quote magic doesn't work on windozen?
[18:54:47 CEST] <Johnjay> pro tip: you can open a command window on windows in a given directory
[18:54:51 CEST] <Johnjay> by holding down the shift key
[18:55:07 CEST] <Johnjay> i.e. shift-right click -> Open Command window here
[18:55:30 CEST] <Johnjay> i've found windows and linux are both Pita just in different ways.
[18:56:25 CEST] <MooseMoose> git-bash makes life on windows simpler at times
[18:58:15 CEST] <Johnjay> I've had some success with msys2
[19:03:36 CEST] <Hopper_> Now I'm getting video input too full...
[19:11:19 CEST] <feliwir> hey, how do i seek to a beginning of a file (a reset basically). When i do: av_seek_frame(format_ctx, stream_idx, 0, AVSEEK_FLAG_BYTE); there is no impact
[19:11:33 CEST] <feliwir> same when i use AVSEEK_FLAG_FRAME
[19:28:43 CEST] <Johnjay> hmm
[19:28:49 CEST] <Johnjay> is there a way with ffmpeg to "pad" out a file?
[19:29:09 CEST] <Johnjay> I.e. take file A and concat copies of file B until file A is X seconds long?
[19:54:40 CEST] <Puck`> hi everyone
[19:54:57 CEST] <Puck`> is there a method to include images in a live video stream? These images would be changes every ~3 minutes.
[19:55:09 CEST] <Puck`> *changed
[20:00:58 CEST] <Hopper_> furq: Is it possible to use hstack and pad at the same time?
[20:01:37 CEST] <Hopper_> nvm, I think I found a solution.
[20:13:30 CEST] <Johnjay> well i'll be fucked
[20:13:35 CEST] <Johnjay> there is a pad filter in ffmpeg
[20:13:37 CEST] <Johnjay> apad
[20:13:49 CEST] <Johnjay> i guess i don't need this 10secsilence.mp3 file anymore
[20:14:47 CEST] <Johnjay> although i'm not sure if i can use apad with segmenting effectively
[20:15:03 CEST] <Johnjay> i'll need a way to find the last file output from the segment filter and then pad it
[20:46:53 CEST] <MooseMoose> Can ffmpeg transcode interlaced to progressive using nvdec and nvenc?
[20:49:32 CEST] <alexpigment> MooseMoose, I don't have a lot of experience with using nvdec (although I've used nvenc quite a bit). Does using nvdec prevent you from using -vf yadif=1 ?
[20:50:07 CEST] <alexpigment> (if yadif=0 if you want to throw away half of the temporal resolution)
[20:50:17 CEST] <alexpigment> *or yadif=0, i mean
[20:50:18 CEST] <MooseMoose> it's kind of a sneaky question, I'm using the nvidia sdk separately but ffmpeg is about the only real implementation for reference
[20:50:40 CEST] <MooseMoose> I don't see the progressive profile being used so I was curious
[20:51:27 CEST] <alexpigment> well, you might see if you can tap into cuda deinterlace
[20:55:40 CEST] <MooseMoose> I believe ffmpeg already tells nvdec to deinterlace directly
[20:56:07 CEST] <alexpigment> so what exactly is telling you the output is still interlaced?
[20:56:58 CEST] <alexpigment> anyway, this might help: https://devtalk.nvidia.com/default/topic/1023784/-resolved-ffmpeg-cuvid-nvd…
[20:58:05 CEST] <furq> -deint 0 is the default here
[20:58:25 CEST] <furq> nvm i got the question backwards
[20:59:16 CEST] <BtbN> That's a weird response
[20:59:24 CEST] <BtbN> Just double the input framerate manually, and you're good
[21:00:27 CEST] <alexpigment> BtbN: who are you responding to?
[21:00:35 CEST] <BtbN> that forum thing
[21:00:42 CEST] <alexpigment> oh
[21:00:45 CEST] <alexpigment> the original question is unrelated
[21:00:58 CEST] <alexpigment> i pasted it just because it showed an example of how to set up an ffmpeg command line
[21:01:19 CEST] <BtbN> you can also freely use yadif with cuvid/nvenc, if you're fine with the CPU usage it causes
[21:01:19 CEST] <alexpigment> i am vehemently opposed to dropping temporal resolution, personally, but to each his own
[21:02:39 CEST] <MooseMoose> mmm looks like ffmpeg spits out the right result. Guess I'll go mad finding out why my stuff doesn't
[21:03:25 CEST] <alexpigment> MooseMoose: just to make sure, you're not expecting the H.264 profile to change to something like "Progressive High Profile", right?
[21:03:49 CEST] <BtbN> cuvid pretty much always deinterlaces
[21:04:02 CEST] <BtbN> The "Weave" Deinterlacer is a "do nothing" deinterlacer though
[21:04:11 CEST] <MooseMoose> this is more of an adventure of "how to force nvenc to spit out progressive" with ffmpeg as a reference
[21:04:14 CEST] <alexpigment> weave is a flawed concept imho
[21:04:22 CEST] <MooseMoose> with nvidia's tragic documentation
[21:04:34 CEST] <BtbN> progressive is the default
[21:04:43 CEST] <BtbN> you need to force it really hard to make it output interlaced
[21:04:50 CEST] <BtbN> so hard ffmpeg does not fully implement it
[21:04:51 CEST] <alexpigment> again, what's making you think it's interlaced? just visual inspection or something is reporting it?
[21:05:00 CEST] <MooseMoose> nvidia's sample sdk transcoder spits out interlaced content for me
[21:05:13 CEST] <MooseMoose> mediainfo for quick reference
[21:05:14 CEST] <BtbN> "Weave" just means "Take the two fields, and put them into one picture"
[21:05:16 CEST] <BtbN> so, the default
[21:05:33 CEST] <BtbN> It's a "Do-Nothing" if the content isn't field-coded
[21:05:40 CEST] <alexpigment> BtbN: you said words, but i still read them as "flawed concept" ;)
[21:05:55 CEST] <BtbN> How else would you want to put two interlaced fields into one frame?
[21:06:02 CEST] <BtbN> On top of one another?
[21:06:10 CEST] <alexpigment> not by assuming that the two fields are from the same time stamp
[21:06:23 CEST] <alexpigment> weave assumes this
[21:06:44 CEST] <ZEEX> im using -> ffmpeg -f gdigrab -i title="theWindow" ... to capture a desktop window... can I use wilcards or regex for the window name ?
[21:06:48 CEST] <BtbN> They are in the same packet, so they in fact do only have one timestamp
[21:06:57 CEST] <alexpigment> anyway, this is a side conversation really. i just get very annoyed with people's disregard for properly handling interlaced content
[21:07:28 CEST] <BtbN> If you're using mbaff, what most sources do, you only have one picture in the bitstream anyway
[21:07:50 CEST] <alexpigment> BtbN: the original time stamps aren't the same. "weave" deinterlacing basically only works if nothing has changed between field a and field b
[21:08:06 CEST] <BtbN> again, Weave is not an actual deinterlacer.
[21:08:13 CEST] <alexpigment> it's an actual deinterlace method
[21:08:14 CEST] <BtbN> It's mostly a no-op
[21:08:27 CEST] <alexpigment> weave, blend, bob, etc
[21:08:40 CEST] <BtbN> The only time it does something is when the fields are coded as seperate pictures. It weaves them into one picture, as everything else expacts that.
[21:09:23 CEST] <alexpigment> the only safe default way to deinterlace is bob
[21:09:42 CEST] <BtbN> Weave is _NOT_ deinterlacing
[21:09:44 CEST] <alexpigment> weave can only be done if there's something that first determines that no motion has occurred between field a and field b
[21:09:47 CEST] <BtbN> it is storing two fields in one picture
[21:09:56 CEST] <BtbN> So yadif and the like can handle it, or nvenc can encode it
[21:10:00 CEST] <BtbN> encode as interlaced
[21:10:24 CEST] <alexpigment> this use of the term weave is completely new to me
[21:10:43 CEST] <alexpigment> I'll have to take your word for you, but it sounds incorrect to me
[21:10:49 CEST] <BtbN> cuvid only has 3 output modes for Interlaced Content: Weave, Bob and Adaptive
[21:10:52 CEST] <alexpigment> Weave has always been - to me - a mode of deinterlacing
[21:11:01 CEST] <BtbN> And Weave is the "Do not deinterlace" option of the 3
[21:11:16 CEST] <alexpigment> BtbN: if that is true, then someone fucked up
[21:11:33 CEST] <BtbN> No, your understanding of Interlaced content just seems to be weird
[21:11:41 CEST] <BtbN> You have two fields per frame
[21:11:53 CEST] <alexpigment> BtbN: I work with interlaced content every single day
[21:12:03 CEST] <BtbN> and the default way to transport them is weaved in a single picture, with even and odd lines representing one field
[21:12:05 CEST] <alexpigment> I deal almost exclusively with interlaced content
[21:12:36 CEST] <BtbN> hence the name of the "Deinterlacer".
[21:12:42 CEST] <alexpigment> BtbN: again, this is the first time i've ever heard of weave being used in that manner. it sounds like you're saying that "weave" and "interlaced" are equivalent
[21:13:10 CEST] <BtbN> Weaving is the process of producing a line interleaved picture of two fields...
[21:13:29 CEST] <BtbN> All the deinterlacing filters in ffmpeg operate on such pictures
[21:14:10 CEST] <alexpigment> OK, so what you're saying is that since the interlaced method stores them as such, "weave" is effectively not processing, although the result would be functionally identical to an interlaced video that has been deinterlaced using the Weave method
[21:14:23 CEST] <alexpigment> which, sure, I can see how the distinction is technical
[21:14:33 CEST] <alexpigment> but Weave is first and foremost a deinterlacing method
[21:14:51 CEST] <BtbN> If by deinterlacing you mean taking two entirely seperate fields, and putting them in one picture, sure.
[21:15:10 CEST] <BtbN> But as pretty much everything already deals with line interleaved pictures, Weave is a No-Op in most cases
[21:17:06 CEST] <alexpigment> BtbN: ok, I see where you're coming from. I just think it's kinda dumb if nvdec has 3 modes, two of them are deinterlacing methods, and the third doesn't deinterlace but is named after a deinterlacing method
[21:17:25 CEST] <BtbN> It only means that it will output a line interleaved picture
[21:17:37 CEST] <BtbN> It cannot output the two fields seperately
[21:18:01 CEST] <BtbN> and as the cuvid API is old, from times where the codecs only carried the fields seperately, it makes sense to have that in the API like that
[21:19:18 CEST] <alexpigment> Well, lemme rephrase my original statement then: weave deinterlacing is a flawed concept and the "weave" nvdec mode is a bad choice
[21:19:31 CEST] <BtbN> Why is it a bad choice?
[21:19:45 CEST] <BtbN> If you want to not deinterlace the picture, it's your only choice.
[21:19:53 CEST] <alexpigment> no, not at all
[21:19:59 CEST] <alexpigment> well
[21:20:01 CEST] <alexpigment> ok
[21:20:07 CEST] <alexpigment> if you want to remain interlaced
[21:20:24 CEST] <alexpigment> but if you want to have progressive picture, you want to use one of the other two methods
[21:20:30 CEST] <alexpigment> which was the start of this topic
[21:20:38 CEST] <BtbN> The other two deinterlacers aren't too amazing either
[21:20:48 CEST] <BtbN> yadif generally gives better results. And for that, you also want to set cuvid to Weave
[21:21:25 CEST] <alexpigment> BtbN: it's not about the merits of each deinterlacer. It's just that true interlaced content has either 50 or 60fps of temporal resolution
[21:22:06 CEST] <alexpigment> when you weave (or leave it weaved as you're saying) and convert to progressive, you're combining data from two timestamps and halving the temporal resolution
[21:22:12 CEST] <alexpigment> combing occurs
[21:22:14 CEST] <alexpigment> looks bad
[21:22:41 CEST] <BtbN> combing only occurs if you displays the weaved picture without actual deinterlacing
[21:23:24 CEST] <BtbN> The actual deinterlacer which splits the two fields again does interpolate proper timestamps
[21:23:55 CEST] <alexpigment> BtbN: again, I'm talking about when converting from interlaced to progressive
[21:24:02 CEST] <alexpigment> you're assuming that it's going to stay interlaced
[21:24:30 CEST] <alexpigment> which, yes, SOME deinterlacer in the chain needs to be doing something less silly than a weave deinterlace method
[21:24:58 CEST] <alexpigment> because weave deinterlacing is a *flawed concept*
[21:29:26 CEST] <MooseMoose> so uh, if the frame *is* deinterlaced, then for encoding it is a NV_ENC_PIC_STRUCT_FRAME?
[21:30:58 CEST] <alexpigment> that sounds right to me, but that's more in BtbN's wheelhouse
[21:32:14 CEST] <MooseMoose> actually yeah, looks like in ffmpeg if its not set to weave it's a STRUCT_FRAME. mmm
[21:33:02 CEST] <MooseMoose> anyway thanks for the help. Looks like ffmpeg has the magic, just gotta find out what I've overlooked
[21:43:52 CEST] <BtbN> MooseMoose, the logic for cuvid in ffmpeg is to detect if a frame was interlaced or not, and if interlaced, apply one of the deinterlacing methods, defaulting to Weave
[21:48:31 CEST] <MooseMoose> Yeah I saw. I figured my problem out, I had missed a setting when Initializing the encoder which was borking progressive mode and causing other insane behavior
[21:49:49 CEST] <kepstin> most of the video decoders in ffmpeg will give you weaved frames when decoding interlaced video, that's a normal and common way of storing interlaced video on computers
[21:50:15 CEST] <kepstin> calling it a "deinterlacing method" is, well, not really correct i guess
[21:50:30 CEST] <BytesBacon> Is there anything ffmpeg could do, or maybe someone knows of something else. That can take PGS subtitles and convert to srt?
[21:50:38 CEST] <BytesBacon> That'd be cli.
[21:51:01 CEST] <kepstin> BytesBacon: pgs subtitles are pictures - you need to run ocr software on them to get text
[21:52:28 CEST] <BytesBacon> The only thing I'm finding out there is all gui required.
[21:54:16 CEST] <BtbN> There is an ocr filter in ffmpeg
[21:54:25 CEST] <BtbN> but the quality of text OCR is questionable at best
[21:55:01 CEST] <BytesBacon> Well I guess I could once it's done manually overview it or run something to spellcheck the srt file.
[21:55:43 CEST] <kepstin> you'd want to manually review it against the images, yeah, and you might have to redo any positioning or typesetting manually
[21:56:54 CEST] <BytesBacon> So I really need to use a gui for this for the best results it seems. Hmm, unless maybe I could use Plex to check it and edit the file manually.
[22:01:43 CEST] <Serg_Penguin> hi ! I try to encode h265 by https://trac.ffmpeg.org/wiki/Encode/H.265, ffmpeg-3.3.4 says "The encoder 'aac' is experimental but experimental codecs are not enabled, add '-strict -2' if you want to use it." I put these before all options, but to no good. Where to put them ?
[22:02:03 CEST] <JEEB> encoder settings go after the input(s)
[22:02:19 CEST] <JEEB> also if you have the latest FFmpeg the AAC encoder is no longer experimental
[22:02:48 CEST] <JEEB> also I am not sure why the help tells you to use -strict -2, while it should be "-strict experimental" which maps internally to -2
[22:02:56 CEST] <BtbN> by now, getting that message means you really should updated your way outdated version
[22:03:40 CEST] <Serg_Penguin> 3.3.4 is old ? so what is new ? Got at https://www.johnvansickle.com/ffmpeg/ just days ago
[22:03:55 CEST] <BtbN> 3.3 does not produce that message.
[22:04:00 CEST] <JEEB> :D
[22:04:32 CEST] <BtbN> It was either 3.2 or 3.3 that un-experimentalized the aac encoder
[22:06:50 CEST] <Serg_Penguin> thanks for order advice, it works. BTW, for me order-dependency of option is very weird, except for key-value parst like 'tar --file backup.tgz' or 'java -Xopt=value -Darg=value1'
[22:07:13 CEST] <BtbN> "order-dependency"?
[22:07:14 CEST] <Serg_Penguin> ... key-value _pairs_
[22:07:43 CEST] <Serg_Penguin> for me, python and GNU guidelines, options are unordered set/dict
[22:07:53 CEST] <JEEB> yea, ffmpeg.c is one of the few where the order matters
[22:07:59 CEST] <JEEB> due to input and output options
[22:08:08 CEST] <JEEB> you can set the same option for either the demuxer or decoder
[22:08:10 CEST] <BtbN> You would have one hell of a time realising a tool like ffmpeg without re-using options like that
[22:08:12 CEST] <JEEB> or to the encoder or muxer
[22:08:21 CEST] <BtbN> You would need like 500 -codec options
[22:08:31 CEST] <Serg_Penguin> no matter how you order them, they work, ex for outright positional args like 'cp' or 'mv'
[22:08:33 CEST] <BtbN> -codec_input_1, -codec_audio_input_1, ...
[22:08:34 CEST] <JEEB> nah, you'd just need to prepend -decoder -demuxer
[22:08:41 CEST] <JEEB> or encoder/muxer
[22:08:59 CEST] <kepstin> but how do you handle multiple output and input files then? :)
[22:09:03 CEST] <JEEB> although yes, duplication often happens so what BtbN says is more realistic
[22:09:54 CEST] <BtbN> Options are evaluated left to right, and always affect the next input/output following them.
[22:10:10 CEST] <BtbN> The right most value that matches something wins if multiple of the same are specified.
[22:11:59 CEST] <Serg_Penguin> 2i7M to 6.4M at 17.33 fps, but i have maybe weeks or months of video I was thinking of compressing
[22:12:19 CEST] <Serg_Penguin> ... 217M to 6.4M
[22:13:20 CEST] <Serg_Penguin> can it compress by GPU ?
[22:13:38 CEST] <BtbN> you don't want to.
[22:13:45 CEST] <DHE> it takes a rather new nvidia GPU if you're using nvenc to support h265 compression, but it can be done
[22:14:03 CEST] <JEEB> note: no GPGPU is used
[22:14:04 CEST] <BtbN> You really do not want to use GPUs for HEVC encoding.
[22:14:21 CEST] <BtbN> Might as well just use libx264
[22:14:35 CEST] <JEEB> even the vendors selling you solutions with kool-aid have stopped a few years ago from trying to throw GPGPU at video encoding
[22:14:38 CEST] <JEEB> as it doesn't really work
[22:14:51 CEST] <JEEB> (unless you make the format from the ground up for that type stuff)
[22:15:01 CEST] <JEEB> (which also means "goodbye high compresison")
[22:16:17 CEST] <DHE> your GPU is for when you NEED realtime compression in the face of large video (1080p and higher) or maybe if you just need to capture a stream and you're willing to throw bits at it for faster throughput. but even in that case I'd go with x264 veryfast
[22:17:55 CEST] <teratorn> hey kids, suppose you wanted to get better economic value than xencoder (etc) for h264 transcoding... do you think rolling your own rack server crammed full of hw-accelerated capacity would be the start of a possible solution? any other ideas for saving those transcoding dollars?
[22:18:32 CEST] <BtbN> Threadripper seems like good economic value to me
[22:19:10 CEST] <BtbN> possibly the best you will get anywhere
[22:19:27 CEST] <BtbN> 16 cores gives you quite some FPS with x264
[22:19:37 CEST] <teratorn> BtbN: *nod*
[22:19:46 CEST] <teratorn> obviously i would prefer to stick with x264
[22:19:58 CEST] <alexpigment> i'm kinda curious what the i7-8700k does compared to threadripper
[22:20:04 CEST] <BtbN> poorly?
[22:20:10 CEST] <BtbN> it's only 6 cores
[22:20:14 CEST] <alexpigment> well, intel still has an edge on IPC
[22:20:17 CEST] <teratorn> but quality isn't the #1 priority - if there was a half-way decent option for hw-accel h264 I would love to know about it
[22:20:26 CEST] <alexpigment> and in some cases, they do surprisingly well even with fewer core counts
[22:20:36 CEST] <BtbN> It's almost 3 times as many cores
[22:20:39 CEST] <alexpigment> right
[22:20:55 CEST] <BtbN> if you're only transcoding a single stream, the Intel might be faster
[22:21:13 CEST] <BtbN> but the moment it's more than one stream, the Threadripper will shredd the Intel
[22:21:14 CEST] <alexpigment> but if you look up a 7700k and compare it to an 1800x and similar, the 7700k is surprisingly fast
[22:21:28 CEST] <BtbN> That's because it's almost 1GHz faster
[22:21:37 CEST] <alexpigment> BtbN: yeah that's true, I didn't realize we were talking about multiple streams
[22:22:29 CEST] <alexpigment> anyway, the i7-8700k is the first Intel 6 core I remember seeing that isn't a) a ton of money and b) doesn't sacrifice too much clock speed for the core increase
[22:22:41 CEST] <jkqxz> I think optimising hardware cost ends up giving you a large number of cheap Intel boxes (like Pentium G46xx type - quick sync can do a lot per unit cost on them), but you have to ask whether you actually want to administer that sort of setup.
[22:22:42 CEST] <BtbN> You can thank AMD for that
[22:22:48 CEST] <jkqxz> Mid-range dual-Xeon (or quite possibly EPYC now, if you can actually buy it) servers are much denser and generally easier to manage.
[22:22:50 CEST] <alexpigment> BtbN: certainly :)
[22:23:10 CEST] <BtbN> Epyc will be less cost-effective than Threadripper
[22:23:14 CEST] <BtbN> as it's more expensive per core
[22:23:28 CEST] <BtbN> The 16 Core Threadripper is by far the cheapest way to get tons of cores
[22:23:43 CEST] <jkqxz> It's also much smaller than a dual-EPYC box, so you have to have more units.
[22:23:57 CEST] <BtbN> Smaller in what way?
[22:24:00 CEST] <BtbN> The die size is the same
[22:24:09 CEST] <jkqxz> Actual compute throughput.
[22:24:37 CEST] <BtbN> hm?
[22:25:01 CEST] <kepstin> yeah, epyc gives you up to 2x more cores per socket than tr, so it's denser in terms of physical rack space.
[22:25:18 CEST] <BtbN> But I doubt it's going to be as cost effective
[22:25:55 CEST] <BytesBacon> How do I go about extracting the PGS subtitles or what is the PGS format extension ffmpeg wants? Can't seem to get it to work, thanks.
[22:26:26 CEST] <jkqxz> Cost should include the overheads of dealing with it to some degree. The cheap Intel boxes are not fun to deal with.
[22:27:20 CEST] <jkqxz> (Threadripper is probably beaten by mid-range Ryzens on that sort of metric, anyway.)
[22:28:09 CEST] <jkqxz> 3x 1600 can probably do more than a 1950X.
[22:28:44 CEST] <BtbN> but you need 3 mainboards for them, and PCUs, and RAM and everything
[22:29:52 CEST] <jkqxz> Cheap AM4 mainboards cost less than 1/3 what TR4 ones do.
[22:31:02 CEST] <teratorn> hmm so xencoder just uses x264 too like everyone...
[22:31:50 CEST] <teratorn> my boss through bandwidth to our own rack server would be problematic - but I think that is nonsense - b/w is dirt cheap
[22:31:56 CEST] <teratorn> s/through/thought/
[22:32:16 CEST] <BtbN> depends on what you send there
[22:32:21 CEST] <BtbN> raw video is enormous
[22:32:43 CEST] <teratorn> oh yeah no, it's already probably h264
[22:32:53 CEST] <teratorn> it just needs various transcoding
[22:34:38 CEST] <teratorn> we're already paying for b/w implicitly anyway, with any cloud transcoding service
[22:34:53 CEST] <teratorn> though they probably get it a little cheaper than we would
[22:36:53 CEST] <BytesBacon> Does ffmpeg need to be compiled with a switch to support extracting PGS subtitles?
[22:41:26 CEST] <c_14> afaik, it just doesn't support writing raw pgs
[22:45:33 CEST] <BytesBacon> How would I go about extracting them from the mkv container.
[22:49:34 CEST] <JEEB> a muxer was recently added http://git.videolan.org/?p=ffmpeg.git;a=commit;h=7a6bd541528b4d00b52d422d02…
[22:49:54 CEST] <JEEB> (that's the libbluray dev)
[23:30:59 CEST] <Dianaxxyyzz> Hello all
[23:43:52 CEST] <rabbe> is there any other alternative than ffmpeg with v4l2 to create flv over rtmp from a capture card?
[23:44:17 CEST] <JEEB> there are multiple things but pretty much all of them will utilize FFmpeg's libraries underneath in one way or another
[23:44:38 CEST] <JEEB> (let's just say that you can do a lot of stuff with the libraries)
[23:44:43 CEST] <rabbe> seems v4l2 has some bug affecting my magewell capture card
[23:44:57 CEST] <JEEB> I recommend reporting it then
[23:45:10 CEST] <JEEB> although how simple it is to fix depends
[23:45:15 CEST] <rabbe> it was reported. https://trac.ffmpeg.org/ticket/4030
[23:45:20 CEST] <JEEB> ok, cheers
[23:45:57 CEST] <JEEB> uhh
[23:46:04 CEST] <JEEB> that issue was seemingly fixed ~2 years ago
[23:46:57 CEST] <rabbe> but not in the official v4l2 releases, right?
[23:47:37 CEST] <JEEB> uhh
[23:47:48 CEST] <JEEB> that patch was for libavdevice which is part of FFmpeg
[23:48:12 CEST] <rabbe> aha,, well, i read different threads
[23:48:25 CEST] <rabbe> so is it fixed in ffmpeg?
[23:48:53 CEST] <JEEB> that specific issue you linked to ends with "Fixed in http://git.videolan.org/?p=ffmpeg.git;a=commitdiff;h=28f20d2ff487aa589643d8… "
[23:48:56 CEST] <Dianaxxyyzz> if it was fixed in libavdevice , was fixed in ffmpeg too :)
[23:49:24 CEST] <Dianaxxyyzz> ffmpeg.exe or linux binary is just a binary who use the ffmpeg libraries :)
[23:49:25 CEST] <rabbe> but i still have it.. and i installed ffmpeg not long ago
[23:49:53 CEST] <JEEB> Dianaxxyyzz: granted depending on ffmpeg.c's API usage not everything fixed in the libraries (or made possible) is possible with it
[23:49:56 CEST] <furq> what ffmpeg version
[23:50:07 CEST] <Dianaxxyyzz> try git version
[23:50:41 CEST] <Dianaxxyyzz> compile yourself last version and check that
[23:50:51 CEST] <rabbe> ffmpeg version 2.4.3-1ubuntu1~trusty6 Copyright (c) 2000-2014 the FFmpeg developers
[23:50:51 CEST] <rabbe> built on Nov 22 2014 17:07:19 with gcc 4.8 (Ubuntu 4.8.2-19ubuntu1)
[23:50:56 CEST] <JEEB> woooah
[23:50:56 CEST] <furq> lol
[23:50:57 CEST] <Dianaxxyyzz> loooooooooool
[23:50:59 CEST] <furq> yeah that's old
[23:50:59 CEST] <rabbe> didn't sound that recent :)
[23:51:02 CEST] <Dianaxxyyzz> antique
[23:51:06 CEST] <Dianaxxyyzz> :)
[23:51:07 CEST] <rabbe> wtf
[23:51:14 CEST] <furq> i don't even know what ubuntu version that is
[23:51:19 CEST] <furq> 15.10?
[23:51:19 CEST] <Dianaxxyyzz> ancient one version :)
[23:51:20 CEST] <JEEB> the 4.8.2 gives it away
[23:51:21 CEST] <JEEB> 14.04
[23:51:27 CEST] <furq> did 14.04 even have ffmpeg
[23:51:28 CEST] <JEEB> and thr trusty
[23:51:35 CEST] <furq> i thought it was gone until 15.10
[23:51:40 CEST] <JEEB> probably a PPA? no idea :P
[23:51:41 CEST] <Dianaxxyyzz> :)) compile it man ,compile last version
[23:51:44 CEST] <furq> maybe
[23:51:49 CEST] <rabbe> kinda new to this linux world.. but i think i just ran apt-get or something
[23:52:01 CEST] <rabbe> sheesh
[23:52:10 CEST] <furq> ubuntu isn't a rolling distro
[23:52:12 CEST] <alexpigment> apt get install really old ffmpeg ;)
[23:52:14 CEST] <Dianaxxyyzz> https://trac.ffmpeg.org/wiki/CompilationGuide/Ubuntu
[23:52:18 CEST] <rabbe> hehe
[23:52:20 CEST] <Dianaxxyyzz> this allways works good
[23:52:27 CEST] <furq> whatever package versions were released at the time the distro was released are what you get forever
[23:52:30 CEST] <furq> other than security fixes
[23:52:36 CEST] <furq> https://www.johnvansickle.com/ffmpeg/
[23:52:44 CEST] <furq> just grab one of these if you don't want to upgrade your distro
[23:53:00 CEST] <furq> 14.04 is pretty old though so you should maybe do that
[23:53:05 CEST] <Dianaxxyyzz> install with apt-get all they say in this quide https://trac.ffmpeg.org/wiki/CompilationGuide/Ubuntu , then just compile ffmpeg ,
[23:53:15 CEST] <furq> don't bother compiling it, just get those static builds
[23:53:22 CEST] <furq> you only need to compile it if you need non-free packages
[23:53:39 CEST] <JEEB> yea, if the static versions work and you trust their source then it's fine
[23:53:52 CEST] Action: JEEB tries to stay neutral regarding them
[23:54:02 CEST] <rabbe> who's johnvansickle ? :)
[23:54:05 CEST] <furq> relaxed is probably one of those dang russian malware guys i've heard so much about
[23:54:14 CEST] <JEEB> :D
[23:54:17 CEST] <alexpigment> JEEB: i see your eyelid twitching as you hold back your opinion ;)
[23:54:45 CEST] <Dianaxxyyzz> :)
[23:54:46 CEST] <JEEB> alexpigment: not that sort of evening and to be honest walking a newbie through compilation esp. now that nasm is required for x264 can be a PITA
[23:54:52 CEST] <JEEB> as in, a new enough nasm
[23:54:56 CEST] <JEEB> FFmpeg itself is still OK
[23:55:12 CEST] <Dianaxxyyzz> any of you use MaruOs ?
[23:55:13 CEST] <JEEB> also funny how world goes 'round with nasm/yasm
[23:55:16 CEST] <alexpigment> fair enough
[23:55:33 CEST] <furq> i'm amazed they're still making big enough changes to x264 to require that sort of change
[23:55:37 CEST] <furq> is that for avx2 or some shit
[23:55:40 CEST] <JEEB> AVX512
[23:55:44 CEST] <furq> close enough
[23:55:46 CEST] <JEEB> :)
[23:55:56 CEST] <JEEB> also yasm hasn't been developed for ages now :/
[23:56:05 CEST] <JEEB> they did the usual death call of "we'll totally rewrite this in C++"
[23:56:10 CEST] <furq> nice
[23:56:25 CEST] <JEEB> (it also didn't help that nasm changed its license, which was the initial reason for yasm to spawn at all)
[23:56:39 CEST] <JEEB> so suddenly yasm's raison d'etre went poof
[23:57:21 CEST] <Dianaxxyyzz> does Fabrice Bellard still develop ffmpeg?
[23:57:29 CEST] <furq> not for a long time
[23:57:44 CEST] <Dianaxxyyzz> so since 2002 or so he did not added any code?
[23:58:01 CEST] <furq> i think he's focused on qemu stuff atm
[23:58:02 CEST] <JEEB> you can check the history of the git repo for when he last committed things
[23:58:04 CEST] <JEEB> and yea
[23:58:11 CEST] <JEEB> he's got other pet projects :)
[23:58:17 CEST] <furq> he's a busy man
[23:58:22 CEST] <JEEB> the rest of us can be the cesspool on the internet
[23:58:26 CEST] <Dianaxxyyzz> yes , that I was asking you cause you kno better
[23:58:39 CEST] <furq> he's the kind of guy who makes you wonder wtf you've done with your life
[23:58:55 CEST] <JEEB> I had that when I got in touch with the x264 guys circa 2008
[23:59:14 CEST] <JEEB> "this guy is 1-2 years younger than I am and I can't habla this"
[23:59:17 CEST] <furq> https://bellard.org/
[23:59:20 CEST] <furq> he's far too busy for css
[23:59:23 CEST] <Dianaxxyyzz> i think Fabrice Bellard is genious
[23:59:27 CEST] <Dianaxxyyzz> is he?
[23:59:33 CEST] <furq> i would have thought so
[00:00:00 CEST] --- Tue Oct 3 2017
1
0
[02:19:36 CEST] <michaelni> jamrial, make disctclean ; ./configure && make -j12 doc/examples/transcode_aac_g fails with "gcc: error: doc/examples/transcode_aac.o: No such file or directory"
[02:20:10 CEST] <jamrial> michaelni: does that happen before the merge as well? this is not supposed to touch examples
[02:25:05 CEST] <jamrial> mmh, looks like not
[03:09:37 CEST] <cone-531> ffmpeg 03Michael Niedermayer 07master:64e034da9541: avcodec/jpeg2000: Check that codsty->log2_prec_widths/heights has been initialized
[03:09:37 CEST] <cone-531> ffmpeg 03Michael Niedermayer 07master:4bb80133356b: avcodec/v4l2_buffers: More clear return code documentation
[03:09:37 CEST] <cone-531> ffmpeg 03Michael Niedermayer 07master:b81b8a76b54c: avcodec/v4l2_context: Reduce spelling variations
[03:09:37 CEST] <cone-531> ffmpeg 03Michael Niedermayer 07master:d679f3d02178: avfilter/vf_thumbnail_cuda: Avoid mixing declaration and statements
[04:39:30 CEST] <jamrial> michaelni: pushed a new version where it should be fixed
[04:41:01 CEST] <jamrial> we might want to fully decouple the examples recipes from the fftools ones. there's no point in compiling _g versions for those IMO
[04:44:38 CEST] <atomnuker> yep, stripping/copying can still take a second or two even on an ssd
[05:03:33 CEST] <jamrial> personally i'd also remove it from the fftools as well. they can be stripped during install, much like the libraries
[05:04:03 CEST] <jamrial> i might cook a patch for that and send it to the ml
[06:03:55 CEST] <ldts> jkqxz: what does the Hardware Output/Input column in https://trac.ffmpeg.org/wiki/HWAccelIntro#FFmpegAPIImplementationStatus means?
[06:06:39 CEST] <ldts> trying to understand how is different from HW Context (doesnt hw context provide this support?)
[11:31:52 CEST] <jkqxz> ldts: Um, does raspberry pi really have any v4l2m2m support? Where is it? I'm really quite sure that the desktop platforms do not. (And it seems unlikely anyone will ever accept pushing all of that complexity into the kernel for a nonembedded platform.)
[11:33:13 CEST] <nevcairiel> I was wondering about that, while it would be nice to have a single interface for all desktop platforms, I didn't really believe it to be real
[11:33:26 CEST] <nevcairiel> especially for nvidia with their closed driver
[11:33:48 CEST] <jkqxz> ldts: There are some ad-hoc implementations of hardware surface input/output which don't use the common infrastructure (e.g. mediacodec), so they aren't the same thing.
[18:16:03 CEST] <cone-949> ffmpeg 03James Almer 07master:54ce880a4646: Partially revert "Merge commit '71a49fe25f2e4468fbbadbebef8d073b1b3cc1a5'"
[18:27:53 CEST] <cone-949> ffmpeg 03Karthick J 07master:9e271e3fa3f9: avdevice/decklink_dec: Used av_parity instead of duplicated function
[20:54:36 CEST] <cone-949> ffmpeg 03Carl Eugen Hoyos 07master:59924d5eb116: lavfi/vmafmotion: Allow more pix_fmts.
[21:59:04 CEST] <jamrial> michaelni: did you look at the latest version of the merge?
[22:19:05 CEST] <jkqxz> ldts: There are some ad-hoc implementations of hardware surface input/output which don't use the common infrastructure (e.g. mediacodec), so they aren't the same thing.
[22:19:31 CEST] <jkqxz> ldts: Do raspberry pi and desktop Linux really have V4L2M2M support? Where can I find it?
[22:27:03 CEST] <ldts> jkqxz: every linux system since 2.635 has v4l2 m2m support (I think that a different matter is whether the specific platform running the OS has the hardware capabilities _and_ the driver support for it)...let me check the raspberrypi hardware now (I thought someone mentioned that it had hardware capabilities...maybe not. checking now)
[22:30:24 CEST] <jkqxz> Well, yeah, you can build it. I can build NVENC anywhere too, but it's not going to work on something which isn't Nvidia.
[22:31:05 CEST] <jkqxz> So I don't think that table should be suggesting that people can use V4L2M2M on all desktop Linux, because they can't.
[22:32:34 CEST] <ldts> jkqxz: yes that is correct, but you can't say no either because they might...so it is kind of confusing in my opinion
[22:32:47 CEST] <jkqxz> And probably never will be able to - the whole point of V4L2M2M is to push all of the complexity into binary firmware and the kernel so that userspace can be uniform on Android, and that isn't really a useful thing on desktop.
[22:33:57 CEST] <jkqxz> Is there a Raspberry Pi driver? I couldn't find one from a bit of Googling, but I admit that isn't conclusive.
[22:34:53 CEST] <ldts> jkqxz: ok..but ChromeOS for instance has decided to only support v4l2 m2m IIRC (hence the importance of supporting it)
[22:35:25 CEST] <jkqxz> It also supports VAAPI for all the Intel chips.
[22:35:51 CEST] <cone-949> ffmpeg 03Martin Vignali 07master:ac5908b13f16: libavcodec/exr : add x86 SIMD for predictor
[22:37:03 CEST] <ldts> jkqxz: ah I was thinking of arm ok
[22:39:09 CEST] <ldts> so no I can't find the driver either..maybe raspberry pi h264 support is through some other interface on linux then (I would have thought that its hardware acceleration on Linux should have gone via v4l2)
[22:40:00 CEST] <jkqxz> Raspberry Pi works via OpenMAX or MMAL. A V4L2M2M driver is a plausible thing to exist there, though.
[22:42:37 CEST] <FishPencil> I'm getting undefined references to av_* components. I'm pretty sure one of the external libraries is dll*porting something and it's causing this. Is there a way to find which one without one by one disabling them to see what works?
[22:43:10 CEST] <ldts> jkqxz: yes I Can see the MMAL driver in the raspberry kernel tree...so no v4l2_m2m
[22:43:55 CEST] <jkqxz> There can be multiple.
[22:43:56 CEST] <jkqxz> Ok, table edited.
[22:44:53 CEST] <jkqxz> It would be nice to have some more ARM stuff in that table. Just adding more columns quickly becomes silly, though, so I'm not sure how it would want to work.
[22:45:12 CEST] <jkqxz> Maybe a new table for ARM platforms, or just a list for the APIs?
[22:46:00 CEST] <ldts> yes I am not sure because the table says API Availability and the API is indeed aviable in all Linux systems...no ARM specific
[22:46:44 CEST] <ldts> maybe a table with all known working v4l2_m2m hardware?
[22:47:11 CEST] <jkqxz> IMO all ioctl()s returning ENOSYS does not constitute API availability.
[22:47:36 CEST] <jkqxz> That would be useful, yes.
[22:48:02 CEST] <ldts> yes it makes more sense, so Samsung Exynos, Qualcomm Dragonboards and so on
[22:48:58 CEST] <ldts> so the Platform Availability for v4l2_m2m should say P instead of Y 0r (Y with a * to indicate depends on hardware?)
[22:49:27 CEST] <jkqxz> There should probably be an "Linux on other ARM" column there.
[22:49:55 CEST] <ldts> but raspberry pi is linux on ARM...
[22:50:36 CEST] <ldts> ok I 'll think about this and will post a proposal on the ML
[22:50:37 CEST] <jkqxz> Hence "other". Raspberry Pi shouldn't be special, but it is a very common platform with weird properties which are useful to distinguish.
[23:02:50 CEST] <michaelni> jamrial, i cant seem to find a failure in the latest version
[23:03:06 CEST] <jamrial> michaelni: ok, thanks a lot for testing
[23:28:27 CEST] <cone-949> ffmpeg 03Diego Biurrun 07master:c95169f0ec68: build: Move cli tool sources to a separate subdirectory
[23:28:28 CEST] <cone-949> ffmpeg 03James Almer 07master:2f7ca0b94e49: tools/ismindex: remove unused header
[23:28:29 CEST] <cone-949> ffmpeg 03James Almer 07master:fd5f4ac0813c: Merge commit 'c95169f0ec68bdeeabc5fde8aa4076f406242524'
[00:00:00 CEST] --- Mon Oct 2 2017
1
0
[01:03:36 CEST] <wiak> ive compiled ffmpeg with libvpx git, yet i cant get -row-mt=1 to work hmm
[01:13:56 CEST] <DHE> -key=value isn't ffmpeg syntax
[03:52:57 CEST] <jnollette> hey yall, im trying to build ffmpeg with h265, and im getting an error not found in pkg-config
[03:53:15 CEST] <jnollette> i've added all my dependencies using apt-get, on ubuntu 16.04
[04:27:30 CEST] <jnollette> I gave this a try for h265 - http://tipsonubuntu.com/2016/11/02/install-ffmpeg-3-2-via-ppa-ubuntu-16-04/
[04:27:35 CEST] <jnollette> it worked btw
[08:22:20 CEST] <voltagex> How much data would be transferred if I ran ffprobe on a remote file? (SMB/HTTP)
[09:22:33 CEST] <rabbe> hi. i'm testing ginx with rtmp + webrtc and then i read this statement would you agree with it? "The best and easiest way to stream to a browser is UV4L with WebRTC (much better than mjpeg). It works "out-of-the-box" with the embedded streaming server. No command sauces are required. It optionally supports audio as well. Audio and/or video can be bidirectional. The streaming server can load customized pages too. With
[09:22:33 CEST] <rabbe> chrome (much better than Firefox) latency can be as low as 150ms with Full HD hardware-encoded h264."
[11:20:22 CEST] <killown> is there a way to cut only the first few seconds of a video without need to specify how many seconds the video has? for example ffmpeg -i inputFile -vcodec copy -acodec copy -ss 00:09:23 -to 00:25:33 outputFile I don't want to use the -to, can't ffmpeg detect it automatically?
[12:12:31 CEST] <flux> killown, well, don't use -to then? what happens in that case?
[12:12:57 CEST] <flux> killown, btw, you may also consider using -ss before -i
[13:02:29 CEST] <mgit> Hi, anyone here?
[13:23:36 CEST] <c_14> no
[13:24:00 CEST] <c_14> Just ask your question, if someone can answer they will
[14:18:42 CEST] <blap> 'Liberty is the power that we have over ourselves'
[15:24:07 CEST] <RandomNoob> hey folks, I'm trying to pipe to and from ffmpeg on windows using named pipes. However I'm not sure which format is correct, I tried pipe:name and \.\\pipe\name. However it seems that ffmpeg never connects. I do not get an error
[15:24:13 CEST] <RandomNoob> any input on that?
[15:25:42 CEST] <RandomNoob> cli looks like this: https://pastebin.com/qeMShgpr
[15:26:45 CEST] <RandomNoob> I open the pipe using C#, trying to write to the input stream results in "Pipe not connected yet"
[15:37:28 CEST] <Sharkigator_> RandomNoob why not use anonymous pipes?
[15:37:50 CEST] <RandomNoob> like stdin and stdout?
[15:37:57 CEST] <Sharkigator_> yes
[15:38:23 CEST] <RandomNoob> in that case I would have to set input and output file both to pipe:, right?
[15:38:58 CEST] <Sharkigator_> I used ffmpeg with c# a while back, let me look if i can find it
[15:42:08 CEST] <Sharkigator_> dunno, I guess you just write pipe:
[15:43:18 CEST] <RandomNoob> I'll try that
[16:05:33 CEST] <Easyfab> Is "ffmpeg -i file1 -i file2 -lavfi ssim -f null - " accurate with mkv encoded with ffmpeg ? because ffmpeg -i foreman.y4m foreman.mkv give me SSIM 9.51... and ffmpeg -i foreman.y4m foreman.mp4 ( same x264 kb/s ) give me 14.11... is there a problem with mkv container and lavfi ssim ?
[17:34:39 CEST] <cryptodechange> Heh, CRF 15 gets this One-Punch Man episode to avg 7.5mbps using my settings
[17:34:50 CEST] <cryptodechange> (raw bd to 10bit x264)
[17:34:56 CEST] <cryptodechange> Happy with that
[17:39:02 CEST] <BtbN> again, if you're targetting a specific bitrate, crf is not the mode you should be using.
[17:39:21 CEST] <BtbN> use crf if you don't care about the bitrate and want to achive a certain level of quality no matter what
[17:40:00 CEST] <cryptodechange> Mm, I'm kind of put off by every episode being an exact file size though
[17:40:16 CEST] <cryptodechange> Especially if there's a super busy scene that doesn't get enough bitrate
[17:40:26 CEST] <BtbN> So what do you want then?
[17:40:38 CEST] <BtbN> Either you do want a specific bitrate, or you don't
[17:40:38 CEST] <cryptodechange> I'd rather use a CRF range, where I know in usual tests the perceived quality is not noticeable from raw
[17:40:41 CEST] <cryptodechange> or good enough
[17:41:13 CEST] <cryptodechange> And if the bitrate is lower than usual, drop it to give it a bit more leeway
[17:41:15 CEST] <BtbN> What you want sounds more like abr with a maxrate to me
[17:41:33 CEST] <BtbN> Or even two-pass CBR
[17:42:09 CEST] <cryptodechange> Probably, I've never actually dabbled with it tbh, when I started encoding I didn't really know what the acceptable bitrates were for resolutions/media types
[17:42:35 CEST] <cryptodechange> So I read a few guides on CBR, comparisons etc, and went with CRF
[17:42:38 CEST] <BtbN> the point of two-pass is exactly to prevent what you just mentioned
[17:43:05 CEST] <BtbN> It does two passes, and stores information about high-motion scenes in a file, and uses that information for the second pass
[17:43:24 CEST] <BtbN> so you get the best possible quality for a given filesize
[17:43:50 CEST] <JEEB> but if you don't know that file size you want then CRF is good as it lets you define something else
[17:44:19 CEST] <BtbN> well, but he does seem to not want to exceed a certain bitrate
[17:44:27 CEST] <JEEB> ok
[17:44:31 CEST] <cryptodechange> Well for plex, it buffers ahead by 60 seconds or so before throttling
[17:44:51 CEST] <BtbN> What does that have to do with the quality?
[17:44:53 CEST] <cryptodechange> So e.g. in a very sudden busy scene where it jumps to 14mbps, then normalises
[17:44:55 CEST] <cryptodechange> That's fine for me
[17:45:43 CEST] <BtbN> maxrate vbr with a large vbv buffer size
[17:46:47 CEST] <cryptodechange> Just ran an encode I did through bitrate viewer
[17:46:48 CEST] <cryptodechange> https://imgur.com/a/t3DBF
[17:47:06 CEST] <JEEB> note: those bit rate viewers tend to suck since they don't clearly tell you what they calculate
[17:47:19 CEST] <cryptodechange> I see
[17:48:12 CEST] <cryptodechange> So even though the 'average bitrate' is something, CRF can still variate wildly?
[17:48:30 CEST] <JEEB> ABR and CRF are the two sides of a coin more or less I think?
[17:48:52 CEST] <JEEB> one has you set the bit rate, another has you set the resulting rate factor
[17:49:02 CEST] <cryptodechange> I haven't done enough reading on this
[17:49:32 CEST] <cryptodechange> My concern was that super busy scenes would get blocky and I would need to analyse a lot of content to check
[17:50:17 CEST] <JEEB> both ABR and CRF do try to look at how "bit intensive" a picture is + take speed into mention
[17:50:18 CEST] <BtbN> If you are fine with buffering for 60 seconds, set your maxrate to your desired maximum bitrate, set your vbv buffer size to 60 times that maxrate, and do a vbr encode
[17:50:19 CEST] <cryptodechange> Thinking ahead, when internet infrastructure (at least in the UK) will likely have 300mbps> download within 10 years, even 1gbit, I suppose it's ok
[17:50:44 CEST] <cryptodechange> it's 1/4 the size of Blurays, maybe that's what I should aim for, storage size and trying to 1/2-1/4 the filesize
[17:50:51 CEST] <cryptodechange> of the bluray files*
[17:52:08 CEST] <cryptodechange> I am muxing the raw audio too btw
[17:54:06 CEST] <cryptodechange> I currently use vbv-maxrate=62500:vbv-bufsize=78125
[17:54:11 CEST] <cryptodechange> which I believe is a default from somewhere
[17:55:32 CEST] <JEEB> that is so high that I quite honestly believe it might be worth just not having maxrate+bufsize. the problem being that as soon as you enable it, you get non-determinism
[17:55:51 CEST] <JEEB> as in, if you have threading enabled and VBV/HRD
[17:56:01 CEST] <JEEB> you will get different/non-repeatable results
[17:56:05 CEST] <JEEB> for same input
[17:57:27 CEST] <cryptodechange> I suppose avoiding this route just delays me from learning the command lines
[17:57:33 CEST] <cryptodechange> May aswell dabble in it
[18:50:18 CEST] <cryptodechange> So a safe max bitrate of 10mbit, I would go for -b:v 10M -maxrate 10M
[18:51:37 CEST] <BtbN> you'll also want a large vbv buffer size to compensate spikes
[18:53:46 CEST] <cryptodechange> Trying to figure out a decent value
[18:55:59 CEST] <BtbN> just set it to however long you are ok with buffering
[18:56:06 CEST] <cryptodechange> On plex my 'Transcoder default throttle buffer' is 120 seconds
[18:56:13 CEST] <cryptodechange> (Amount in seconds to buffer before throttling the transcoder.)
[18:56:16 CEST] <BtbN> Whatever that is
[18:59:27 CEST] <cryptodechange> Well, the average bitrate could be <> 10M, so I'll set that to 9 as I'm happy with 8-10, I could just double the that to 18M
[18:59:51 CEST] <cryptodechange> -b:v 9M -maxrate 9M -bufsize 18M
[19:02:09 CEST] <BtbN> that gives you two seconds of buffer max
[19:07:32 CEST] <cryptodechange> Could I do CRF with VBV 2pass?
[19:08:23 CEST] <BtbN> that makes no sense.
[19:08:47 CEST] <Ober> other than -vf deshake are there any good filters for cleaning up shakey video or blurry spots?
[19:10:18 CEST] <cryptodechange> I came across this article
[19:10:20 CEST] <cryptodechange> http://slhck.info/video/2017/03/01/rate-control.html
[19:10:32 CEST] <cryptodechange> 2. Streaming Two-pass CRF or ABR with VBV-constained bitrate.
[19:13:08 CEST] <BtbN> you cannot stream two-pass
[19:26:51 CEST] <DHE> x264 and probably some others support look-ahead, where it will buffer a large amount of video (ie. multiple seconds worth) for short term rate control decisions. obviously this raises latency a boatload, but is the closest thing you'll get
[19:27:26 CEST] <JEEB> that probably talks about VOD :P
[19:27:47 CEST] <JEEB> which for them is still "streaming" as it goes over a limited bandwidth
[19:48:29 CEST] <redrabbit> for my iptv i use buffsize = 2x maxrate
[19:48:43 CEST] <redrabbit> with x264
[19:49:10 CEST] <JEEB> well IPTV has its own limitations since usually the crap boxes and very expensive monitoring tools expect something like 0.5-2x maxrate
[19:49:23 CEST] <JEEB> also lulzily low GOP lengths, of course
[19:49:40 CEST] <redrabbit> with nvenc avc, -rc-lookahead 32
[19:52:43 CEST] <Jymmm> I realize this may be totally unrelated, but anyone know of a channel for ripping audio cd's? I'm trying to understand the best method to get FLAC(?)+CUE and be able to recreate the original CD should mine get damaged.
[19:53:10 CEST] <Mavrik> JEEB, GOP of 15 should be enough for everyone! ;P
[19:55:35 CEST] <cryptodechange> I'm probably going to stick to the CRF for now, as it's for media archiving anywho, if the streaming limits aren't good enough, it'll ffmpeg veryfast from e.g. 9.5mbps to 8mbps or whatever is set
[19:55:40 CEST] <cryptodechange> Which is better than 30mbps to 8mbps
[19:58:17 CEST] <redrabbit> you can use both crf and maxrate
[19:58:53 CEST] <JEEB> yes, VBV|HRD is completely orthogonal to the primary rate control mode (at least in x264)
[19:59:05 CEST] Action: Jymmm is willing to RTFM too, so if anyone has links, they would be appraciated.
[19:59:07 CEST] <JEEB> (caveat: unless you're using constant quantizer mode, which you shouldn't be)
[20:22:14 CEST] <jajaja> how can i convert a video into same format as the source - mp4 that is?
[20:22:48 CEST] <jajaja> it only converts into something else than the original
[20:23:14 CEST] <jajaja> i'm cutting a piece of video out longer video
[20:32:19 CEST] <BtbN> jajaja, do you even need to convert? Does -c copy not work for what you're doing?
[20:42:54 CEST] <blap>
[20:42:57 CEST] <blap>
[20:43:00 CEST] <blap>
[20:43:03 CEST] <blap>
[20:43:06 CEST] <blap>
[20:43:09 CEST] <blap>
[20:43:12 CEST] <blap>
[20:43:15 CEST] <blap>
[20:43:18 CEST] <blap>
[20:43:20 CEST] <Jymmm>
[20:43:21 CEST] <blap>
[20:43:23 CEST] <tdr> thats annoying, please stop
[20:43:24 CEST] <blap>
[20:43:27 CEST] <blap>
[20:43:30 CEST] <blap>
[20:43:33 CEST] <blap>
[20:43:36 CEST] <blap>
[20:43:40 CEST] <Jymmm> blap: /part
[20:43:40 CEST] <blap>
[20:43:44 CEST] <blap>
[20:43:48 CEST] <blap>
[20:43:52 CEST] <blap>
[20:43:55 CEST] <blap>
[20:43:59 CEST] <blap>
[20:44:03 CEST] <blap>
[20:44:06 CEST] <blap>
[20:44:09 CEST] <blap>
[20:44:12 CEST] <blap>
[20:44:15 CEST] <blap>
[20:44:18 CEST] <blap>
[20:44:21 CEST] <blap>
[20:44:24 CEST] <blap>
[20:44:27 CEST] <blap>
[20:44:32 CEST] <Jymmm> blap: Unless you're trolling quit and rejoin to kill that
[21:15:06 CEST] <iive> he is definitely trolling
[21:30:14 CEST] <durandal_1707> noooo
[21:31:41 CEST] <iive> durandal_1707: ?
[21:32:13 CEST] <durandal_1707> iive: dont ban for no reasons
[21:32:40 CEST] <iive> blaenk: 30 lines ascii art that looks like isis flag is definitely a reason.
[21:33:36 CEST] <iive> durandal_1707: ^
[21:33:36 CEST] <durandal_1707> you have strange imagination
[21:33:47 CEST] <blaenk> what???
[21:33:56 CEST] <iive> blaenk: sorry, wrong autocomplete
[21:34:12 CEST] <iive> durandal_1707: well, maybe you can enlighten me what that 30 lines were
[21:34:18 CEST] <blaenk> now I'm on some list cause these logs are public >=O
[21:34:39 CEST] <blaenk> long way to go from blaenk to durandal_1707
[21:34:45 CEST] <iive> blaenk: we are all on some lists. just using linux adds you as POI
[21:51:20 CEST] <iive> blaenk: i think I might have highlighten you because your nick starts with bla... like the spammer. once again, sorry.
[21:51:58 CEST] <blaenk> iive: no worries, all good
[21:59:47 CEST] <furq> fwiw the isis thing is way less offensive than pasting 30 lines into irc
[21:59:54 CEST] <furq> you should hang for that
[22:00:20 CEST] <fChanX> LOL
[22:40:59 CEST] <Chagall> is there a function to find supported codecs for a particular output format or formats that support a particular codec through the API?
[22:41:40 CEST] <JEEB> for video formats there are lists of supported pix_fmts
[22:42:16 CEST] <Chagall> working with audio right now
[22:42:16 CEST] <JEEB> for containers I think it's a bit less simple, since usually it checks in init() or so
[22:42:34 CEST] <Chagall> it goes through init without an issue and just crashes when trying to write the header later on
[22:42:56 CEST] <JEEB> right, that could be difference between external/internal API :)
[22:43:00 CEST] <JEEB> but it shouldn't... crash
[22:43:05 CEST] <JEEB> just tell you "nope, ENOTGOOD"
[22:43:43 CEST] <JEEB> and for audio you can check audio formats, but not sample rates I think
[22:43:49 CEST] <Chagall> well i'm getting an access violation trying to write the header but i haven't found what to check for
[22:46:31 CEST] <Chagall> how do you check for formats?
[22:48:51 CEST] <JEEB> in avcodec it's for audio https://github.com/FFmpeg/FFmpeg/blob/master/libavcodec/aacenc.c#L1093
[22:49:11 CEST] <JEEB> when you "get" an avcodec you are able to poke at that array
[22:49:40 CEST] <JEEB> in this case there's just one audio format it supports
[22:49:43 CEST] <JEEB> (float)
[22:49:57 CEST] <JEEB> also you could get the audio encoder frame size somehow :P
[22:50:18 CEST] <Chagall> oh right, i meant avformat (container i guess)
[22:50:58 CEST] <JEEB> that's more problematic because there's no such list in containers
[22:51:38 CEST] <JEEB> oh
[22:51:43 CEST] <JEEB> there's a query_codec
[22:51:51 CEST] <JEEB> I didn't even motherfucking know that worked :D
[22:51:56 CEST] <JEEB> s/worked/existed/
[22:52:11 CEST] <JEEB> just noticed in matroskaenc :P
[22:52:34 CEST] <JEEB> so you feed it AVCodecID and an FF_COMPLIANCE thing
[22:52:40 CEST] <JEEB> (standards compliance mode)
[22:53:00 CEST] <Chagall> oh, didn't see that. thanks a lot
[22:53:00 CEST] <JEEB> wonder how many formats have the query_codec set
[22:53:31 CEST] <JEEB> but yea, even I learn things it seems :P
[23:54:12 CEST] <Durandal> what the
[23:54:54 CEST] <Durandal> huh
[23:56:30 CEST] <Durandal> anyway, I have a question about multichannel opus
[23:57:08 CEST] <Durandal> In older versions of ffmpeg it would encode fine, but I recently updated and now get this error: [libopus @ 0000000002311700] Invalid channel layout 5.1(side) for specified mapping family 1.
[00:00:00 CEST] --- Mon Oct 2 2017
1
0