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

burek burek021 at gmail.com
Tue Mar 11 02:05:02 CET 2014


[02:00] <lindenle> Hi all. I am trying to decode an mp4 and then re-encode it to basically the same format. I am getting invalid argument when i do an interleaved write. i looked in the source and it looks like it gets thrown when AVPacket->dts is NOPT unless the format does not need timestamps. How do i set the packets dts? Shouldn't it get set on the decode of the packet when i read it in?
[02:27] <michaelni> dts will often be set by the demuxer but not always, also if you use an encoder, then the dts from the demuxer have no meaning
[02:28] <lindenle> michaelni: ok so my demuxer is setting dts in my pkt that i decode. how do i set the dts for the video encoder?
[02:29] <lindenle> michaelni: also for context im basically doing decode -> Frame -> encode
[02:30] <lindenle> using the demuxing.c and muxing.c examples as my starting point 
[02:32] <michaelni> the AVPacket output from the encoder should have dts set, if the input to the encoder had timestamps set
[02:32] <lindenle> or i guess more appropriatly read -> pkt -> decode -> frame -> encode -> pkt -> write
[02:32] <lindenle> so i need to set pts in the frame i pass to the encoder?
[02:33] <lindenle> im seriously not grokking this by the way
[02:34] <lindenle> michaelni: I guess i am asking how i set the dts before i do an interleaved write correctly as currently there is not pts in the fram i got from the encoder.
[02:37] <lindenle> michaelni: ?
[02:38] <michaelni> yes you set the AVFrame pts for whats input in the encoder, should also be correctly done in muxing.c
[02:39] <lindenle> ok so i take my decoded frame and set the pts on it like in: http://ffmpeg.org/doxygen/2.1/doc_2examples_2muxing_8c-example.html? 
[02:39] <lindenle> see im reuing the frame that i decoded as my input frame to the decode (currently) id that crazy?
[02:41] <lindenle> should i be using two frames and copying data between them?
[02:41] <lindenle> michaelni: ^^
[02:42] <michaelni> there should be no need to copy frames unless you write into them
[02:42] <michaelni> also that isnt the latest muxing example but that shouldnt matter
[02:43] <michaelni> theres more recent example code in git master 
[02:43] <lindenle> ok
[02:54] <lindenle> michaelni: im still getting non monotonically increasing invalid dts in encode
[02:54] <lindenle> michaelni: i am setting pts in the frame i use to encode just as in the example
[02:54] <michaelni> make sure you input valid pts to the encoder and makre sure all rescalings are done correctly
[02:55] <michaelni> also keep in mind the timestamps in the input file might be faulty
[02:55] <michaelni> print things out and you will maybe spot where things go wrong
[02:55] <lindenle> here is the gist: https://gist.github.com/lindenle/72fab989fc053a89c6c0
[02:56] <lindenle> michaelni: does that look crazy?
[02:57] <lindenle> michaelni: I guess im not understanding why i need anything from the decoded packet at all if i just calculate it with the output strem time base and codec time base. Or do i need to do two calculations? one from encoded to decoded then from decoded to encoded?
[03:15] <cone-29> ffmpeg.git 03Timothy Gu 07master:53eb4e0799b7: Add fieldmatch test
[05:23] <lindenle_> So im only getting green in my output video...anyone have a thought as to what I could be doing wrong?
[05:33] <lindenle_> im merely trying to decode and encode mp4 h264 aac with the same settings.
[09:12] <ubitux> BBB: so you might actually be right, and the '!' might be about post increment
[09:13] <ubitux> though, i understand the official documentation as exactly the opposite
[09:16] <ubitux> official doc says this: http://i.imgur.com/hWfKDyv.png
[09:18] <ubitux> and slide 22 from neon_tutorial.pdf says the opposite
[10:09] <j-b> Morning
[10:12] <plepere> morning. :)
[12:03] <cone-589> ffmpeg.git 03Martin Storsjö 07master:8cafeb8bca5d: mxfdec: Validate parameters to strftime
[12:03] <cone-589> ffmpeg.git 03Michael Niedermayer 07master:4c63beeefe9f: Merge commit '8cafeb8bca5d079041739dbd72ccec0ead138eaf'
[12:23] <cone-589> ffmpeg.git 03Anton Khirnov 07master:e854b8f9f409: Work around broken floating point limits on some systems.
[12:23] <cone-589> ffmpeg.git 03Michael Niedermayer 07master:27b4d154cad0: Merge remote-tracking branch 'qatar/master'
[13:27] <cone-589> ffmpeg.git 03Timothy Gu 07release/1.2:0d819ed318de: configure: use pkg-config to detect libbluray
[13:28] <cone-589> ffmpeg.git 03Michael Niedermayer 07release/1.2:6ee47bd008ff: Merge remote-tracking branch 'TimothyGu/release/1.2' into release/1.2
[14:08] <cone-589> ffmpeg.git 03Michael Niedermayer 07release/1.0:08f53e1b14ff: update for 1.0.9
[15:00] <cone-589> ffmpeg.git 03Michael Niedermayer 07fatal: ambiguous argument 'refs/tags/n1.0.9': unknown revision or path not in the working tree.
[15:00] <cone-589> Use '--' to separate paths from revisions
[15:00] <cone-589> refs/tags/n1.0.9:HEAD: Merge remote-tracking branch 'qatar/master'
[15:02] <plepere> ok, I've got a working version of 8-tap filter. I've gotten under 16 seconds from a 26 seconds video without any optimizations
[15:06] <ubitux> :)
[15:10] <nevcairiel> you should target 13, then you can say its 100% faster
[15:15] <plepere> haha
[15:16] <plepere> well I still have the SAO, the iDCT, the weighting and all to do in ASM
[15:19] <plepere> ubitux : IIRC you work on AVX2. Does FFmpeg really support AVX2 ? I didn't see the --disable-avx2 in the configure. only up to avx
[15:20] <ubitux> configure:  --disable-avx            disable AVX optimizations
[15:20] <ubitux> configure:  --disable-avx2           disable AVX2 optimizations
[15:20] <plepere> I must have an old configure then
[15:20] <plepere> so there's nothing on not using AVX2 ?
[15:20] <ubitux> but i didn't do any avx2 yet, i'm still waiting for the hw... which i wonder why it hasn't arrived yet btw
[15:21] <ubitux> i don't think we have avx2 yet 
[15:21] <ubitux> but infra is available
[15:21] <plepere> I might get my hands on some haswell mid april. I'll see if I can get some interesting numbers
[15:23] <cone-589> ffmpeg.git 03Michael Niedermayer 07release/0.11:aa1fdf1a6457: update for 0.11.5
[15:53] <plepere> hey vp9 guys, is there a performance hit on using a C wrapper for filter_8tap_2d_fn   instead of having a full ASM function for the 8tap 2d ??
[15:53] <plepere> oops, second ? :/
[16:32] <cone-589> ffmpeg.git 03Michael Niedermayer 07fatal: ambiguous argument 'refs/tags/n0.11.5': unknown revision or path not in the working tree.
[16:32] <cone-589> Use '--' to separate paths from revisions
[16:32] <cone-589> refs/tags/n0.11.5:HEAD: Merge remote-tracking branch 'qatar/master'
[18:12] <cone-589> ffmpeg.git 03Luca Barbato 07release/0.10:8b24e17d0920: twinvq: Cope with gcc-4.8.2 miscompilation
[18:12] <cone-589> ffmpeg.git 03Luca Barbato 07release/0.10:a89acaa0b0db: get_bits: change the failure condition in init_get_bits
[18:12] <cone-589> ffmpeg.git 03Luca Barbato 07release/0.10:976a7b72a3f5: avi: directly resync on DV in AVI read failure
[18:12] <cone-589> ffmpeg.git 03Michael Niedermayer 07release/0.10:d04194db4571: vqavideo: check chunk sizes before reading chunks
[18:12] <cone-589> ffmpeg.git 03Michael Niedermayer 07release/0.10:ef6c90e102a3: dsputil/pngdsp: fix signed/unsigned type in end comparison
[18:12] <cone-589> ffmpeg.git 03Michael Niedermayer 07release/0.10:cb5d0ea0bec1: flashsv: Check diff_start diff_height values
[18:12] <cone-589> ffmpeg.git 03Michael Niedermayer 07release/0.10:b7a750f67f68: Merge commit 'cb5d0ea0bec119ecbe327bd7d3834987ab42ec1a' into release/0.10
[18:24] <cone-589> ffmpeg.git 03Justin Ruggles 07release/0.10:b68e5b119588: avutil: use align == 0 for default alignment in audio sample buffer functions
[18:24] <cone-589> ffmpeg.git 03Luca Barbato 07release/0.10:2c0bfce4cb2d: avi: DV in AVI must be considered single stream
[18:24] <cone-589> ffmpeg.git 03Luca Barbato 07release/0.10:e964207e6c17: cavs: Check for negative cbp
[18:24] <cone-589> ffmpeg.git 03Anton Khirnov 07release/0.10:23144c5f060d: h264_cavlc: check the size of the intra PCM data.
[18:24] <cone-589> ffmpeg.git 03Anton Khirnov 07release/0.10:6a56d16dc136: segafilm: fix leaks if reading the header fails
[18:24] <cone-589> ffmpeg.git 03Martin Storsjö 07release/0.10:2f4e066d66b3: mov: Free an earlier allocated array if allocating a new one
[18:24] <cone-589> ffmpeg.git 03Anton Khirnov 07release/0.10:979f77b0dc40: h264: check that an IDR NAL only contains I slices
[18:24] <cone-589> ffmpeg.git 03Michael Niedermayer 07release/0.10:0d82c3a0ca6c: Merge commit '979f77b0dc40571761999633a38d97be9a1670c8' into release/0.10
[18:36] <cone-589> ffmpeg.git 03Anton Khirnov 07release/0.10:716ee73c991c: h264: reset num_reorder_frames if it is invalid
[18:36] <cone-589> ffmpeg.git 03Michael Niedermayer 07release/0.10:30c8a5e4f6c0: vc1: Always reset numref when parsing a new frame header.
[18:36] <cone-589> ffmpeg.git 03Anton Khirnov 07release/0.10:e03b875c0b57: mathematics: remove asserts from av_rescale_rnd()
[18:36] <cone-589> ffmpeg.git 03Anton Khirnov 07release/0.10:b0db7a523df5: oggparseogm: check timing variables
[18:36] <cone-589> ffmpeg.git 03Reinhard Tartler 07release/0.10:5522c564d48e: Updated Changelog for 0.8.10
[18:36] <cone-589> ffmpeg.git 03Anton Khirnov 07release/0.10:8cade1352bde: lavf: make av_probe_input_buffer more robust
[18:36] <cone-589> ffmpeg.git 03Reinhard Tartler 07release/0.10:36017d49e2f7: Prepare for 0.8.11 Release
[18:37] <cone-589> ffmpeg.git 03Michael Niedermayer 07release/0.10:15efd9a7c0a6: Merge commit '36017d49e2f797f7371dc24848a2285ca63e39ab' into release/0.10
[18:47] <cone-589> ffmpeg.git 03Anton Khirnov 07release/0.10:cf676c159b81: rpza: limit the number of blocks to the total remaining blocks in the frame
[18:47] <cone-589> ffmpeg.git 03Vittorio Giovara 07release/0.10:a6003760bd07: h264: Lower bound check for slice offsets
[18:47] <cone-589> ffmpeg.git 03Luca Barbato 07release/0.10:4279e0e8d09a: h264: Fix a typo from the previous commit
[18:47] <cone-589> ffmpeg.git 03Justin Ruggles 07release/0.10:9786c24bb756: samplefmt: avoid integer overflow in av_samples_get_buffer_size()
[18:47] <cone-589> ffmpeg.git 03Anton Khirnov 07release/0.10:43aa7eb38efc: shorten: pad the internal bitstream buffer
[18:47] <cone-589> ffmpeg.git 03Anton Khirnov 07release/0.10:de0e442e9d67: truemotion1: check the header size
[18:47] <cone-589> ffmpeg.git 03Ronald S. Bultje 07release/0.10:2c1d84499bfe: lagarith: pad RGB buffer by 1 byte.
[18:47] <cone-589> ffmpeg.git 03Michael Niedermayer 07release/0.10:5640ea43d720: Merge commit '2c1d84499bfe06d75e9160b824eeffd9f5587337' into release/0.10
[18:52] <cone-589> ffmpeg.git 03Anton Khirnov 07release/0.10:2fb0a52e70fa: lagarith: avoid infinite loop in lag_rac_refill()
[18:52] <cone-589> ffmpeg.git 03Anton Khirnov 07release/0.10:3da4fdd5acdd: lagarith: reallocate rgb_planes when needed
[18:52] <cone-589> ffmpeg.git 03Janne Grunau 07release/0.10:fd2fc130b24c: arm: hpeldsp: prevent overreads in armv6 asm
[18:52] <cone-589> ffmpeg.git 03Janne Grunau 07release/0.10:0120e480bf0a: arm: hpeldsp: fix put_pixels8_y2_{,no_rnd_}armv6
[18:52] <cone-589> ffmpeg.git 03Michael Niedermayer 07release/0.10:ad4963a94464: Merge remote-tracking branch 'qatar/release/0.8' into release/0.10
[19:00] <cone-589> ffmpeg.git 03Michael Niedermayer 07release/0.10:98f44b24b56b: dnxhdenc: fix mb_rc size
[19:01] <cone-589> ffmpeg.git 03Michael Niedermayer 07release/0.10:5cab56dc9e40: avcodec/vmnc: Check  that rectangles are within the picture
[19:01] <cone-589> ffmpeg.git 03Michael Niedermayer 07release/0.10:4e47ae4e7162: avcodec/vc1: reset fcm/field_mode in non advanced header parsing
[19:01] <cone-589> ffmpeg.git 03Michael Niedermayer 07release/0.10:ca8c3ec11b8c: wmalosslessdec: make mclms arrays big enough for whats written into them.
[19:01] <cone-589> ffmpeg.git 03Michael Niedermayer 07release/0.10:ae51d9398353: avcodec/wmalosslessdec: fix mclms_coeffs* array size
[19:01] <cone-589> ffmpeg.git 03Michael Niedermayer 07release/0.10:68b14c044a4a: avformat/mpegtsenc: Check data array size in mpegts_write_pmt()
[19:01] <cone-589> ffmpeg.git 03Michael Niedermayer 07release/0.10:f157f18b3473: avcodec/msrle: use av_image_get_linesize() to calculate the linesize
[19:01] <cone-589> ffmpeg.git 03Michael Niedermayer 07release/0.10:43b1762ab869: avcodec/snow: split block clipping checks
[20:10] <cone-589> ffmpeg.git 03Michael Niedermayer 07release/0.10:6f9e6ac6aa3c: update for 0.10.12
[20:28] <cone-589> ffmpeg.git 03Michael Niedermayer 07fatal: ambiguous argument 'refs/tags/n0.10.12': unknown revision or path not in the working tree.
[20:28] <cone-589> Use '--' to separate paths from revisions
[20:28] <cone-589> refs/tags/n0.10.12:HEAD: Merge remote-tracking branch 'qatar/master'
[21:06] <lindenle> Requested output format 'mp4' is not a suitable output format <- does that mean i dont have the muxer enabled?
[21:12] <Mavrik> mhm
[21:19] <J_Darnley> lindenle: yes it does sound like that
[21:19] <lindenle> J_Darnley: yeah, i had to look up mhm... ha ha. I had disable-demuxers...duh
[21:21] <J_Darnley> :)
[22:12] <ubitux> BBB: the fpel put functions are just memcpys?
[22:51] <cone-589> ffmpeg.git 03Luca Barbato 07master:5eacbb532895: golomb: Add a get_se_golomb_long
[22:51] <cone-589> ffmpeg.git 03Michael Niedermayer 07master:d79d5aed6d43: Merge commit '5eacbb53289570834f9a1acb15fd406ea224eef6'
[23:00] <cone-589> ffmpeg.git 03Luca Barbato 07master:ee17be3fdd37: hevc: Use get_se_golomb_long
[23:00] <cone-589> ffmpeg.git 03Michael Niedermayer 07master:b73cf4eb1561: Merge commit 'ee17be3fdd37f63f4b77676820e387858908b0f4'
[23:20] <lindenle> hi all. using avcodec and it tells me that aac is experimental. do i need to change something in my configure flags?
[23:21] <lindenle> https://gist.github.com/lindenle/61febecff20d9777e7c1
[23:21] <lindenle> --enable-libfaac for instance?
[23:22] <JEEB> you can use the ffaac encoder (internal aac) with -strict experimental, or you can build ffmpeg with a third party AAC encoder, of which fdk-aac is currently the best
[23:23] <JEEB> do note that all of the usable level external AAC encoders for one reason or another create a nondistributable binary
[23:23] <lindenle> JEEB: im not using ffmpeg i wrote my own demuxing and muxing code. Can i somehow set th strict programatically?
[23:23] <JEEB> yes
[23:23] <lindenle> JEEB: How?
[23:23] <JEEB> you'll have to read the doxy/headers for that :P
[23:23] <lindenle> avcodec i assume
[23:24] <JEEB> yup
[23:24] <JEEB> strict_std_compliance should have a macro that sets it to experimental
[23:24] <lindenle> ok thanks
[23:24] <JEEB> -2 is the internal value, but there should be a named macro which is better than a magic number :P
[23:25] <lindenle> yeah i see the macro but not the function
[23:25] <JEEB> in the context you set the variable I would think
[23:25] <lindenle> ah ok
[23:26] <lindenle> yep i see it!thanks!
[23:27] <lindenle> https://gist.github.com/lindenle/4957abd9671c485626b7
[23:27] <lindenle> so something like that JEEB ?
[23:28] <JEEB> something like that I would guess, yes
[23:28] <lindenle> :P
[23:36] <cone-589> ffmpeg.git 03Luca Barbato 07master:4a8562394b68: configure: Use the right pkgconf file for openjpeg
[23:36] <cone-589> ffmpeg.git 03Michael Niedermayer 07master:182c674f6813: Merge commit '4a8562394b685e83ae4a38a93eef43625755a231'
[23:44] <lindenle> How do I know what sample formats are available for the internal aac codec?
[23:48] <JEEB> one way would be to look at the definition of the encoder in the encoder's c file
[23:48] <JEEB> I have no idea if you can enumerate the stuff that an encoder supports
[23:48] <JEEB> you probably can
[23:54] <cone-589> ffmpeg.git 03Tim Walker 07master:34bbc81de8a4: lavf: simplify ff_hevc_annexb2mp4_buf
[23:54] <cone-589> ffmpeg.git 03Michael Niedermayer 07master:7f9005547060: Merge commit '34bbc81de8a49fbddb92b76dc733f40890480b2b'
[00:00] --- Tue Mar 11 2014


More information about the Ffmpeg-devel-irc mailing list