On Mon, Sep 30, 2013 at 03:14:40PM +0200, Vittorio Giovara wrote:
> --- a/libavcodec/h264.c
> +++ b/libavcodec/h264.c
> @@ -2011,6 +2012,59 @@ static void decode_postinit(H264Context *h, int
> setup_finished)
>
> + if (h->sei_frame_packing_present) {
> + AVFrameSideData *side_data;
> + AVStereo3D stereo;
> +
> + switch (h->frame_packing_arrangement_type) {
> + case SEI_FPA_CHECKERBOARD:
> + stereo.type = AV_STEREO3D_CHECKERS;
> + break;
Indent case at the same level as switch.
> --- a/libavcodec/h264.h
> +++ b/libavcodec/h264.h
> @@ -142,6 +143,19 @@ typedef enum {
> /**
> + * type in frame packing arrangement SEI message
> + */
> +typedef enum {
> + SEI_FPA_CHECKERBOARD = 0, ///< 0: quincux
> + SEI_FPA_LINE_INTERLEAVED = 1, ///< 1: line interleaving
> + SEI_FPA_COLUMN_INTERLEAVED = 2, ///< 2: column interleaving
> + SEI_FPA_SIDE_BY_SIDE = 3, ///< 3: side by side
> + SEI_FPA_TOP_AND_BOTTOM = 4, ///< 4: top and bottom
> + SEI_FPA_FRAME_ALTERNATE = 5, ///< 5: frame alternate
> + SEI_FPA_2D = 6, ///< 6: not stereo
> +} SEI_FramePackingType;
I don't think we typedef enums.
> --- a/libavcodec/h264_sei.c
> +++ b/libavcodec/h264_sei.c
> @@ -175,6 +176,40 @@ static int decode_buffering_period(H264Context *h)
>
> +static int decode_frame_packing_arrangement(H264Context *h)
> +{
> + int cancel;
> + int quincunx = 0;
> + int content = -1;
> + int type = -1;
> +
> + // the following skips spatial_flipping_flag frame0_flipped_flag
> + // field_views_flag current_frame_is_frame0_flag
> + // frame0_self_contained_flag frame1_self_contained_flag
Is this supposed to be a list? Where did the commas go?
> + h->sei_frame_packing_present = (cancel == 0);
> + h->frame_packing_arrangement_type = type;
> + h->content_interpretation_type = content;
> + h->quincunx_subsampling = quincunx;
vertical align
Diego
_______________________________________________
libav-devel mailing list
[email protected]
https://lists.libav.org/mailman/listinfo/libav-devel