Shaka Packager SDK
hls_flags.cc
1 // Copyright 2016 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 #include <packager/app/hls_flags.h>
8 
9 #include <optional>
10 
11 ABSL_FLAG(std::string,
12  hls_master_playlist_output,
13  "",
14  "Output path for the master playlist for HLS. This flag must be"
15  "used to output HLS.");
16 ABSL_FLAG(std::string,
17  hls_base_url,
18  "",
19  "The base URL for the Media Playlists and media files listed in "
20  "the playlists. This is the prefix for the files.");
21 ABSL_FLAG(std::string,
22  hls_key_uri,
23  "",
24  "The key uri for 'identity' and 'com.apple.streamingkeydelivery' "
25  "key formats. Ignored if the playlist is not encrypted or not "
26  "using the above key formats.");
27 ABSL_FLAG(std::string,
28  hls_playlist_type,
29  "VOD",
30  "VOD, EVENT, or LIVE. This defines the EXT-X-PLAYLIST-TYPE in "
31  "the HLS specification. For hls_playlist_type of LIVE, "
32  "EXT-X-PLAYLIST-TYPE tag is omitted.");
33 ABSL_FLAG(int32_t,
34  hls_media_sequence_number,
35  0,
36  "Number. This HLS-only parameter defines the initial "
37  "EXT-X-MEDIA-SEQUENCE value, which allows continuous media "
38  "sequence across packager restarts. See #691 for more "
39  "information about the reasoning of this and its use cases.");
40 ABSL_FLAG(std::optional<double>,
41  hls_start_time_offset,
42  std::nullopt,
43  "Floating-point number. Sets EXT-X-START on the media playlists "
44  "to specify the preferred point at wich the player should start "
45  "playing. A positive number indicates a time offset from the "
46  "beginning of the playlist. A negative number indicates a "
47  "negative time offset from the end of the last media segment "
48  "in the playlist.");
49 ABSL_FLAG(bool,
50  create_session_keys,
51  false,
52  "Playback of Offline HLS assets shall use EXT-X-SESSION-KEY "
53  "to declare all eligible content keys in the master playlist.");