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

burek burek021 at gmail.com
Wed May 30 02:05:03 CEST 2012


[01:04] <CIA-119> ffmpeg: 03Stefano Sabatini 07master * r6994b552a6 10ffmpeg/ffprobe.c: 
[01:04] <CIA-119> ffmpeg: ffprobe: make c_escape_str() documentation terser
[01:04] <CIA-119> ffmpeg: Avoid to specify implementation details, better to check the code for
[01:04] <CIA-119> ffmpeg: that.
[01:04] <CIA-119> ffmpeg: 03Stefano Sabatini 07master * rc365cdf202 10ffmpeg/ (doc/ffprobe.texi ffprobe.c): ffprobe: add support to '\b' and '\f' escaping in c_escape_str()
[01:04] <CIA-119> ffmpeg: 03Stefano Sabatini 07master * r67b7631040 10ffmpeg/libavcodec/utils.c: 
[01:04] <CIA-119> ffmpeg: lavc: prettify printing of some codec tags which contains non alphanumeric characters
[01:04] <CIA-119> ffmpeg: Make av_get_codec_tag_string() show codec tag string characters in a more
[01:04] <CIA-119> ffmpeg: intelligible ways. For example the ascii char "@" is used as a number, so
[01:04] <CIA-119> ffmpeg: should be displayed like "[64]" rather than as a printable character.
[01:04] <CIA-119> ffmpeg: Apart alphanumeric chars, only the characters ' ' and '.' are used
[01:04] <CIA-119> ffmpeg: literally in codec tags, all the other characters represent numbers.
[01:04] <CIA-119> ffmpeg: 03Stefano Sabatini 07master * rfa6cb2fdff 10ffmpeg/ffprobe.c: 
[01:04] <CIA-119> ffmpeg: ffprobe: add multiple_sections field to WriterContext
[01:04] <CIA-119> ffmpeg: Move the field "multiple_entries" from the JSON writer private context to
[01:04] <CIA-119> ffmpeg: WriterContext, and rename it "multiple_sections".
[01:04] <CIA-119> ffmpeg: This allows to factorize the code with the pending INI format patch.
[01:06] <ubitux> \o/
[01:15] <saste> ubitux: so ini *not* hierarchic output should be the default?
[01:16] <ubitux> i think having the same output as libav is the best thing to do
[01:16] <ubitux> users really are parsing them
[01:17] <ubitux> we should not make things more complicated for them
[05:22] <taqattack> hello anyone here?
[05:26] <Compn> yes
[05:26] <Compn> we are here
[05:31] <taqattack> Cool
[05:31] <taqattack> What kind of encoding does ffmpeg use to stdin/stdout?
[05:32] <taqattack> I was looking over the source code but I couldn't find how the characters that are outputted to the console are encoded.
[05:34] <Compn> you mean ffmpeg text output ?
[05:36] <taqattack> No I mean the binary pipe output
[05:37] <Compn> its just whatever format you specify
[05:37] <Compn> or do you mean the 'binary mode' ascii or whatever ?
[05:37] <taqattack> Yeah
[05:37] <taqattack> So if I set it to "ffmpeg -i file.wav -f wav -"
[05:37] <taqattack> It outputs to console bunch of characters
[05:38] <Compn> should just be raw wav data
[05:38] <Compn> your console then interpretes this any way it wants
[05:38] <taqattack> IT is. But I'm not sure how its encoded.
[05:38] <Daemon404> what the heck are yo utalkjing about
[05:38] <Daemon404> it's a byet stream
[05:38] <Daemon404> it's not 'encoded'
[05:38] <Daemon404> it's bytes.
[05:38] <Daemon404> in order.
[05:38] <Daemon404> also wow, typos.
[05:38] <Compn> taqattack : if you cat file.wav 
[05:39] <Compn> it reads the file to your console
[05:39] <taqattack> But its displayed somehow on console right?
[05:39] <Compn> yes, thats up to your console
[05:41] <Compn> if you have a utf8 console, the binary hex is represented utf8 characters :P
[05:42] <Daemon404> crapping random data to your console makes it beep
[05:42] <taqattack> I see
[05:42] <Daemon404> /safetyhelmet
[05:42] <taqattack> I want to pipe it to my application. How would I be able to read the byte data?
[05:42] <Daemon404> have your application read stdin
[05:43] <Compn> this channel is for ffmpeg development itself. 3rd party application development chat belongs in #ffmpeg really
[05:43] <Compn> just trying to help
[05:43] Action: Compn goes afk
[05:43] <Daemon404> ^
[05:44] Action: Compn rot13 encodes Daemon404
[05:44] <Daemon404> Compn, a very secure cipher.
[05:44] <taqattack> I appreciate the help. Thanks.
[05:46] <taqattack> Another question. If I wanted to feedback the wav data back into ffmpeg using stdin/stdout, what character encoding does ffmpeg read in?
[05:46] <taqattack> Or do I need to stdout in byte array, which I'm not even sure is possible.
[05:50] <Daemon404> http://pubs.opengroup.org/onlinepubs/007904975/functions/write.html
[05:51] <Daemon404> you really should try google, or somewhere about general unix development.
[05:57] <taqattack> Awesome
[05:57] <taqattack> It's working now. 
[05:57] <taqattack> Thanks again for the help!
[07:41] <CIA-119> ffmpeg: 03Clément BSsch 07master * rf0c15ecd45 10ffmpeg/doc/syntax.texi: 
[07:41] <CIA-119> ffmpeg: doc/syntax: escape '@' to fix a warning.
[07:41] <CIA-119> ffmpeg: Fix the following warning:
[07:41] <CIA-119> ffmpeg: doc/syntax.texi:147: warning: Accent command `@"' must not be followed by whitespace
[10:14] <CIA-119> ffmpeg: 03Paul B Mahol 07master * r908c045f3a 10ffmpeg/libavfilter/avfilter.c: 
[10:14] <CIA-119> ffmpeg: avfilter: use designated initializer for class
[10:14] <CIA-119> ffmpeg: Signed-off-by: Paul B Mahol <onemda at gmail.com>
[10:59] <ubitux> did anyone read http://people.xiph.org/~xiphmont/lj-pseudocut/o-response-1.html ?
[10:59] <ubitux> it makes me wanting to play a bit with ogg
[10:59] <ubitux> (yes it's a bit old)
[11:00] <av500> have fun
[11:01] <ubitux> :D
[11:01] <ubitux> i have some more entries in my todo list first ;)
[11:01] <ubitux> but that post is interesting :)
[11:01] <av500> ....One example is mp3 in Matroska, where the mapping specifies that the mp3 header is to be treated as duplicated/compressed data. Mappings need only be specified once and they're done. ...
[11:02] <av500> the 12 bit header?
[11:02] <av500> or the sync code?
[11:02] <av500> wtf?
[11:03] <j-b> Ogg is bad
[11:03] <j-b> it is even worse than that.
[11:03] <ubitux> from an outsider, it looks like monty is explaining himself quite well
[11:04] <av500> ubitux: for fun, write an ogg demuxer
[11:04] <ubitux> writing a mov, matroska or a working avi demuxer doesn't look simple either :p
[11:04] <j-b> ubitux: VLC is the official Ogg player from PlayOgg http://www.fsf.org/campaigns/playogg/en/
[11:05] <j-b> ubitux: and yet, VLC is still unable to compute the timing of Ogg files
[11:05] <av500> j-b: thats because there is *no* time in ogg
[11:05] <av500> only a granule
[11:06] <j-b> av500: stop insulting me! You granule!
[11:06] <av500> j-b: meh, you french!
[11:07] <ubitux> :D
[11:07] <j-b> ubitux: so, that gives you a good idea about how great Ogg is
[11:08] <ubitux> j-b: according to the post, Monty seems to be happy to give a hand on this, didn't he explained? :)
[11:08] <ohsix> ;]
[11:09] <ohsix> too different, hard, bad on its face!
[11:09] <j-b> ubitux: right...
[13:06] <Compn> ubitux have monty send patch.
[13:06] <Compn> ubitux : i think everyone agrees that ogg sucks, at least thats what i've seen in ml archives for mplayer and ffmpeg :P
[13:09] <CIA-119> ffmpeg: 03Stefano Sabatini 07master * ra5e83a5d4c 10ffmpeg/Changelog: Changelog: apply misc formatting fixes
[13:09] <CIA-119> ffmpeg: 03Stefano Sabatini 07master * r4eb1ff6582 10ffmpeg/Changelog: Changelog: remove asplit entry from 0.11, it was added in 0.10
[13:09] <CIA-119> ffmpeg: 03Stefano Sabatini 07master * r89d49acb3b 10ffmpeg/ (Changelog doc/ffprobe.texi ffprobe.c): 
[13:09] <CIA-119> ffmpeg: ffprobe: add INI writer
[13:09] <CIA-119> ffmpeg: Liberally based on the work of Luca Barbato <lu_zero at gentoo.org>, done
[13:09] <CIA-119> ffmpeg: for libav/avprobe.
[13:32] <ubitux> Compn: i don't know, we generally remember haters
[13:32] <ubitux> (i'm not saying it's bad, i really don't know actually)
[13:44] <ubitux> saste: 4eb1ff6582  you need to remove it from ffmpeg-web as well i think
[16:50] <ubitux> http://git.videolan.org/?p=ffmpeg.git;a=commitdiff;h=781fb46c568939c15e4638f9949adb6f2facf7b4
[16:50] <ubitux> http://git.libav.org/?p=libav.git;a=commitdiff;h=12d42cd7a869a58e6308b76f7234701f1d943d93
[16:50] <ubitux> :))
[16:52] <Daemon404> shock. awe. ponies.
[16:53] Action: ubitux jumps on Daemon404 
[16:53] Action: Daemon404 files a restraining order
[16:53] <Daemon404> im in america now
[16:53] <Daemon404> thats what we do right>
[16:53] <ubitux> erk usa :(
[16:53] Action: ubitux runs away
[17:04] <ubitux> Daemon404: you're going to get flame'd
[17:05] <Daemon404> thats fine
[17:05] <Daemon404> i have a legit point about wasting time and effort
[17:06] <cptspiff> avr - it's not a valid argument over there it seems ;)
[17:19] <ubitux> Daemon404: if you want another example we had one yesterday too
[17:19] <ubitux> 13:56:30 <@ubitux> http://git.videolan.org/?p=ffmpeg.git;a=commitdiff;h=a9011623ea95f051f740bffd2d473f28fd1f250e
[17:19] <ubitux> 13:56:32 <@ubitux> http://git.libav.org/?p=libav.git;a=commitdiff;h=0426c6931070a65a7ec8362d12038ef10fa015ee
[17:19] <ubitux> and actually, it happens pretty often
[17:20] <Daemon404> im not out to witch hunt particulkar commits
[17:20] <ubitux> i wasn't hunting either
[17:20] <Daemon404> http://lists.libav.org/pipermail/libav-devel/2012-May/028460.html
[17:20] <Daemon404> pretty much this is what i wanted to state.
[17:20] <ubitux> yes but we are a random forgotten downstream project
[17:21] <ubitux> they can't monitor every project like this
[17:21] <ubitux> anyway, too bad for them.
[17:26] <burek> I've blacklisted their domain from or the corporate networks I manage :)
[17:26] <burek> -or +all
[17:26] <ubitux> let's not be as stupid as them :)
[17:26] <burek> I tried to ask why the misleading message in ffmpeg.. why acting childish
[17:26] <burek> and all I got was stfu
[17:27] <burek> so i stfu-ed them :D
[17:27] <Daemon404> i cant say i agree with blacklisting them
[17:27] <Daemon404> thats pretty childish.
[17:27] <burek> I know :) but it does the job well :)
[17:27] <Daemon404> ... what job?
[17:27] <burek> keeping the stuff I'm responsible for from irresponsible kids
[17:28] Action: Daemon404 has no idea wtf burek is talkign about
[17:28] <ubitux> Daemon404: restoring peace and order in this perverted world obviously
[17:29] <ubitux> let's bring back some smiles in this sad world
[17:29] <ubitux> http://img.fae.ro/528d52.jpeg
[17:30] <burek> what a king :)
[17:34] <Daemon404> ubitux, did you change ffprobe json output recently
[17:36] <Daemon404> or saste 
[17:36] <ubitux> i don't think so
[17:36] <Daemon404> the code i was using to parse it all of a sudden dies
[17:36] <ubitux> is something broken?
[17:36] <Daemon404> SyntaxError: Unexpected token {
[17:36] <ubitux> mmh
[17:36] <ubitux> we changed ffprobe so we might have broke something
[17:37] <ubitux> Daemon404: do you have a sample?
[17:37] <Daemon404> sample of what?
[17:37] <ubitux> the one generating an invalid json
[17:37] <ubitux> what's your cmd line at least?
[17:37] <Daemon404> im checking
[17:37] <Daemon404> it -looks- valid
[17:37] <ubitux> i'll try to add some reg test
[17:37] <ubitux> to avoid this misfortunes
[17:38] <ubitux> the problem is that we print some floats
[17:38] <ubitux> so it might end up with different outputs
[17:38] <saste> Daemon: sample or json output should do
[17:39] <Daemon404> http://pastie.org/private/aawkyl7rqdlg7hbjofbysq
[17:39] <Daemon404> look at line 25
[17:39] <ubitux> ah indeed that's broken
[17:39] <ubitux> it's missing the "streams" key
[17:39] <Daemon404> also a stray ]
[17:39] <Daemon404> and an open [
[17:40] <Daemon404> unless that's a result of a missing key
[17:41] <saste> Daemon404: i'm the breaker
[17:41] <Daemon404> ;)
[17:42] <ubitux> saste: do you mind if i add an alias -of ’ -print_format?
[17:42] <saste> ubitux: as you wish
[17:44] <Daemon404> saste, is a there a commit i can temporarily revert
[17:44] <Daemon404> i just need it out of the way for the moment
[17:46] <saste> Daemon404: the rogue commit is fa6cb2fdffe
[17:46] <Daemon404> ok
[17:46] <saste> give me 30 mins/1 hr  and i'll fix it
[17:47] <Daemon404> ok
[17:48] <Daemon404> yeah i cant revert it easily anyway
[17:48] <ubitux> you'll need to remove 89d49acb3ba993e685adf857d62d0ec9963a7ae3 as well
[17:48] <ubitux> since it makes use of it
[17:51] <Daemon404> yea
[17:51] <Daemon404> \o/
[17:51] Action: Daemon404 works for an hr then
[18:14] <CIA-119> ffmpeg: 03Stefano Sabatini 07master * rad381ac97f 10ffmpeg/ffprobe.c: 
[18:14] <CIA-119> ffmpeg: ffprobe: fix chapter printing, fix JSON output
[18:14] <CIA-119> ffmpeg: Make writer_print_chapter_header() set the internal values *before* the
[18:14] <CIA-119> ffmpeg: private writer callback is called, otherwise the accessed internal values
[18:14] <CIA-119> ffmpeg: will be wrong.
[18:14] <CIA-119> ffmpeg: Fix regression introduced in fa6cb2fdffe.
[18:14] <CIA-119> ffmpeg: Found-By: Daemon404
[18:15] <Daemon404> \o/
[18:51] <CIA-119> ffmpeg: 03Clément BSsch 07master * rdae8505492 10ffmpeg/ (doc/ffprobe.texi ffprobe.c): 
[18:51] <CIA-119> ffmpeg: ffprobe: make -of an alias for -print_format.
[18:51] <CIA-119> ffmpeg: This is for interoperability purpose with the fork.
[19:21] <burek> "abuffer is doubled in html documentation, abuffersink too: http://ffmpeg.org/ffmpeg.html
[20:11] <CIA-119> ffmpeg: 03Michael Niedermayer 07master * r1b8741a684 10ffmpeg/libavformat/4xm.c: 
[20:11] <CIA-119> ffmpeg: 4xm: fix division by zero caused by bps<8
[20:11] <CIA-119> ffmpeg: Found-by: Mateusz "j00ru" Jurczyk and Gynvael Coldwind
[20:11] <CIA-119> ffmpeg: Signed-off-by: Michael Niedermayer <michaelni at gmx.at>
[20:11] <CIA-119> ffmpeg: 03Michael Niedermayer 07master * r5880d78873 10ffmpeg/libavformat/mov.c: 
[20:11] <CIA-119> ffmpeg: movdec: Check count of stts/ctts elements instead of just the pointer.
[20:11] <CIA-119> ffmpeg: Fixes overreading the array
[20:11] <CIA-119> ffmpeg: Found-by: Mateusz "j00ru" Jurczyk and Gynvael Coldwind
[20:11] <CIA-119> ffmpeg: Signed-off-by: Michael Niedermayer <michaelni at gmx.at>
[20:11] <CIA-119> ffmpeg: 03Michael Niedermayer 07master * re7cb161515 10ffmpeg/libavformat/ape.c: 
[20:11] <CIA-119> ffmpeg: ape: Fix null ptr dereference with files missing a seekatable.
[20:11] <CIA-119> ffmpeg: Such files are currently not supported as the table is used at several points
[20:11] <CIA-119> ffmpeg: Found-by: Mateusz "j00ru" Jurczyk and Gynvael Coldwind
[20:11] <CIA-119> ffmpeg: Signed-off-by: Michael Niedermayer <michaelni at gmx.at>
[21:36] <CIA-119> ffmpeg: 03Clément BSsch 07master * rd51e08bb89 10ffmpeg/libavcodec/ (ass.c ass.h jacosubdec.c microdvddec.c srtdec.c): 
[21:36] <CIA-119> ffmpeg: lavc: switch from ts_end to duration in ff_ass_add_rect.
[21:36] <CIA-119> ffmpeg: Make possible a end-to-presentation duration.
[21:37] <CIA-119> ffmpeg: 03Clément BSsch 07master * r2d52ee8a1a 10ffmpeg/libavformat/microdvddec.c: (log message trimmed)
[21:37] <CIA-119> ffmpeg: lavf/microdvd: support events lasting to the next one.
[21:37] <CIA-119> ffmpeg: Example:
[21:37] <CIA-119> ffmpeg: {3350}{}this subtitle...
[21:37] <CIA-119> ffmpeg: {3390}{}...continues up to...
[21:37] <CIA-119> ffmpeg: {4000}{4500}this one.
[21:37] <CIA-119> ffmpeg: {4600}{}and now...
[22:30] <burek> does ffmpeg's flac now support 24bit?
[22:31] <Daemon404> it's supported decoding it sicne forever 
[22:33] <burek> I see, but not encoding, right?
[22:33] <Daemon404> it can not encode 24 bit flac, correct
[22:43] <burek> ok, thank you Daemon404 :)
[23:26] <Compn> https://www.eff.org/deeplinks/2012/05/apples-crystal-prison-and-future-open-platforms
[23:26] <Compn> Additionally, because Apple modifies binaries before publishing apps in the App Store, open source apps released under the GNU General Public License cannot be published without the approval of all authors, which caused the popular media player VLC to get removed from sale.
[23:26] <Compn> If you need VLC to play media that won't play with the built-in Video app, you can download it to your jailbroken device with freedom intact from Cydia, and the source code is available on their website.
[23:29] <ubitux> hey saste :)
[23:35] <saste> ubitux: hi
[23:35] <saste> omg the bug in the c escape function
[23:35] <ubitux> :D
[23:35] <Daemon404> Compn, crystal prison?
[23:35] <Daemon404> the cool thing to do is call it a walled garden
[23:35] <Daemon404> a la /.
[23:36] <ubitux> saste: btw, what's the plan for printing? avio? two AVBPrint in wctx and direct printf?
[23:36] <saste> two?
[23:36] <saste> direct avio printing
[23:36] <saste> a la avprobe
[23:36] <ubitux> one for the key, and one for the value :p
[23:36] <ubitux> (i need two escaping in the flat)
[23:37] <ubitux> ok
[23:37] <ubitux> so we would drop all the avbprint?
[23:37] <saste> if it makes sense
[23:38] <saste> should simplify a lot
[23:38] <ubitux> i think it still makes sense to use it for escaping
[23:38] <ubitux> even if using avio with the output buffer later
[23:39] <ubitux> though, avio buffering should do the trick
[23:42] <saste> why not to directly print the escaped string to the output?
[23:42] <saste> internal buffering is only useful when you need to state global properties of the string
[23:42] <saste> (e.g. the length of the parsed string, if it contains quotes e.g.)
[23:43] <saste> even in that case you can do it with a fast pre-parsing
[23:47] <ubitux> yeah sure i just had in mind the printf("%c"... which can be slow
[23:47] <ubitux> but we have avio_w8 etc so it should do the trick :p
[00:00] --- Wed May 30 2012


More information about the Ffmpeg-devel-irc mailing list