chromium/media/muxers/mp4_muxer_delegate_fragment.h

// Copyright 2024 The Chromium Authors
// Use of this source code is governed by a BSD-style license that can be
// found in the LICENSE file.

#ifndef MEDIA_MUXERS_MP4_MUXER_DELEGATE_FRAGMENT_H_
#define MEDIA_MUXERS_MP4_MUXER_DELEGATE_FRAGMENT_H_

#include <memory>
#include <optional>
#include <string>
#include <vector>

#include "base/time/time.h"
#include "media/formats/mp4/writable_box_definitions.h"

namespace media {

class Mp4MuxerContext;

template <typename T>
uint32_t BuildFlags(const std::vector<T>& build_flags) {}

// It uses the default track index for audio and video regardless of the
// actual track index. Correction of the track index will be done in the
// `Finalize` function that the caller MUST call before writing
// the fragment.
inline constexpr int kDefaultAudioIndex =;
inline constexpr int kDefaultVideoIndex =;

// This class is responsible for creating and managing the fragment that holds
// audio and video data. It is also responsible for creating the moof and mdat
// boxes that will be written to the file.

class Mp4MuxerDelegateFragment {};

}  // namespace media

#endif  // MEDIA_MUXERS_MP4_MUXER_DELEGATE_FRAGMENT_H_