DriveWorks SDK Reference
4.0.0 Release
For Test and Development only
Demuxer.h
Go to the documentation of this file.
1
// This code contains NVIDIA Confidential Information and is disclosed
3
// under the Mutual Non-Disclosure Agreement.
4
//
5
// Notice
6
// ALL NVIDIA DESIGN SPECIFICATIONS AND CODE ("MATERIALS") ARE PROVIDED "AS IS" NVIDIA MAKES
7
// NO REPRESENTATIONS, WARRANTIES, EXPRESSED, IMPLIED, STATUTORY, OR OTHERWISE WITH RESPECT TO
8
// THE MATERIALS, AND EXPRESSLY DISCLAIMS ANY IMPLIED WARRANTIES OF NONINFRINGEMENT,
9
// MERCHANTABILITY, OR FITNESS FOR A PARTICULAR PURPOSE.
10
//
11
// NVIDIA Corporation assumes no responsibility for the consequences of use of such
12
// information or for any infringement of patents or other rights of third parties that may
13
// result from its use. No license is granted by implication or otherwise under any patent
14
// or patent rights of NVIDIA Corporation. No third party distribution is allowed unless
15
// expressly authorized by NVIDIA. Details are subject to change without notice.
16
// This code supersedes and replaces all information previously supplied.
17
// NVIDIA Corporation products are not authorized for use as critical
18
// components in life support devices or systems without express written approval of
19
// NVIDIA Corporation.
20
//
21
// Copyright (c) 2020-2021 NVIDIA Corporation. All rights reserved.
22
//
23
// NVIDIA Corporation and its licensors retain all intellectual property and proprietary
24
// rights in and to this software and related documentation and any modifications thereto.
25
// Any use, reproduction, disclosure or distribution of this software and related
26
// documentation without an express license agreement from NVIDIA Corporation is
27
// strictly prohibited.
28
//
30
46
#ifndef DW_SENSORS_CONTAINERS_DEMUXER_H_
47
#define DW_SENSORS_CONTAINERS_DEMUXER_H_
48
49
#include <
dw/core/base/Exports.h
>
50
#include <
dw/core/base/Types.h
>
51
#include <
dw/core/base/Status.h
>
52
#include <
dw/core/context/Context.h
>
53
54
#include <
dw/sensors/containers/Container.h
>
55
#include <
dw/sensors/CodecHeader.h
>
56
57
#ifdef __cplusplus
58
extern
"C"
{
59
#endif
60
62
typedef
struct
dwDemuxerFrameInfo
63
{
64
// The track id.
65
uint64_t
trackId
;
66
// The id of the logical bundling of different frames.
67
// This is useful for presenting data together that
68
// may have different timestamps.
69
uint64_t
bundleId
;
70
// The zero-based index representing the order of the frame in the container.
71
uint64_t
index
;
72
// The length of the frame payload.
73
uint64_t
size
;
74
// The offset of the frame payload in the stream.
75
uint64_t
offset
;
76
// Optional flags.
77
uint64_t
flags
;
78
// Generic timestamps that can be used
79
dwTime_t
timestamps
[
DW_CONTAINER_MAX_TIMESTAMPS
];
80
}
dwDemuxerFrameInfo
;
81
83
typedef
struct
dwDemuxerObject*
dwDemuxerHandle_t
;
84
85
// TODO(lukea) - move this to IOStream.hpp when the C interface moves to core.
87
typedef
struct
dwIOStreamObject*
dwIOStreamHandle_t
;
88
90
typedef
struct
dwDemuxerParams
91
{
93
dwIOStreamHandle_t
inputStream
;
94
}
dwDemuxerParams
;
95
96
#ifdef __cplusplus
97
}
98
#endif
99
100
#endif // DW_EXPERIMENTAL_SENSORS_CODEC_DEMUXER_H_
Types.h
NVIDIA DriveWorks API: Core Types
dwDemuxerFrameInfo::timestamps
dwTime_t timestamps[DW_CONTAINER_MAX_TIMESTAMPS]
Definition:
Demuxer.h:79
dwDemuxerFrameInfo::index
uint64_t index
Definition:
Demuxer.h:71
dwDemuxerFrameInfo
Holds demuxer frame info.
Definition:
Demuxer.h:62
dwDemuxerFrameInfo::bundleId
uint64_t bundleId
Definition:
Demuxer.h:69
CodecHeader.h
NVIDIA DriveWorks API: CodecHeader Method
dwDemuxerFrameInfo::flags
uint64_t flags
Definition:
Demuxer.h:77
dwDemuxerFrameInfo::trackId
uint64_t trackId
Definition:
Demuxer.h:65
dwDemuxerFrameInfo::offset
uint64_t offset
Definition:
Demuxer.h:75
dwTime_t
int64_t dwTime_t
Specifies a timestamp unit, in microseconds.
Definition:
Types.h:82
DW_CONTAINER_MAX_TIMESTAMPS
#define DW_CONTAINER_MAX_TIMESTAMPS
Definition:
Container.h:41
dwDemuxerParams
Holds demuxer params.
Definition:
Demuxer.h:90
dwDemuxerParams::inputStream
dwIOStreamHandle_t inputStream
Handle representing input stream.
Definition:
Demuxer.h:93
Context.h
NVIDIA DriveWorks API: Core Methods
Container.h
dwIOStreamHandle_t
struct dwIOStreamObject * dwIOStreamHandle_t
Handle to IO stream object.
Definition:
Demuxer.h:87
dwDemuxerHandle_t
struct dwDemuxerObject * dwDemuxerHandle_t
Demuxer handle.
Definition:
Demuxer.h:83
Status.h
NVIDIA DriveWorks API: Core Status Methods
Exports.h
NVIDIA DriveWorks API: Core Exports
dwDemuxerFrameInfo::size
uint64_t size
Definition:
Demuxer.h:73
Advance Information | Subject to Change | Prepared and Provided under NDA | Generated by NVIDIA | PR-08397-V5.0