2
* section and descriptor parser
4
* Copyright (C) 2005 Kenneth Aafloy (kenneth@linuxtv.org)
5
* Copyright (C) 2005 Andrew de Quincey (adq_dvb@lidskialf.net)
7
* This library is free software; you can redistribute it and/or
8
* modify it under the terms of the GNU Lesser General Public
9
* License as published by the Free Software Foundation; either
10
* version 2.1 of the License, or (at your option) any later version.
12
* This library is distributed in the hope that it will be useful,
13
* but WITHOUT ANY WARRANTY; without even the implied warranty of
14
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
15
* Lesser General Public License for more details.
17
* You should have received a copy of the GNU Lesser General Public
18
* License along with this library; if not, write to the Free Software
19
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA
22
#ifndef _UCSI_MPEG_VIDEO_WINDOW_DESCRIPTOR
23
#define _UCSI_MPEG_VIDEO_WINDOW_DESCRIPTOR 1
30
#include <libucsi/descriptor.h>
33
* mpeg_video_window_descriptor structure.
35
struct mpeg_video_window_descriptor {
38
EBIT3(uint32_t horizontal_offset : 14; ,
39
uint32_t vertical_offset : 14; ,
40
uint32_t window_priority : 4; );
44
* Process an mpeg_video_window_descriptor.
46
* @param d Pointer to the generic descriptor structure.
47
* @return Pointer to the mpeg_video_window_descriptor structure, or NULL on error.
49
static inline struct mpeg_video_window_descriptor*
50
mpeg_video_window_descriptor_codec(struct descriptor* d)
52
if (d->len != (sizeof(struct mpeg_video_window_descriptor) - 2))
55
bswap32((uint8_t*) d + 2);
57
return (struct mpeg_video_window_descriptor*) d;