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;
33 struct ChunkingOptions;
34 struct EncryptionOptions;
43 std::unique_ptr<KeySource> CreateEncryptionKeySource(
44 FourCC protection_scheme,
45 const EncryptionParams& encryption_params);
51 std::unique_ptr<KeySource> CreateDecryptionKeySource(
52 const DecryptionParams& decryption_params);
55 ChunkingOptions GetChunkingOptions(
const ChunkingParams& chunking_params);
58 EncryptionOptions GetEncryptionOptions(
59 const EncryptionParams& encryption_params);
62 MuxerOptions GetMuxerOptions(
const std::string& temp_dir,
63 const Mp4OutputParams& mp4_params);
66 MpdOptions GetMpdOptions(
bool on_demand_profile,
const MpdParams& mpd_params);
72 Status ConnectHandlers(std::vector<std::shared_ptr<MediaHandler>>& handlers);
77 #endif // PACKAGER_APP_PACKAGER_UTIL_H_