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 2016
- 1 participants
- 62 discussions
[00:22:14 CEST] <abi> hello
[00:59:44 CEST] <cone-065> ffmpeg 03Jean Caille 07master:4599e11651a5: lavf/mov: support gopro firmware udta tag
[01:33:25 CEST] <BBB> what does Assertion fs->on_event failed at src/libavfilter/framesync.c:283 mean?
[01:33:39 CEST] <BBB> I know it means Im stupid, but its not really telling me how Im stupid
[01:42:41 CEST] <Compn> did you set an assertion or breakpoint ?
[01:52:42 CEST] <Chloe> 62
[18:13:08 CEST] <trfl> hey guys! trying to play an RTP dump which is H.265 and likely some proprietary metadata interleaved into the stream. The video is breaking up horribly, barely showing the top row of blocks for each keyframe. What's the quickest way to see where in the stream ffmpeg encounters unexpected data, so I can have it skip the metadata and thus decode the video properly?
[18:33:30 CEST] <noobe1> hi, how can I get avcodec_decode_video2 to output AVFrame of format RGB directly? Right now I'm getting output format of PIX_FMT_YUV420P but I want AV_PIX_FMT_RGB24 . Thanks!!
[18:35:57 CEST] <BtbN> You can't. You get whatever the codec supports and was negotiated in the get_format callback, if the codec in question supports that.
[18:47:51 CEST] <Chloe> michaelni: no, unfortunately, no one has contacted me about outreachy.
[18:50:36 CEST] <Chloe> wm4: that reply about trac wasn't really necessary :/
[19:07:04 CEST] <wm4> Chloe: yes it was
[19:17:03 CEST] <Chloe> Insulting someone doesn't help anything, even if it's true.
[19:32:55 CEST] <wm4> it was an insult?
[19:35:20 CEST] <ubitux> seems i have a working prototype of subtitles decoding in AVFrame
[19:36:23 CEST] <ubitux> https://github.com/ubitux/FFmpeg/compare/subtitles-frame
[19:36:43 CEST] <ubitux> many things left to do but well
[19:39:23 CEST] <ubitux> tl;dr: only compatible avcodec{send_packet,receive_frame}, internally classic AVSubtitle decode, ref count sub.rects in frame->extended*, add a few fields
[19:41:17 CEST] <ubitux> TODO: do the encoding part (longest/hardest part), move rectangles to lavu, use the new api in ffmpeg.c and fix everything broken in fate
[19:41:30 CEST] <ubitux> and i guess that will be mostly ready
[20:51:58 CEST] <rcombs> ubitux: \o/
[21:10:05 CEST] <BBB> Compn: the answer was I forgot to call avfilter_graph_config()
[21:11:45 CEST] <BBB> michaelni: so is the patch for vp9.c:adapt_prob() OK? Or should I change it?
[21:34:34 CEST] <Compn> trfl : hex the rtp dump and cut off the headers, look for the frame markers
[21:34:46 CEST] <Compn> the start frames i mean
[21:35:01 CEST] <Compn> ive seen it done on h264, i dont remember h265 hex start frame numbers
[21:45:43 CEST] <philipl> is there any way to reset a bsf without tearing it down and recreating it?
[21:45:59 CEST] <philipl> the mpeg4_unpack_bframes filter is stateful, which means seeks can be problematic.
[22:00:40 CEST] <BBB> philipl: I believe libavformat destroys and recreates it
[22:00:49 CEST] <BBB> philipl: it may be useful to add a reset callback into it
[22:00:56 CEST] <BBB> philipl: I would be fine with such a patch
[22:18:46 CEST] <philipl> BBB: I'll experiment
[22:54:23 CEST] <michaelni> BBB, vp9 patch shuld be ok
[23:35:41 CEST] <philipl> BBB: The bframe bsf actually looks like it tries to account for this and resets state, so the behaviour I saw is something different.
[23:36:15 CEST] <philipl> Is there any proper documentation regarding 'delay frames' and 'drop frames' in packed bitstreams?
[23:36:36 CEST] <nevcairiel> its a bad hack, so dont expect proper docs =p
[23:36:52 CEST] <philipl> I mean, at least what should one look like.
[23:37:08 CEST] <philipl> I've got three examples here of packed files with different types of these delay/drop frames.
[23:37:14 CEST] <philipl> 6/7/8 bytes long.
[23:37:25 CEST] <philipl> The crystalhd hardware correctly handles the 8 byte ones.
[23:37:43 CEST] <philipl> for the 6/7 byte ones, it returns the packed frame twice and I need to discard one of them.
[23:37:58 CEST] <philipl> I'd like a more formal mechanism to detect than packet size.
[23:39:57 CEST] <nevcairiel> look at what the bsf does?
[23:40:19 CEST] <philipl> it looks at the actual packed vops and not the dummy ones.
[00:00:00 CEST] --- Sun Oct 16 2016
1
0
[00:14:53 CEST] <kittyfoots> So it seems that avcodec_encode_video2 is deprecated but the documentation doesn't really give guidance as to what to use in its place, the latest git snapshot has the encode/decode sample code using avcodec_encode_video2 still. What is the correct api function moving forward?
[01:55:01 CEST] <MrMonkey31> hey
[01:55:52 CEST] <MrMonkey31> guys, what's the command to start encoding at frame x? I know how to just cut off at a frame before the end of the file already
[01:59:51 CEST] <kepstin> MrMonkey31: you have to use the trim filter, e.g. -vf trim=start_frame=42
[02:03:23 CEST] <MrMonkey31> thx kepstin, I see. next q: can ffmpeg choose to concentrate bits? I'd like to achieve the bitrate I specified with -v:b overall but with specific ranges getting fewer of the bits, like 60 second ranges
[02:03:59 CEST] <kepstin> MrMonkey31: usually you'll want to use a 2-pass encode, so the encoder can decide for itself how to allocate bits over the video
[02:04:27 CEST] <kepstin> I don't think there's any interface in ffmpeg to do that, although you can do it if you e.g. use x264 directly :/
[02:04:45 CEST] <kepstin> but yeah, just do a 2-pass encode unless you really need something different
[02:06:21 CEST] <MrMonkey31> kepstin: you seem to know about it so I'll take your word for it. I was hoping to avoid splitting up the videos, but I guess I could write a script that uses that trim feature to separate the streams first
[02:06:51 CEST] <kepstin> why do you need to manually allocate bitrate?
[02:07:14 CEST] <MrMonkey31> I just don't care about certain segments, already know which segments
[02:07:37 CEST] <MrMonkey31> I could just order them to be converted to a blank frame
[02:07:54 CEST] <MrMonkey31> that will preserve my frame count
[02:10:41 CEST] <MrMonkey31> alright, thx for the tips!
[03:50:00 CEST] <ossifrage> I'm grepping on the ffmpeg source and I can't seem to find where '-vf drawtext' is implemented?
[03:52:14 CEST] <ossifrage> [ah my tree didn't have libavfilter]
[07:25:53 CEST] <kode54> huh
[07:27:52 CEST] <kode54> why can Handbrake stuff dvd_subtitle into MP4, but ffmpeg cannot?
[09:51:42 CEST] <newuser123> hello. Am joining two '.vob' files using this command: ffmpeg -i "concat:in1.VOB|in2.VOB" -f mpeg -c copy output.vob
[09:52:10 CEST] <newuser123> i get the proper Video, but there is no output. Any help would be appreciated.
[09:52:33 CEST] <newuser123> i get the proper Video, but there is NO AUDIO in the output. Any help would be appreciated.
[10:23:21 CEST] <newuser123> hello. Am joining two '.vob' files using this command: ffmpeg -i "concat:in1.VOB|in2.VOB" -f mpeg -c copy output.vob
[10:23:48 CEST] <newuser123> i get the Output which got Video but no Audio. Any suggestions please......
[10:29:19 CEST] <relaxed> newuser123: -f vob
[10:30:04 CEST] <newuser123> relaxed, oh right, let me try that.
[10:32:49 CEST] <newuser123> relaxed, thanks ! it worked !!
[10:53:26 CEST] <relaxed> \o/
[13:54:57 CEST] <kuse> Is it possible to capture a frame ,providing percentage of video and not an exact time?
[13:55:42 CEST] <BtbN> no
[13:56:29 CEST] <BtbN> Unless you do that calculation yourself, of course. If you know the precise length
[13:58:32 CEST] <kuse> ok thanks
[15:49:24 CEST] <Phi> Heyo folks
[15:49:42 CEST] <Phi> can anyone help me with passing options to libx264 encoder
[15:49:45 CEST] <Phi> C++, not commandline
[15:51:12 CEST] <JEEB> the libx264 avcodec wrapper or libx264 itself?
[15:51:30 CEST] <Phi> the wrapper
[15:51:34 CEST] <Phi> passing vprofile/profile options to avio_open2 seem to get ignored
[15:52:59 CEST] <JEEB> avio sounds like avformat stuff :P
[15:53:34 CEST] <Phi> I'm new to the whole thing so I sort of glued stuff together
[15:53:42 CEST] <JEEB> anyways, av_dict_set on the avcodec context's matching thing
[15:54:33 CEST] <JEEB> it's used in the demuxing/decoding example f.ex.
[15:55:23 CEST] <Phi> I'll give it another shot
[15:55:39 CEST] <Phi> av_dict_set what am I passing as the dictionary?
[15:56:25 CEST] <Phi> or did you mean av_opt_set?
[16:02:18 CEST] <JEEB> Phi: related example http://git.videolan.org/?p=ffmpeg.git;a=blob;f=doc/examples/demuxing_decodi…
[16:02:30 CEST] <JEEB> for you the avcodec context would of course be an encoder
[16:03:45 CEST] <Phi> The odd thing is, avcodec_is_open is always false for the encoder context
[16:03:48 CEST] <Phi> even if a video file is produced
[16:05:31 CEST] <Phi> and if I do call avcodec_open2 on the encoder context, I get error -1
[16:08:38 CEST] <Phi> I have the code in a question here
[16:08:39 CEST] <Phi> http://stackoverflow.com/questions/40053873/ffmpeg-rtsp-stream-to-mpeg4-h26…
[16:09:21 CEST] <Phi> I need to be able to receive RTSP, encode it into an MP4, and display frames as they come
[16:09:33 CEST] <Phi> the output MP4s don't play properly, but it does produce some
[16:22:10 CEST] <NapoleonWils0n> hi all
[16:22:18 CEST] <Phi> yo
[16:22:49 CEST] <NapoleonWils0n> is there a way to work out the correct bitstream filter for a particular stream
[16:23:36 CEST] <NapoleonWils0n> at the moment im manually testing streams and then going thru the possible combinations of bitstream filters
[16:25:27 CEST] <NapoleonWils0n> cat always tell if an aac atream requires -bsf:a aac_adtstoasc or you can just -c:a copy
[16:26:47 CEST] <NapoleonWils0n> thinking of either detecting the codecs used in the stream and then using the approiate bit stream filters or going thru the different options checking for errors
[16:33:15 CEST] <c_14> NapoleonWils0n: if you use a recent ffmpeg (might only be in git) bitstream filters should be automatic
[16:34:48 CEST] <NapoleonWils0n> c_14 really im running 3.1.4
[16:34:59 CEST] <NapoleonWils0n> this is my script
[16:35:01 CEST] <NapoleonWils0n> https://github.com/NapoleonWils0n/kodi-playercorefactory/blob/master/bash-s…
[16:35:33 CEST] <NapoleonWils0n> c_14 so ffmpeg should detect the correct bitstream filters for a stream
[16:36:05 CEST] <NapoleonWils0n> even if us -c:a -c:v it will switch to using the correct bitsrteam filter
[16:37:58 CEST] <BtbN> I don't think there is a release with the auto bsf yet.
[16:38:29 CEST] <NapoleonWils0n> right ill keep a look out for the new release thanks guys
[16:38:52 CEST] <BtbN> just use latest git master.
[16:38:58 CEST] <NapoleonWils0n> is there any documentation about the auto bitstream filters
[16:38:59 CEST] <BtbN> releases are mostly meaningless anyway
[16:39:07 CEST] <BtbN> you don't do anything, and it works.
[16:39:22 CEST] <NapoleonWils0n> i like the sound of that
[16:39:49 CEST] <Phi> I tried what you said JEEB, but that documentation is out of date
[16:39:54 CEST] <NapoleonWils0n> but if i specify -c:a -c:v it will override it with the correct bitstream filter
[16:40:00 CEST] <Phi> can't find codecpar
[16:40:07 CEST] <BtbN> a codec is not a bsf.
[16:40:39 CEST] <Phi> I tried passing av_opt_set(codecCtx, "profile", "main", 0) but it ignores me and uses high
[16:41:27 CEST] <furq> why are you using printf "%s\n" 'string' instead of echo "string"
[16:41:55 CEST] <NapoleonWils0n> line endings, printf is also faster i believe
[16:42:06 CEST] <furq> echo already adds a newline
[16:42:41 CEST] <NapoleonWils0n> im not using line endings is some situations
[16:43:03 CEST] <furq> echo -n
[16:43:35 CEST] <NapoleonWils0n> im not really worried about printf vs echo
[16:43:50 CEST] <furq> it sounds like i care more about echo than i actually do
[16:43:58 CEST] <NapoleonWils0n> mor interested in getting the right combination of bitstream filters and codecs
[16:43:59 CEST] <furq> i was wondering if echo didn't work for some reason
[16:44:33 CEST] <NapoleonWils0n> furq bit like vim vs emacs and mac vs pc
[16:44:53 CEST] <NapoleonWils0n> also the scripts have to work on windows, linux and mac
[16:44:58 CEST] <furq> well no because emacs and mac users are just wrong
[16:45:16 CEST] <NapoleonWils0n> yes furq with you on that one mate
[16:45:18 CEST] <furq> portability seems like a more reasonable reason
[16:45:39 CEST] <NapoleonWils0n> ill go with that excuse then :)
[16:46:03 CEST] <NapoleonWils0n> scripts take a url and chop it up and create the correct ffmpeg command
[16:46:10 CEST] <furq> although if you want it to be portable then you should use #! /usr/bin/env bash
[16:46:46 CEST] <NapoleonWils0n> i have it working on all versions of windows, mac and linux which wasnt easy
[16:46:53 CEST] <furq> or /bin/sh but it looks like you're actually using bash features
[16:47:41 CEST] <NapoleonWils0n> yes im using bash pattern matching in a case statement to switch on various urls
[16:47:53 CEST] <furq> well yeah there's no /bin/bash on the BSDs
[16:47:59 CEST] <furq> and probably other unixes
[16:48:14 CEST] <NapoleonWils0n> furq the scripts work on openbsd as well
[16:48:21 CEST] <BtbN> furq, "echo -n" is bash. in a plain posix shell it would print a "-n something"
[16:48:38 CEST] <BtbN> The print method works
[16:48:56 CEST] <NapoleonWils0n> apart from the printf vs echo debate any suggestions for improvements
[16:49:14 CEST] <NapoleonWils0n> always open to feedback however brutal
[16:50:16 CEST] <NapoleonWils0n> so when the auto bitstream filters is "released" i can just use -c:a copy -c:v copy
[16:50:31 CEST] <furq> echo -n works in every /bin/sh i have here
[16:50:33 CEST] <NapoleonWils0n> and not add the bitstream filters to the ffmpeg commands
[16:50:53 CEST] <furq> also this is a bash script anyway
[16:51:27 CEST] <NapoleonWils0n> ok mess of code that happens to be in a text file might be a better description
[16:51:50 CEST] <NapoleonWils0n> but it does actually work believe ot or not
[16:52:04 CEST] <NapoleonWils0n> https://www.youtube.com/channel/UCriRR_CzOny-akXyk1R-oDQ
[16:52:20 CEST] <NapoleonWils0n> youtube channel accompanying the scripts
[16:55:24 CEST] <NapoleonWils0n> cant seem to find any documentation of the auto bitstream filters, im sure it will come soon
[17:01:41 CEST] <NapoleonWils0n> in the ffmpeg examples they use printf just saying
[17:02:38 CEST] <furq> i feel like i've cast myself as some kind of echo enthusiast here
[17:02:51 CEST] <furq> i just figured maybe there was an interesting reason why echo didn't work
[17:03:19 CEST] <NapoleonWils0n> i got told in no uncertain terms on other irc channels to use printf
[17:04:04 CEST] <NapoleonWils0n> furq thanks for the heads up on the auto bitstream filters
[17:04:13 CEST] <furq> that wasn't me
[17:04:29 CEST] <furq> i haven't told you anything useful about ffmpeg
[17:04:48 CEST] <SchrodingersScat> furq: you taught me everything without saying a word
[17:05:01 CEST] <NapoleonWils0n> lol
[17:05:37 CEST] <NapoleonWils0n> been using the ffmpeg reconnect option which seems to work
[17:07:44 CEST] <SchrodingersScat> to rip stuff on kodi?
[17:08:09 CEST] <NapoleonWils0n> yes ripping stuff from kodi, can also multicast stream and schedule recordings
[17:09:09 CEST] <NapoleonWils0n> main page of git repo:
[17:09:11 CEST] <NapoleonWils0n> https://github.com/NapoleonWils0n/kodi-playercorefactory
[17:12:23 CEST] <SchrodingersScat> NapoleonWils0n: this is my equivalent, https://github.com/SchroSct/stream-creep
[17:13:18 CEST] <NapoleonWils0n> much better name, i went with descriptive name
[17:13:19 CEST] <furq> that readme becomes more interesting at the end
[17:14:43 CEST] <NapoleonWils0n> SchrodingersScat nice work ill go thru your code
[17:14:55 CEST] <SchrodingersScat> yours looks much more professional
[17:15:34 CEST] <NapoleonWils0n> thanks mate - writing all the docs did take a while
[17:15:51 CEST] <NapoleonWils0n> got more info in the docs section
[17:15:53 CEST] <NapoleonWils0n> https://github.com/NapoleonWils0n/kodi-playercorefactory/tree/master/docs
[17:16:26 CEST] <NapoleonWils0n> figured out a way to send ffmpeg commands over ssh and escape special characters like &? etc
[17:16:38 CEST] <NapoleonWils0n> https://github.com/NapoleonWils0n/kodi-playercorefactory/blob/master/bash-s…
[17:16:49 CEST] <NapoleonWils0n> using printf furq
[17:18:28 CEST] <NapoleonWils0n> SchrodingersScat nice use of netcat mate
[17:19:34 CEST] <SchrodingersScat> NapoleonWils0n: yeah, didn't want to use rtmpdump while it was live, I catch the stream with tcpflow first
[17:20:10 CEST] <NapoleonWils0n> i have a little script to extract http links from pcap files
[17:20:12 CEST] <NapoleonWils0n> https://github.com/NapoleonWils0n/kodi-playercorefactory/blob/master/bash-s…
[17:20:55 CEST] <NapoleonWils0n> what i do is tcpdump open kodi and capture all the links into a pcap file and then extract them with tshark
[17:21:27 CEST] <SchrodingersScat> ah, k, that's the cli wireshark
[17:21:29 CEST] <NapoleonWils0n> i tend to use iptables and rtmpsrv
[17:21:50 CEST] <NapoleonWils0n> you can use the same wireshark filters with tshark
[17:22:23 CEST] <NapoleonWils0n> much easier than scrolling thru wireshark window
[17:23:03 CEST] <NapoleonWils0n> oh and you shoudnt run wireshark as root, add your self to the wireshark group and reboot
[17:39:58 CEST] <NapoleonWils0n> time for an egg sandwich and cup of tea
[18:56:03 CEST] <ChocolateArmpits> Does anyone know the reason for the dual mono setting for ebu r128 related filters ? The description is vague in defining the sound perception and I can't find more.
[19:15:24 CEST] <Phi> I still can't get it to change the x264 profile option
[19:17:24 CEST] <ChocolateArmpits> Phi: What's the issue?
[19:19:14 CEST] <Phi> I can't find a working option to change the profile
[19:19:25 CEST] <ChocolateArmpits> What about -vprofile ?
[19:19:33 CEST] <Phi> vprofile doesn't work
[19:19:42 CEST] <Phi> to clarify, I'm doing it in C++, not commandline
[19:20:00 CEST] <ChocolateArmpits> But you can pass cli commands to be interpreted, no ?
[19:20:47 CEST] <ChocolateArmpits> I remember reading about the api and such option was presented
[19:23:46 CEST] <Phi> supposedly
[19:23:54 CEST] <Phi> but it's not working
[21:10:33 CEST] <hseg> Hi. I'm trying to concatenate clips from some mkv files, and it seems that ffmpeg is extracting .5s more from each input video I list.
[21:11:58 CEST] <hseg> Specifically, with options -ss '01:05.500' -t '00:07.000', I get some data from beyond the 01:12 mark, but changing to -t '00:06.500' makes it stop before that mark.
[21:12:04 CEST] <hseg> Any ideas why?
[21:12:41 CEST] <hseg> (Hypothesis I'm pursuing atm: ffmpeg is rounding towards keyframes)
[21:25:01 CEST] <hseg> Hypothesis falsified by noting that the two keyframes surrounding my expected endpoint do not match the last image seen from the source video.
[23:50:42 CEST] <Ana_> Hello, I was wondering if someone could help me out: http://pastebin.com/vL8YgdCk
[23:55:53 CEST] <SchrodingersScat> tldr: why would file size double when going from mkv to mp4
[23:56:25 CEST] <kerio> *when reencoding a video repeatedly
[23:56:31 CEST] <kerio> good god
[23:56:54 CEST] <kerio> Ana_: ffmpeg -i foo.mkv -c:v copy -c:a copy bar.mp4
[23:57:55 CEST] <DHE> or just: ffmpeg -i input.mkv -c copy output.mp4
[23:58:04 CEST] <kerio> i like to be explicit :v
[23:58:09 CEST] <kerio> but ye
[23:58:23 CEST] <SchrodingersScat> -codec copy
[23:58:25 CEST] <DHE> typically, but if you're copying both...
[23:58:27 CEST] <kerio> DHE: will that copy every stream, or will it just do first video and first audio
[23:58:31 CEST] <kerio> ?
[23:58:37 CEST] <SchrodingersScat> triggered
[23:58:42 CEST] <kerio> i'm not even sure if mp4 can do multiple videos
[23:59:26 CEST] <SchrodingersScat> Ana_: did any of that help?
[23:59:27 CEST] <DHE> I can't remember how ffmpeg handles defaults. there's a -map parameter to force selection of streams for bringing into the output
[23:59:49 CEST] <c_14> It'll select 1 video, 1 audio and 1 subtitle stream
[23:59:51 CEST] <DHE> I thought the default was one of each type into the output unless overridden with -map
[23:59:57 CEST] <c_14> According to internal parameters as to which is "best"
[00:00:00 CEST] --- Sun Oct 16 2016
1
0
[04:10:02 CEST] <torstein_> Hello devs. Can I suggest the option of selecting CUDA vs CUVID manually? I'm referring to this: https://ffmpeg.org/doxygen/trunk/group__VIDEO__DECODER.html#ga03236c424342c… It would be great for hwaccelerated decoding for codecs unsupported by the dedicated video engines.
[10:56:14 CEST] <ubitux> kode54: 7387506b0693cc72841651188f8655bcd3959247 introduced a regression
[10:56:22 CEST] <ubitux> are you interested?
[11:00:56 CEST] <ubitux> might not actually be a regression, it just seems unable to read the comment properly
[11:07:05 CEST] <ubitux> maybe the file is broken, it's a COMM with encoding=1 (utf16) and 2 bytes for the tag len, containing a bom 0x0000
[11:07:14 CEST] <ubitux> i guess it doesn't matter
[11:07:28 CEST] <ubitux> (i thought it was a regression because of the error message poping)
[11:08:08 CEST] <ubitux> unless you think this is a valid "empty" string/comm
[11:47:46 CEST] <nevcairiel> might be nice to ignore it gracefully if its not really "broken", just empty
[14:58:57 CEST] <cone-849> ffmpeg 03Carl Eugen Hoyos 07master:a2c5f5aacf9d: configure: Enable pie for toolchain=hardened.
[17:00:13 CEST] <cone-849> ffmpeg 03Andreas Cadhalpun 07master:69c8505f3bf5: libopenjpegenc: stop reusing image data buffer for openjpeg 2
[17:00:14 CEST] <cone-849> ffmpeg 03Andreas Cadhalpun 07master:56706ac0d572: libopenjpegenc: fix out-of-bounds reads when filling the edges
[17:02:31 CEST] <uc> Hi, I'm new here. Can someone point me to some easy tasks for contributing?
[17:03:01 CEST] <cone-849> ffmpeg 03James Zern 07master:7f7c494a3340: ffmpeg_cleanup: fix crash with unrecognized codec
[17:17:24 CEST] <jayridge> Hi. I setup a test environment for the patch to pass TLS args to RTSPS ( https://patchwork.ffmpeg.org/patch/817/ ) . Example test script https://gist.github.com/jayridge/3872766e66c6800362f9dabf6e3ece58. What is the process for testing? Thank you.
[17:26:41 CEST] <cone-849> ffmpeg 03Michael Niedermayer 07master:44453c09e46e: ffmpeg: Use av_fifo_freep() to avoid stale pointers
[17:26:42 CEST] <cone-849> ffmpeg 03Michael Niedermayer 07master:d790e488303f: avutil/audio_fifo: Use av_fifo_freep() and remove redundant if()
[17:37:53 CEST] <hellos> hello
[17:44:06 CEST] <hellos> :)
[20:03:43 CEST] <kode54> right, that would be nice to handle gracefully
[23:26:17 CEST] <cone-065> ffmpeg 03Thomas Turner 07master:09d39177dcbe: avutil: Improved selftest coverage for libavutil/fifo.c
[00:00:00 CEST] --- Sat Oct 15 2016
1
0
[01:11:23 CEST] <Sashmo> can anyone tell me why VLC can play a AC3 audio only file, and ffplay start playing the first few seconds, then craps out and turns into a digital noise nightmare?
[01:15:45 CEST] <Sashmo> ive tried all the decoders.....
[01:37:51 CEST] <iive> sounds like a bug.
[01:38:02 CEST] <iive> can you fill an issue and upload a sample?
[01:38:11 CEST] <iive> sorry i got to go.
[01:40:32 CEST] <Sashmo> sure
[01:40:35 CEST] <Sashmo> will do
[02:01:14 CEST] <i_o> hei
[02:02:07 CEST] <i_o> I am freaking out, what's up with the spectral graph when playing audio??
[02:02:23 CEST] <i_o> I didn't set any option for it.
[06:08:04 CEST] <Kiicki> Should I keep the framerate constant or variable when converting movies?
[07:25:20 CEST] <Spring> interesting guide, https://en.wikibooks.org/wiki/FFMPEG_An_Intermediate_Guide
[07:26:17 CEST] <Spring> guess it was intended to be kind of supplementary to the ffmpeg wiki/docs
[12:00:42 CEST] <CorvusCorax> Hi. I have a problem. I am trying to encode video from a raw image buffer. The buffer is BGR (24bit) 2040x1086 (from a Basler camera). I memcpy it into a frame (at frame->data[0]) created with alloc_picture with the correct width/height. The output video has correct width and height but is distorted. Every line seems to be missing 8 pixels so the next one ends up getting shifted. resolution of destination video (or images if exported as png)
[12:00:42 CEST] <CorvusCorax> is correct though
[12:01:18 CEST] <CorvusCorax> if I create an opencv image directly from the source buffer and display or save it, it has the same dimensions, but no missing pixels/shift
[12:04:37 CEST] <CorvusCorax> sorry, with alloc_picture I meant the wrapper from the muxer example in the src code, thats using av_frame_alloc() internally
[12:37:31 CEST] <CorvusCorax> nvm, I found the cause. The allocated frame had a stride longer than the line, so by just copying the buffer with memcpy I ended up putting pixels into the padding-bytes at the end of the line
[12:37:41 CEST] <CorvusCorax> so I need to copy line by line :(
[12:44:25 CEST] <kerio> CorvusCorax: :(
[12:50:05 CEST] <BtbN> CorvusCorax, that's what av_image_copy_plane is for.
[12:53:29 CEST] <CorvusCorax> BtbN would that be actually faster than a loop over all lines with a memcpy() of each line?
[12:54:04 CEST] <BtbN> that's pretty much what it does internally, but why re-invent something that's already implemented for exactly that purpose?
[12:56:41 CEST] <CorvusCorax> true. but while we are at it - could I skip the copying and somehow use the existing buffer to be treated as a frame?
[12:58:14 CEST] <CorvusCorax> something like "av_frame_change_buffer(frame,uint8_t*buffer,size_t stride)" ?
[13:05:08 CEST] <CorvusCorax> I need to somehow push out 2 megapixel @90 fps on a single core on board a UAV, so even such a small optimization would actually matter ;)
[13:14:52 CEST] <BtbN> CorvusCorax, just set the data pointers accordingly.
[13:15:04 CEST] <BtbN> and set the correct linesize
[13:15:08 CEST] <CorvusCorax> works. forcing linesize[0] and data[0] to match linesize and address of the buffer does the job
[13:15:13 CEST] <CorvusCorax> just did that
[13:15:29 CEST] <BtbN> Just make sure you unset it again before freeing the frame
[13:15:54 CEST] <CorvusCorax> now I wonder, the example says, some codecs keep copies of frames internally:/* when we pass a frame to the encoder, it may keep a reference to it
[13:15:54 CEST] <CorvusCorax> * internally;
[13:15:54 CEST] <CorvusCorax> * make sure we do not overwrite it here
[13:15:54 CEST] <CorvusCorax> */
[13:15:54 CEST] <CorvusCorax> ret = av_frame_make_writable(pict)
[13:16:37 CEST] <CorvusCorax> keeping that make_writable call would be sufficient to make sure that won't cause issues?
[13:17:05 CEST] <CorvusCorax> I think none of the codecs I can use for my usecase would do that anyway, just curious
[13:21:58 CEST] <BtbN> anything that needs the frame will get itself a copy.
[13:44:07 CEST] Action: kepstin notes that the way the 'crop' video filter in ffmpeg works is it just adjusts the data pointers, stride, etc. no copying involved.
[13:49:54 CEST] <CorvusCorax> BtbN is there a way to tell avio_open to open a file in O_SYNC mode and disable write caching for the OS ?
[13:50:37 CEST] <BtbN> kepstin, it should still make the frame writeable first.
[13:56:43 CEST] <kepstin> I assume it does yeah
[15:14:40 CEST] <lasser> hello folks, it's me again, the guy with the annoying YT live stream and his very old machine...
[15:15:19 CEST] <kerio> sup
[15:15:51 CEST] <lasser> I managed to go down to less than 20% load.
[15:16:10 CEST] <lasser> The problem was the capturinge of the audio device:
[15:16:32 CEST] <lasser> -f alsa -i hw:0,0
[15:17:02 CEST] <lasser> after some search it turns out, that I can convince ALSA to send less data:
[15:17:14 CEST] <lasser> -f alsa -ar 11025 -i hw:0,0
[15:17:19 CEST] <kerio> oh GOD
[15:18:43 CEST] <kerio> anyway try setting 44100 explicitly?
[15:19:00 CEST] <kerio> maybe it was defaulting to something stupid like 96k and then resampling it
[15:19:21 CEST] <furq> it defaults to 48k afaik
[15:19:21 CEST] <lasser> it defaults to 48kHz
[15:19:26 CEST] <lasser> :-)
[15:19:37 CEST] <furq> it defaults to 48k
[15:20:12 CEST] <furq> so is there a problem or did you just want to tell us
[15:21:10 CEST] <lasser> I wanted to tell you, but there's something new
[15:23:07 CEST] <lasser> during the live stream the used input still image could be altered. Is there a chance that ffmpeg uses the altered one without restarting?
[15:24:53 CEST] <furq> you could probably do it with the movie source and sendcmd, but you'd need to have all the images in advance
[15:25:32 CEST] <furq> assuming you don't know the timestamps that the image will change at
[15:27:40 CEST] <lasser> ok, good to know. So I have to stop and restart the streaming after altering the image. I can live with that.
[15:28:00 CEST] <furq> i guess you could use x11grab
[15:36:25 CEST] <lasser> as I understand x11grab grabs a portion of the screen, right? -i 0,0+100,100
[15:37:13 CEST] <BtbN> doesn't it expect the display in -i?
[15:38:01 CEST] <lasser> youre right: -i :0,0+100,100
[15:38:50 CEST] <lasser> so at first the image hast to stay at one place as long as ffmpeg runs. But also no other window should come over it. Or is it possible to grab a specific window?
[15:39:18 CEST] <lasser> or grab a specific workspace?
[15:39:50 CEST] <furq> you can create a dummy device
[16:07:41 CEST] <cakkal> hi guys can you help me at this little problem =) https://stackoverflow.com/questions/40043319/random-ts-filenames-in-the-m3u…
[16:11:39 CEST] <lasser> furq: ?
[17:24:18 CEST] <markvandenborre> I have this idea of monitoring an audio stream by taking screenshots
[17:24:32 CEST] <markvandenborre> then also "screenshotting" the audio volume level
[17:24:52 CEST] <markvandenborre> into an overlay for that screenshot
[17:25:05 CEST] <markvandenborre> is there an easy way to get a number out of ffmpeg
[17:25:16 CEST] <markvandenborre> to represent audio level?
[17:25:44 CEST] <markvandenborre> so not a full blown equaliser
[17:25:53 CEST] <markvandenborre> just a simple number
[17:27:56 CEST] <Mavrik> Not sure why ffmpeg would handle that.
[17:28:06 CEST] <Mavrik> You'll have to read that value out of your OS sound system.
[17:29:39 CEST] <markvandenborre> Mavrik: there's some volumedetect stuff
[17:29:49 CEST] <markvandenborre> in ffmpeg, but not entirely sure what I could do with it
[17:29:51 CEST] <emilsp> hello, how do I initialize a decoder and a filter to decode and filter a raw mjpeg file ? the file has no headers, but I know the framerate and the resolution
[17:30:53 CEST] <kerio> but jpegs have a header :<
[17:30:53 CEST] <Mavrik> markvandenborre, it's the wrong tool for the job.
[17:30:55 CEST] <markvandenborre> basicly trying to get _some_ feedback to the person monitoring the stream
[17:31:01 CEST] <markvandenborre> about audio levels
[17:31:36 CEST] <markvandenborre> this is on a headless machine that is exposing the images grabbed through a simple web server
[17:31:55 CEST] <markvandenborre> the main interesting thing is "do we have any audio at all?"
[17:32:07 CEST] <emilsp> kerio, well, sortakinda, but this is just a stream of them, there is no 'container'
[17:32:25 CEST] <kerio> so... a mjpeg
[17:32:26 CEST] <kerio> :D
[17:32:31 CEST] <emilsp> okidoki
[17:32:59 CEST] <kepstin> markvandenborre: ffmpeg has a couple ways of drawing graphs from audio analysis filters, see the examples on the 'drawgraph' filter and the ebur128's "video" option.
[17:33:10 CEST] <kepstin> markvandenborre: those could be output to an image or video stream of some sort
[17:33:17 CEST] <emilsp> well, I'm just extrapolating due to my lack of knowledge - when I pipe the stream directly from the source to vlc, it plays, when I pipe it to a file and then open the file from vlc, it just exits immediately because "lol 0fps, gl m8"
[17:33:18 CEST] <markvandenborre> kepstin: great, thank you
[17:33:40 CEST] <emilsp> so I was wandering how would I initialize a decoder and a filter
[17:35:00 CEST] <kepstin> emilsp: you probably want to use the mjpeg demuxer (format), which handles parsing the stream into frames, and has an avoption to set framerate
[17:36:51 CEST] <hellos> hello
[17:38:16 CEST] <emilsp> kepstin, why would I want to demux them ? I receive no audio, and the frames are received sequentially
[17:39:03 CEST] <kepstin> emilsp: the demuxer handles parsing the stream and turning it into packets with individual frames to hand to to the decoder
[17:39:18 CEST] <kepstin> unless you want to do that yourself, you should just use the demuxer that does it for you :)
[17:39:24 CEST] <hellos> need help
[17:39:25 CEST] <emilsp> hmm
[17:41:34 CEST] <hellos> :)
[17:43:34 CEST] <hellos> i get error
[17:46:51 CEST] <hellos> hy
[18:10:35 CEST] <emilsp> hmm, so the doxygen docs are the best I can get, right ?
[18:43:46 CEST] <furq> markvandenborre: https://ffmpeg.org/ffmpeg-filters.html#showvolume
[18:48:04 CEST] <furq> -filter_complex "[0:a]showvolume[vol];[0:v][vol]overlay[v]" -map [v] -map 0:a
[18:48:07 CEST] <furq> http://i.imgur.com/J6rE8Jy.jpg
[18:48:49 CEST] <markvandenborre> furq: thx
[18:50:11 CEST] <furq> i guess this is pretty new because some of the options don't work here
[18:50:30 CEST] <furq> in a build from about two weeks ago
[18:50:48 CEST] <markvandenborre> I see
[18:50:54 CEST] <markvandenborre> will have a look into it
[18:53:55 CEST] <markvandenborre> furq: first mentioned in 2.8 release notes...
[18:55:22 CEST] <furq> oh fun
[18:55:31 CEST] <furq> showvolume=o=1 works, but showvolume=o=vertical doesn't
[19:42:42 CEST] <CorvusCorax> yaaaay :) I just managed a 2 megapixel 60 fps realtime lossless encoding, using 2 SSDs in a raid array and huffyuv
[19:43:17 CEST] <CorvusCorax> it only blocks two of my cores, so I should still be able to do the on-board computer vision stuff I had planned
[20:07:49 CEST] <feliwir> hey, whats the best way to capture the desktop with the ffmpeg library? And then send it via stream on another device
[20:11:50 CEST] <kerio> depends on the OS
[20:14:33 CEST] <zyclonicz> Will VP9 actually make the quality better on the webms?
[20:17:52 CEST] <feliwir> kerio, cross platform preferably
[20:24:53 CEST] <CorvusCorax> If I use my own code, similarly to doc/examples/muxer.c what would be the correct way to tell ffmpeg to run on X threads - equivalent to the ffmpeg -threads command line option?
[20:27:10 CEST] <CorvusCorax> feliwir: on linux ffmpeg -formats lists "x11grab" which is a demuxer only that takes frames from the running X server
[20:28:03 CEST] <CorvusCorax> that is in theory multi platform, but would only run on machines that have an Xserver running for its GUI, so usually linux (but not the more recent wayland versions) and older Unixes, but not mac os x (unless you run an xserver on top of its native GUI) or windows
[20:35:40 CEST] <feliwir> CorvusCorax, i want to use the library not the commandline tool
[20:36:42 CEST] <CorvusCorax> feliwir: then you could use a platform independent solution to get the screen content in an image buffer and encode that, bypassing the ffmpeg supported demuxers
[20:37:12 CEST] <CorvusCorax> I don't know if there is a universal platform independent "grab my desktop" solution available though
[20:37:22 CEST] <CorvusCorax> maybe opencv has one, or Qt ?
[20:39:16 CEST] <CorvusCorax> ffmpeg can do it, using existing demuxers but its different demuxers for each platform. on linux/x11 you can use the x11grab demuxer. the windows one is called screen-capture-recorder or something
[22:24:19 CEST] <CorvusCorax> I get corrupted video data when encoding with huffyuv and more than one thread (-threads parameter) with libavcodec
[22:24:43 CEST] <CorvusCorax> this is a fast moving hand encoding with 1 thread: https://postimg.org/image/o4vytiam9/
[22:24:58 CEST] <CorvusCorax> and the same thing with multiple threads: https://postimg.org/image/wyi9wv875/
[22:25:19 CEST] <CorvusCorax> the raw data from the camera is fine but somehow ffmpeg mixes data from different frames in the same destination frame
[22:25:29 CEST] <CorvusCorax> libavcodec rather, im using the library
[22:25:43 CEST] <CorvusCorax> I used the code from doc/examples/muxer to encode
[22:26:14 CEST] <furq> does it happen with the ffmpeg cli
[22:27:00 CEST] <CorvusCorax> as in encoded with a single thread and then re-encoding?
[22:27:46 CEST] <furq> i guess
[22:29:53 CEST] <CorvusCorax> im trying that right now
[22:31:05 CEST] <CorvusCorax> hmm looks like the commandline CLI encodes correctly
[22:31:12 CEST] <CorvusCorax> but i ran it on a different machine
[22:31:54 CEST] <CorvusCorax> would it be necessary to allocate separate frames for consecutive input frames?\
[22:32:15 CEST] <CorvusCorax> the doc/examples muxer only allocates one frame used for all frames
[22:32:42 CEST] <furq> that sounds plausible
[22:32:47 CEST] <furq> i've never touched multithreading in the api
[22:42:10 CEST] <CorvusCorax> furq: that fixed it
[22:42:25 CEST] <CorvusCorax> this is still a bug, as that code was straight from the example
[22:42:47 CEST] <CorvusCorax> also example yields: libavhelper.c:342:5: warning: avcodec_encode_video2 is deprecated (declared at /usr/local/include/libavcodec/avcodec.h:5321) [-Wdeprecated-declarations]
[22:42:47 CEST] <CorvusCorax> ret = avcodec_encode_video2(c, &pkt, frame, &got_packet);
[22:43:51 CEST] <CorvusCorax> would be nice if the deprectaed warning would tell you what to use instead. or you know, if you could just check the example in doc/examples *sic* *scnr*
[22:44:51 CEST] <CorvusCorax> I just allocated 20 frames which are cycled through instead of one, quick and dirty hack, but does the trick
[22:45:04 CEST] <CorvusCorax> (as long as its not run on a machine with more than 20 cores I guess ;) )
[22:49:21 CEST] <CorvusCorax> whoo yeah, this is fun. 2040*1086*rgb24*90fps huffyuv realtime encoding :)
[22:51:23 CEST] <furq> ffvhuff should be faster if you can use it
[22:52:10 CEST] <furq> it should compress better as well
[22:53:46 CEST] <kerio> what about lossless x264
[22:55:12 CEST] <furq> that's much slower and also really slow to decode
[23:00:42 CEST] <furq> actually i just checked and it's much better than i remember
[23:00:55 CEST] <furq> it's still about half as fast as ffvhuff though
[23:01:36 CEST] <CorvusCorax> ffvhuff is also lossless, right?
[23:01:48 CEST] <kerio> furq: how's the bitrate tho
[23:02:52 CEST] <furq> CorvusCorax: yes
[23:03:07 CEST] <furq> kerio: better, but if huffyuv is in the picture then bitrate is obviously no concern
[23:03:59 CEST] <kerio> also does it work in realtime
[23:04:07 CEST] <furq> yeah
[23:04:25 CEST] <furq> i just tested with 1080p30 and got 150fps
[23:04:29 CEST] <furq> ffvhuff was over 200 though
[23:04:54 CEST] <kerio> what about huffyuv?
[23:06:38 CEST] <CorvusCorax> if i understood that right ffvyuv is an improvement on huffyuv, reaching slightly better fps and size
[23:06:48 CEST] <CorvusCorax> while being overall similar
[23:07:33 CEST] <CorvusCorax> gotta run, cya another time :)
[23:09:10 CEST] <kerio> what about utvideo
[23:11:14 CEST] <kerio> woah utvideo is way faster than ffv1
[23:12:46 CEST] <kerio> furq: lossless h264 is faster than ffv1 here :s
[00:00:00 CEST] --- Sat Oct 15 2016
1
0
[00:41:49 CEST] <cone-400> ffmpeg 03James Almer 07master:7cf0ed32faae: avformat: bump minor version after the Matroska field order enum fix
[05:22:46 CEST] <philipl> BtbN: avi is the gift that keeps on giving.
[05:23:33 CEST] <philipl> If you seek in the stream, interpolation as done by cuvid fails. the starting pts resets to zero unless you somehow seek to a packet with a pts.
[05:23:53 CEST] <philipl> So, playback fails - mpv refuses to show frames with too old timestamps.
[05:24:22 CEST] <philipl> I think re-implementing dts passing as done by decode_video2 is unavoidable.
[12:18:25 CEST] <cone-071> ffmpeg 03Carl Eugen Hoyos 07master:4d81f9631de7: lavf/riff: Support Verint NetDVR II ("VSM4") h263 video in asf.
[14:54:57 CEST] <jermy> Has anybody had much of a look at XF-AVC content yet?
[19:16:59 CEST] <cone-606> ffmpeg 03Vicente Olivert Riera 07master:04b0792e4a7a: libavcodec/mips/h264dsp_msa.c: fix type in some function parameters
[19:23:32 CEST] <cone-606> ffmpeg 03James Almer 07master:1273bc6d26c8: avformat/matroskadec: workaround the field_order bug in the Matroska muxer
[19:40:34 CEST] <cone-606> ffmpeg 03Stefano Sabatini 07master:23f0f1537ea0: doc/demuxers: restore alphabetical order
[20:53:17 CEST] <cone-606> ffmpeg 03Muhammad Faiz 07master:c593a70cda56: fate: add test for firequalizer filter
[21:08:58 CEST] <cone-606> ffmpeg 03Andreas Cadhalpun 07master:7a65aef00d11: configure: fix detection of libopenjpeg
[23:22:53 CEST] <cone-606> ffmpeg 03Marton Balint 07master:7845c1388197: lavfi/sidedata: add filter for manipulating frame side data
[00:00:00 CEST] --- Fri Oct 14 2016
1
0
[00:30:58 CEST] <Sashmo> Anyone else get this error when dealing with AC3 audio only files? http://pastebin.com/tak3cwrc
[02:58:18 CEST] <torstein_> Hi guys. I'm getting 'ERROR: CUVID not found' when trying to compile with Cuda on Linux (full log: http://pastebin.com/wEEyzULt) Any ideas?
[02:59:45 CEST] <DHE> that's got roughly zero ffmpeg build info
[03:00:05 CEST] <torstein_> Cuda is installed and the cuvid headers should be available (/usr/include/cuviddec.h and /usr/local/cuda-8.0/targets/x86_64-linux/include/cuviddec.h)
[03:00:15 CEST] <torstein_> I'm building the latest release, not master
[03:02:58 CEST] <torstein_> There was something wrong with my paste. Here's a new one: http://pastebin.com/2rXcTG8u
[03:10:39 CEST] <torstein_> Do you need any other info?
[03:11:29 CEST] <torstein_> It's compiled with mpv-build, I'm not sure if it omits any build info
[05:39:06 CEST] <zotherstupidguy> is ogg a container or a codec?
[05:39:24 CEST] <relaxed_> container
[05:39:54 CEST] <zotherstupidguy> okay, ffmpeg is diff than avconv? which is better for converting to ogg
[05:40:27 CEST] <zotherstupidguy> as in a general oneliner that will convert all formats to ogg
[05:40:48 CEST] <relaxed_> https://trac.ffmpeg.org/wiki/TheoraVorbisEncodingGuide
[05:40:50 CEST] <zotherstupidguy> while maintaing quality as much as it can
[05:41:38 CEST] <zotherstupidguy> relaxed_ thanks, but .ogv is same as ogg?
[05:42:12 CEST] <zotherstupidguy> i know that 10 is the best quality, i been through most documentations, but i faced some issues like converting mkv to mp3 and ogg without sound in the output.ogg
[05:43:14 CEST] <zotherstupidguy> i am seeking a safe oneliner that will fit nicely for 80% of my video converting needs as in, a big library with different formats(mp4, avi, wbem, etc.) running a script will convert everythign to ogg nicely?
[05:43:22 CEST] <zotherstupidguy> what would that liner be?
[05:44:15 CEST] <zotherstupidguy> and i am using arch and ubuntu, to which one have ffmpeg and the other avconv, so i iwll have to build from the source, which one i should favor?
[06:00:01 CEST] <DolpheenDream> howdy
[06:00:57 CEST] <DolpheenDream> i have a series of PNG images with transparenc adn i want to create a movie without transparency. for some reason my command seems to ignore the transparency altogether and theimage appears solid
[06:01:17 CEST] <DolpheenDream> quicktime shows it fine but VLC doesnt
[06:01:53 CEST] <DolpheenDream> i thought maybe there is a way to flatten the png with transparency into a jpeg with black background before creating the movie
[09:32:33 CEST] <laserbled> Hi. I am trying to screen mirror from android to windows and decode and play it using ffplay. 1) How to keep the stream in sync by dropping frames or skipping. 2) How to chose which format to decode the stream. Android is sending it a h.264 but i would like to get that to mpeg part 14. currently it is 10 . please help
[09:33:09 CEST] <laserbled> command line parameters would be great help. i will try to add it into a subprocess in python
[09:35:39 CEST] <nonex86> what do you mean by saying "keep stream in sync by dropping and skipping"?
[09:36:41 CEST] <laserbled> currently the delay between what is happening in android screen and the video in windows there is a delay of 1 -2 sec
[09:37:02 CEST] <nonex86> your stream obviuosly have pts, isnt it a good thing to keep your streams in sync?
[09:37:03 CEST] <laserbled> i am trying to implement screen cast. so the out of sync creates a issue
[09:37:42 CEST] <laserbled> like when i swipe in android. it gets reflected on the cast only after 2 seconds.
[09:37:52 CEST] <nonex86> so
[09:37:57 CEST] <nonex86> you talk about buffering
[09:38:02 CEST] <nonex86> on player side
[09:38:15 CEST] <nonex86> not on sync of the streams?
[09:38:23 CEST] <nonex86> *not about
[09:39:06 CEST] <laserbled> oh ok. Sorry. I am not very familiar with this :). I am trying to play around with someone elses code
[09:39:49 CEST] <nonex86> laserblend: https://lists.ffmpeg.org/pipermail/ffmpeg-user/2012-November/011610.html is it your issue?
[09:40:14 CEST] <nonex86> i mean same as yours :)
[09:40:50 CEST] <laserbled> Let me check. Thanks for the link
[09:40:59 CEST] <nonex86> and one more question, why dont you like h264? :)
[09:42:27 CEST] <nonex86> and i cant understand one more thing... you said - "i want mpeg part 14", do you mean mpeg4 part14? but afaik its not the codec, but container
[09:42:57 CEST] <laserbled> I actually started with gstreamer. It works perfectly in linux. I am trying to get it running in windows and I cant seem to get it to work. And windows metro doesnt support it
[09:42:58 CEST] <nonex86> you try to compare h264 with mp4 media container ? :/
[09:44:11 CEST] <nonex86> your questions looks a little.. messy for me :)
[09:45:14 CEST] <laserbled> ok. I will be back after reading up a bit. Looks like i mis used a couple of things. yes part 14 is the container :).
[09:48:00 CEST] <laserbled> http://pastebin.com/ScmjDtUg this is the code i am trying to work with
[09:48:17 CEST] <laserbled> p = Popen(['ffplay', '-framerate', '30', '-'], stdin=PIPE, stdout=PIPE) currently only this parameter is there
[09:48:38 CEST] <laserbled> I trying to look up what all need to be added
[10:40:05 CEST] <Rotonen> encoding a timelapse from a bunch of .jpg - if some of them have a different pixel format the encoder starts to drop all frames after a deviant input jpg file
[10:40:40 CEST] <Rotonen> namely there are greyscale images peppered into the original data set
[10:41:07 CEST] <Rotonen> is the only way around that to weed out the deviant data from the input or is there a way to make ffmpeg only drop the deviant frames?
[11:00:19 CEST] <laserbled> Hi, Popen(['ffplay', '-framerate', '30', '-probesize', '32', '-infbuf', '-framedrop', '-stats', '-sync', 'ext', '-'] This is my current command. I have made infinite buffer, did sync and made probesize 32. It shows not enough info for decoding with 32 value but when it is 15000 it is able to. But either still gives an average 2 - 3 second delay
[11:00:32 CEST] <laserbled> nonex86,
[11:01:30 CEST] <nonex86> you can check it on another player, not in ffplay
[11:01:39 CEST] <laserbled> Please let me know how much is the min achievable delay in ffplay
[11:01:44 CEST] <nonex86> if you still have bug latency
[11:01:52 CEST] <nonex86> then its the problem on streaming side
[11:01:55 CEST] <laserbled> this is over wifi
[11:02:16 CEST] <nonex86> doubt the physical connection is a problem :)
[11:02:24 CEST] <laserbled> another player..any suggetions ?
[11:02:31 CEST] <nonex86> vlc perhaps?
[11:02:35 CEST] <nonex86> mpv?
[11:02:41 CEST] <laserbled> let me try with vlc
[11:03:04 CEST] <nonex86> if you will have same latency, then the problem on "server" side
[11:03:08 CEST] <bencoh> you might want to tweak caching options in vlc
[11:03:15 CEST] <nonex86> and you know the direction to dig :)
[11:03:27 CEST] <bencoh> you can reduce it to almost 0
[11:03:41 CEST] <nonex86> yeah, vlc also make some buffering afair
[11:03:43 CEST] <laserbled> oh sweet
[11:03:52 CEST] <bencoh> (~0 buffering, not 0 latency)
[11:04:00 CEST] <laserbled> oh right ;)
[11:04:04 CEST] <laserbled> what was i thinking
[11:04:31 CEST] <laserbled> what is the min latency for ffplay ?
[11:04:51 CEST] <laserbled> i saw some 150 mill sec
[11:04:59 CEST] <laserbled> in stackoverflow
[11:06:17 CEST] <nonex86> btw, why did you cant tolerate some buffering?
[11:06:42 CEST] <nonex86> its a good thing, with unstable streaming for example
[11:08:17 CEST] <laserbled> so the thing is i am using this to do lan casting from android phone to a windows pc over local network. so bandwidth wont be a issue
[11:08:41 CEST] <laserbled> *screen casting
[11:08:59 CEST] <laserbled> its more of the latency that would be a problem
[11:19:42 CEST] <nonex86> nice
[12:01:46 CEST] <Rotonen> https://github.com/yihui/animation/issues/74
[12:01:59 CEST] <Rotonen> so -r drops frames at hiccups and -framerate does not
[12:02:17 CEST] <Rotonen> for whomever concerning, problem solved
[12:44:37 CEST] <fqtw__> BtbN: so should i just use the last frame again? or what should i do?
[14:19:49 CEST] <torstein_> Hi guys I'm running into some troubles trying to build FFMPEG with CUDA and CUVID from github master. Build log: http://pastebin.com/qYXWui4r, Packages and config: http://pastebin.com/cuXJgPGc
[14:20:09 CEST] <torstein_> The error: ERROR: CUVID not found
[14:22:43 CEST] <nonex86> enabled cuvid && { check_lib cuviddec.h cuvidCreateDecoder -lnvcuvid ||
[14:22:43 CEST] <nonex86> die "ERROR: CUVID not found"; } &&
[14:24:23 CEST] <torstein_> cuviddec.h locations: /home/torstein/.local/share/Trash/files/mpv-build/ffmpeg/compat/cuda/cuviddec.h, /usr/include/cuviddec.h, /usr/local/cuda-8.0/targets/x86_64-linux/include/cuviddec.h
[14:25:34 CEST] <torstein_> and /home/torstein/mpv-build/ffmpeg/compat/cuda/cuviddec.h
[14:26:42 CEST] <nonex86> does it contains cuvidCreateDecoder?
[14:27:30 CEST] <nonex86> can you show your config.log please?
[14:28:19 CEST] <nonex86> first pastebin is config.log?
[14:29:23 CEST] <nonex86> looks like it isnt
[14:29:35 CEST] <torstein_> There's no file called cuvidcreatedecoder
[14:29:53 CEST] <nonex86> its not a file
[14:29:57 CEST] <nonex86> well
[14:30:00 CEST] <nonex86> you ask about ffmpegf
[14:30:07 CEST] <nonex86> but provide build log of mpv :/
[14:30:17 CEST] <nonex86> please, post config.log of ffmpeg
[14:33:39 CEST] <torstein_> http://pastebin.com/s7qnHtqp
[14:34:30 CEST] <nonex86> well
[14:34:51 CEST] <nonex86> you dont have libnvcuvid installed
[14:35:05 CEST] <relaxed_> it's from NVIDIA CUDA SDK
[14:35:07 CEST] <nonex86> you have headers
[14:35:07 CEST] <nonex86> but you dont have libraries
[14:35:33 CEST] <nonex86> as you can see ld is failed
[14:35:39 CEST] <nonex86> install the libraries
[14:35:49 CEST] <nonex86> and youll be fine with building
[14:57:28 CEST] <Spring> ffplay seems to have trouble previewing files which have the maximum path limit length in Windows
[14:58:28 CEST] <nonex86> your path exceeded 65536 chars ? O_o
[14:58:56 CEST] <Spring> well, the maximum File Explorer limit anyway, 255 or whatever
[14:59:23 CEST] <nonex86> 256 limit is the limit of concrete software or libraries, not the os or filesystem itself
[14:59:35 CEST] <nonex86> afair ntfs limit is around 65k
[14:59:40 CEST] <Spring> just tested a preview of a video within a path named 'aaaaaaaa...' (etc) and it basically stalls and doesn't launch the preview window
[14:59:53 CEST] <Spring> *directory
[15:00:59 CEST] <Spring> via cmd.exe fwiw. Perhaps that's the limitation, not sure.
[15:01:10 CEST] <nonex86> and also
[15:01:26 CEST] <nonex86> there are some limits of command line :)
[15:05:51 CEST] <Spring> oh, duh. I was previewing a trim and the values were outside the actual length of the video itself
[15:06:00 CEST] <Spring> that's why it didn't launch
[15:06:27 CEST] <Spring> wish it would error when that happens
[15:06:45 CEST] <BtbN> torstein_, you can use https://github.com/BtbN/FFmpeg/ to make your life easier. Didn't get around to get it into ffmpeg master yet.
[15:08:22 CEST] <lasser> Hi folks. Yesterday you helped me out in going live on YT via ffmpeg, today I'm asking for some optimization of the command:
[15:08:24 CEST] <lasser> http://pastebin.com/9VZGeX11
[15:08:32 CEST] <kerio> is it possible to do rtmp over unix socket with the ffmpeg command line?
[15:09:02 CEST] <lasser> It digs up all of my Laptops crunching power.
[15:09:42 CEST] <lasser> Do you see any possibilities?
[15:13:29 CEST] <DHE> I'm guessing it's a case of the jpeg being decoded over and over again. a static image should compress really well
[15:14:07 CEST] <DHE> can you set "-r 1" before the input jpg and "-vf setfps=30" before the output url?
[15:15:39 CEST] <lasser> ok, I'll try
[15:23:58 CEST] <SouLShocK> curious. ffmpeg 3.1.4 zeranoe win64 build does exit immediately on error (unless i specify -xerror), whereas linux version does without specifying -xerror
[15:24:21 CEST] <SouLShocK> win64 version does NOT exit, i mean
[15:26:32 CEST] <nonex86> ffmpeg version 3.1.4 Copyright (c) 2000-2016 the FFmpeg developers
[15:26:32 CEST] <nonex86> built with Microsoft (R) C/C++ Optimizing Compiler Version 18.00.40629 for x64
[15:26:33 CEST] <nonex86> configuration: --toolchain=msvc --enable-static --disable-shared --enable-avresample --enable-gpl --enable-libx264 --enable-libx265 --enable-libvpx --enable-libmp3lame --enable-libmfx --enable-nvenc --enable-nonfree --enable-libkvazaar --enable-libvorbis --enable-libopus --enable-libxvid
[15:26:41 CEST] <nonex86> but this is my own build
[15:26:45 CEST] <nonex86> not zeranoe
[15:27:21 CEST] <nonex86> what do you mean exit on error?
[15:28:01 CEST] <nonex86> in my case it quit gracefully on error
[15:28:08 CEST] <lasser> DHE, now the load ist just below 95%, an slight improvement
[15:30:04 CEST] <nonex86> can anyone suggest videoplayer with upnp/dlna support (except vlc)?
[15:30:15 CEST] <lasser> DHE, wait, I'm using -r 1 before the url, -vf "setfps=30" didn't work
[15:31:56 CEST] <DHE> lasser: disappointing...
[15:35:26 CEST] <torstein_> BtbN: Now cuda and cuvid is working, but I lost libavcodec VDPAU hwaccel, which was working on release 3.1.4. Config.log: http://pastebin.com/ZGjBP24g
[15:36:21 CEST] <BtbN> my branch is just latest ffmpeg master with a dynamic cuda/cuvid loader.
[15:36:28 CEST] <BtbN> so nothing changed in regards to vdpau
[15:37:10 CEST] <furq> lasser: youtube's vod player supports 6fps, so you should probably try -vf fps=6
[15:37:44 CEST] <furq> also i seem to recall your source audio is mp3, so get rid of -acodec libmp3lame -ar 44100 -ab 64k -ac 1 and replace it with -c:a copy
[15:38:20 CEST] <furq> you can get rid of -strict -2 as well
[15:39:39 CEST] <furq> oh nvm your source is alsa
[15:39:55 CEST] <furq> i'm good at reading
[15:42:36 CEST] <kerio> furq: does it get transcoded as 6fps tho?
[15:42:57 CEST] <furq> ?
[15:43:54 CEST] <furq> i mean the player itself, not their encoders
[15:44:03 CEST] <furq> if you upload anything <6fps it'll be transcoded to 6fps
[15:44:53 CEST] <furq> the live player might well support 1fps, i've never tried it
[15:47:48 CEST] <lasser> furq: -vf fps=6 works better than -vf fps=1. load is still around 95%
[15:51:03 CEST] <furq> there's not much else you can do unless that laptop has a hardware encoder
[15:51:11 CEST] <furq> and i suspect it doesn't
[15:51:51 CEST] <lasser> that laptop is quite old, around 10 years ;-) Latitude D505
[15:52:00 CEST] <furq> yeah i figured
[15:53:09 CEST] <lasser> so ok, while beeing live now the laptop is more responsive than yesterday evening. But I should consider using a newer one...
[15:55:10 CEST] <furq> you could maybe try openh264
[15:55:18 CEST] <furq> i suspect you'd need to rebuild ffmpeg though
[15:56:10 CEST] <furq> any other software video codec you can use for youtube will definitely be slower
[15:58:28 CEST] <furq> maybe it would help to resize the source image to 320x240 in advance and get rid of -s
[15:58:44 CEST] <furq> idk if ffmpeg is smart enough to only scale the image once with -loop 1
[15:59:27 CEST] <bencoh> do you expect openh264 to run faster than x264?
[15:59:36 CEST] <furq> i don't know
[15:59:56 CEST] <furq> google reckons it's roughly on a par with x264 ultrafast
[16:00:40 CEST] <furq> i doubt there are any benchmarks run on a pentium m though
[16:03:03 CEST] <kerio> what about zmbv
[16:03:31 CEST] <kerio> i swear, i uploaded a zmbv video to youtube
[16:03:32 CEST] <kerio> and it worked
[16:03:40 CEST] <bencoh> :D
[16:03:58 CEST] <kerio> i was very surprised too!
[16:04:50 CEST] <furq> afaik the live player doesn't transcode
[16:05:02 CEST] <torstein_> When trying to play HEVC files I get this: [ffmpeg/video] hevc_cuvid: cuvidCreateDecoder(&cudec, &cuinfo) failed -> CUDA_ERROR_NO_DEVICE: no CUDA-capable device is detected Could not open codec.
[16:05:08 CEST] <furq> the vod player will accept anything that ffmpeg (circa 2011-ish) does
[16:05:33 CEST] <furq> but the live player needs to be h264 or vp[89]
[16:05:46 CEST] <torstein_> but x264 files work, with CUDA. Does my card need to support native x265/HEVC hw acceleration? It's a GTX770
[16:07:16 CEST] <lasser> furq: I just did resize the image, and there was another improvement
[16:07:44 CEST] <kerio> honestly how are you having so many issues encoding a still image
[16:08:17 CEST] <flux> torstein_, x265 is a software implementation of a h264 encoding, whereas nvidia has a hardware one for the same
[16:08:43 CEST] <torstein_> flux so if x264 works with CUDA, then x265 should work as well?
[16:08:43 CEST] <lasser> I also tried x264 against h264. the latter was faster
[16:08:52 CEST] <c_14> flux: I hope both were supposed to be 4s or 5s
[16:09:10 CEST] <flux> c_14, right
[16:09:43 CEST] <flux> torstein_, I understand there's some cuda support in x265, but apparently it's not really that much faster than doing is in software.. I suppose it depends on your gpu and cpu of course.
[16:09:53 CEST] <lasser> kerio: lame hardware?
[16:10:04 CEST] <flux> I would expect that cuda support to work with most any modernish nvidia gpu
[16:10:19 CEST] <kerio> lasser: try -c:v zmbv
[16:10:27 CEST] <kerio> if your goal is youtube upload
[16:11:30 CEST] <lasser> kerio: goal is live streaming
[16:11:39 CEST] <kerio> that is much harder tho D:
[16:12:17 CEST] <furq> thank you for this wonderful advice
[16:12:31 CEST] <flux> torstein_, I would claim that if the latest nvidia drivers work with your card, then it can run most any single-precision cuda code (afaik only scientific code is double-precision)
[16:13:33 CEST] <flux> I don't seem to be able to find any concrete x265+cuda performance numbers.. I might have some use for that as well, if it's fast :)
[16:14:12 CEST] <furq> lasser: does your ffmpeg have --enable-openh264 in the configure line
[16:14:31 CEST] <furq> if it doesn't then -c:v h264 will use libx264
[16:15:40 CEST] <furq> --enable-libopenh264, rather
[16:16:17 CEST] <kerio> lasser: what's the latest commandline that you've been using?
[16:16:21 CEST] <lasser> furq: nope
[16:16:47 CEST] <lasser> kerio: $ ffmpeg -loop 1 -r 1 -i Bilder/schwalben_klein_2.jpg -f alsa -i hw:0,0 -preset ultrafast -flags +global_header -acodec libmp3lame -ar 44100 -ab 64k -ac 1 -vcodec h264 -pix_fmt yuv420p -vf fps=6 -g 2 -shortest -f flv "rtmp://a.rtmp.youtube.com/live2/
[16:16:50 CEST] <furq> i mean you could try rebuilding but i can't guarantee openh264 will be faster
[16:16:56 CEST] <bencoh> furq: is there such a thing as cuda accel for x265?
[16:17:06 CEST] <furq> x264 ultrafast is pretty fast, as the name implies
[16:17:17 CEST] <furq> bencoh: i assume that was for flux
[16:17:28 CEST] <kerio> lasser: do you care a lot about that image?
[16:17:38 CEST] <bencoh> indeed
[16:17:45 CEST] <furq> lasser: get rid of -g 2
[16:17:58 CEST] <furq> youtube reckons you should have 2-4 second gops, so use -g 24
[16:18:10 CEST] <lasser> kerio: you mean get rid of it?
[16:18:43 CEST] <furq> you can probably go higher than 24 though
[16:18:51 CEST] <kerio> regardless of codec, i imagine that a black screen is way easier to encode than an image
[16:18:54 CEST] <kerio> even if it's a still image
[16:19:10 CEST] <kerio> -f lavfi -graph "color=c=black:s=3840x2160:r=1" -i dummy
[16:19:12 CEST] <kerio> ER
[16:19:20 CEST] <kerio> remove the s= part
[16:19:24 CEST] <kerio> it'll default to 320x240
[16:19:48 CEST] <furq> -f lavfi -i color=r=6
[16:19:59 CEST] <furq> try using the image with a higher gop size though
[16:23:20 CEST] <lasser> furq: Yt does not complain about -g 2 , even without -g there are no complaints
[16:23:56 CEST] <furq> i'd have thought -g 2 would be slower
[16:24:13 CEST] <lasser> kerio: the intention of this live stream is to comment amateur soccer games. The image will show the standing and some other stuff
[16:24:21 CEST] <flux> bencoh, I have no idea, I was just considering the applicability of CUDA code on that hardware. also I don't seem to find any proof such would exist for either x264 or x265 :)
[16:24:23 CEST] <furq> getting rid of it entirely at 6fps will make it harder to seek, if that matters to you
[16:24:54 CEST] <flux> though I do recall someone mentioning that it exists for x264. but it's difficult to tell who is confused about h264/x264 and about cuda/nvenc..
[16:25:27 CEST] <kerio> lasser: i realize that it's not really the point of this channel or the point of this exercise but
[16:25:28 CEST] <bencoh> furq: there was a gpu-powered (opencl iirc) x264 project at some point
[16:25:32 CEST] <kerio> can't you just use OBS
[16:25:33 CEST] <flux> at least this exists: https://github.com/Wenchy/x264-CUDA
[16:25:33 CEST] <bencoh> flux: ^
[16:25:35 CEST] <kerio> like everyone does
[16:25:37 CEST] <bencoh> furq: my bad :/
[16:25:42 CEST] <furq> i'm popular
[16:25:56 CEST] <flux> seems like hardware-assited motion estimation would be very relevant for x265 as well
[16:26:17 CEST] <furq> kerio: what makes you think obs would be faster than ffmpeg
[16:26:19 CEST] <lasser> kerio: OBS seems to be a fine pieca of art, but it needs OpenGL 3.2, and my laptop offers 1.3
[16:26:29 CEST] <lasser> It's quite lame, as I said ;-)
[16:26:44 CEST] <kerio> furq: "spawning" the text as opposed to reading a jpg over and over, idk
[16:26:52 CEST] <kerio> anyway, youtube live streaming works with 1fps video
[16:26:57 CEST] <furq> x264 will be the bottleneck
[16:27:06 CEST] <bencoh> flux: well, part of it might be doable using a gpu, yeah. but most of the real "encoder" work (ie all the branching / decision) will run on cpu
[16:27:19 CEST] <furq> you can probably use -framerate 1/60 before -i if it's a static image
[16:27:25 CEST] <kerio> ffmpeg -re -i 03\ -\ Thou\ Shalt\ Always\ Kill.flac -f lavfi -graph "color=r=1" -i dummy -c:a aac -b:a 256k -f flv rtmp://a.rtmp.youtube.com/live2/haha-nice-try-lmao
[16:27:45 CEST] <kerio> it defaulted to some weird flv codec for video
[16:28:04 CEST] <furq> that probably won't work with the html5 player
[16:28:15 CEST] <kerio> it's very weird for you to say that
[16:28:19 CEST] <kerio> since i was listening to it on safari
[16:28:22 CEST] <kerio> without flash player installed
[16:28:50 CEST] <furq> i guess you have no way of knowing if the video works since it's black anyway
[16:29:28 CEST] <furq> if youtube does actually transcode the video then we're all wasting our time, but their support docs heavily imply they don't
[16:29:41 CEST] <kerio> furq: https://youtu.be/WsPqF9C4Uz4
[16:29:42 CEST] <furq> and we all know how infallible google's support is
[16:30:39 CEST] <furq> this is some good nethack gameplay right here
[16:31:07 CEST] <kerio> don't pay attention to that
[16:31:22 CEST] <kerio> apparently youtube is now complaining about the codec
[16:31:24 CEST] <kerio> oh well
[16:31:25 CEST] <kerio> sucks for them
[16:31:42 CEST] <furq> does the video work with something other than a black screen
[16:31:51 CEST] <kerio> hold on
[16:31:52 CEST] <furq> the player claims it's avc, so maybe it does
[16:32:17 CEST] <kerio> how do i downsample a video
[16:32:38 CEST] <furq> -vf scale=320:240
[16:33:01 CEST] <furq> you could just use color=c=red
[16:33:06 CEST] <kerio> no, on the third dimension
[16:38:25 CEST] <kerio> no seriously
[16:38:33 CEST] <kerio> how do i drop 59 out of 60 frames
[16:39:04 CEST] <furq> -vf fps=1
[16:39:37 CEST] <furq> also time is the fourth dimension
[16:40:03 CEST] <kerio> not in video
[16:41:21 CEST] <kerio> furq: https://youtu.be/z8VVxFtAKnQ
[16:42:53 CEST] <kerio> apparently youtube reencodes
[16:43:30 CEST] <kerio> i mean
[16:43:34 CEST] <kerio> it does look like absolute garbage
[16:43:38 CEST] <kerio> but i don't know who's at fault for that
[16:43:54 CEST] <kerio> furq: does it work for you too
[16:44:27 CEST] <lasser> Ok, the load is now avrg at around 90%, goes from 80 to 100
[16:45:09 CEST] <kerio> lasser: fps 1 and flv1 as the codec seems to work for youtube
[16:45:21 CEST] <kerio> so like
[16:45:29 CEST] <lasser> That could be goog enough for now. But there are ALSA errors all the time: [alsa @ 0x9d10c20] ALSA buffer xrun.
[16:46:22 CEST] <kerio> that's probably because you're cpu-bound
[16:47:30 CEST] <lasser> ok, I'll get rid of that with a faster CPU?
[16:47:39 CEST] <kerio> ffmpeg -re -loop 1 -r 1 -i Bilder/schwalben_klein_2.jpg -f alsa -i hw:0,0 -c:a libmp3lame -b:a 64k -ac 1 -f flv "rtmp://a.rtmp.youtube.com/live2/whatever
[16:47:43 CEST] <kerio> try that one
[16:48:26 CEST] <kerio> i don't know how efficient sorenson spark is but
[16:48:37 CEST] <kerio> like
[16:48:40 CEST] <kerio> it's a static image
[16:49:00 CEST] <kerio> furq: btw you missed my sweet 1fps restream of a twitch stream on youtube
[16:56:05 CEST] <kerio> lasser: did that work better?
[17:00:17 CEST] <lasser> kerio: one moment plz
[17:03:53 CEST] <lasser> kerio: yes. there are still errors but much less
[17:04:27 CEST] <furq> you might as well just use rawvideo if you've got the bandwidth for it
[17:04:45 CEST] <furq> actually never mind. it's rtmp isn't it
[17:06:42 CEST] <lasser> kerio: but I had to add -ar 44100, otherwise it doesn't work
[17:06:53 CEST] <lasser> or 22050 or whatever
[17:22:30 CEST] <lasser> thanks for now. you were a great help :-)
[17:23:32 CEST] <kerio> lasser: i think you can go lower than 1fps
[17:25:35 CEST] <lasser> kerio: ? how that? are decimals allowed in ffmpeg?
[17:25:41 CEST] <kerio> sure, why not
[17:25:50 CEST] <kerio> i mean
[17:25:52 CEST] <lasser> like -r 0.00001 :-)
[17:25:55 CEST] <furq> you can use 0.5 or 1/2
[17:26:07 CEST] <kerio> ntsc is 59.94fps
[17:26:19 CEST] <furq> only if that f stands for fields
[17:26:35 CEST] <kerio> furq: are the fractions actually kept as fractions?
[17:26:45 CEST] <furq> no idea but they're more accurate
[17:26:47 CEST] <kerio> furq: ok whatevs 29.97
[17:26:50 CEST] <furq> you should use -r 30000/1001
[17:27:20 CEST] <kerio> honestly between that and sRGB emulating the color response of CRT screens
[17:27:22 CEST] <furq> i imagine the decimal is the same if you type in enough significant digits
[17:27:30 CEST] <furq> but 30000/1001 is easier to remember
[17:27:56 CEST] <furq> or just live in a pal region and use 25
[17:28:34 CEST] <kerio> furq: the double for 30000/1001 is 1054476685978981/35184372088832
[17:28:52 CEST] <kerio> the closest double to 29.97 is 1054475631502295/35184372088832
[17:28:55 CEST] <furq> close enough
[17:28:58 CEST] <kerio> heh
[17:29:11 CEST] <kerio> but obviously it's not 29.97, it's 29.(970029)
[17:29:31 CEST] <kerio> furq: or be cinematic and use 24
[17:29:40 CEST] <furq> you mean 24000/1001
[17:29:47 CEST] <kerio> oh, is 24fps retarded too
[17:29:50 CEST] <furq> sometimes
[17:29:54 CEST] <kerio> nice ._.
[17:30:08 CEST] <kerio> oh right, 23.976
[19:26:25 CEST] <torstein_> Hi. I'm running into two problems. First, libavcodec VDPAU hwaccel works with release 3.1.4 but not with latest master. Second, CUDA hwaccel is works (both master and release) but only for x264. When trying to decode x264 I get this error: "[ffmpeg/video] hevc_cuvid: cuvidCreateDecoder(&cudec, &cuinfo) failed -> CUDA_ERROR_NO_DEVICE: no CUDA-capable device is detected". config.logs: release (http://pastebin.com/E0SFknbC) master
[19:26:25 CEST] <torstein_> (http://pastebin.com/eC0NPb5G)
[19:26:55 CEST] <torstein_> When trying to decode x265**
[19:30:31 CEST] <torstein_> master version: ffmpeg version: N-81983-g4d81f96
[19:31:21 CEST] <torstein_> It seems libavcodec was updated from 57.61.101 to 57.61.103 between master and release
[19:34:10 CEST] <agrathwohl> I am having the exact same issue with HEVC encoding/decoding 3.1.4 torstein_
[19:34:35 CEST] <agrathwohl> Haven't tried latest master yet
[19:35:35 CEST] <torstein_> master made no difference to me
[19:36:04 CEST] <agrathwohl> Are you on Linux?
[19:36:14 CEST] <torstein_> Yes Mint 18 x64
[19:36:30 CEST] <torstein_> CUDA 8, Nvidia 370
[19:36:34 CEST] <agrathwohl> I'm on Arch, bleeding edge current as of yesterday
[19:43:57 CEST] <torstein_> I have also tried the BtbN fork of FFMPEG but it has the same problem
[00:00:00 CEST] --- Fri Oct 14 2016
1
0
[00:29:00 CEST] <Chloe> michaelni: that looks like a really cool project, I tried doing something like that, before I even knew what ffmpeg was, in Go. I'd be interested to see how it goes
[00:29:50 CEST] <nevcairiel> dont we have a fingerprint filter already
[00:30:28 CEST] <nevcairiel> or was that never finished
[00:30:35 CEST] <nevcairiel> i remember seeing something a while ago
[00:50:24 CEST] <cone-125> ffmpeg 03James Almer 07master:8063978bfc86: avformat/matroskaenc: don't write a FlagInterlaced element if it would write the default value
[00:58:27 CEST] <michaelni> nevcairiel, i dont think we have a native one. Theres one that can be used throgh a external lib
[01:08:13 CEST] <nevcairiel> maybe it died on the ML, i faintly remember there being some sort of fingerprinting thing following some industry standard, which some people d idnt like because the standard is crap
[01:08:16 CEST] <nevcairiel> maybe it was for video
[07:02:36 CEST] <vikasmahato0> Hello, I am new to Open Source. I want to contribute to ffmpeg's codebase. Can anyone help me get started?
[07:13:40 CEST] <vikasmahato> Can anyone help me getting started with contributing to ffmpeg
[10:00:38 CEST] <cone-331> ffmpeg 03Matthieu Bouron 07master:a458ed65b5d1: lavc/mediacodecdec: remove first output buffer timing debug log
[10:00:38 CEST] <cone-331> ffmpeg 03Matthieu Bouron 07master:cfa3c2655ac2: lavc/mediacodecdec: rename dequeued_buffer_nb to output_buffer_count
[11:59:10 CEST] <Chloe> They didn't stay long :/
[12:16:00 CEST] <cone-331> ffmpeg 03Rostislav Pehlivanov 07master:230178dfe25e: aacenc: use the decoder's lcg PRNG
[12:18:25 CEST] <atomnuker> I'm not sure the dist approximation on the noise coeffs is right, but the system and how it interacts with the coder is very finely tuned
[12:19:43 CEST] <atomnuker> IMO the MPEG4 specs should have defined a slope which to code in the bitstream to somewhat model the noise
[12:21:26 CEST] <atomnuker> or better yet just a very low order LPC (which you could get for free if the TNS system wasn't per entire window)
[12:22:54 CEST] <atomnuker> that way you could also permit PNS on short windows since you wouldn't shave off as much information as you do with a flat distribution
[12:24:24 CEST] <atomnuker> (though I bet many AAC decoders just use a hardcoded table of random values for the noise)
[12:26:20 CEST] <atomnuker> fun fact: using PNS for all windows and going below 3khz will yield 20kbit/sec with a very comprehensible sound to the original
[12:27:43 CEST] <atomnuker> despite the insanely huge steps on the PNS volume quantization
[12:40:53 CEST] <cone-331> ffmpeg 03Carl Eugen Hoyos 07master:fe8959bbece4: lavf/riffenc: Always write unexpected channel_mask.
[13:52:33 CEST] <Compn> >chinaffmpeg.org
[13:59:23 CEST] <Chloe> Compn: where's that from?
[13:59:26 CEST] <Chloe> oh... lol ok
[14:10:21 CEST] <Compn> Chloe : contributor email addy
[14:10:33 CEST] <Compn> :)
[14:24:05 CEST] <Chloe> yeah
[16:46:52 CEST] <cone-331> ffmpeg 03Philip Langdale 07master:b5f45208fbe5: crystalhd: Fix handling of PTS
[16:46:53 CEST] <cone-331> ffmpeg 03Philip Langdale 07master:03d6d5f3760e: crystalhd: Use mpeg4_unpack_bframes to avoid buggy crystalhd handling
[17:09:53 CEST] <philipl> I know that the crystalhd hardware is pretty much completely irrelevant these days, but I decided to have a go at moving the decoder to the new m:n api and by doing so I was able to rip out all of the insane heuristics and workarounds I put in to make it 'work' in the 1:1 api. Obviously this would break compatibility if pushed, but the old situation was so fragile that pragmatically speaking, you
[17:09:59 CEST] <philipl> couldn't really say it worked before.
[17:10:16 CEST] <nevcairiel> didnt you say it basically didnt work before anyway
[17:10:25 CEST] <nevcairiel> since we broke it with recent changes
[17:10:32 CEST] <philipl> Turns out that was just in the 1:1 context.
[17:10:33 CEST] <nevcairiel> (more or less recent)
[17:10:39 CEST] <philipl> I fixed those issues
[17:11:06 CEST] <philipl> So yes, before the last three changes I pushed for it, it flat out didn't work.
[17:11:19 CEST] <philipl> With those changes, it's back to as working as it was 5 years ago.
[17:11:27 CEST] <nevcairiel> hardware things are the most likely to really benefit from the m:n api, that was one of the main goals it was build for
[17:11:28 CEST] <philipl> With the pending new API changes, it actually works.
[17:11:48 CEST] <philipl> Yeah. Night and day with this stuff.
[17:12:13 CEST] <philipl> So question is really, can I just push these changes and break compatibility or do we need to keep 1:1 api support for contractual reasons.
[17:12:18 CEST] <philipl> I don't want to support both.
[17:12:31 CEST] <nevcairiel> its up to you if you want to move it over, it will certainly keep working with ffmpeg, but API users might need to migrate to the new API
[17:13:02 CEST] <nevcairiel> maybe wait with pushing until ffmpeg 3.2 was branched
[17:13:11 CEST] <philipl> If that's acceptable, that's what I'll do.
[17:13:29 CEST] <philipl> (Works great with mpv using the new api)
[17:14:01 CEST] <nevcairiel> clearly there is an argument here that it just never worked right without this
[17:14:05 CEST] <nevcairiel> so its a clear advantage
[17:14:15 CEST] <philipl> absolutely.
[17:18:21 CEST] <nevcairiel> other hw things would equally like to switch over i'm sure, but their "emulation" works OK so far with some extra buffering, so tehy dont bother
[17:19:11 CEST] <nevcairiel> can switch when we're closer to the cut-off for the old API
[17:19:36 CEST] <philipl> Ok.
[19:01:55 CEST] <philipl> So, who's supposed to be responsible for interpolating timestamps for something like h.263 in an avi where 2 out of 3 frames have no timestamp in the container?
[19:24:51 CEST] <BtbN> philipl, isn't avi timestamp-less anyway, and just cfr?
[19:26:48 CEST] <JEEB> I guess he's talking about b-frame packing where a single "frame" has multiple coded samples
[19:26:59 CEST] <JEEB> and yes, AVI is DTS only and CFR
[19:29:42 CEST] <philipl> yeah
[19:30:52 CEST] <philipl> Anyway, point being that good ol crystalhd doesn't work out timestamps for you (cuvid does)
[19:31:11 CEST] <philipl> If I return NOPTS, mpv interpolates well enough (with a lot of warnings)
[19:33:14 CEST] <BtbN> just make one up based on the framerate I'd say
[19:33:21 CEST] <BtbN> cuvid has code for that.
[19:34:36 CEST] <philipl> That's my plan
[19:36:36 CEST] <lordPoseidon> hello I am a user of FFMpeg, I know C and C++ language, I want to help in the contribution, what should I study about the FFMPEG in order to know its internals
[19:37:03 CEST] <JEEB> there's so much stuff you should look into what you want to improve within the project first
[19:39:03 CEST] <lordPoseidon> JEEB: OK, I what other libraries of the C im supposed to know, I know some amount of C and C++ standard library
[19:39:05 CEST] <JEEB> and of course the first step is to compile FFmpeg
[19:39:31 CEST] <lordPoseidon> yes it was easy, I have done it
[19:39:34 CEST] <lordPoseidon> I have make it
[19:39:51 CEST] <lordPoseidon> from source from the github mirror
[19:41:04 CEST] <JEEB> cool
[19:41:08 CEST] <lordPoseidon> what extra I need to know, I also know the 8086 assembly, I am a CSE student, and an aspiring GSOC candid next yr
[19:41:29 CEST] <JEEB> I'd say you're good to start poking around
[19:41:42 CEST] <JEEB> personally my adventures into FFmpeg start with "X works badly"
[19:41:53 CEST] <JEEB> and then I try to improve that X
[19:41:53 CEST] <lordPoseidon> OK
[19:42:23 CEST] <lordPoseidon> So is it possible to understand the stuff, I want to ask where to learn first
[19:42:45 CEST] <philipl> (gdb) p avctx->pkt_timebase
[19:42:46 CEST] <philipl> $1 = {num = 125, den = 125874}
[19:42:46 CEST] <philipl> (gdb) p avctx->framerate
[19:42:46 CEST] <philipl> $2 = {num = 0, den = 1}
[19:42:51 CEST] <JEEB> it should be possible to try and look things up
[19:42:52 CEST] <philipl> *sigh*
[19:43:03 CEST] <JEEB> as you start looking into things
[19:43:21 CEST] <JEEB> you could read up a generic multimedia primer but I'm actually not sure if it would help you much if at all
[19:43:29 CEST] <JEEB> it really depends on what you want to poke
[19:43:30 CEST] <lordPoseidon> JEEB: OK, thx sir, I start moving around the code, study it
[19:43:37 CEST] <lordPoseidon> ok
[19:43:53 CEST] <JEEB> of course the nr1 problem is if you haven't found anything wrong with FFmpeg :D
[19:43:59 CEST] <JEEB> then you don't have an agenda
[19:44:36 CEST] <lordPoseidon> ok
[19:44:53 CEST] <lordPoseidon> I use it to convert videos usually ;-)
[19:45:11 CEST] <JEEB> I think there are some lists of projects etc
[19:45:24 CEST] <JEEB> which could help you see if you can find something specific to poke
[19:45:40 CEST] <lordPoseidon> OKs thx, for your help, I see thx again
[19:47:02 CEST] <BtbN> philipl, the avi demuxer definitely should have set that.
[19:47:09 CEST] <BtbN> also investiage the timebase field
[19:48:36 CEST] <philipl> BtbN: and yet, here we are. :-)
[19:49:35 CEST] <philipl> (gdb) p avctx->time_base
[19:49:35 CEST] <philipl> $3 = {num = 0, den = 1}
[19:50:28 CEST] <BtbN> https://github.com/FFmpeg/FFmpeg/blob/master/libavformat/avidec.c#L691
[19:52:47 CEST] <nevcairiel> decoders should just forward timestamps from the input
[19:52:51 CEST] <nevcairiel> so: dont worry about it
[19:54:38 CEST] <philipl> well, the timestamp is NOPTS. As I said, mpv seems to handle it fine, although it warns every time.
[19:54:52 CEST] <JEEB> yeah, I'm not sure if decoders are the place where you should start putting container specific hacks into
[19:55:47 CEST] <philipl> The cuvid library does seem to interpolate. I stuck some debug output in there and BtbN avoids setting an input timestamp on NOPTS, but the library/hardware returns a meaningful (correct) value on output.
[19:56:39 CEST] <philipl> I'm happy to ignore it and ask wm4 if he really wants to warn on every frame
[19:56:47 CEST] <BtbN> How does that even work? Multiple frames per packet?
[19:56:57 CEST] <philipl> BtbN: how does what even work?
[19:56:59 CEST] <BtbN> Or rather, how did that work before, with the old api
[19:57:23 CEST] <BtbN> Well, there are multiple frames per input packet, right?
[19:57:28 CEST] <philipl> Yes.
[19:57:36 CEST] <philipl> SO, this pattern of incomplete timestamps was always there.
[19:57:38 CEST] <BtbN> And how did the old 1:1 API handle that?
[19:57:48 CEST] <philipl> going back long enough in time, everything seemed to work and I never paid attention.
[19:58:17 CEST] <philipl> Then when I went back to it this month, it was all busted and my attempt to let the hardware handle unpacking bframes didn't work anymore.
[19:58:43 CEST] <BtbN> I still don't understand how having multiple frames in the same packet worked with the old API.
[19:58:49 CEST] <philipl> I replaced that with the bsf and told it to return '0' for the NOPTS frames and empirically it worked.
[19:58:57 CEST] <philipl> the hardware could handle it
[19:59:00 CEST] <JEEB> BtbN: usually a parser would handle it
[19:59:14 CEST] <JEEB> so you had a parser separate the samples or so
[19:59:23 CEST] <JEEB> at least that's how it's done for some formats
[19:59:25 CEST] <philipl> That's what I'm doing now.
[19:59:34 CEST] <BtbN> So the packages were split before being fed to the decoder?
[19:59:55 CEST] <philipl> That's today. I can't honestly tell you how it worked out fine 5 years ago.
[19:59:57 CEST] <JEEB> at least there's a framework for that in lavc, yes
[20:00:09 CEST] <JEEB> and demuxer can request that
[20:00:25 CEST] <BtbN> it seems to be a codec thing rather than a decoder one
[20:02:36 CEST] <jamrial__> nevcairiel: do you think it would be ok to drop our qsv changes and put it in the exact same state as libav so merges can resume?
[20:02:42 CEST] <jamrial__> i'm not sure what the nablet developers changed in our tree, but i doubt libav's current code is non working
[20:03:07 CEST] <jamrial> they haven't replied to two of my emails. same with one by michaelni
[20:03:24 CEST] <jamrial> so they aren't exactly maintaining it in any timely manner
[20:04:16 CEST] <nevcairiel> imho libavs is currently in a better state even
[20:04:24 CEST] <nevcairiel> with one exception, it doesnt support mjpeg or something
[20:04:31 CEST] <nevcairiel> (but who cares)
[20:05:11 CEST] <jamrial> then imo lets just do that. if Ivan Uskov or any other nablet developer shows up again they can resume their custom changes
[20:06:31 CEST] <Chloe> This sounds like a good idea
[20:08:37 CEST] <BtbN> Is there anything I can do for ffmpeg_cuvid.c so it doesn't break when the merges?
[20:10:29 CEST] <nevcairiel> i'll let you know when i figure it out
[20:10:53 CEST] <nevcairiel> dont think you can pre-emptively fix it
[20:15:41 CEST] <jkqxz> jamrial: I was planning on looking at qsv in the next few days if noone else did. My plan was mostly that, with maybe attempting to merge some changed features.
[20:16:09 CEST] <jkqxz> (qsv encode in ffmpeg currently segfaults immediately on Linux.)
[20:20:00 CEST] <nevcairiel> some of the core functions are quite different, imho going back to a common base is a good idea, even if its one big noisy change
[20:20:09 CEST] <philipl> BtbN: So, the missing framerate/timebase data is related to using the new API
[20:20:10 CEST] <nevcairiel> we do have some more encoding options that may be worth keeping
[20:20:28 CEST] <philipl> cuvid also gets empty/unset values
[20:20:47 CEST] <philipl> h263dec does not. I think decode_video2 does some stuff that isn't done in the new API path
[20:24:28 CEST] <BtbN> Am I missing something, or is that >= 0 there wrong: https://github.com/FFmpeg/FFmpeg/blob/master/libavcodec/libx264.c#L296
[20:24:41 CEST] <BtbN> x4->forced_idr is a bool opt, that defaults to -1
[20:24:53 CEST] <BtbN> so setting it to either true or false both forces idr?
[20:25:35 CEST] <BtbN> why is it even a tri state bool?
[20:29:50 CEST] <philipl> BtbN: Now I understand. Before my change to use the new API, the avctx framerate/timebase fields were populated and mpv used them to interpolate without complaining.
[20:30:02 CEST] <philipl> after switching to the new API, those fields are all garbage, so it complains a lot.
[20:30:05 CEST] <philipl> mystery solved.
[20:36:08 CEST] <BtbN> I kind of feel like that force_idr logic in libx264 was intended to work diffrently than it does now
[20:36:23 CEST] <BtbN> like, -1, the default, means live the encoder alone, 0 means intra, 1 means idr
[20:37:42 CEST] <jamrial_> BtbN: it was probably changed into an bool av_opt_type at some point
[20:37:56 CEST] <BtbN> even as an int it would have not worked propperly
[20:38:00 CEST] <jamrial_> afaik bool is a relatively new addition to AVOption
[20:38:14 CEST] <BtbN> even setting it to 0 enables forced idr
[20:38:29 CEST] <BtbN> the tri-state is entirely unused, with -1 meaning false, and everything else true
[20:41:14 CEST] <philipl> BtbN: Ok, forget that. That's the difference between probing and opening for decode.
[20:41:17 CEST] <philipl> So no idea.
[20:50:27 CEST] <BtbN> philipl, have you tried setting the new AVOID_PROBING flag on it?
[20:50:50 CEST] <philipl> BtbN: Yes, I'm already setting that.
[20:51:15 CEST] <philipl> I want to say this is some difference in mpv but need to debug more
[20:51:23 CEST] <philipl> h263dec returns NOPTS, for sure.
[20:54:34 CEST] <cone-400> ffmpeg 03Timo Rothenpieler 07master:30c558750374: avcodec/nvenc: add support for forcing intra/idr frames
[21:12:01 CEST] <jayridge> Hi. I submitted a patch for RTSPS. I made the requested changes from the ffmpeg-devel list and sent them back. Should I be doing anything else? This is my first patch. Thank you. https://patchwork.ffmpeg.org/patch/817/
[21:18:55 CEST] <Compn> jayridge : is there any server we can test it on ?
[21:19:02 CEST] <Compn> maybe just ping it...
[21:19:30 CEST] <jayridge> I can set something up
[21:19:36 CEST] <Compn> that would be nice
[21:20:11 CEST] <jayridge> ok i will work on that
[21:21:59 CEST] Action: Compn runs before he has to test a patch
[21:22:00 CEST] <Compn> lol
[21:36:27 CEST] <philipl> BtbN: continuing down the rabbit hole. with h263dec, mpv is using dts to work out timestamps. With crystalhd, dts is unset.
[21:39:40 CEST] <philipl> Yeah, so decode_video2 will copy the pkt dts to the output frame because it can. with new APi that's obviously not possible.
[21:39:47 CEST] <philipl> I guess it becomes decoder's responsibility?
[21:42:25 CEST] <BtbN> It can't, because of reordering and delay and stuff
[21:42:29 CEST] <BtbN> for cuvid I had to workaround that.
[21:47:35 CEST] <philipl> Well, decode_video2 copies the current input packet dts to current output frame. You can emulate that with a fifo.
[21:48:06 CEST] <philipl> I feel like I'd rather interpolate pts :-P
[21:49:58 CEST] <BtbN> I workarounded it doing it, by setting stuff to NOPTS again
[21:50:04 CEST] <BtbN> with reordering and stuff it's just plain bad
[21:51:55 CEST] <philipl> If cuvid wasn't interpolating pts for you, then this h.263 stuff would get the same warnings from mpv.
[21:52:41 CEST] <BtbN> I still don't see where interpolating PTS would be neccesary. There allways was one input packet per output frame, so it has a pts available.
[21:53:02 CEST] <philipl> With avi, there is no input pts
[21:53:23 CEST] <philipl> and with new API there is no dts carried over to output
[21:53:28 CEST] <philipl> so you have no values at all
[21:54:20 CEST] <BtbN> so there are packets without a PTS coming in, and it just works?
[21:54:27 CEST] <philipl> with cuvid, yes.
[21:55:07 CEST] <philipl> You are a sane man and so you don't test with avi but it's doing this magic for you.
[21:59:35 CEST] <BtbN> I'd guess it happens when you pass a frame without the PKT_TIMESTAMP flag in between
[21:59:43 CEST] <BtbN> must have been designed just for that case
[22:01:34 CEST] <philipl> I think so.
[22:08:11 CEST] <RiCON> BtbN: re: force_idr, could have something to do with both ways you can force x264 to use an IDR frame depending on open gop settings
[22:09:28 CEST] <BtbN> RiCON, hm?
[22:09:58 CEST] <BtbN> currently, by default of -1, it forces an intra frame. If setting force_idr to either 0 or 1, it forces an intra frame. Which over all doesn't make much sense.
[22:11:05 CEST] <RiCON> http://www.chaneru.com/Roku/HLS/X264_Settings.htm#qpfile
[22:12:53 CEST] <BtbN> shouldn't that completely override that setting anyway?
[22:18:48 CEST] <RiCON> nevermind, understood the check now
[22:19:20 CEST] <BtbN> hm?
[22:59:39 CEST] <cone-400> ffmpeg 03Carl Eugen Hoyos 07master:932bbfc5d8ae: configure: Use LDEXEFLAGS in check_ld().
[23:27:29 CEST] <cone-400> ffmpeg 03James Almer 07master:dc781459cc1a: avformat/matroska: fix MatroskaVideoFieldOrder enum values
[00:00:00 CEST] --- Thu Oct 13 2016
1
0
[00:45:26 CEST] <qubodup> hello, is it possible to do a wipe transition with ffmpeg? GIF animation of what I mean: http://i.giphy.com/YBnXdwgJkb7LW.gif
[00:46:41 CEST] <qubodup> -filter_complex "[0:v]crop=w=t*200:h=1080:x=0:y=0:keep_aspect=0:exact=1[cropout];[1:v][cropout]overlay[out]" -map '[out]' unfortunately fails, apparently because of trying to use "t" to define "w" and also "exact" seems to not work even though it's in the docs
[01:14:59 CEST] <yaymuffins> Hello
[01:16:37 CEST] <yaymuffins> I try to extract a frame from a couple of videos as an image, they are disorganized so I'd like to extract the title card and use it to rename appropriately
[01:17:21 CEST] <yaymuffins> the issue is, I would need to seek "in reverse" to be sure that the timing is right for each video
[01:19:36 CEST] <yaymuffins> specifying a time minus the end position, instead of the default time + start position
[01:33:11 CEST] <plujon> ffmpeg -i foo.ogv foo.tls # creates a tls that vlc can play, but hls.js can not
[01:34:04 CEST] <plujon> s/tls/ts/
[01:34:59 CEST] <plujon> I know next to nothing about video encoding. How can I create a foo.ts that an html5 player such as hls.js can process?
[01:36:30 CEST] <furq> -c:v libx264 -c:a aac
[01:36:54 CEST] <furq> or -i foo.ogv foo.mp4
[01:36:58 CEST] <furq> you can just play that in a video tag
[01:39:49 CEST] <plujon> furq: That incantation works! Thanks!
[01:40:02 CEST] <plujon> (I'm specifically trying to test hls.js)
[04:51:57 CEST] <kuroro> hello, im interested in getting a motion vector data in text or parsable format. is there a way I can modify the following command to do that?
[04:52:00 CEST] <kuroro> ffmpeg -flags2 +export_mvs -i input.mp4 -vf codecview=mv=pf+bf+bb output.mp4
[04:54:43 CEST] <FlyingJester> How do I pass AVOptions to an encoder?
[06:22:28 CEST] <thelamer> does anyone know how to create a mosaic from a multi program transport stream ? (udp input)
[06:23:54 CEST] <thelamer> IE I can define a single stream "-i udp://127.0.0.1:6910 -map i:0x44c" but map is on the output so I cannot use filter_complex to define multiple inputs off the single UDP port
[06:25:27 CEST] <thelamer> general concept for the multi program out to a file http://pastebin.com/raw/9yjwiczB
[11:30:06 CEST] <Kadigan_KSB> Hey. I was wondering -- can ffmpeg be used to recover a file on damaged optical media?
[11:30:29 CEST] <Kadigan_KSB> Like, if I could tell it to simply insert blank (black/silence) where the damaged portions are, or to skip them after n retries or somesuch...?
[11:30:51 CEST] <Kadigan_KSB> The source material is in .flv container, h264/aac.
[11:35:47 CEST] <tdr> Kadigan, try recoverig the media using cdparanoia or similar first?
[11:39:30 CEST] <Kadigan_KSB> I'm attempting photorec, we'll see.
[11:46:48 CEST] <furq> time to break out the toothpaste
[11:54:16 CEST] <Kadigan_KSB> The disc actually has fairly localized damage, but I think it extends well into the reflective area.
[11:54:33 CEST] <Kadigan_KSB> Which is to say, no amount of grinding will help, ever.
[12:00:02 CEST] <nonex86> i remember some guys tried to "fix" scratches on disc by putting it to refrigerator for some time
[12:35:46 CEST] <cluelessperson> Hi all, what's a simple command to view my webcam on screen?
[13:23:33 CEST] <senyai_> Hi! ffmpeg log says "If you want to help, upload a sample of this file to ftp://upload.ffmpeg.org/incoming/", well, the ftp is not up.
[13:46:44 CEST] <senyai_> Anyone here responsible for ftp://upload.ffmpeg.org ?
[15:16:28 CEST] <ubitux> any lossless audio codec supported in mp4 in mind?
[15:16:36 CEST] <ubitux> (not alac for mov, i'm looking for mp4)
[15:16:52 CEST] <ubitux> pcm s16, alac nor flac are supported
[15:32:02 CEST] <c_14> mpeg4-als, but ffmpeg doesn't encode that
[15:58:17 CEST] <nonex86> does the version of libvpx matter? i build ffmpeg with libvpx 1.6, static build on windows and got an error: [libvpx @ 0000007CE9B090C0] v1.6.0
[15:58:17 CEST] <nonex86> [libvpx @ 0000007CE9B090C0] Failed to initialize encoder: ABI version mismatch
[15:58:39 CEST] <c_14> You have to link against the version you built against
[15:59:09 CEST] <nonex86> well, i link it againts 1.6 libs i built myself :/
[15:59:28 CEST] <nonex86> ill check once more
[15:59:36 CEST] <kepstin> my guess is that the build is using the wrong headers (maybe an old version)
[16:00:57 CEST] <nonex86> yeah, this is more likely...
[16:05:21 CEST] <nonex86> kepstin: yeah, thats it, i found headers from previouse version, thanks for pointing!
[16:05:54 CEST] <nonex86> god, now i have to rebuild it several times :D
[18:28:54 CEST] <furkan> hi, ffplay has an option "-fflag nobuffer", is it possible to set this flag with ffmpeg as well?
[18:29:13 CEST] <furkan> *-fflags nubuffer
[18:30:56 CEST] <DHE> it wouldn't be of a lot of use because most [good] codecs will also buffer by default, and there are quality/bitrate penalties under certain situations for not using them
[18:34:25 CEST] <furkan> all i'm doing is saving an audio stream to disk, but sometimes after maybe about an hour of streaming, it seems to skip a frame... not sure why that happens, i thought maybe the buffer fills up
[18:35:24 CEST] <DHE> why would it? the disk would be fast enough to keep up with the network stream.
[18:35:27 CEST] <furkan> no errors in the console though, so i'm not sure really
[18:35:41 CEST] <DHE> unless something causes ffmpeg to block long enough that the network layer itself is dropping packets
[18:36:31 CEST] <furkan> true... i'm not really sure how i could debug it, but just had that random thought
[18:37:02 CEST] <furkan> didn't spend too much time on it, because priorities lol
[19:03:39 CEST] <SchrodingersScat> I record some streams with multiple machines just in case of things like that. 1/10 of my captured data seems to error, so I run 6 machines.
[20:35:42 CEST] <blue_misfit> I'm seeing some conflicting info on this, but if I have a 60p input and want ffmpeg to make a 30p output via throwing away half the frames (i.e. the equivalent of SelectEven() in AviSynth) how should I do this?
[20:38:11 CEST] <agrathwohl> I've always done this by setting frame rate i.e. `-r 24000/1001` and then setting `-vsync 1`
[20:38:24 CEST] <agrathwohl> I'd also be very interested to learn if this is the right way or wrong way to do it
[20:54:40 CEST] <kuroro> is there a video player that lets me see the video frame-by-frame or at least tell which frame # im currently in?
[20:57:19 CEST] <DHE> frame number isn't always available. I use mpv, it lets you get millisecond timestamps on the OSD
[20:57:47 CEST] <SchrodingersScat> I've been using mpv too, . to step forward a frame
[20:58:23 CEST] <kuroro> ic. whats osd?
[20:58:48 CEST] <kuroro> how come there's no open source equivalent of something like this for h264?
[20:58:49 CEST] <kuroro> http://www.elecard.com/assets/images/products/screenshots/hevc-analyzer/0_m…
[21:00:09 CEST] <kuroro> anyway, i'll give mpv a try as well
[21:01:22 CEST] <furq> blue_misfit: -vf fps=30
[21:01:22 CEST] <SchrodingersScat> that looks pretty fancy
[21:01:47 CEST] <furq> kuroro: on-screen display
[21:03:15 CEST] <kuroro> it just found this as well - https://github.com/lheric/GitlHEVCAnalyzer
[21:05:37 CEST] <SchrodingersScat> kuroro: neat
[21:06:17 CEST] <DHE> kuroro: See https://trac.ffmpeg.org/wiki/Debug/MacroblocksAndMotionVectors
[21:06:43 CEST] <furq> neat
[21:06:48 CEST] <kuroro> yeah, i saw that yesterday
[21:07:01 CEST] <kuroro> but id be great to see what exact frame im currently in, and see the numbers
[21:07:36 CEST] <kuroro> raw numbers (currently using the ./extract_mvs and i wanna map it to the ffmpeg -flags2 +export_mvs output)
[21:18:55 CEST] <SchrodingersScat> wow, that's great, the arrows are amazing, what's that used for?
[21:23:13 CEST] <lasser> Hello! I desperately try to stream live content to Youtube via ffmpeg. Nothing seems to work, and I fear, that the most interfering factor is me. I don't beliebe that there are errors in ffmpeg or YT but only in my way to get it right.
[21:30:36 CEST] <kuroro> SchrodingersScat: i think its used by b-frames and p-frames for decoding. im not sure if my terminology is correct, but way i understand its kind of a "diff" between frames but containing direction information
[21:31:41 CEST] <DHE> "motion compensation"
[21:31:55 CEST] <DHE> I think that's the technical tetrm
[21:31:57 CEST] <DHE> term
[21:32:57 CEST] <Mavrik> Basically instead of writing the image data for next frame, only the vector describing where that block of picture has moved is saved.
[21:33:07 CEST] <Mavrik> So basically you store two numbers instead of whole block
[21:33:28 CEST] <Mavrik> Since cameras tend to pan and moved in linear way a lot that's very efficient :)
[21:34:11 CEST] <DHE> after all, MPEG stands for 'Motion Picture' Encoding Group :)
[21:36:38 CEST] <TD-Linux> kuroro, also check out http://aomanalyzer.org/
[21:36:55 CEST] <TD-Linux> (it'll take a bit to load, and if you want to see motion vectors, you need to step past the first frame of course)
[21:41:44 CEST] <lasser> I need a little help in shaping the right ffmpeg command.
[21:42:52 CEST] <lasser> for now I'm using "$ ffmpeg -f mjpeg -i Bilder/schwalben_klein.jpg -re -f mp3 -i "rockboxbackup/Hörspiele/Uni Auditorium - Physik - Vorlesung von Harald Lesch - Quantenmechanik.mp3" -preset veryfast -flags +global_header -ar 44100 -ab 128k -s 320x240 -vcodec h264 -pix_fmt yuv420p -g 20 -vb 250k -profile:v baseline -r 10 -strict -2 -f flv "rtmp://a.rtmp.youtube.com/live2/MyStreamID"
[21:43:07 CEST] <lasser> just for testing...
[21:43:10 CEST] <Mavrik> lasser, people will be happy to help you, but you'll have to pastebin the command and output somewhere.
[21:43:16 CEST] <Mavrik> And then say what the exact problem is.
[21:43:42 CEST] <furq> lasser: does that correctly output to a file or piped to a player
[21:44:01 CEST] <furq> it doesn't look like you're looping the input jpeg
[21:50:23 CEST] <kuroro> TD-Linux: looks pretty cool. is that your project?
[21:50:51 CEST] <TD-Linux> kuroro, mbx wrote it, but I do work on the video codec it's analyzing
[21:51:39 CEST] <kuroro> nice
[21:51:54 CEST] <lasser> Mavrik, sorry, here it is: http://pastebin.com/EwjFz17S
[21:52:37 CEST] <Mavrik> hrmf.
[21:52:46 CEST] <Mavrik> And the issue you're seeing?
[21:53:11 CEST] <furq> lasser: like i said, you're not looping the input jpeg
[21:54:08 CEST] <furq> get rid of -f mjpeg and add -loop 1 in its place
[21:54:17 CEST] <furq> you probably also want to use aac audio for youtube
[21:54:25 CEST] <lasser> YT seems to get some data, but the live stream does not start.
[21:54:59 CEST] <lasser> furq: ok, I'll try that, one moment, please
[21:55:16 CEST] <furq> add -shortest as well
[21:55:27 CEST] <Mavrik> Also set FPS to 30
[21:55:31 CEST] <Mavrik> not 10
[21:56:10 CEST] <furq> 10 should work but yeah, try it anyway
[21:56:14 CEST] <furq> mp3 should work as well
[21:58:54 CEST] <lasser> woaaah, i can see and hear something. That was fast, guys...
[21:59:55 CEST] <lasser> -loop 1 did the trick
[22:00:01 CEST] <furq> also there's no reason to pass -vb 250k if it's a single repeated frame
[22:00:06 CEST] <furq> the actual bitrate should be much lower than that anyway
[22:05:26 CEST] <lasser> THANK YOU!
[22:10:26 CEST] <benbro> is it safe to run it even if there is no audio channel?
[22:10:28 CEST] <benbro> ffmpeg -i in.mp4 -c:a copy -c:v copy -movflags +faststart out.mp4
[22:10:46 CEST] <benbro> I want to move the flags to the start without re-encoding
[22:11:08 CEST] <BtbN> Then use qt-faststart
[22:11:48 CEST] <benbro> BtbN: part of ffmpeg or separate?
[22:13:14 CEST] <kuroro> btw: i finally found a video player that displays frame number
[22:13:20 CEST] <kuroro> https://support.apple.com/kb/DL923?locale=en_US
[22:13:25 CEST] <kuroro> quicktime player (version 7)
[22:13:51 CEST] <kuroro> http://superuser.com/a/543045 shows how to do it
[22:13:55 CEST] <benbro> BtbN: my command is wrong? I want to avoid installing another tool
[22:14:22 CEST] <BtbN> -c copy is enough. But it pointlessly remuxes the entire file.
[22:15:21 CEST] <benbro> BtbN: qtfaststart is a python tool?
[22:16:08 CEST] <benbro> BtbN: without reencoding remuxing will probably won't take too long
[22:16:23 CEST] <BtbN> it still moves a lot of data around and potentialy causes issues.
[22:16:44 CEST] <BtbN> And i think the movflag faststart just internally calls qt-faststart after it's done writing the file.
[22:16:52 CEST] <BtbN> So just call it on the original file.
[22:18:14 CEST] <benbro> BtbN: I'll do that. I see qt-faststart is part of the ffmpeg package on ubuntu
[22:18:25 CEST] <benbro> the python package is not needed here
[22:18:48 CEST] <kuroro> yay! i found something interesting
[22:19:39 CEST] <kuroro> if there's a sudden change in scene, there would be no motion vector information for that frame
[22:19:50 CEST] <benbro> BtbN: can qt-faststart work inplace? or do I have to create another file?
[22:20:14 CEST] <kuroro> i.e. person a talking, next frame shows person b talking. (sudden shift, no motion vector)
[22:20:22 CEST] <kuroro> could be used to find breakpoints
[22:20:42 CEST] <BtbN> benbro, pretty sure it needs a new file
[22:20:48 CEST] <benbro> BtbN: thanks
[22:21:06 CEST] <BtbN> kuroro, isn't that because encoders usually auto-detect scene changes and insert an I frame?
[22:23:16 CEST] <kuroro> hmm, not sure, let me check if that frame is an iframe
[22:23:18 CEST] <kuroro> i frame
[22:23:26 CEST] <furq> anecdotally, moving the moov atom takes longer than remuxing
[22:23:40 CEST] <furq> especially if you make the mistake of trying to run several jobs in parallel on hard disks
[22:29:33 CEST] <kuroro> BtbN: oh interesting, yeah your right
[22:29:52 CEST] <kuroro> so basically, can you also breakpoints of an video via the presence of an I frame?
[22:29:57 CEST] <kuroro> a video*
[22:30:09 CEST] <kuroro> find breakpoints
[22:31:04 CEST] <kuroro> looks like it works
[22:31:07 CEST] <kuroro> this is awesome
[22:32:54 CEST] <cynar> hi all. Does anyone know where i can get more info on libdc1394 module in ffmpeg? https://www.ffmpeg.org/ffmpeg-devices.html#toc-libdc1394
[22:34:26 CEST] <cynar> I'm trying to get a stream of some sort from a point grey usb 3.0 camera. The easy options all didn't work, and ffmpeg has just enough info to suggest it can be done, but not enough to point me to how.
[22:42:50 CEST] <c_14> cynar: I just read the source, it'll always pick the first camera it finds and you can set video_size, pixel_format and framerate
[22:46:27 CEST] <okarusty> hi, i'm having some issues with ffmpeg attempting to get two of my ip cameras to stream to youtube (neither video sources provide an audio input, which is why i'm using the nullsrc=). http://pastebin.com/p1fgzmB8
[22:46:39 CEST] <okarusty> ffmpeg eventually stops with:
[22:46:39 CEST] <okarusty> [flv @ 0x7fa7f7800600] Failed to update header with correct duration.A dup=0 drop=63 speed= 0x
[22:46:42 CEST] <okarusty> [flv @ 0x7fa7f7800600] Failed to update header with correct filesize.
[22:50:51 CEST] <cynar> c_14: hate to be a total noob, could you give me an example of how it should look? I've always found ffmpeg awesome, but a little opaque.
[22:52:19 CEST] <c_14> cynar: ffmpeg -video_size 1280x720 -pixel_format yuv420p -framerate 30 -i 0 out.mkv
[22:52:24 CEST] <c_14> should probably do it
[22:55:47 CEST] <cynar> ok, that gives me a error: 0: No such file or directory
[22:56:24 CEST] <c_14> okarusty: you probably want to use the hstack filter, the deinterlace option is deprecated use the yadif filter (or one of the other deinterlacing filters), you're not setting a video bitrate anywhere so it'll default to crf 23 (which may fluctuate to much for streaming). Don't know why it's giving that error though. Your version of ffmpeg might be old
[22:57:55 CEST] <c_14> cynar: is this dc1394-1 or dc1394-2?
[22:58:33 CEST] <cynar> not sure tbh
[22:58:58 CEST] <c_14> Well, the only one that references the filename is -1 so it's pbobaly that
[22:59:28 CEST] <cynar> been using libdc1394, but i'm well out of my depth already.
[23:02:21 CEST] <c_14> Do you happen to know the name of your dma device file?
[23:03:57 CEST] <cynar> ?
[23:05:01 CEST] <cynar> might have also found an additional problem. my copy of ffmpeg wasnt compiled with the flag enabled. attempting to compile it now. Will get back if it doesn't fix it, if that's ok?
[23:05:14 CEST] <c_14> sure
[23:07:30 CEST] <cynar> thanks for your help already as well. :)
[23:09:59 CEST] <benbro> when compiling ffmpeg from source, am I supposed to get a qt-faststart binary?
[23:10:02 CEST] <benbro> because I don't se it
[23:11:02 CEST] <furq> make qt-faststart
[23:12:24 CEST] <benbro> furq: ok. it's "make tools/qt-faststart"
[23:12:37 CEST] <benbro> do I need only the binary or also the .so?
[23:12:55 CEST] <benbro> I mean the qt-faststart.o file too?
[23:13:01 CEST] <furq> you don't need the .o
[23:14:07 CEST] <benbro> furq: I'm getting ffmpeg and ffmpeg_g binaries
[23:14:11 CEST] <benbro> what is _g?
[23:14:17 CEST] <furq> debug symbols
[23:15:01 CEST] <benbro> thanks
[23:15:15 CEST] <okarusty> c_14: thanks i'll play around these options you suggested.
[23:21:54 CEST] <benbro> furq: where can I find the binaries after running make?
[23:22:03 CEST] <benbro> and how do I install qt-faststart after make?
[23:45:37 CEST] <okarusty> c_14: i managed to get it working with those options you suggested, thanks! all i wanted to do was make sure this was possible, and definitely was (https://youtu.be/ruO2GXDUdnM) time to donate!
[00:00:00 CEST] --- Thu Oct 13 2016
1
0
[00:42:03 CEST] <llogan> taking bets on number of comments at end of day
[01:48:40 CEST] <jamrial> llogan: better yet, drama just moved to the ml
[01:53:25 CEST] <llogan> jamrial: crossposted too, although he forgot -cvslog and libav-user
[02:24:02 CEST] <Compn> doh he left
[03:39:48 CEST] <Compn> carl knows his bugs.
[03:39:54 CEST] <Compn> in apple software
[03:39:57 CEST] <Compn> and his workarounds :D
[03:47:01 CEST] <cone-034> ffmpeg 03Moritz Barsnick 07master:efbc37a757d6: lavfi/pan: renormalize negative gain coefficients properly
[04:58:53 CEST] <cone-034> ffmpeg 03James Almer 07master:c44eae157f62: avformat/matroskaenc: fix targets for attachment tags
[05:11:50 CEST] <philipl> BtbN: All good including npp scaling. Needed one fix:
[05:11:52 CEST] <philipl> https://gist.github.com/philipl/ae19e614c4c4acd1e39e1a86124e236e
[09:46:01 CEST] <cone-291> ffmpeg 03Carl Eugen Hoyos 07master:d0c1b9821aa1: lavf/mxfenc: Do not print a useless error message.
[10:03:14 CEST] <cone-291> ffmpeg 03Carl Eugen Hoyos 07master:4147d8efe5cc: lavf/aiffdec: Default to full rate qcelp as QT does.
[10:03:15 CEST] <cone-291> ffmpeg 03Carl Eugen Hoyos 07master:34aa14546853: lavf/aiffenc: Write extradata also for qcelp.
[10:07:38 CEST] <cone-291> ffmpeg 03Carl Eugen Hoyos 07master:5781256c013e: lavf/matroskaenc: Always write V_QUICKTIME extradata.
[12:37:30 CEST] <Chloe> I dont get why that issue was closed? Surely mp4 *should* work?
[12:38:28 CEST] <nevcairiel> its just carls interpretation of working, there is a workaround so it works!
[12:41:51 CEST] <Chloe> mpv/58
[12:41:54 CEST] <Chloe> err
[12:42:20 CEST] <jkqxz> Changing the timing destroys information and therefore shouldn't be done unless the user asks for it. Maybe it could do something automatically with mov (because they are implicitly asking for that compatibility), but it shouldn't be done with mp4.
[12:47:00 CEST] <Chloe> The warning could be improved, actually suggest an appropriate flag for the user to add
[12:51:23 CEST] <jkqxz> That would probably be fair.
[12:53:43 CEST] <jkqxz> (The tone of the reporter being "not working around bugs in third-party devices is a Critical Bug in ffmpeg of the Highest Possibly Importance" didn't exactly encourage a response like that, though.)
[12:56:20 CEST] <Chloe> Yes, they didn't have the best tone...
[13:49:04 CEST] <michaelni> Timothy_Gu, in fatebeta its not possible to click on for example "freebsd" to get "&query=os:freebsd" added and only the freebsd instance shown
[14:43:15 CEST] <Compn> Chloe : because if you want to output for quicktime/ipod you should be using -f ipod
[14:43:52 CEST] <Compn> or if you want to make -f iphone default for mp4 ?
[14:44:36 CEST] <Compn> does quicktime support 10bit now ?
[14:50:41 CEST] <JEEB> uhh, have you made sure those requirements still exist as for -f ipod/iphone?
[14:50:48 CEST] <JEEB> if anyone here has modern such devices
[14:51:13 CEST] <JEEB> because I have this small feeling in the back of my head that some of that stuff is just changes required for stuff from ~7+ years ago
[14:52:34 CEST] <Mavrik> Yeah
[14:52:42 CEST] <Mavrik> Modern stuff will take anything really
[14:58:01 CEST] <JEEB> same for the psp movenc stuff methinks
[14:58:31 CEST] <JEEB> since I've never actually used the PSP specific muxing mode and all of my stuff used to work (I know the limitation of the sony parser, sure, but I think the psp-specific mode does some extra in addition to that)
[16:00:53 CEST] <philipl> BtbN: you saw my comment and fix?
[16:01:00 CEST] <BtbN> yes
[16:49:04 CEST] <philipl> BtbN: then looks good to me.
[17:02:31 CEST] <cone-399> ffmpeg 03Moritz Barsnick 07master:99d68d462fbd: doc: fix various typos and grammar errors
[18:21:56 CEST] <cone-399> ffmpeg 03Marton Balint 07master:24022402be4c: lavfi/metadata: fix metadata deletion if comparison returns false
[19:07:54 CEST] <j-b> Subject: [FFmpeg-devel] webvtt in dash
[19:08:01 CEST] <j-b> I would like to convert dvb_subtitle to TTML and wrap in m4s to be muxed in
[19:08:07 CEST] <j-b> DON"T :D
[19:08:49 CEST] <nevcairiel> do we even have the ability to OCR dvb bitmaps subs
[19:12:10 CEST] <j-b> nevcairiel: you fool: TTML can be image-based!
[19:12:17 CEST] <nevcairiel> o.o
[19:12:19 CEST] Action: j-b runs from nevcairiel
[19:12:34 CEST] <j-b> nevcairiel: and for the record, I am NOT joking.
[19:13:23 CEST] <nevcairiel> i feared as much
[19:14:10 CEST] <ritsuka> but but, TTML can't be muxed in a mp4, it needs to be converted to tx3g or webvtt, so how would one keep the bitmaps?
[19:17:51 CEST] <JEEB> j-b: jesus christ... did they seriously add img tags with base64 images or something?
[19:18:08 CEST] <nevcairiel> doesnt ass also have that
[19:19:06 CEST] <JEEB> yes
[19:19:45 CEST] <JEEB> meanwhile I note to myself: do not search "images ass" to refresh yourself on ASS
[19:20:58 CEST] <nevcairiel> thats probably wise
[19:23:42 CEST] <kierank> JEEB: you should go to demuxed
[19:23:45 CEST] <kierank> j-b: ^
[19:23:49 CEST] <kierank> they love ttml and webvtt
[19:28:24 CEST] Action: JEEB was thinking of demuxed but then started moving house
[19:34:15 CEST] Action: TD-Linux will be there
[19:34:52 CEST] <kierank> at least derek is there
[19:34:57 CEST] <kierank> someone who isn't trying to play politics
[19:34:59 CEST] <kierank> and will just tell teh truth
[19:36:52 CEST] <JEEB> yup
[19:39:32 CEST] <JEEB> meanwhile ARIB got their shop done and now they're selling the specs instead of just providing them :<
[19:42:03 CEST] <TD-Linux> do they sell limited editions with artbook and wall scroll?
[20:11:38 CEST] <j-b> JEEB: base64, of course.
[20:12:17 CEST] <j-b> JEEB: and fun to be added, it is even in the "simple version" of TTMl
[20:13:23 CEST] <JEEB> :<
[20:13:51 CEST] <JEEB> it kind of makes sense since image-based subs is something they want to pass on from subpicture formats
[20:13:57 CEST] <JEEB> but that still makes me a bit of a sad panda
[20:17:01 CEST] Action: j-b injects fun into JEEB
[20:17:09 CEST] <j-b> sad panda -> happy panda
[20:17:19 CEST] <JEEB> :D
[20:18:27 CEST] <rcombs> nevcairiel: there's a filter for OCRing with Tesseract, but it takes video input (not subtitles, so it'd require sub2video which is bad) and output is in the form of frame metadata
[20:18:28 CEST] <rcombs> both because lavfi doesn't know what subtitles are
[20:18:28 CEST] <rcombs> once it does, I can imagine an image->text sub filter, and vice versa
[20:24:39 CEST] <atomnuker> nice, patches from andreas again, the debian package maintainer
[20:46:51 CEST] <Chloe> Compn: will that fix the timescale as well?
[20:53:09 CEST] <Chloe> unsigned int timescale_new = (unsigned int)av_rescale(st->time_base.den, 1000, st->time_base.num); should be better than unsigned int timescale_new = (unsigned int)((double)(st->time_base.den) * 1000 / (double)(st->time_base.num)); right?
[20:53:32 CEST] <nevcairiel> yes thats what the rescale functions are for
[20:53:41 CEST] <nevcairiel> avoiding overflow
[20:54:25 CEST] <Chloe> okie dokie, I was more concerned with the unsigned int cast but I dont think there's a way around it
[20:57:15 CEST] <Chloe> also this guy just isnt listening
[21:13:19 CEST] <jkqxz> Chloe: Where do the magic numbers (100000, 1000) come from? If the 100000 is fixed, it should probably work out the divider more carefully: 1000 looks like too big for, say, NTSC-style 120fps (120000/1001).
[21:15:26 CEST] <jkqxz> (tb.den + 99999) / 100000, maybe?
[21:16:33 CEST] <Chloe> I just got them from carl's post on the ticket (5882)
[21:17:50 CEST] <Chloe> I dont know what it's meant to be
[21:18:22 CEST] <Compn> Chloe i think so
[21:24:15 CEST] <jkqxz> Hmph, very useful commit message for where the 100000 came from: "git show 911f9b714".
[21:27:49 CEST] <jkqxz> Right, it's a 32-bit field; 2^32 / 12*60*60 ~ 100000. Who would want to make a stream more than 12 hours long anyway?
[21:28:39 CEST] <Compn> what kind of stream
[21:28:46 CEST] <Compn> :D
[21:29:17 CEST] <Compn> hmm mp4 ?
[21:29:32 CEST] <Compn> wouldnt trust long mp4 file to write index properly
[21:29:44 CEST] <Compn> 12 hour long file that doesnt play lol
[21:39:55 CEST] <Chloe> jkqxz: shall I resend with (tb.den + 99999) / 100000 instead?
[21:45:04 CEST] <RiCON> what's wrong with just using pkg-config to check for libopenjpeg?
[21:46:22 CEST] <RiCON> oh right, the HAVE_OPENJPEG_x_x_OPENJPEG_H macros.
[21:46:45 CEST] <jkqxz> Chloe: The warning is just generally flaky: you really want it to tell the user to work out the Right Answer, and much of the time that answer is going to be to do nothing because the content isn't long enough for it to matter.
[21:48:05 CEST] <Chloe> yeah it's in the warning as a suggestion anyway, since we cant actually know for sure
[21:48:07 CEST] <jkqxz> (The NTSC 120fps case is one where you actually can't reduce it, so the result if you do will be subtly wrong. If your video is under 10 hours, though, doing nothing is definitely the best answer.)
[21:57:06 CEST] <jkqxz> How about actually telling the user how long their video can be with that timebase, rather than suggesting a possibly-subtly-wrong lower value?
[22:01:32 CEST] <Chloe> what's the difference between timescale and timebase?
[22:06:11 CEST] <jkqxz> The timebase is the length of one tick from the point of view of the codec (for CFR, that is the exactly the time between two consecutive frames; for VFR, it is the input clock rate). The timescale is the smallest fraction of a second that you can represent, and you want to be able to represent the timebase exactly in it - that is most easily just the denominator of the timebase, but need not be.
[22:10:14 CEST] <JEEB> Chloe: timebase is the general word and timescale is used in ISOBMFF
[23:25:16 CEST] <cone-125> ffmpeg 03Michael Niedermayer 07master:51f3278089bb: doc/developer: Mention mime type and patchwork in "Submitting patches"
[00:00:00 CEST] --- Wed Oct 12 2016
1
0
[01:27:55 CEST] <runawayfive> Looking for some ffmpeg related critique on this fairly in-depth streaming setup, if someone has a second. Wanting to know if there would be an easier way to hack something like this together (less parallel scripts running): http://hastebin.com/ajasofukej.lisp
[01:27:59 CEST] <runawayfive> Excuse the crude diagram.
[02:17:51 CEST] <klaxa> runawayfive: looks like a good idea, have fun implementing it?
[02:20:00 CEST] <Spring> is there no way to get ffplay to use -to rather than -t for seek? using a trim filter to set start/end points is /far/ too slow for previewing portions of videos that start 30+ minutes in
[02:21:08 CEST] <klaxa> you could use mpv and use --start 30:00 or what do you want to do?
[02:21:53 CEST] <klaxa> doesn't look like there is -to for ffplay
[02:22:23 CEST] <Spring> Yeah, I know. Is there any reason for this?
[02:22:46 CEST] <klaxa> don't think so
[02:23:46 CEST] <klaxa> just do -ss start -t duration-end
[02:24:20 CEST] <klaxa> or something... my math might be wrong
[02:24:35 CEST] <SchrodingersScat> close enough
[02:25:18 CEST] <Spring> I don't know the end if I'm just using ffmpeg + ffplay though, and there are a variety of different formats that can be validly entered for the start/end formats
[02:25:45 CEST] <Spring> even Handbrake doesn't check the start/end formats to make sure the latter is greater than the former
[02:25:53 CEST] <SchrodingersScat> I use segments sometimes, to chop up videos in x minute chunks.
[02:26:10 CEST] <klaxa> oh, you do end-start
[02:26:13 CEST] <klaxa> that's the duration
[02:26:15 CEST] <klaxa> duh silly me
[02:26:32 CEST] <klaxa> so: -ss start -t end-start
[02:27:19 CEST] <Spring> yeah but if someone enters seconds like 120 for one format and 03:05 for another it doesn't make it easy to calculate
[02:28:15 CEST] <Spring> -to is a reasonable feature to have in ffplay tbh
[02:30:07 CEST] <Spring> is there a trac ticket about it? Can't find anything
[02:34:55 CEST] <Spring> (I also can't sign up due to spam false positives each time)
[02:36:50 CEST] <SchrodingersScat> today could be the day you realize you're just an AI
[02:43:53 CEST] <Spring> is there any way to speed up ffplay's processing of the trim filter when seeking to parts of videos further in than 20 minutes?
[02:44:22 CEST] <Spring> or will it always be slow due to it processing everything before it
[03:07:04 CEST] <Spring> alternatively is there a way of keeping the original timestamps when using -ss and an end filter together? Thought it might be possible to skip directly to the start section and just use the end filter for a pseudo -to.
[04:34:52 CEST] <Spring> well that was simpler than I expected. Turns out all you need is to add -ss <start> in addition to the vtrim/atrim filter (with its own start/end times) for it to immediately trim begin at the correct section without any timecode inconsistencies
[11:01:43 CEST] <qwertynik> Note: I have a few days ( 3-4 ) of experience with using FFmpeg, and I do not fully understand the commands I mention here ( most of them are from stack overflow forums - I do not have those links bookmarked ). I wanted to generate a 30-second video, with 16:9 aspect ratio, from a set of images and an audio with blend + zoom and pan effect. Started this by just generating slide show of images from the video **Slideshow of imag
[11:02:20 CEST] <qwertynik> Posted the question elaborately here
[11:06:31 CEST] <qwertynik> http://pastebin.com/20JnXkAW
[11:06:53 CEST] <qwertynik> Here is my query. Elaborately explained in this paste
[11:10:42 CEST] <ElAngelo> how can one compile ffescape?
[11:11:31 CEST] <BtbN> Whatever that is, it's not from ffmpeg.
[11:19:32 CEST] <ElAngelo> it is
[11:19:37 CEST] <ElAngelo> it's in the tools source directory
[11:20:00 CEST] <ElAngelo> /Downloads/ffmpeg-3.1.4 $ ls tools | grep ffescape
[11:20:02 CEST] <ElAngelo> ffescape.c
[11:20:16 CEST] <ElAngelo> BtbN: ^^
[11:22:26 CEST] <qwertynik> Is this live? Can anyone see my message?
[11:22:36 CEST] <BtbN> if it's properly set up, it should just be built alongside all the other tools.
[11:31:16 CEST] <ElAngelo> BtbN: it doesn't seem to be setup well
[11:31:25 CEST] <ElAngelo> cause after compiling there is no ffescape binary
[11:31:29 CEST] <ElAngelo> hence my quesion
[11:45:57 CEST] <ElAngelo> i have a problem with filter graph escaping
[11:46:02 CEST] <ElAngelo> i have the following filter
[11:46:29 CEST] <ElAngelo> movie=c:\opt\videos\Laborie, St. Lucia.mp4:si=0,select=gt(scene,0.4),trim=end_frame=10
[11:46:54 CEST] <ElAngelo> which in accordance to http://ffmpeg.org/ffmpeg-filters.html#Notes-on-filtergraph-escaping
[11:46:59 CEST] <ElAngelo> should become
[11:47:24 CEST] <ElAngelo> movie=c\\:\\\\opt\\\\videos\\\\Laborie\, St. Lucia.mp4\\:si=0,select=gt(scene\,0.4),trim=end_frame=10"
[11:47:28 CEST] <ElAngelo> but this doesn't wrk
[11:47:54 CEST] <ElAngelo> the 2 backslashe before the :si have to be removed before the command works
[11:48:02 CEST] <ElAngelo> and i don't understand why
[11:48:29 CEST] <ElAngelo> or how this could possibly work with what is documented
[11:56:40 CEST] <Spring> if it's like setting the curves filter it will need single quotes around the path
[12:11:50 CEST] <ElAngelo> Spring: you have an example of that?
[12:13:41 CEST] <BtbN> Why don't you just use /?
[12:16:30 CEST] <Spring> in my case I was adding it via a batch script, so I first converted backslashes to forward slashes, escaped the drive letter colon, then escaped any single quotes, then wrapped the whole path in single quotes. After that I further escaped single quotes with '\\\'' for further escaping reasons.
[12:18:14 CEST] <Spring> so when echo'd it would look like psfile='C\:/Users/Spring/Desktop/test.scv'
[12:19:26 CEST] <Spring> *acv rather. Escaping with ffmpeg + scripts / console can be a bit of trial and error.
[12:26:50 CEST] <shapsuk> hey guys -- I was wondering if its safe to assume I can ALWAYS work with avformat to decode/demux my movies, even when the container format doesn't require demuxing? Unless I know exactly what I need, when would you use avcodec directly?
[12:27:20 CEST] <BtbN> a container that doesn't require demuxing?
[12:28:19 CEST] <shapsuk> oh -- I just assumed some don't
[12:31:51 CEST] <shapsuk> I guess I thought that because I came across some example code that suggested specifying the pixel format, etc... and seemed to skip using avformat altogether
[12:32:10 CEST] <shapsuk> right now I'm following along with http://dranger.com/ffmpeg/tutorial01.html
[12:32:18 CEST] <shapsuk> which is a lot clearer ;)
[12:32:50 CEST] <shapsuk> ok so I'm having a problem would love some clarification on -- seems the tutorial suggests some deprecated API
[12:33:06 CEST] <shapsuk> specifically avpicture_fill
[12:33:22 CEST] <shapsuk> I think I now need to use av_image_fill_arrays ?
[12:33:53 CEST] <shapsuk> I think I understand how to map between these functions however I'm having trouble understanding what this actually does
[12:34:47 CEST] <n4zarh> is there any tutorial about swscale and copying data from avframe to byte array?
[12:35:06 CEST] <shapsuk> the link I suggested above has some stuff around that I think
[12:35:23 CEST] <shapsuk> n4zarh: http://dranger.com/ffmpeg/tutorial01.html
[12:36:39 CEST] <shapsuk> I've calculated the numOfBytes for the image in RGB24, and setup a buffer with av_malloc, so I assume the av_image_fill_arrays is supposed to populate that buffer?
[12:37:54 CEST] <shapsuk> the problem I'm having is understanding why I need to cast from AVFrame to AVPicture? Why not work directly with AVPicture?
[12:38:33 CEST] <shapsuk> as I understand it, isn't AVPicture the old approach and considered deprecated?
[12:39:51 CEST] <n4zarh> what is this tutorial supposed to help me with? I can find no swscale functions there, unless I missed something obvious
[12:40:26 CEST] <n4zarh> oh, nevermind, found something
[13:07:51 CEST] <shapsuk> n4zarh: yeah theres multiple pages to that tutorial ;) I'm fairly certain I saw what you're looking for -- but I'm really new to this framework
[13:08:05 CEST] <n4zarh> not working for me
[13:08:15 CEST] <n4zarh> it uses AVPicture which is deprecated
[13:08:33 CEST] <shapsuk> damn -- I'm having same problem
[13:08:38 CEST] <shapsuk> I also found this
[13:08:42 CEST] <shapsuk> https://blogs.gentoo.org/lu_zero/2015/10/15/deprecating-avpicture/
[13:08:51 CEST] <shapsuk> talks about avpicture and replacement API
[13:08:54 CEST] <shapsuk> MIGHT be helpeful
[13:32:44 CEST] <n4zarh> I'll try again then. Anyone have been using sws_scale function? I am not sure how to use it and how to parse data from frame to byte array afterwards
[13:33:41 CEST] <nonex86> well, i am using it
[13:34:17 CEST] <nonex86> byte array of what?
[13:34:48 CEST] <n4zarh> http://pastebin.com/htJ4rKWE
[13:35:04 CEST] <n4zarh> byte array of picture/frame data
[13:35:09 CEST] <n4zarh> all pixels, you know
[13:35:12 CEST] <nonex86> oh... source code again :D
[13:35:27 CEST] <n4zarh> fortunately just 4 lines
[13:35:33 CEST] <n4zarh> + for loop
[13:36:04 CEST] <nonex86> can you state please
[13:36:11 CEST] <nonex86> what exact problem do you have? :)
[13:36:35 CEST] <n4zarh> I get some random pixels instead of picture
[13:36:48 CEST] <BtbN> A frame _is_ a byte array. If you ignore all the other flags it carries.
[13:37:04 CEST] <n4zarh> and that means I either can't use sws_scale, I can't get data from result picture right or both
[13:37:09 CEST] <BtbN> The layout of it is defined by the pixel format you used
[13:37:20 CEST] <nonex86> guess you are sure about source yuv frame? isnt it? its correct?
[13:38:21 CEST] <nonex86> that magic number 4 in your context? what is it?
[13:38:29 CEST] <nonex86> why dont you use defines
[13:39:00 CEST] <n4zarh> I am nearly 100% sure that source is in yuv, since my code usually uses some chinese-made function which converts yuv to rgb565
[13:39:29 CEST] <n4zarh> (at least I think it's chinese, 90% of stuff I found related to those goddamn ip cameras is chinese)
[13:40:07 CEST] <nonex86> picture is AVFrame i assume?
[13:40:08 CEST] <n4zarh> 4 - well, I thought it will be needed since we have 4 bytes per single pixel (ARGB)
[13:40:15 CEST] <n4zarh> yup, both pictures are
[13:40:32 CEST] <nonex86> no, 4 is some of SWS constant
[13:40:49 CEST] <nonex86> and not related to pixel format
[13:40:57 CEST] <nonex86> pf itelf already the size
[13:41:16 CEST] <n4zarh> oh, that
[13:41:52 CEST] <nonex86> #define SWS_BICUBIC 4
[13:41:55 CEST] <nonex86> filtering mode
[13:42:00 CEST] <n4zarh> SWS_BICUBIC or something like that, changed to 4 because I had some bugs with compile (not caused by that but I forgot to change it)
[13:42:02 CEST] <nonex86> well, thats nice
[13:42:10 CEST] <nonex86> you provide some parameters
[13:42:16 CEST] <nonex86> but dont know what are they :D
[13:42:33 CEST] <n4zarh> completely. :D
[13:42:37 CEST] <nonex86> ok, initialization call looks correct
[13:42:57 CEST] <nonex86> hope input data is in YUV420p
[13:43:02 CEST] <nonex86> isnt it?
[13:43:08 CEST] <nonex86> why dont you use
[13:43:11 CEST] <nonex86> something like
[13:43:16 CEST] <nonex86> frame->pix_fmt
[13:43:19 CEST] <nonex86> for example?
[13:43:26 CEST] <n4zarh> ...oh.
[13:43:27 CEST] <nonex86> instead to hardcode pixel format?
[13:43:42 CEST] <nonex86> this will protect you from mistakes
[13:43:53 CEST] <nonex86> check the frame structure
[13:43:59 CEST] <nonex86> i am sure it has a field
[13:44:03 CEST] <nonex86> with pixel format :)
[13:45:23 CEST] <nonex86> well, if i help you this time guess you will owe me a bottle of good beer :D
[13:46:20 CEST] <n4zarh> format is 0, and since NONE is -1 and next one is YUV420P
[13:46:24 CEST] <n4zarh> I guess this is correct
[13:47:31 CEST] <nonex86> back to your code
[13:47:42 CEST] <nonex86> not related to the problems you have
[13:47:43 CEST] <nonex86> but
[13:47:49 CEST] <nonex86> you really need alpha channel?
[13:47:58 CEST] <nonex86> why do you used ARGB?
[13:48:13 CEST] <nonex86> why not AV_PIX_FMT_BGR24 for example?
[13:48:41 CEST] <n4zarh> I found out that I can use ARGB_8888, ARGB_4444 or RGB565 to init bitmap on android
[14:06:37 CEST] <mvardan> Hi guys! I am trying to restream udp stream to rtsp server.
[14:06:37 CEST] <mvardan> ffmpeg -i udp://10.116.126.206:8080 -vcodec copy -an -f rtsp rtsp://10.116.126.206:80/live/str
[14:06:37 CEST] <mvardan> is not working
[14:08:45 CEST] <mvardan> https://drive.google.com/open?id=0B2xidSTkSMV8TG5xc21KeXI5dnM
[14:09:43 CEST] <mvardan> or there is a lot of aac errors
[14:10:36 CEST] <shapsuk> can anyone tell me how I can tell if av_image_fill_arrays as successful or not?
[14:11:11 CEST] <shapsuk> actually scrap that
[14:12:38 CEST] <shapsuk> I can see the return code is 6220800 -- but I don't know what that refers to. Unsure what my issue is.
[14:13:20 CEST] <shapsuk> hmm.. actually this seems to be the value from numBytes
[14:14:07 CEST] <shapsuk> ahh I see -- it returns the number of bytes required
[14:14:23 CEST] <shapsuk> and negative values on error
[14:14:27 CEST] <shapsuk> ignore me
[14:14:55 CEST] <DHE> this stuff is documented. either in the headers or doxygen can make pretty HTML
[14:24:48 CEST] <shapsuk> DHE: that's how I worked it out ;)
[14:24:53 CEST] <shapsuk> sorry -- I should've checked that first
[14:25:03 CEST] <shapsuk> I just assumed it was status only
[14:25:04 CEST] <shapsuk> my bad
[14:57:54 CEST] <tommy-boy1112> Hello, I'm trying to use ffmpeg for HLS live streaming. I'm using ssegment segmentation. Today I've tried adding -copyts option to keep original timestamps, but the problem is that, when I add this option -segment_time option is ignored and stream is cut at every key frame.
[14:58:01 CEST] <tommy-boy1112> Is this normal?
[14:58:21 CEST] <tommy-boy1112> I've set -segment_time 5, but now I get 0.4 second segments.
[14:58:27 CEST] <tommy-boy1112> (using ffmpeg 3.0.1)
[15:12:50 CEST] <BtbN> tommy-boy1112, why not use the hls muxer?
[15:13:01 CEST] <BtbN> Also, you should update your ffmpeg.
[15:13:32 CEST] <tommy-boy1112> BtbN: last time I've tried using HLS muxer it had problems with copying mpegts metadata.
[15:13:53 CEST] <BtbN> did you report that? did you try on the latest version?
[15:14:32 CEST] <tommy-boy1112> okay, will try newest version soon. Compiling as we speak.
[15:38:28 CEST] <pomaranc> is there any way to use hls from libavformat to get mpegts data (=not demuxed) instead of encoded frames?
[15:41:26 CEST] <DHE> not directly, but reproducing your own wouldn't be difficult.
[15:42:32 CEST] <shapsuk> hey guys -- when a function returns an int with negative values I understand these represent errors. Is there some enum or a list of constants representing these that I can refer to?
[15:45:21 CEST] <cuba_> did anyone get drawtext filter running on windows?
[15:46:27 CEST] <DHE> shapsuk: there's a bunch in libavutil/error.h for huge numbers, otherwise they're just negated errno values
[15:46:55 CEST] <nonex86> shapsuk: use av_strerror or enable debug in ffmpeg
[15:47:28 CEST] <shapsuk> I've enabled av_log_set_level(AV_LOG_VERBOSE)
[15:47:43 CEST] <nonex86> so you should get your error message in log
[15:48:33 CEST] <nonex86> and about the constants, check AVERROR_* definitions
[15:48:46 CEST] <shapsuk> got it
[15:48:47 CEST] <tommy-boy1112> BtbN: newest ffmpeg version works the same, as with older. When copyts is set, cut happens at every key frame.
[15:48:47 CEST] <shapsuk> thanks guys
[15:49:12 CEST] <shapsuk> I wasn't seeing any errors cause there aren't any lol -- but I wanted to know how to deal with them when they do occur ;)
[15:49:17 CEST] <shapsuk> anyway -- thanks again
[15:49:37 CEST] <furq> cuba_: yes
[15:49:50 CEST] <cuba_> do youve the cmdline anywere furq?
[15:49:54 CEST] <cuba_> *where
[15:50:07 CEST] <furq> maybe?
[15:50:08 CEST] <shapsuk> another thing I've been wondering about. Does anyone here know about VideoToolbox? Specifically, if I'm using avformat to demux/decode, will it automatically use it where appropriate/supported?
[15:50:09 CEST] <furq> what isn't working
[15:50:22 CEST] <shapsuk> as far as I know its not supported at all for decoding?
[15:50:30 CEST] <furq> the only trick i remember is that i ended up putting a font file in the working directory
[15:50:37 CEST] <cuba_> I want to get drawtext working with localtime
[15:50:38 CEST] <furq> otherwise it was some kind of escaping nightmare
[15:51:03 CEST] <cuba_> ah wow maybe thats it
[15:52:05 CEST] <cuba_> lol yes
[15:52:09 CEST] <cuba_> for fuck sake
[15:52:11 CEST] <cuba_> thanks furq!
[15:59:09 CEST] <cuba_> milliseconds doesnt seem to be supported for localtime
[15:59:15 CEST] <cuba_> at least %f
[16:21:16 CEST] <mvardan> I am trying to save stream from UDP port using
[16:21:16 CEST] <mvardan> ffmpeg -i udp://10.116.126.206:8080 -c copy -f flv out.flv
[16:21:16 CEST] <mvardan> But I see a lot of debug log and it not work (https://drive.google.com/open?id=0B2xidSTkSMV8TG5xc21KeXI5dnM )
[16:21:16 CEST] <mvardan> the UDP is streamed by (I can't change that)
[16:21:16 CEST] <mvardan> gst-launch-1.0 v4l2src device=/dev/video0 ! video/x-raw,width=800,height=600 ! x264enc ! rtph264pay ! udpsink host=10.116.126.206 port=8080
[16:21:17 CEST] <mvardan> Can someone help?
[16:59:06 CEST] <shapsuk> hey guys quick question
[16:59:17 CEST] <shapsuk> numBytes=av_image_get_buffer_size(AV_PIX_FMT_RGB24, pCodecCtx->width, pCodecCtx->height, 32);
[16:59:17 CEST] <shapsuk> is 32 correct here for the align value?
[16:59:50 CEST] <shapsuk> I'm converting from avpicture_get_size() which didn't previously have this argument
[17:01:46 CEST] <nonex86> you are converting from deprecated call?
[17:02:13 CEST] <shapsuk> as in, I found some sample code
[17:02:18 CEST] <shapsuk> but it was using the old method
[17:02:41 CEST] <shapsuk> so I've refactored the code to use this new one, however I'm not sure if the align value should be 1, 16, 32, or something else
[17:02:44 CEST] <nonex86> open ffmpeg source code
[17:02:49 CEST] <nonex86> find avpicture_get_size
[17:02:59 CEST] <nonex86> find the way it works now
[17:03:00 CEST] <shapsuk> lol -- fair call :)
[17:03:51 CEST] <nonex86> FYI
[17:03:52 CEST] <nonex86> int avpicture_get_size(enum AVPixelFormat pix_fmt, int width, int height)
[17:03:53 CEST] <nonex86> {
[17:03:53 CEST] <nonex86> return av_image_get_buffer_size(pix_fmt, width, height, 1);
[17:03:53 CEST] <nonex86> }
[17:03:59 CEST] <nonex86> simple, isnt it?
[17:04:54 CEST] <shapsuk> yeah found it
[17:05:41 CEST] <shapsuk> nonex86: haha
[17:06:02 CEST] <nonex86> every deprecated call usually maps to something new
[17:06:21 CEST] <shapsuk> yeah tbh that's how I worked out av_image_fill_arrays()
[17:06:29 CEST] <shapsuk> I should've done the same here
[17:06:30 CEST] <shapsuk> :)
[17:21:03 CEST] <shapsuk> anyone know whats wrong with this: sprintf(szFilename, "%s/frame%d.ppm", path, iFrame);
[17:21:03 CEST] <shapsuk> where path is a const char*
[17:21:20 CEST] <shapsuk> I'm not really a C dev, but I get a SIGABRT
[17:21:38 CEST] <shapsuk> I can print the value -- its not a bad pointer
[17:24:42 CEST] <nonex86> why do you think something wrong with this?
[17:25:01 CEST] <jkqxz> Maybe you want 'snprintf("%s/frame%d.ppm", szFilename, path, iFrame);'?
[17:25:48 CEST] <shapsuk> nonex86: actually I thought it was fine
[17:25:57 CEST] <shapsuk> but as I said, I'm getting SIGABRT
[17:26:37 CEST] <nonex86> are you sure the problem in this line?
[17:27:03 CEST] <nonex86> is szFilename buffer enough to put formatted data?
[17:27:26 CEST] <shapsuk> ahh -- good point probably not
[17:27:27 CEST] <jkqxz> Oops, szFilename sounded like a size. Ignore what I said.
[17:27:45 CEST] <shapsuk> char szFilename[32];
[17:27:54 CEST] <shapsuk> again, was from the sample which only took a filename
[17:27:54 CEST] <nonex86> and the path size is?
[17:27:58 CEST] <shapsuk> I'm passing an entire path
[17:28:03 CEST] <shapsuk> much longer ;)
[17:28:06 CEST] <shapsuk> I'll adjust
[17:28:07 CEST] <shapsuk> cheers
[17:28:07 CEST] <nonex86> and you overrun the buffer
[17:28:08 CEST] <nonex86> so
[17:28:10 CEST] <shapsuk> yep
[17:28:11 CEST] <shapsuk> exactly
[17:28:13 CEST] <nonex86> what did you expect
[17:28:16 CEST] <shapsuk> lol
[17:28:31 CEST] <shapsuk> like I said -- was from sample -- I'm modifying as I go and C isn't my language
[17:28:36 CEST] <shapsuk> I'm learning :) fast!
[17:28:36 CEST] <maziar> how can i change mp3 quality with ffmpeg ?
[17:28:57 CEST] <nonex86> doubt using ffmpeg
[17:29:02 CEST] <nonex86> is best way to learn c
[17:30:25 CEST] <nonex86> maziar: reencode it with another qulity? :)
[17:30:30 CEST] <nonex86> *quality
[17:30:52 CEST] <maziar> nonex86 yes
[17:31:14 CEST] <jkqxz> In any case, snprintf() is the function you should be using there, not sprintf() - 'snprintf(szFilename, sizeof(szFilename), "%s/frame%d.ppm", path, iFrame);'. (By looking at the return value you will be able to tell that it was too long.)
[17:32:10 CEST] <nonex86> maziar: then why do you ask the question the answer to which you already know - reencode it :)
[17:32:22 CEST] <furq> why would you call a char array "sz"
[17:32:28 CEST] <maziar> nonex86 i dont know how to
[17:32:35 CEST] <shapsuk> jkqxz: is there a recommended size to use for file paths?
[17:32:45 CEST] <furq> PATH_MAX
[17:32:50 CEST] <nonex86> MAX_PATH
[17:32:51 CEST] <shapsuk> ahh perfect thanks ;)
[17:33:29 CEST] <nonex86> sz mean string terminated with zero afair
[17:33:41 CEST] <nonex86> anyway, who cares ? :)
[17:33:59 CEST] <nonex86> its a hungary notation
[17:36:07 CEST] <shapsuk> ah right thanks
[17:37:21 CEST] <shapsuk> ok great -- that all worked! I got a 10sec .mov file to decode to PPM files on disk.
[17:37:21 CEST] <shapsuk> took a while -- would that likely be the disk overhead or the actual decoding?
[17:37:46 CEST] <shapsuk> think I might write some performance checks around it, I want to understand where my bottlenecks reside
[17:37:47 CEST] <maziar> does any one know how can i decrease a MP3 file size ?
[17:38:44 CEST] <nonex86> use a profiler instead
[17:39:19 CEST] <shapsuk> that's actually what I meant -- I'm an Cocoa/iOS dev, so I'm using Xcode -- should be able to use the profilers in there
[17:44:13 CEST] <trfl> maziar, you get lower quality every time you convert to mp3, so you should not convert mp3 to mp3. With that warning out of the way: ffmpeg -i source.mp3 -acodec libmp3lame -q:a 5 small.mp3
[17:44:37 CEST] <trfl> for higher quality and a higher file size, replace 5 with a lower number
[17:45:42 CEST] <trfl> does anyone know why vaapi decoding is not implemented in ffmpeg? when I tried it in gstreamer there was a 4x speed boost when decoding H.265
[17:51:42 CEST] <shapsuk> just out of curi
[17:51:47 CEST] <shapsuk> oops -- sorry
[17:54:23 CEST] <shapsuk> is there a way to determine whether or not the decoding is using VideoToolbox on iOS?
[17:59:35 CEST] <shapsuk> cause my CPU is hitting 100%
[17:59:47 CEST] <shapsuk> and the file is an mp4
[18:00:02 CEST] <shapsuk> takes around 30 seconds to decode the entire 2min file
[18:00:28 CEST] <shapsuk> its 1080p, 7979 kb/s bitrate
[18:01:09 CEST] <DHE> there's usually a bit in the output that says stream 0:0 -> 0:0 (codecinfo)
[18:01:46 CEST] <shapsuk> Stream #0:0(und): Video: h264, 3 reference frames (avc1 / 0x31637661), yuv420p, 1920x816 [SAR 1:1 DAR 40:17], 7979 kb/s, 23.98 fps, 23.98 tbr, 2500k tbn, 47.95 tbc (default)
[18:02:38 CEST] <DHE> nope, further down
[18:02:54 CEST] <shapsuk> hmm
[18:03:10 CEST] <shapsuk> that's the only output I'm logging
[18:03:17 CEST] <shapsuk> using av_dump_format() I think
[18:03:23 CEST] <shapsuk> what are you referring to?
[18:06:03 CEST] <shapsuk> do I need to do something myself to use VideoToolbox for the decoding?
[18:06:10 CEST] <shapsuk> or is it detected automatically
[18:06:15 CEST] <shapsuk> ?
[18:06:28 CEST] <jkqxz> trfl: vaapi decoding is implemented in ffmpeg, and has been for ages.
[18:08:13 CEST] <shapsuk> just a thought -- in the build script I used to build ffmpeg it makes no mention of VideoToolbox -- but I do have the header/source in my project
[18:08:42 CEST] <shapsuk> should I have added a flag as a part of the build to enable this or is this handled automatically?
[18:08:56 CEST] <shapsuk> sorry is that's a stupid question -- just trying to understand
[18:09:51 CEST] <furq> it should be autodetected
[18:09:57 CEST] <shapsuk> ok
[18:10:00 CEST] <shapsuk> I thought so
[18:10:01 CEST] <DHE> shapsuk: if you're using ffmpeg itself, there's a quick table of stream mappings shown just above the main progress line
[18:10:09 CEST] <furq> but it'll just build without it if you've got a header in the wrong place or something
[18:10:12 CEST] <shapsuk> DHE -- but I'm not ;)
[18:10:18 CEST] <shapsuk> its an iOS app
[18:10:23 CEST] <furq> after you run ./configure it'll print a list of enabled features
[18:10:31 CEST] <furq> you probably want to doublecheck that videotoolbox is listed in there
[18:10:50 CEST] <shapsuk> when I try and do a color conversion on the mp4 I get this
[18:10:51 CEST] <shapsuk> [swscaler @ 0x10347c000] No accelerated colorspace conversion found from yuv420p to rgb24.
[18:11:08 CEST] <shapsuk> and if I remove the color-conversion code I don't get any output related to this at all
[18:11:13 CEST] <shapsuk> not sure if that indicates anything
[18:11:19 CEST] <shapsuk> cpu is still 100% during decoding
[18:11:20 CEST] <shapsuk> lol
[18:19:03 CEST] <shapsuk> would it be safe to assume videotoolbox is compiled in if I have the headers and source after building?
[18:30:24 CEST] <shapsuk> so I decided to try and rebuild in case -- and added the config flag
[18:30:35 CEST] <shapsuk> and I'm getting this which is a good sign now
[18:30:35 CEST] <shapsuk> Enabled hwaccels:
[18:30:36 CEST] <shapsuk> h263_videotoolbox h264_videotoolbox mpeg1_videotoolbox mpeg2_videotoolbox mpeg4_videotoolbox
[18:30:49 CEST] <shapsuk> so once that's built, I'll try again
[18:49:06 CEST] <trfl> jkqxz: really? that's great news, but this table is suggesting otherwise: https://trac.ffmpeg.org/wiki/HWAccelIntro#FFmpegimplementations
[18:51:36 CEST] <jkqxz> It's telling you that there is no standalone decoder; you use the hwaccel on the normal decoder.
[18:59:05 CEST] <trfl> oh, that's neat! I'll build a vaapi-enabled ffmpeg and try it out, thanks :)
[19:51:34 CEST] <shapsuk> any chance someone could help with this: http://pasteboard.co/dKZOGts3H.x-portable-pixmap
[19:52:02 CEST] <shapsuk> I'm using AV_PIX_FMT_RGB24
[19:52:31 CEST] <shapsuk> and outputting to PPM
[19:52:31 CEST] <shapsuk> following along with a tutorial
[19:52:35 CEST] <shapsuk> but as you can see, the output isn't right
[19:52:49 CEST] <shapsuk> the colours are ok I think, but not sure what's going on with the rest of the image
[19:52:56 CEST] <shapsuk> any advice would be apprecited
[19:54:33 CEST] <shapsuk> perhaps I should try a different image format, would be happy to use JPG, but unsure how to go about that
[20:21:47 CEST] <Sashmo> Anyone know how to ignore this error? [eac3 @ 0x7ffe1f003a00] incomplete frame
[20:22:09 CEST] <Sashmo> once I get it, then every frame after that has errors i.e. [eac3 @ 0x7ffe1f003a00] frame sync error
[20:26:32 CEST] <shapsuk> hmm.. I'm trying to use av_videotoolbox_alloc_context() but the function doesn't appear to be recognised... but I have VideoToolbox.h in my project
[20:38:55 CEST] <pgorley> shapsuk: what's the error message?
[20:39:09 CEST] <shapsuk> no error message unfortunately
[20:39:20 CEST] <pgorley> not even at compile or link time?
[20:42:46 CEST] <shapsuk> no
[20:42:52 CEST] <shapsuk> oh sorry
[20:42:59 CEST] <shapsuk> thought you were asking about the output issue
[20:43:15 CEST] <shapsuk> the issue with av_videotoolbox_alloc_context() is that it doesn't exist
[20:44:42 CEST] <shapsuk> the declaration of function 'av_videotoolbox_alloc_context' is invalid in C99
[20:45:21 CEST] <shapsuk> and AVVideotoolboxContext says undeclared identifier
[20:45:27 CEST] <shapsuk> so -- either these are private to the lib
[20:45:37 CEST] <shapsuk> or disabled through #define somewhere
[20:46:11 CEST] <shapsuk> but I built the lib with the --enable-videotoolbox flag
[20:46:18 CEST] <shapsuk> so I would expect that I'm able to use this?
[20:46:24 CEST] <shapsuk> pgorley: ?
[20:46:31 CEST] <shapsuk> any help appreciated ;)
[20:50:34 CEST] <pgorley> i've been able to compile ffmpeg with vt support, in fact, i got it to work with h264 streams
[20:50:50 CEST] <pgorley> what version of ffmpeg are you using?
[20:59:40 CEST] <pgorley> shapsuk: vt was introduced in commit 11d923d4, which is in 2.8+
[21:00:26 CEST] <shapsuk> I'm using 3.x
[21:00:47 CEST] <shapsuk> umm 3.0 i think
[21:00:54 CEST] <pgorley> that's fine then
[21:01:16 CEST] <pgorley> are you compiling ffmpeg yourself? or using a precompiled version?
[21:01:22 CEST] <shapsuk> compiling
[21:01:42 CEST] <pgorley> what's your configure line? could you send me a pastebinb link?
[21:01:47 CEST] <pgorley> *pastebin
[21:02:34 CEST] <shapsuk> sure hang on
[21:03:24 CEST] <shapsuk> this is the entire script
[21:03:25 CEST] <shapsuk> http://pastebin.com/MnvR1YSD
[21:03:37 CEST] <shapsuk> got it from a repo on github
[21:03:42 CEST] <shapsuk> modified slightly
[21:03:54 CEST] <shapsuk> to include video toolbox and removed ARCHs I don't need
[21:04:29 CEST] <JEEB> &25
[21:07:09 CEST] <NapoleonWils0n> hi all
[21:07:25 CEST] <pgorley> shapsuk: try adding --enable-hwaccel options
[21:07:35 CEST] <NapoleonWils0n> im getting this error recording a stream and copy the audio and video codecs into an mkv
[21:07:38 CEST] <NapoleonWils0n> AMF_END_OF_OBJECT in AMF_DATA_TYPE_MIXEDARRAY
[21:07:50 CEST] <pgorley> do a ./configure --list-hwaccels to get a list of all of them
[21:07:50 CEST] <shapsuk> ok give me a minute -- will also remove the existing source so that it grabs 3.1.1 or wateva is the current latest
[21:08:05 CEST] <shapsuk> ok cool
[21:08:06 CEST] <shapsuk> one sec
[21:08:07 CEST] <NapoleonWils0n> anyone had this error and got any tips on how to resolve it
[21:08:10 CEST] <pgorley> i use 3.1.3
[21:08:29 CEST] <shapsuk> right
[21:11:30 CEST] <shapsuk> --enable-hwaccel returns unknown option
[21:11:52 CEST] <shapsuk> oh wait its missing an 's' at the end right?
[21:11:53 CEST] <pgorley> it's --enable-hwaccel=h264_videotoolbox, for example
[21:11:58 CEST] <shapsuk> ahh ok
[21:12:05 CEST] <shapsuk> thing is
[21:12:09 CEST] <shapsuk> when I ran it earlier
[21:12:21 CEST] <pgorley> like i said, do a configure --list-hwaccels to see which ones are available
[21:12:24 CEST] <shapsuk> I noticed while it was running that all of those hwaccels were added
[21:12:33 CEST] <shapsuk> all the videotoolbox ones
[21:12:45 CEST] <shapsuk> I can try again anyway with the latest version though
[21:13:28 CEST] <pgorley> in configure's output you have all those xxx_videotoolbox hwaccels under the enabled hwaccels section?
[21:13:55 CEST] <shapsuk> yes
[21:14:44 CEST] <shapsuk> http://pastebin.com/t0s4923C
[21:14:45 CEST] <pgorley> and you still get an undefined reference to av_videotoolbox_alloc_context?
[21:14:52 CEST] <shapsuk> I did yes
[21:15:02 CEST] <shapsuk> but I will try and rebuild with 3.x now
[21:15:04 CEST] <shapsuk> and see
[21:15:53 CEST] <shapsuk> I'll also add --enable-hwaccel=h264_videotoolbox --enable-hwaccel=h263_videotoolbox --enable-hwaccel=mpeg1_videotoolbox --enable-hwaccel=mpeg4_videotoolbox
[21:16:40 CEST] <pgorley> ah, i see why i needed those switches, we have a --disable-everything at the top of our makefile for ffmpeg
[21:17:18 CEST] <shapsuk> ah ok
[21:17:22 CEST] <JEEB> that is a general thing some people tend to do. and then they get all kinds of issues when they're missing various stuff :)
[21:17:26 CEST] <shapsuk> so for me, its not relevant lol
[21:18:10 CEST] <pgorley> nope lol
[21:18:12 CEST] <shapsuk> ok its building now
[21:18:23 CEST] <shapsuk> I've just kept --enable-videotoolbox
[21:18:37 CEST] <pgorley> should be autodetected though, looking at the configure script
[21:18:59 CEST] <shapsuk> yeah and so now I get this during the build output:
[21:19:05 CEST] <shapsuk> Enabled hwaccels: h263_videotoolbox h264_videotoolbox mpeg1_videotoolbox mpeg2_videotoolbox mpeg4_videotoolbox
[21:19:09 CEST] <shapsuk> which is right
[21:19:16 CEST] <shapsuk> that's all the video toolbox ones
[21:19:27 CEST] <shapsuk> but no different to before yet
[21:19:29 CEST] <pgorley> that's good, how about when you build your application
[21:19:46 CEST] <shapsuk> huh?
[21:20:09 CEST] <pgorley> you're just compiling ffmpeg, or you want to use it with some of your code?
[21:20:20 CEST] <shapsuk> I want to use it yes
[21:20:42 CEST] <shapsuk> so basically I'm compiling into .h/.a
[21:20:47 CEST] <shapsuk> then added it to my Xcode project
[21:20:54 CEST] <pgorley> so you have some piece of code that calls av_videotoolbox_alloc_context?
[21:21:08 CEST] <shapsuk> I then have a .c source file where I have a function
[21:21:21 CEST] <shapsuk> which is currently able to decode a file
[21:21:30 CEST] <shapsuk> the output is weird but that's another issue
[21:21:36 CEST] <shapsuk> it does read the frames
[21:21:44 CEST] <shapsuk> but its using a LOT of CPU
[21:21:51 CEST] <shapsuk> and its an mp4 file
[21:22:00 CEST] <shapsuk> so I figured its not using the hw
[21:22:06 CEST] <shapsuk> I'm running on an iPhone 7 Plus
[21:22:12 CEST] <pgorley> OH
[21:22:20 CEST] <shapsuk> so I wouldn't expect the CPU to be full on
[21:22:20 CEST] <pgorley> videotoolbox is iOS 8+
[21:22:21 CEST] <shapsuk> right?
[21:22:27 CEST] <shapsuk> yes, running iOS 10
[21:22:32 CEST] <shapsuk> I knew that
[21:22:40 CEST] <pgorley> oh, misread that as iOS 7 lol
[21:22:42 CEST] <pgorley> sorry
[21:22:44 CEST] <shapsuk> lol
[21:22:45 CEST] <shapsuk> n
[21:22:48 CEST] <shapsuk> nw
[21:23:33 CEST] <pgorley> does ffmpeg build ok? ie: is it only when building your project that it doesn't work?
[21:23:58 CEST] <shapsuk> yeah the libs build fine
[21:24:07 CEST] <shapsuk> and even accessing the decoders seems fine
[21:24:40 CEST] <shapsuk> it even generates the videotoolbox.h
[21:24:45 CEST] <shapsuk> but no associated .a file
[21:24:50 CEST] <shapsuk> however
[21:25:08 CEST] <shapsuk> either way its not even seeing the function
[21:25:17 CEST] <shapsuk> hmmm.. just had a thought
[21:25:19 CEST] <shapsuk> one sec
[21:25:50 CEST] <furq> does it show up in `nm -g libavcodec.a`
[21:26:01 CEST] <shapsuk> shit!
[21:26:02 CEST] <shapsuk> sorry
[21:26:08 CEST] <shapsuk> I'm a complete idiot!
[21:26:16 CEST] <pgorley> haha what is it?
[21:26:18 CEST] <furq> were you using the wrong libraries
[21:26:22 CEST] <shapsuk> what would be the most obvious and stupid thing I could forget??
[21:26:27 CEST] <shapsuk> furq: no
[21:26:28 CEST] <shapsuk> lol
[21:26:30 CEST] <pgorley> the linker flags?
[21:26:34 CEST] <shapsuk> no
[21:26:36 CEST] <shapsuk> simpler!
[21:26:43 CEST] <pgorley> #include
[21:26:45 CEST] <shapsuk> #include "videotoolbox.h"
[21:26:45 CEST] <pgorley> ?
[21:26:46 CEST] <furq> #include "videotoolbox.h"
[21:26:47 CEST] <shapsuk> yep!
[21:26:49 CEST] <pgorley> haha
[21:26:51 CEST] <shapsuk> unbelievable !
[21:26:56 CEST] <shapsuk> I feel ridiculous!
[21:26:57 CEST] <furq> nice
[21:27:04 CEST] <pgorley> happens to the best of us ;)
[21:27:08 CEST] <furq> we've all done it
[21:27:11 CEST] <shapsuk> I thought I'd checked that
[21:27:17 CEST] <shapsuk> well -- at least now I've upgraded haha
[21:28:01 CEST] <shapsuk> ok well have you had experience using the video toolbox stuff anyway?
[21:28:07 CEST] <shapsuk> I have some questions would love answers to
[21:28:13 CEST] <shapsuk> just to be sure I'm on the right track
[21:28:19 CEST] <shapsuk> especially now I can actually compile ;)
[21:28:44 CEST] <pgorley> i've only got it working with h264 though
[21:28:58 CEST] <pgorley> still need to get it working for h263 and mpeg4 in my case
[21:29:04 CEST] <pgorley> keep getting operation not permitted
[21:29:15 CEST] <shapsuk> well for now I'm just interested in H264
[21:29:23 CEST] <shapsuk> so that would be a great help :)
[21:29:32 CEST] <shapsuk> my initial question is -- currently I'm using AVCodecContext
[21:29:48 CEST] <shapsuk> and I was wondering if I just need to swap that out for AVVideoToolboxContext?
[21:30:08 CEST] <shapsuk> and I guess I need to use AV_PIX_FMT_VIDEOTOOLBOX somewhere
[21:30:14 CEST] <pgorley> nah, i still use AVCodecContext
[21:30:18 CEST] <shapsuk> oh right
[21:30:26 CEST] <shapsuk> so how do you get it to actually use VideoToolbox?
[21:30:28 CEST] <pgorley> i've basically followed the ffmpeg_videotoolbox.c example
[21:30:37 CEST] <shapsuk> oh I didn't see that
[21:30:45 CEST] <shapsuk> I was looking for an example
[21:30:48 CEST] <shapsuk> awesome
[21:31:10 CEST] <pgorley> you have to return AV_PIX_FMT_VIDEOTOOLBOX on AVCodecContext->get_format
[21:31:51 CEST] <shapsuk> https://github.com/FFmpeg/FFmpeg/blob/master/ffmpeg_videotoolbox.c
[21:31:55 CEST] <shapsuk> is that right?
[21:31:55 CEST] <pgorley> yep
[21:31:57 CEST] <shapsuk> cool
[21:32:15 CEST] <shapsuk> AVCodecContext->get_format -- I read that somewhere but didn't quite understand
[21:32:18 CEST] <shapsuk> ok will compare my code to this example
[21:32:20 CEST] <shapsuk> and see what I can do
[21:32:23 CEST] <shapsuk> thanks heaps
[21:32:30 CEST] <shapsuk> sorry for wasting your time earlier -- ugh!
[21:32:34 CEST] <pgorley> there's a bunch of stuff you can ignore in that file, depending on what you want to do
[21:32:39 CEST] <pgorley> haha, no worries
[21:32:56 CEST] <pgorley> i was answering while my code was compiling ;)
[21:33:37 CEST] <shapsuk> nice
[22:06:23 CEST] <campeterson> Howdy! Im trying to start, record, then stop, two webcams at the same time, and having the outputs go to different files. Ive read up on -map but cant seem to get it right.
[22:06:38 CEST] <campeterson> ffmpeg -f avfoundation -i "0:0" -i "1:0" -map 0:v -map 0:a out1.avi -map 1:v -map 1:a out2.avi
[22:08:59 CEST] <furq> campeterson: -f avfoundation -i "0:0" out1.avi -f avfoundation -i "1:0" out2.avi
[22:09:33 CEST] <furq> also i assume you're passing some codec params as well because otherwise that'll reencode to mpeg4
[22:10:13 CEST] <campeterson> Yes, I removed the codec params to simplify the question
[22:10:28 CEST] <campeterson> let me give that a try.
[22:10:35 CEST] <campeterson> Thanks @furq
[22:11:08 CEST] <furq> actually you still need -map for that
[22:11:25 CEST] <furq> -f avfoundation -i "0:0" out1.avi -f avfoundation -i "1:0" -map 1 out2.avi
[22:18:57 CEST] <campeterson> @furq that works. thank you.
[22:19:25 CEST] <campeterson> Im still seeing other issues that appear to be related to my parameters
[22:19:52 CEST] <campeterson> but it accomplishes the goal of multiple inputs -> multiple outputs
[00:00:00 CEST] --- Wed Oct 12 2016
1
0