DASH Media Packaging SDK
Main Page
Namespaces
Classes
Files
File List
All
Classes
Namespaces
Functions
Variables
Typedefs
Enumerator
media
formats
mp2t
ts_section.h
1
// Copyright 2014 The Chromium Authors. All rights reserved.
2
// Use of this source code is governed by a BSD-style license that can be
3
// found in the LICENSE file.
4
5
#ifndef MEDIA_FORMATS_MP2T_TS_SECTION_H_
6
#define MEDIA_FORMATS_MP2T_TS_SECTION_H_
7
8
namespace
edash_packager {
9
namespace
media {
10
namespace
mp2t {
11
12
class
TsSection
{
13
public
:
14
// From ISO/IEC 13818-1 or ITU H.222 spec: Table 2-3 - PID table.
15
enum
SpecialPid {
16
kPidPat = 0x0,
17
kPidCat = 0x1,
18
kPidTsdt = 0x2,
19
kPidNullPacket = 0x1fff,
20
kPidMax = 0x1fff,
21
};
22
23
virtual
~
TsSection
() {}
24
25
// Parse the data bytes of the TS packet.
26
// Return true if parsing is successful.
27
virtual
bool
Parse(
bool
payload_unit_start_indicator,
28
const
uint8_t* buf,
29
int
size) = 0;
30
31
// Process bytes that have not been processed yet (pending buffers in the
32
// pipe). Flush might thus results in frame emission, as an example.
33
virtual
void
Flush() = 0;
34
35
// Reset the state of the parser to its initial state.
36
virtual
void
Reset() = 0;
37
};
38
39
}
// namespace mp2t
40
}
// namespace media
41
}
// namespace edash_packager
42
43
#endif
edash_packager::media::mp2t::TsSection
Definition:
ts_section.h:12
Generated on Wed Nov 4 2015 20:02:34 for DASH Media Packaging SDK by
1.8.6