DASH Media Packaging SDK
 All Classes Namespaces Functions Variables Typedefs Enumerations Enumerator
Public Types | Public Member Functions | Static Public Member Functions | Friends | List of all members
shaka::MpdBuilder Class Reference

This class generates DASH MPDs (Media Presentation Descriptions). More...

#include <mpd_builder.h>

Inheritance diagram for shaka::MpdBuilder:
shaka::MockMpdBuilder

Public Types

enum  MpdType { kStatic = 0, kDynamic }
 

Public Member Functions

 MpdBuilder (MpdType type, const MpdOptions &mpd_options)
 
void AddBaseUrl (const std::string &base_url)
 
virtual AdaptationSetAddAdaptationSet (const std::string &lang)
 
bool WriteMpdToFile (media::File *output_file)
 
virtual bool ToString (std::string *output)
 
MpdType type () const
 
void InjectClockForTesting (std::unique_ptr< base::Clock > clock)
 This is for testing.
 

Static Public Member Functions

static void MakePathsRelativeToMpd (const std::string &mpd_path, MediaInfo *media_info)
 

Friends

class DynamicMpdBuilderTest
 

Detailed Description

This class generates DASH MPDs (Media Presentation Descriptions).

Definition at line 57 of file mpd_builder.h.

Constructor & Destructor Documentation

shaka::MpdBuilder::MpdBuilder ( MpdType  type,
const MpdOptions mpd_options 
)

Constructs MpdBuilder.

Parameters
typeindicates whether the MPD should be for VOD or live content (kStatic for VOD profile, or kDynamic for live profile).

Definition at line 399 of file mpd_builder.cc.

Member Function Documentation

AdaptationSet * shaka::MpdBuilder::AddAdaptationSet ( const std::string &  lang)
virtual

Adds <AdaptationSet> to the MPD.

Parameters
langis the language of the AdaptationSet. This can be empty for videos, for example.
Returns
The new adaptation set, which is owned by this instance.

Definition at line 410 of file mpd_builder.cc.

void shaka::MpdBuilder::AddBaseUrl ( const std::string &  base_url)

Add <BaseURL> entry to the MPD.

Parameters
base_urlURL for <BaseURL> entry.

Definition at line 406 of file mpd_builder.cc.

void shaka::MpdBuilder::MakePathsRelativeToMpd ( const std::string &  mpd_path,
MediaInfo *  media_info 
)
static

Adjusts the fields of MediaInfo so that paths are relative to the specified MPD path.

Parameters
mpd_pathis the file path of the MPD file.
media_infois the MediaInfo object to be updated with relative paths.

Definition at line 645 of file mpd_builder.cc.

bool shaka::MpdBuilder::ToString ( std::string *  output)
virtual

Writes the MPD to the given string.

Parameters
[out]outputis an output string where the MPD gets written.
Returns
true on success, false otherwise.

Definition at line 429 of file mpd_builder.cc.

MpdType shaka::MpdBuilder::type ( ) const
inline
Returns
The mpd type.

Definition at line 92 of file mpd_builder.h.

bool shaka::MpdBuilder::WriteMpdToFile ( media::File output_file)

Write the MPD to specified file.

Parameters
[out]output_fileis MPD destination. output_file will be flushed but not closed.
Returns
true on success, false otherwise.

Definition at line 424 of file mpd_builder.cc.


The documentation for this class was generated from the following files: