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

burek burek021 at gmail.com
Thu Jan 2 02:05:02 CET 2014


[00:06] Action: ubitux hope one debug day will be enough
[00:06] <ubitux> but it probably wont :(
[00:46] <BBB> Daemon404: that was my suggestion
[00:47] <BBB> Daemon404: but I suppose the person is way too special to use something straightforward as threads
[00:51] <JEEB> well, you know non-blocking is hip now
[00:51] <JEEB> javascript and all that jazz
[00:52] <nevcairiel> such terms dont even make much sense in such a concept, how many interrupt points does he want, one check every macroblock? :p
[00:52] <llogan> JEEB: jazz...damn it. you got Kenny G's "Song Bird" stuck in my head
[00:53] <Daemon404> nevcairiel: the solution is for ffmpeg to write its own userland scheduler
[00:53] <Daemon404> and use that
[00:53] <Daemon404> duh.
[01:27] <wm4> trollol
[01:56] <iive> i've missed the discussion, but generally, nobody is born as skilled programmer. If he is ready to learn he would likely stick around. If not, removing stuff is the easiest task.
[02:56] <cone-90> ffmpeg.git 03Michael Niedermayer 07master:46b06bd894f0: avcodec/mpegvideo_enc: implement frame skip score normalization
[03:05] <cone-90> ffmpeg.git 03Hendrik Leppkes 07master:8abdf46b3805: dxva2_vc1: set refdist value according to spec
[03:05] <cone-90> ffmpeg.git 03Hendrik Leppkes 07master:3021d1be9ef1: dxva2_vc1: set bfraction in slice info according to spec
[03:05] <cone-90> ffmpeg.git 03Hendrik Leppkes 07master:e1facd3f8198: dxva2_vc1: set PQUANT as described by the 2010 spec update
[03:05] <cone-90> ffmpeg.git 03Hendrik Leppkes 07master:719f1ce5fb41: vc1: set chromaformat = 1 for simple/main profile
[03:05] <cone-90> ffmpeg.git 03Hendrik Leppkes 07master:c5562890c7c3: dxva2_vc1: fix signaling of intensity compensation values
[03:05] <cone-90> ffmpeg.git 03Hendrik Leppkes 07master:3d8eeea62009: dxva2_vc1: signal skipped p frames
[03:40] <cone-90> ffmpeg.git 03Michael Niedermayer 07master:07728a111583: avcodec/binkaudio: clear padding area of packet_buffer
[13:06] <cone-427> ffmpeg.git 03Werner Robitza 07master:704c217ff32f: ffplay: add documentation for "s" key
[13:06] <cone-427> ffmpeg.git 03Stefano Sabatini 07master:8c8c3ca91e8c: doc/protocols/rtsp, lavf/rtsp: fix/extend options documentation
[13:06] <cone-427> ffmpeg.git 03Stefano Sabatini 07master:0b1cfc4f28d8: configure: bump year number 2013 -> 2014
[15:42] <cone-427> ffmpeg.git 03Michael Niedermayer 07master:e6364ea26df9: avcodec/vqavideo: use av_mallocz() for decode_buffer()
[15:44] <ubitux> i don't get it, isn't "pandn a, b" = "a & ~b"?
[15:44] <ubitux> "a &= ~b" even
[15:48] <ubitux> i have m6=0xffffffffffffffffffffffffffffffff and m2=0xffffffff00ffff0000ff000000000000; pandn m6,m2 leads to m6=0
[15:50] <ubitux> shouldn't m6 be ~m2?
[15:52] <ubitux> aah shit it's "pandn a, b" = "~a & b"
[16:44] <nevcairiel> oh boy now he really posted this weird idea to the devel list, in before trollfest
[16:48] <wm4> which?
[16:48] <wm4> passing AVFrame to muxers?
[16:48] <nevcairiel> that is weird too
[16:48] <nevcairiel> but i'm referring to "Allow interrupt callback for AVCodecContext"
[16:50] <BBB> ubitux: https://github.com/rbultje/ffmpeg/commits/vp9-simd first compiling version of full idct32x32
[16:50] <BBB> ubitux: doesn't work yet (likely?) but for some first fun
[16:50] <ubitux> ah!
[16:50] <BBB> not too many register shuffles if you ask me
[16:50] <ubitux> you're going to finish it before me haha
[16:50] <BBB> we'll see, I have to write all the subforms still, plus debug it
[16:50] <BBB> I think we'll finish around the same time
[16:50] <BBB> then we can blog about it :)
[16:51] <BBB> trollfest on ml
[16:51] <BBB> where
[16:51] <BBB> wanna see
[16:52] <nevcairiel> nothing yet
[16:52] <nevcairiel> unless you want to start
[16:52] <nevcairiel> but i expect it to start soon
[16:53] <BBB> oo can't resist
[16:53] <wm4> I don't see such a thread
[16:53] <nevcairiel> BBB found it and responded
[16:55] <wm4> hm what would be more useful than this stuff would be getting correct key frame flags, or the ability to extract timestamps without decoding
[16:55] <nevcairiel> how is that even related
[16:56] <cone-427> ffmpeg.git 03Michael Niedermayer 07master:06bb1de1c78a: avformat/vqf: check avio_read()s return value more completely
[16:56] <wm4> depends on his application; e.g. if he just wants to make sure he's seeking to the right position
[16:57] <nevcairiel> he wants to cancel decoding when he needs to seek, so his application is 5ms faster
[16:58] <BBB> he wants the wrong thing
[16:58] <BBB> he should want "fast seeking"
[16:58] <BBB> he wants a particular solution that may or may not be related to the problem or be the best or easiest solution to the problem
[17:53] <BBB> ok time to start debugging asm, see you guys in a few days :-p
[19:35] <Daemon404> BBB: pretty sure the solution is a bad one regardless
[21:29] <ubitux> aah i think i get my bug
[21:30] <ubitux> BBB: any trick to "sign unpack"?
[21:37] <ubitux> (basically unpack signed byte to signed words)
[21:45] <ubitux> ah, maybe i should simply use a cmpgt as second unpack operand
[21:45] <BBB> pmovsxbw?
[21:46] <BBB> that's sse4 though
[21:46] <ubitux> oh
[21:46] <ubitux> mmh
[21:46] <ubitux> i think i'm sse right now
[21:46] <BBB> ssse3
[21:47] <ubitux> ah?
[21:47] <Daemon404> not like anything precludes you from having a templated ver for both
[21:47] <BBB> you can emulate it using pcmpgtw zero, yourthing and then use that to punpckbw as you said
[21:47] <BBB> yeah I think in vp8 we did the templatization and had a ssse3 and a sse4 version or so
[21:48] <Daemon404> i know sse2 is pretty much 100% available
[21:48] <ubitux> i was thinking punpck*bw(x, pcmpgtb(x, 128))
[21:48] <Daemon404> no idea about ssse3
[21:48] <ubitux> BBB: what ssse3 am i using?
[21:48] <BBB> dunno
[21:48] <ubitux> i don't have any pshuf*
[21:48] <BBB> didn't look at your code, maybe it's sse2
[21:48] <ubitux> i think it's even sse
[21:48] <ubitux> but i might be wrong
[21:49] <BBB> sse is foat only
[21:49] <BBB> float
[21:49] <BBB> assuming you use punpcklbw or so, you're sse2
[21:49] <ubitux> ah, then i'm wrong :)
[21:49] <ubitux> ok
[21:49] <BBB> anyway, punpcklbw(data, pcmpgtb(zero, data)) should work
[21:49] <BBB> not sure why you'd want 128 instead of zero?
[21:50] <ubitux> isn't the comparison unsigned?
[21:53] <iive> in this case adding 128 unpacking and substracting 128 may be faster.
[21:53] <iive> and you'd use same constant twice.
[21:53] <iive> well, not really.
[21:54] <ubitux> (actually pcmpgtb(x, 127))
[21:54] <ubitux> and ~ it
[21:54] <ubitux> ah, no, without the ~
[21:59] <BBB> ubitux: no pcmp is signed
[22:00] <ubitux> O_O
[22:00] <ubitux> how the hell my masks are working..
[22:03] <BBB> see e.g. http://software.intel.com/sites/products/documentation/doclib/iss/2013/compiler/cpp-lin/GUID-FB94C72B-DC85-43C5-8380-4E7F8628F1D3.htm
[22:03] <BBB> pcmpgtb: "Compares the 16 signed 8-bit integers in a and the 16 signed 8-bit integers in b for greater than."
[22:12] <ubitux> ok
[22:29] <ubitux> one cool thing with lpf is that i don't have any reg swap
[22:29] <ubitux> it simplifies the debug so much... :D
[22:53] <cone-427> ffmpeg.git 03Michael Niedermayer 07master:e9a26dc5bf66: avformat/mux: fix "no tag found" check in validate_codec_tag()
[23:36] <ubitux> BBB: according to intel man, punpck* are in sse
[23:36] <ubitux> but maybe i'm reading it wrong
[23:36] <BBB> http://cs.fit.edu/~mmahoney/cse3101/nasmdocb.html
[23:36] <BBB> says willamette, sse2
[23:37] <nevcairiel> punpck are in mmx, but you need sse2 to use them on xmm regs
[23:37] <ubitux> ah
[23:37] <ubitux> ok
[00:00] --- Thu Jan  2 2014


More information about the Ffmpeg-devel-irc mailing list