Skip site navigation (1)Skip section navigation (2)

FreeBSD Manual Pages

  
 
  

home | help
fame_encode_frame(3)	       fame_encode_frame	  fame_encode_frame(3)

NAME
       fame_encode_frame - encode a single frame (DEPRECATED)

SYNOPSIS
       #include	<fame.h>

       fame_frame_statistics_t *fame_encode_frame(fame_context_t *context, fame_yuv_t *yuv, unsigned char *shape);

DESCRIPTION
       fame_encode_frame()  encodes  a single uncompressed frame from yuv to a
       binary stream in	 buffer, according to  initialization  parameters  and
       optionnaly  previously  encoded	frames.	Note that in the case of video
       sequences containing B frames, it is up to the caller to	present	frames
       in  the	encoder	 order.	 Since B frames	require	both previous and next
       reference frames, they must be presented	after both previous  and  next
       reference  frames  have been coded. For example,	a "IBBPBBP" coding se-
       quence must be presented	in "IPBBPBB" order. This presentation order is
       also  the  order	in which the frames should be stored in	a file or sent
       to a network.

       context is the context handle previously	returned by fame_open

       yuv is a	pointer	to the input frame. Currently, only YV12  planar  for-
       mat,  also  called YUV 4:2:0, is	supported. The YV12 planar format con-
       sists in	three plane, one for the Y (luminance) and two for the Cr  and
       Cb (chrominance)	components, the	chrominance planes being subsampled by
       2x2. These three	planes are mapped linearly in memory:

		  width
       yuv ->  +=========+
	       |	 |
	       |    Y	 | height
	       |	 |
	       +====+====+
	       | Cr | height / 2
	       +====+
	       | Cb | height / 2
	       +====+
	      width / 2

       The process of converting RGB pictures to YUV12 will not	 be  detailled
       here.

       shape  represents  the shape in case of video with arbitrary shape.  It
       consists	in a bitmap of width x height bytes, with 255 representing  an
       opaque  pixel  and 0 representing a transparent pixel. Values between 0
       and 255 are not supported yet.  For rectangular video,  this  parameter
       must be set to NULL.

RETURN VALUE
       fame_encode_frame returns a pointer to frame encoding statistics. These
       statistics include frame	number,	coding mode (I,P or B) for the	frame,
       expected	bits, actual bits used,	spatial	activity, and quantizer	scale.
       The number of bytes written to the buffer is actual_bits/8.

BUGS
       MMX arithmetic performs bad at quality >	95%.  Encoding of B frames  is
       not  yet	supported.  Only works when slices_per_frame has been set to 1
       in fame_init

DEPRECATED
       Usage of	this function is deprecated. Use fame_start_frame  ,  fame_en-
       code_slice , and	fame_end_frame instead.

SEE ALSO
       fame_open(3), fame_init(3), fame_close(3), fame_encode_slice(3)

libfame			       Febrary 19, 2002		  fame_encode_frame(3)

NAME | SYNOPSIS | DESCRIPTION | RETURN VALUE | BUGS | DEPRECATED | SEE ALSO

Want to link to this manual page? Use this URL:
<https://www.freebsd.org/cgi/man.cgi?query=fame_encode_frame&sektion=3&manpath=FreeBSD+12.2-RELEASE+and+Ports>

home | help