9 #ifndef PACKAGER_APP_PACKAGER_UTIL_H_
10 #define PACKAGER_APP_PACKAGER_UTIL_H_
14 #include "packager/base/optional.h"
15 #include "packager/media/base/fourccs.h"
16 #include "packager/packager.h"
21 struct ChunkingParams;
22 struct DecryptionParams;
23 struct EncryptionParams;
24 struct Mp4OutputParams;
32 struct ChunkingOptions;
33 struct EncryptionOptions;
42 std::unique_ptr<KeySource> CreateEncryptionKeySource(
43 FourCC protection_scheme,
44 const EncryptionParams& encryption_params);
50 std::unique_ptr<KeySource> CreateDecryptionKeySource(
51 const DecryptionParams& decryption_params);
54 ChunkingOptions GetChunkingOptions(
const ChunkingParams& chunking_params);
57 MuxerOptions GetMuxerOptions(
const std::string& temp_dir,
58 const Mp4OutputParams& mp4_params);
61 MpdOptions GetMpdOptions(
bool on_demand_profile,
const MpdParams& mpd_params);
67 Status ConnectHandlers(std::vector<std::shared_ptr<MediaHandler>>& handlers);
72 #endif // PACKAGER_APP_PACKAGER_UTIL_H_