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

burek burek021 at gmail.com
Wed Oct 15 02:05:02 CEST 2014


[00:03] <cone-448> ffmpeg.git 03Rémi Denis-Courmont 07master:1f29e5d7a2b0: h263dec: call get_format after setting resolution and profile
[00:03] <cone-448> ffmpeg.git 03Michael Niedermayer 07master:d3d265bae2b2: Merge commit '1f29e5d7a2b0950f3b6820896e97e2c02e6a10a9'
[00:03] <cone-448> ffmpeg.git 03Michael Niedermayer 07master:40f2b16d5273: avformat/utils: print more information with av_dlog() in compute_pkt_fields()
[00:10] <cone-448> ffmpeg.git 03Rémi Denis-Courmont 07master:c80a81614269: h263dec: call get_format() on resolution changes
[00:10] <cone-448> ffmpeg.git 03Michael Niedermayer 07master:b9918a768802: Merge commit 'c80a816142699dea9cf9fa66689a7838a487ed7e'
[02:07] <cone-448> ffmpeg.git 03Michael Niedermayer 07master:1f20fa2da839: avcodec/aacdec: print element types when debug startcode is set
[02:45] <cone-448> ffmpeg.git 03Anton Khirnov 07master:2df0c32ea12d: lavc: use a separate field for exporting audio encoder padding
[02:46] <cone-448> ffmpeg.git 03Michael Niedermayer 07master:da2189596d9a: Merge commit '2df0c32ea12ddfa72ba88309812bfb13b674130f'
[02:59] <cone-448> ffmpeg.git 03Michael Niedermayer 07master:320ce9f28417: avcodec/ac3enc_template: use the initial_padding field
[03:03] <anshul__> In subtitles who should set the AV_PKT_FLAG_KEY decoder/ encoder or muxer 
[03:03] <anshul__> inside packet
[03:06] <Compn> look at other subtitles and copy them :)
[03:07] <Compn> also depends if they are muxed, embedded, seperate files, streamed or what have you 
[03:09] <anshul__> I had embedded closed caption subtitles I decoded them to ass format then encoded in webVtt format then segment them in small chunk
[03:10] <anshul__> since no one including my closed caption decoder set AV_PKT_FLAG_KEY therefore segmenter fails to segment 
[03:11] <anshul__> Which is the most stable subtitle whose refrence I should take
[03:15] <Compn> cc > ass > webvtt > chunk ? 
[03:15] <Compn> that sounds insane.
[03:15] <Compn> also, i have no idea :)
[03:15] <Compn> ask ubitux , he loves subtitles :P
[03:15] <Compn> ehe
[03:19] <anshul__> I will ask clement then
[03:41] <cone-448> ffmpeg.git 03Anton Khirnov 07master:eabdc2a830f1: lavf: use initial_padding instead of deprecated delay
[03:41] <cone-448> ffmpeg.git 03Michael Niedermayer 07master:4694c0bb7c5a: Merge commit 'eabdc2a830f1ab1a3f12243eb7e2fba801cb81f0'
[03:41] <cone-448> ffmpeg.git 03Michael Niedermayer 07master:83f84e4c53e4: ffmpeg: Fix stream copy with initial_padding
[03:58] <cone-448> ffmpeg.git 03Michael Niedermayer 07master:d58fa9482e9d: avformat/mp3enc: use initial_padding
[06:02] <Compn> hmm
[06:02] <Compn> ffmpeg.git Anton Khirnov master:eabdc2a830f1: lavf: use initial_padding instead of deprecated delay
[06:02] <Compn>  ffmpeg.git Michael Niedermayer master:83f84e4c53e4: ffmpeg: Fix stream copy with initial_padding
[06:02] <Compn> looks interesting :D
[16:30] <Compn> reverse engineering an open source decoder (faad?)
[16:31] <Compn> new qualification task: make faad and ffaac output binary identical ?
[16:31] <nevcairiel> but why, faad sucks
[16:32] <Daemon404> ^
[16:33] <Daemon404> also binary identical for a lossy audio codec?
[16:33] <nevcairiel> even ffaac is probably better, at least with the long patch ticket applied
[16:33] <nevcairiel> Daemon404: its Compn
[16:33] <Daemon404> faad is a decoder
[16:33] <nevcairiel> probably means faac then
[16:33] <nevcairiel> i can never keep track of those either
[16:35] <Daemon404> lol someone is applying for postproc opts
[16:35] <nevcairiel> clueless students dont know better :(
[16:35] <Compn> no i mean faad
[16:35] <Compn> theres some loud audio artefacts in ffaac that are not present in faad
[16:35] <Compn> if you look at hte last few mails on the ml about it
[16:35] <nevcairiel> go fix it then
[16:36] <nevcairiel> those are just bugs
[16:36] Action: Compn facepalms
[16:36] <Compn> not sure what i said to upset you guys :)
[16:37] <Case> what is ffaac?
[16:37] <j-b> dead
[16:37] <BtbN> The ffmpeg native aac de/encoder i'd guess.
[16:40] <wm4> Compn> not sure what i said to upset you guys :) <- talking about things you have no clue about
[16:41] <Compn> ffmpeg aac decoder ( i try not to talk about the encoder, because it upsets everyone)
[16:41] <Compn> mplayer calls it 'ffaac' , many/all codecs from libavcodec in mplayer codecs.conf are prefaced with 'ff' so 'ffmjpeg' etc
[16:41] <ubitux> hima: so the read_header fucntion is where you will build the index
[16:42] <ubitux> hima: so there is were all the logic is
[16:42] <Compn> and i'm an mplayer dev, so its easier to reference the decoder as such. also when dealing with codecs with multiple implementations its easier to specify it that way 
[16:42] <ubitux> you have to read the whole file and add the events with the ff_subtitles_queue api
[16:42] <hima> ubitux :could explain a bit step wise as in what are the tasks performed
[16:42] <Case> Compn: if you have a sample where ffmpeg's AAC decoder fails, I'd love a sample
[16:43] <ubitux> hima: i'm not sure what else i can say; you read the buffer, look for events, extract the timestamps and append them
[16:43] <ubitux> with the text
[16:43] <Compn> Case : https://trac.ffmpeg.org/ticket/1614
[16:44] <ubitux> hima: in this function you first need to locate the "event", then call ff_subtitles_queue_insert() with the info you read
[16:44] <ubitux> and do it for all event
[16:44] <ubitux> and when you're done you call ff_subtitles_queue_finalize and that's it
[16:45] <Compn> Case : i'm not sure thats what you want. there are other aac bugs in trac, missing features like ssr or sbr or whatnot . but like wm4 says i dont know what i'm talkin bout :P
[16:45] <nevcairiel> sbr works f ine
[16:45] <nevcairiel> ssr is not supported however
[16:45] <Daemon404> libfdk decoder
[16:45] Action: Daemon404 runs
[16:45] <Compn> i think theres a list of supported/ not-supported features in aac source file
[16:46] <Compn> and the samples for some of those are in the samples repo or trac or carl may know ...
[16:46] <hima> ubitux: http://fpaste.org/141780/41329792/ this the function in srtdec.c
[16:46] <ubitux> yes
[16:46] <ubitux> it reads line by line the whole file
[16:46] <hima> the function  ff_subtitles_read_text_chunk(&tr, &buf); 
[16:46] <hima> from where does tr and buf 
[16:46] <ubitux> this is for utf-16
[16:46] <hima> get the value?
[16:47] <ubitux> look at vplayerdec
[16:47] <ubitux> it's simpler
[16:47] <ubitux> srtdec supports utf-16
[16:47] <ubitux> you don't need that, at least for now
[16:47] <hima> okay i will look at that then 
[16:49] <hima> ubitux : this part is common in both just with the change in id.  http://fpaste.org/141782/32981321/ would explain what is done here
[16:50] <ubitux> first 2 is an allocation check, pts info is the timebase: that is, the integer you'll get when parsing the timestmap is in 1/100 time base
[16:50] <ubitux> (centiseconds)
[16:51] <ubitux> then the stream is marked as a vplayer stream (you'll have text)
[16:51] <ubitux> and that it's a subtitles stream
[16:53] <hima> okay 
[17:11] <hima> ubitux : avformat_new_stream(AVFormatContext *s, const AVCodec *c);* Get "side information" from stream. what does this mean 
[17:12] <hima> and for vplayer why is AVCodec *c passed as NULL?
[17:12] <ubitux> you're looking at the wrong doxy
[17:13] <ubitux> the doxy is above the function, not below
[17:13] <hima> ohh oops 
[17:14] <ubitux> you don't new the 2nd parameter
[17:14] <ubitux> just ignore it
[17:14] <ubitux> try git grep avformat_new_stream you'll see that all usage are the same
[17:15] <hima> okay yes i saw
[17:25] <hima> ubitux: here in vplayerdec.c we just take into account the the start time not the end time then how does one know the duration?
[17:26] <ubitux> vplayer doesn't have such concept
[17:26] <ubitux> there is no duration information
[17:26] <ubitux> so we set -1 and the ff_subtitles api will fill it by using the timestamp of the next event
[17:27] <hima> ohh okk...but in kate we have to 
[17:27] <hima> cuz i have the information 
[17:27] <hima> right?
[17:27] <ubitux> yes
[17:28] <hima> okay 
[17:30] <hima> can i write two function get_pts_start and get_pts end that return the start and end points or do i have to strictly follow this pattern?
[17:30] <ubitux> you are free to do as you want
[17:31] <hima> okay 
[17:31] <ubitux> do what you think is best
[17:31] <ubitux> if it's not, we'll make suggestion improvement, or point out the problems
[17:39] <hima> ubitux : http://fpaste.org/141807/41330112/ what is in line and how does it get assigned?
[17:39] <hima> i mean what value does it hold?
[17:39] <ubitux> see ff_get_line()
[17:41] <hima> okayy 
[17:49] <hima> ubitux can you please tell in which file will i find the definition of structure AVFormatContext. tried grep and find too many files appear unable to locate it
[17:54] <ubitux> hima: git grep 'struct AVFormatContext {'
[17:55] <TimNich> How did fflogger  ticket #4030 get in the system?
[18:01] <TimNich> looks like someone is spamming trac cansomeone shut him down?
[18:01] <hima> ubitux: can you please explain what value does s -> pb holds? is it the whole context of the file?
[18:01] <nevcairiel> its the avio context, used for the read functions like avio_read etc
[18:01] <ubitux> it's the context the I/O layer needs to read data
[18:02] <ubitux> ah cool, someone else to help
[18:02] <ubitux> i'm going home then ;)
[18:03] Action: TimNich follows suit
[18:03] <hima> :) okk 
[18:13] <hima> ubitux: kate_read_header() please have a look 
[18:13] <hima> http://fpaste.org/141816/33031771/
[18:19] <cone-698> ffmpeg.git 03Michael Niedermayer 07master:5ee6fb758329: avfilter/vf_pp: add gbrp support
[18:44] <cone-698> ffmpeg.git 03Michael Niedermayer 07master:fd367668e144: avcodec/flac_parser: use av_freep(), do not leave stale pointers in memory
[18:44] <cone-698> ffmpeg.git 03Michael Niedermayer 07master:9946da497663: avcodec/flac_parser: use av_freep(), do not leave stale pointers in memory
[18:44] <cone-698> ffmpeg.git 03Michael Niedermayer 07master:43fb16cf7471: avcodec/iirfilter: Change ff_iir_filter_free_coeffs() so it clears the pointers as well
[18:56] <ubitux> hima: does it work?
[18:57] <hima> i am trying to make now. correcting a few compilation errors
[18:58] <hima> i am asking is the logic correct?
[19:00] <ubitux> hima: i don't know i'm not a cpu or a compiler
[19:00] <ubitux> just iterate until it works
[19:01] <hima> Okay i am sorry. I would run and let u know 
[19:23] <ubitux> is anyone willing to review the subtitles patchset i set a few days ago or i can push?
[19:23] <ubitux> sent*
[20:06] <J_Darnley> ubitux: I'll review the ones that haven't already been done.
[20:07] <ubitux> J_Darnley: sure, ok, thank you
[21:22] <akira4> ubitux, link to the  probe buffer that is printed :http://pastebin.com/BH84Ai72 and the link to the stl file http://nothingcantouchme.com/downloads/Subtitles/UK_FINAL_240511.stl
[21:23] <ubitux> alright, so there is actually a timestamp in the buffer
[21:23] <ubitux> it should work at first call
[21:23] <ubitux> can you show me again your probe function?
[21:24] <akira4> http://pastebin.com/qAF3EWs5
[21:27] <ubitux> akira4: can you move the av_log just before the sscanf?
[21:27] <akira4> sure. Just a sec
[21:29] <akira4> here. http://pastebin.com/6ZrkCvUq
[21:30] <ubitux> so ptr didn't move?
[21:30] <akira4> seems like it
[21:30] <ubitux> then you know where the problem is
[21:30] <ubitux> debug this
[21:30] <akira4> cool. thanks
[21:51] <cone-698> ffmpeg.git 03Michael Niedermayer 07master:f43ac027232f: avcodec/iirfilter: Make ff_iir_filter_free_state() also zero the freed pointer
[22:22] <cone-698> ffmpeg.git 03Martin Storsjö 07master:c2c22c75cf89: movenc: Write tfdt atoms
[22:23] <cone-698> ffmpeg.git 03Michael Niedermayer 07master:99c26805e9e8: Merge commit 'c2c22c75cf89e2faab34d1ee1d392cfb065439ea'
[22:23] <kurosu> why do I even bother using ffmpeg's trac
[22:23] <ubitux> did i miss some drama?
[22:45] <Daemon404> probablt carl.jpg
[22:46] <cone-698> ffmpeg.git 03Martin Storsjö 07master:a74f8121d88e: mov: Handle tfdt atoms
[22:46] <cone-698> ffmpeg.git 03Michael Niedermayer 07master:5552594a4466: Merge commit 'a74f8121d88e0bdf0d69c22e4b3713032da9300a'
[23:00] Action: Compn runs carl.exe on Daemon404's bug report
[23:04] <akira4> ubitux, in the probe function the ptr value when compared with '$' etc. gives a false so ptr never moves. Is there any other method to compare ptr's value? 
[23:04] <ubitux> what the first byte?
[23:04] <ubitux> isn't there an UTF-8 BOM or something?
[23:05] <ubitux> try adding this:
[23:05] <ubitux>     if (AV_RB24(ptr) == 0xEFBBBF)
[23:05] <ubitux>         ptr += 3;  /* skip UTF-8 BOM */
[23:05] <ubitux> at the top of the function
[23:05] <ubitux> just in case
[23:07] <akira4> well in the stl file the first line is a comment so I dont think that would be a utf-8 bom or is it?
[23:08] <ubitux> akira4: try av_log(0,0,"%02X %02X %02X\n", ptr[0], ptr[1], ptr[2]);
[23:09] <ubitux> akira4: it's not "visible"
[23:09] <ubitux> hexdump -C the file
[23:09] <ubitux> hexdump -C bla.stl|head
[23:09] <akira4> oh. I'll try it.
[23:09] <ubitux> - curl -s 'http://nothingcantouchme.com/downloads/Subtitles/UK_FINAL_240511.stl'|hexdump -C|he
[23:09] <ubitux> ad -n1
[23:09] <ubitux> 00000000  ef bb bf 2f 2f 3d 3d 3d  3d 3d 3d 3d 3d 3d 3d 3d  |...//===========|
[23:10] <ubitux> ef bb bf
[23:10] <ubitux> that's the utf-8 bom
[23:10] <akira4> yup
[23:10] <ubitux> it just means "hey that's a utf-8 file"
[23:10] <ubitux> sometimes it's there, sometimes not
[23:10] <akira4> in case its not there
[23:10] <akira4> we just ignore it
[23:10] <akira4> that's all
[23:10] <ubitux> with the great help of the "if" you can do that
[23:11] <ubitux> :)
[23:11] <akira4> sorry. Its a little late so..
[23:14] <akira4> now the probe function doesnt give the misdetection message :)
[23:14] <akira4> thanks ubitux 
[23:14] <ubitux> cool
[23:14] <akira4> oh and I tried changing the doc/general.texi file 
[23:15] <akira4> do I need to change the doc/general.html file too?
[23:16] <ubitux> doc/general.html is generated
[23:16] <ubitux> from the .texi
[23:17] <ubitux> it's not tracked, only local
[23:17] <akira4> I must've done something wrong again then since the changes weren't reflected.
[23:18] <ubitux> make doc/general.html
[23:19] <akira4> got it :)
[23:32] <akira4> ubitux this is the diff http://pastebin.com/KVwAyFMV. I've tested it with 5 stl files and its working properly.
[23:33] <ubitux> ah, cool then.
[23:33] <ubitux> should we add a codec?
[23:34] <akira4> yep.
[23:34] <ubitux> so it handles line breaks?
[23:34] <ubitux> right
[23:34] <ubitux> well, just look at how it's done with vplayer
[23:34] <ubitux> try looking by yourself
[23:34] <ubitux> it's not that complicated
[23:34] <ubitux> look at the original commit of vplayerdec.c for hints
[23:34] <akira4> hmm.
[23:35] <akira4> original commit of vplayerdec.c?
[23:35] <rcombs> UTF-8 BOMs, man :/
[23:37] <ubitux> akira4: git log -p --reverse libavcodec/vplayerdec.c
[23:37] <ubitux> mmh no
[23:37] <ubitux> akira4: git log -p --reverse --full-diff libavformat/vplayerdec.c
[23:38] <akira4> okay. thanks.
[00:00] --- Wed Oct 15 2014


More information about the Ffmpeg-devel-irc mailing list