Shaka Packager SDK
Loading...
Searching...
No Matches
muxer_flags.cc
1// Copyright 2014 Google LLC. All rights reserved.
2//
3// Use of this source code is governed by a BSD-style
4// license that can be found in the LICENSE file or at
5// https://developers.google.com/open-source/licenses/bsd
6//
7// Defines Muxer flags.
8
9#include <packager/app/muxer_flags.h>
10
11#include <packager/chunking_params.h>
12
13ABSL_FLAG(double,
14 clear_lead,
15 5.0f,
16 "Clear lead in seconds if encryption is enabled. Note that we do "
17 "not support partial segment encryption, so it is rounded up to "
18 "full segments. Set it to a value smaller than segment_duration "
19 "so only the first segment is in clear since the first segment "
20 "could be smaller than segment_duration if there is small "
21 "non-zero starting timestamp.");
22ABSL_FLAG(double,
23 segment_duration,
24 6.0f,
25 "Segment duration in seconds. If single_segment is specified, "
26 "this parameter sets the duration of a subsegment; otherwise, "
27 "this parameter sets the duration of a segment. Actual segment "
28 "durations may not be exactly as requested.");
29ABSL_FLAG(bool,
30 segment_sap_aligned,
31 true,
32 "Force segments to begin with stream access points.");
33ABSL_FLAG(double,
34 fragment_duration,
35 0,
36 "Fragment duration in seconds. Should not be larger than "
37 "the segment duration. Actual fragment durations may not be "
38 "exactly as requested.");
39ABSL_FLAG(bool,
40 fragment_sap_aligned,
41 true,
42 "Force fragments to begin with stream access points. This flag "
43 "implies segment_sap_aligned.");
44ABSL_FLAG(bool,
45 generate_sidx_in_media_segments,
46 true,
47 "Indicates whether to generate 'sidx' box in media segments. Note "
48 "that it is required for DASH on-demand profile (not using segment "
49 "template).");
50ABSL_FLAG(std::string,
51 temp_dir,
52 "",
53 "Specify a directory in which to store temporary (intermediate) "
54 " files. Used only if single_segment=true.");
55ABSL_FLAG(bool,
56 mp4_include_pssh_in_stream,
57 true,
58 "MP4 only: include pssh in the encrypted stream.");
59ABSL_FLAG(int32_t,
60 transport_stream_timestamp_offset_ms,
61 100,
62 "A positive value, in milliseconds, by which output timestamps "
63 "are offset to compensate for possible negative timestamps in the "
64 "input. For example, timestamps from ISO-BMFF after adjusted by "
65 "EditList could be negative. In transport streams, timestamps are "
66 "not allowed to be less than zero.");
67ABSL_FLAG(
68 int32_t,
69 default_text_zero_bias_ms,
70 0,
71 "A positive value, in milliseconds. It is the threshold used to "
72 "determine if we should assume that the text stream actually starts "
73 "at time zero. If the first sample comes before default_text_zero_bias_ms, "
74 "then the start will be padded as the stream is assumed to start at zero. "
75 "If the first sample comes after default_text_zero_bias_ms then the start "
76 "of the stream will not be padded as we cannot assume the start time of "
77 "the stream.");
78
79ABSL_FLAG(
80 int64_t,
81 ts_ttx_heartbeat_shift,
82 shaka::kDefaultTtxHeartbeatShift,
83 "For DVB-Teletext in MPEG-2 TS: timing offset (in 90kHz ticks) between "
84 "video PTS timestamps and text segment generation. This compensates for "
85 "the pipeline delay where video is processed ahead of teletext. "
86 "Default is 90000 (1 second). If the value is too large, heartbeat-"
87 "triggered text segments are generated later than video segments. "
88 "If too small, some text cues may be absent in the output.");
89
90ABSL_FLAG(int64_t,
91 start_segment_number,
92 1,
93 "Indicates the startNumber in DASH SegmentTemplate and HLS "
94 "segment name.");