[Ffmpeg-devel-irc] ffmpeg-devel.log.20121002

burek burek021 at gmail.com
Wed Oct 3 02:05:02 CEST 2012


[00:00] <saste> Compn, ^
[00:05] <iive> automatic crop detect makes more sense for playback applications. A lot of TV programs add padding and switch different movies, with and without padding
[00:06] <iive> having a way to automatically remove the black bars would be nice feature. Of course, it complicates things a lot for encoding application.
[00:14] <saste> iive: something like... cropdetect write the cropdetected values to metadata, crop read and apply it
[00:15] <saste> this could be done (you need to handle the logic when cropdetect can't guess senseful values)
[00:15] <saste> also crop can't change the cropping area size
[00:22] <Compn> changing cropping size can be a wish
[00:22] <Compn> i just want one crop :P
[00:22] <Compn> one auto crop :P
[00:27] <saste> well crop a fixed area, is that automatic enough?
[00:28] <saste> in other words, what do you want to crop?
[00:30] <Compn> saste : if i have a bunch of files with encoded black bars (so 16:9 content is in 4:3) , i want a filter to automatically crop it
[00:31] Action: Compn finds sample
[00:32] <saste> Compn, you can still easily script it
[00:33] <Compn> http://samples.mplayerhq.hu/A-codecs/lossless/ALAC/bgirl_trailer.mov
[00:33] <saste> the problem is that right now changing crop total size is not possible (not without reconfiguring the filters)
[00:34] <Compn> ok but it could just not start 'cropping' until a few seconds into the video
[00:34] <Compn> so it waits until $userspecified time, then starts
[00:34] <Compn> or until $cropvaluesstopfluctuating
[00:34] <saste> yes but you need to insert the crop filter since the beginning
[00:34] <saste> so you need to already specify the total area
[00:34] <saste> for the crop filter
[00:35] <saste> crop x:y coordinates can be changed on the fly with no problem
[00:35] <saste> is w:h which can't be changed
[00:35] <saste> so at the moment it is a two-pass process
[00:35] <saste> you get the cropping values, and apply it
[00:37] <Compn> so wish : insert filters after video starts ?
[00:37] <Compn> :P
[00:38] <Compn> or cant do it ?
[00:38] <saste> can't
[00:38] <saste> not at the moment
[00:39] <saste> patches are welcome :P
[01:17] <KGB> [FFmpeg] michaelni pushed 7 new commits to master: http://git.io/Oe7xTQ
[01:17] <KGB> [FFmpeg/master] Move xGA font data from lavc to lavu. - Clément BSsch
[01:17] <KGB> [FFmpeg/master] lavfi: EBU R.128 scanner. - Clément BSsch
[01:17] <KGB> [FFmpeg/master] lavfi/edgedetect: add missing minus in a comment. - Clément BSsch
[01:30] Action: michaelni is slightly unhappy that the slightest change to the nut muxer causes 200k diffs
[01:31] <Daemon404> wat
[01:35] <michaelni> half the regression tests use nut, if anything changes in it theres lots of diffs to the checksums
[01:36] <Daemon404> michaelni, it might be wise to change those as a separate commit
[01:36] <Daemon404> it might obscure teh actual change in the diff if it isnt
[01:37] <michaelni> yes but it causes troubble if one runs a bisect with make fate 
[01:37] <Daemon404> ah... right
[01:38] <saste> yes FATE is strictly tied to NUT
[01:38] <saste> that's mostly my fault (for using it in fate-lavfi)
[01:38] <Daemon404> oh saste, nicely done on ffprobe's disposition
[01:38] <Daemon404> i switched to using it today
[01:39] <saste> Daemon404, good
[01:39] <saste> so you have more useful info, such as karaoke stuff
[01:39] <Daemon404> for various definitions of 'useful'
[01:40] <saste> yes, that's always relative
[01:54] <Compn> michaelni : so will you ask ronald if he has suggestions or forgotten patches for swscale?
[01:54] <Compn> oh you already did
[01:54] <Compn> ok nevermind
[01:55] Action: Compn finally catches up on mails and his bad memory
[02:33] <KGB> [FFmpeg] michaelni pushed 2 new commits to master: http://git.io/ml8JBg
[02:33] <KGB> [FFmpeg/master] ffmpeg: print muxed packet sizes in debug output too - Michael Niedermayer
[02:33] <KGB> [FFmpeg/master] Libspeex VAD support - Dmitry Samonenko
[07:30] <ubitux> wo, long commit descriptions from michaelni, that's unusual :)
[07:35] <ubitux> (thx btw)
[08:10] <ubitux> kierank: you were interested in normalization the other day, i think this might help you: http://ffmpeg.org/pipermail/ffmpeg-user/2012-October/010090.html
[09:05] <kierank> ubitux: thanks
[09:51] Action: ubitux didn't hear much Nicolas recently... :(
[09:51] <ubitux> i hope he is secretly writing some awesome code 
[10:16] <cbsrobot_> TimNich: ping
[10:17] <cbsrobot_> I guess you need to add SAMPLES=/path/to/fate
[10:21] <cbsrobot_> ubitux: something like autocorrecting to ebur128 would also be a useful feature
[10:21] <cbsrobot_> similar to http://www.nugenaudio.com/LMB_Loudness_batch_processor.php
[10:22] <ubitux> cbsrobot_: you need two passes anyway
[10:22] <cbsrobot_> yes sure - they do it in multiple passes even
[10:23] <ubitux> ffmpeg is stream oriented it's kind of complicated to do that in builtin in the current state
[10:23] <ubitux> but a script in tools/ could do that yeah
[10:23] <ubitux> shouldn't require more than 10 lines of shell scripting
[10:24] <cbsrobot_> I don't think is as simple as settting the value though
[10:24] <ubitux> if you just want to reach -23LUFS it should be as simple as changing the volume
[10:35] <TimNich> cbsrobot_:  pong
[10:35] <cbsrobot_> TimNich: I guess you need to add SAMPLES=/path/to/fate
[10:36] <cbsrobot_> ^answer for your mail to the ml
[10:37] <TimNich> nahh. just cross eyed reading my notes, its make fate-whatevertest not make fate fate-whatevertest
[10:37] <cbsrobot_> k
[10:40] <TimNich> Can see what is happening but can't see why!! If you correctly set the atom, then specify a be codec it gets tagged as le according to both ffprobe and QT, hence the epic fail  (psnr from ~100% ->~0%) ;(
[10:41] <TimNich> codec copy is fine though
[10:44] <mateo`> Tjoppen: I'll able to get back to work on the mxfdec set audio pts patch. I've been busy these last days.
[10:45] <ubitux> and the diff filter!
[10:45] <ubitux> :-°
[10:46] <mateo`> sure :)
[10:46] <Tjoppen> mateo`: k
[11:23] <ubitux> michaelni: got some more info about h264 reg
[11:23] <ubitux> interested or...?
[11:23] <ubitux> afaict there are two races
[11:24] <ubitux> one around H264Context->ref_count as said in the mail, and another one because simultenaous frame worker threads seems to run a ff_init_cabac_states()
[11:24] <ubitux> worker thread -> decode_frame -> decode_slice -> init cabac states
[11:26] <ubitux> so maybe moving ff_init_cabac_states() only once in the init or something (even if not necessary) could help
[11:32] <ubitux> heh.
[11:41] <ubitux> is there any reason ff_init_cabac_states() would need to be called several times?
[11:42] <Skyler_> different QPs?
[11:42] <ubitux> afaict these tables seems to be used RO
[11:42] <ubitux> Skyler_: it takes no parameter
[11:43] <Skyler_> Ah, it doesn't do that.
[11:43] <ubitux> anyway, moving it to the h264 init callback fixes that specific race
[11:43] <ubitux> and the tests still pass
[11:44] <ubitux> now there is still the second race with the ref count
[12:06] <burek> couldn't 'pattern_type glob' be auto-recognized if strpos(filename, '*') returns true?
[12:06] <burek> in image2 demuxer
[12:07] <burek> i mean 'glob' and 'sequence' are mutually exclusive, so there is kinda no need to specify pattern type, it is enough to analyze the file name only
[13:32] <ubitux> oh, MIPS instances!
[13:32] <ubitux> awesome
[13:33] <ubitux> oh IA64 as well
[13:33] <ubitux> seems those are old though
[13:39] <ubitux> < burek> couldn't 'pattern_type glob' be auto-recognized if strpos(filename, '*') returns true?
[13:40] <ubitux> and what happens to file with a '*' ?
[14:00] <ubitux> http://www.p01.org/releases/MATRAKA/matraka.png.html  look at the source, wtf
[14:16] <burek> ubitux, normal file names can't contain character '*'
[14:16] <burek> so if a filename/file pattern is provided, that contains '*' it can safely be assumed a user wants the globbing to be applied
[14:17] <burek> thus, no need for an additional option ' pattern_type'
[14:18] <ubitux> < burek> ubitux, normal file names can't contain character '*' // why?
[14:18] <ubitux> [~]- touch \*
[14:18] <ubitux> [~]- ls -l \*
[14:18] <ubitux> -rw-r--r-- 1 ubitux ubitux 0 Oct  2 14:18 *
[14:19] <burek> :)
[14:19] <ubitux> if someone was to write a service using ffmpeg, and ffmpeg happens to interpret files with '*' differently, then we could broke that system by easily sending a '*' file
[14:20] <ubitux> developers shouldn't have to anticipate all the diverse special inputs
[14:21] <burek> it's really confusing that unix allows asterisk
[14:22] <burek> since most of its shells recognizes that character on the cmd line automatically and expands file names
[14:22] <burek> but ok, you're right
[14:22] <nevcairiel> thats why you have to escape it to use it
[14:23] Action: cbsrobot_ sends a :beer: file
[14:23] <ubitux> or quote it
[14:23] <ubitux> anyway, i think i found the cause of the third race
[14:23] <cbsrobot_> burek did you see how fast it vanished ?
[14:23] <burek> :)
[14:24] <ubitux> and it seems in the encoder side
[14:24] <ubitux> this time.
[14:24] <cbsrobot_> burek: eighter your shell is broken or you were thisty :P
[14:25] <KGB> [FFmpeg] michaelni pushed 4 new commits to master: http://git.io/RTISJg
[14:25] <KGB> [FFmpeg/master] lavfi/transpose: add support to named options and shortands - Stefano Sabatini
[14:25] <KGB> [FFmpeg/master] lavfi/transpose: add passthrough option - Stefano Sabatini
[14:25] <KGB> [FFmpeg/master] doc/swresample.txt: fix typos - Stefano Sabatini
[14:25] <burek> beer is always a top priority at qos schedulling :)
[14:26] <cbsrobot_> just befor voip I guess
[14:27] <burek> sure :)
[14:28] <burek> btw, is there somehwere some diagram like this, but for ffmpeg's git repos: http://nvie.com/posts/a-successful-git-branching-model/
[14:29] <burek> or can it be generated based on ffmpeg's git
[14:30] <ubitux> burek: yes, https://encrypted-tbn1.gstatic.com/images?q=tbn:ANd9GcR55JQFT8KopQjw9hF77Bt5AOhdRaVySgthF2E2qdHxolCz2msQ0w
[14:30] <burek> :)
[14:31] <ubitux> gitk ? git log --pretty=oneline --graph ?
[18:23] <simonec77> Hi all, I need some halp with livavformat, I want to send video frames via udp and I do not understand how to do it... I have success in write frame to a file... what is the correct steps to do it? I apologize for my bad english...
[18:24] <burek> http://www.nobodygoeshere.com/wp-content/uploads/2012/09/halp-cat.jpg
[18:25] <burek> simonec77, put your audio/video streams into mpegts format and use udp protocol
[18:28] <gnafu> burek: Looks 'shopped.  I can tell from the pixels, and from having seen a few 'shops in my time.
[18:30] <simonec77> ok, I already do a mts stream video+audio and I used avio_open(&m_spAVFormatContext->pb, in_pchfilename, AVIO_FLAG_WRITE) and av_interleaved_write_frame(in_psAVFormatContext, &sAVPacket) but I got error!
[18:31] <burek> simonec77, look into doc/examples
[18:32] <simonec77> all the examples wtite only to a file....:-(
[18:36] <burek> simonec77, take a look at ffmpeg.c
[18:36] <burek> and follow the case of the udp output
[21:27] <KGB> [FFmpeg] michaelni pushed 31 new commits to master: http://git.io/7D0ORg
[21:27] <KGB> [FFmpeg/master] wmadec: Adjust debug printf argument length modifier - Diego Biurrun
[21:27] <KGB> [FFmpeg/master] avformat: const correctness for av_hex_dump / av_hex_dump_log - Diego Biurrun
[21:27] <KGB> [FFmpeg/master] mpegts: Drop pointless casting of hex_dump_debug arguments - Diego Biurrun
[21:34] <ubitux> michaelni: just curious, are you updating the reference tests manually?
[21:34] <ubitux> or you found a way to overrid the references when running fate
[21:35] <ubitux> i tried to do something like CMP=cp the other day but wasn't able to achieve anything
[21:35] <ubitux> :(
[21:38] <Tjoppen> ubitux: you can grep for diff and sha1sum in the scripts. I was able to figure out how to trick it eventually
[21:38] <ubitux> oh?
[21:39] <Tjoppen> a command to basically go "take the current output to be correct so I can commit it" would be nice
[21:39] <ubitux> last time i had to do it manually for all the ffprobe test was quite painful
[21:40] <ubitux> (oh and that reminds me i never push that stuff)
[21:40] <ubitux> pushed*
[21:40] <Tjoppen> IIRC it does something like "diff ref output", which I just switched around to "cp output ref"
[21:40] <ubitux> that's what i tried to do
[21:40] <ubitux> with CMP=cp :D
[21:40] <Tjoppen> yeah, but the order of the arguments matter for cp and not for diff
[21:40] <ubitux> :)
[21:41] <Tjoppen> so you probably copied the refs to the outputs :)
[21:41] <ubitux> well it matters for diff as well
[21:41] <ubitux> yeah possible
[21:41] <Tjoppen> not for finding whether a test fail, technically
[21:41] <ubitux> sure
[21:41] <Tjoppen> so yeah.. I think I've done exactly that mistake twice
[21:42] <ubitux> mmh i see the "null" cmp
[21:42] <ubitux> i wonder if CMP=null wouldn't do the trick
[21:42] <ubitux> ah no it doesn't look right
[21:43] <ubitux> maybe we should just add a rule
[21:52] <michaelni> ubitux, i use something like "make fate -k -j12 | patch -p1"
[21:53] <ubitux> oh fun
[21:53] <Tjoppen> of course!
[21:53] <ubitux> didn't though about that
[21:54] <ubitux> thx for the trick :)
[21:54] <michaelni> note, this needs to be done twice if the seektests change too because they are only run if the dependancies succeeded
[21:54] <ubitux> okay
[21:59] <KGB> [FFmpeg] michaelni pushed 1 new commit to master: http://git.io/mPVRBg
[21:59] <KGB> [FFmpeg/master] fix exit_program() prototypes - Michael Niedermayer
[22:05] <philipl> ubitux: Nicholas never checked in his int64 timestamp fix for srtdec?
[22:06] <ubitux> don't remember, url?
[22:10] <philipl> http://lists.ffmpeg.org/pipermail/ffmpeg-devel/2012-September/130430.html
[22:11] <philipl> That was his alternative to my attempt at preserving precision.
[22:13] <ubitux> i've reviewed this iirc
[22:13] <ubitux> my comments still stand afaict
[22:20] <philipl> Well, he hasn't updated or checked anything in.
[22:21] <ubitux> not much news from him recently :(
[22:48] <KGB> [FFmpeg] michaelni pushed 1 new commit to master: http://git.io/-Utbow
[22:48] <KGB> [FFmpeg/master] 8svx: remove malloc and memcpy that have become unneeded - Michael Niedermayer
[23:02] <KGB> [FFmpeg] michaelni pushed 1 new commit to master: http://git.io/tILNiA
[23:02] <KGB> [FFmpeg/master] ffserver: fix potential buffer overflow, based on wrong fscanf format indentifier. - Martin Ettl
[00:00] --- Wed Oct  3 2012


More information about the Ffmpeg-devel-irc mailing list