CDI SDK
SDK for transporting chunks of data reliably and with low latency using a polled mode network driver.
Loading...
Searching...
No Matches
riff.h
Go to the documentation of this file.
1
2// -------------------------------------------------------------------------------------------
3// Copyright Amazon.com Inc. or its affiliates. All Rights Reserved.
4// This file is part of the AWS CDI-SDK, licensed under the BSD 2-Clause "Simplified" License.
5// License details at: https://github.com/aws/aws-cdi-sdk/blob/mainline/LICENSE
6// -------------------------------------------------------------------------------------------
7
14#ifndef RIFF_H__
15#define RIFF_H__
16
17#include <stdint.h>
18
19#include "cdi_os_api.h"
20#include "test_control.h"
21
22//*********************************************************************************************************************
23//***************************************** START OF DEFINITIONS AND TYPES ********************************************
24//*********************************************************************************************************************
25
33
35typedef struct {
37 char four_cc[4];
40 uint32_t size;
42
44typedef struct {
48 char form_type[4];
49
51
52//*********************************************************************************************************************
53//******************************************* START OF PUBLIC FUNCTIONS ***********************************************
54//*********************************************************************************************************************
55
68bool GetNextRiffChunkSize(const StreamSettings* stream_settings_ptr,
69 CdiFileID read_file_handle, int* ret_chunk_size_ptr);
70
94bool StartRiffPayloadFile(const StreamSettings* stream_settings_ptr, CdiFileID read_file_handle);
95
105bool ReportRiffFileContents(const char* file_path_str, int max_line_length, int mode);
106
117bool RiffFileContainsAncillaryData(const char* file_path_str);
118
119#endif // RIFF_H__
120
This file contains the declarations for OS functions for creating/managing/freeing threads,...
FILE * CdiFileID
Define portable File ID type.
Definition cdi_os_api.h:195
bool ReportRiffFileContents(const char *file_path_str, int max_line_length, int mode)
Prints information about the contents of a RIFF file.
Definition riff.c:526
bool StartRiffPayloadFile(const StreamSettings *stream_settings_ptr, CdiFileID read_file_handle)
Reads the initial header information from the RIFF file and verifies that the file header indicates a...
Definition riff.c:458
RiffDumpMode
Symbols referring two different kinds of RIFF data to show.
Definition riff.h:27
@ kRiffDumpClosedCaptions
When a CID file, show closed caption data, if any.
Definition riff.h:31
@ kRiffDumpDid
When a CID file, show DID and SDID of ancillary payloads.
Definition riff.h:30
@ kRiffDumpRaw
Dump RIFF chunks.
Definition riff.h:29
@ kRiffDumpNone
Don't dump anything.
Definition riff.h:28
bool RiffFileContainsAncillaryData(const char *file_path_str)
Definition riff.c:552
bool GetNextRiffChunkSize(const StreamSettings *stream_settings_ptr, CdiFileID read_file_handle, int *ret_chunk_size_ptr)
Get the size of the next chunk from a RIFF file. The RIFF file specifies chunk size in the file....
Definition riff.c:475
Structure for the 8 byte chunk header that proceeds every payload.
Definition riff.h:35
uint32_t size
Definition riff.h:40
Structure for the 12 byte file header at the start of every RIFF file.
Definition riff.h:44
RiffChunkHeader chunk_header
Chunk header for the RIFF chunk of the RIFF file.
Definition riff.h:46
A structure that holds all the settings for a stream as set from the command line.
Definition test_args.h:121
The declarations in this header file correspond to the definitions in test_control....