[Ffmpeg-devel] [RFC] D10 IMX patch encoding
Michael Niedermayer
michaelni
Thu Jan 25 00:45:29 CET 2007
Hi
On Wed, Jan 24, 2007 at 05:42:50PM +0100, Baptiste Coudurier wrote:
> Hi
>
> This patch add features to be able to encode D10 streams (SMPTE 356M,
> also known as IMX)
>
> Current rc code cannot support non linear quant, therefore, I workaround
> mpeg2 quantizer to be able to put 1 as q_scale_type in bitstream,
> meaning that qmax > 4 is not supported (yes, that's stupid but
> q_scale_type 0 is forbidden in D10, and bitrate is either 30/40/50 Mb/s)
i dont like the qmax > 4 limit, and the qscale encoding has nothing to do
with the RC code, snow uses a logarithmic qscale and that works too
>
> Add support for one mb per slice.
setting the rtp packet size (or whatever the field in AVCodecContext was
called) to 1 should have that effect too with no other code changes
>
> Add IMX bitstream filter to mux D10 stream into mov, and workaround to
> set acceptable width/height by Final Cut, only PAL was tested. (coded
> height is 608, while display height must be 576)
[...]
> Index: libavcodec/mpeg12.c
> ===================================================================
> --- libavcodec/mpeg12.c (revision 7686)
> +++ libavcodec/mpeg12.c (working copy)
> @@ -31,6 +31,7 @@
> #include "mpegvideo.h"
>
> #include "mpeg12data.h"
> +#include "bytestream.h"
id prefer if you use the bitstream stuff for the 3 lines ...
[...]
> @@ -1560,13 +1561,14 @@
>
> /**
> * slice flags
> - * - encoding: unused
> + * - encoding: set by user.
> * - decoding: set by user.
> */
> int slice_flags;
> #define SLICE_FLAG_CODED_ORDER 0x0001 ///< draw_horiz_band() is called in coded order instead of display
> #define SLICE_FLAG_ALLOW_FIELD 0x0002 ///< allow draw_horiz_band() with field slices (MPEG2 field pics)
> #define SLICE_FLAG_ALLOW_PLANE 0x0004 ///< allow draw_horiz_band() with 1 component at a time (SVQ1)
> +#define SLICE_FLAG_ONE_PER_MB 0x0008 ///< use one slice per mb
unacceptable slice_flags have nothing to do with slices in mpeg terminology
they are about a callback to the user app after a row of MBs is finished
[...]
--
Michael GnuPG fingerprint: 9FF2128B147EF6730BADF133611EC787040B0FAB
I have often repented speaking, but never of holding my tongue.
-- Xenocrates
-------------- next part --------------
A non-text attachment was scrubbed...
Name: not available
Type: application/pgp-signature
Size: 189 bytes
Desc: not available
URL: <http://lists.mplayerhq.hu/pipermail/ffmpeg-devel/attachments/20070125/0bc49662/attachment.pgp>
More information about the ffmpeg-devel
mailing list