Ocean
Loading...
Searching...
No Matches
DSMovie.h
Go to the documentation of this file.
1
/*
2
* Copyright (c) Meta Platforms, Inc. and affiliates.
3
*
4
* This source code is licensed under the MIT license found in the
5
* LICENSE file in the root directory of this source tree.
6
*/
7
8
#ifndef META_OCEAN_MEDIA_DS_MOVIE_H
9
#define META_OCEAN_MEDIA_DS_MOVIE_H
10
11
#include "
ocean/media/directshow/DirectShow.h
"
12
#include "
ocean/media/directshow/DSFiniteMedium.h
"
13
#include "
ocean/media/directshow/DSFrameMedium.h
"
14
#include "
ocean/media/directshow/DSSoundMedium.h
"
15
16
#include "
ocean/media/Movie.h
"
17
18
namespace
Ocean
19
{
20
21
namespace
Media
22
{
23
24
namespace
DirectShow
25
{
26
27
/**
28
* This class implements a DirectShow movie object.
29
* @ingroup mediads
30
*/
31
class
OCEAN_MEDIA_DS_EXPORT
DSMovie
:
32
public
virtual
DSFiniteMedium
,
33
public
virtual
DSFrameMedium
,
34
public
virtual
DSSoundMedium
,
35
public
virtual
Movie
36
{
37
friend
class
DSLibrary
;
38
39
public
:
40
41
/**
42
* Enables or disables the audio in this movie (has no effect if the movie does not have audio).
43
* @see Movie::setUseSound().
44
*/
45
bool
setUseSound
(
const
bool
state)
override
;
46
47
/**
48
* Returns whether the sound of this movie is enabled or disabled.
49
* @see Movie::useSound().
50
*/
51
bool
useSound
()
const override
;
52
53
/**
54
* Clones this medium and returns a new independent instance of this medium.
55
* @see Medium::clone().
56
*/
57
MediumRef
clone
()
const override
;
58
59
protected
:
60
61
/**
62
* Creates a new movie by a given url.
63
* @param url Url of the movie
64
*/
65
explicit
DSMovie
(
const
std::string& url);
66
67
/**
68
* Destructs a DSMovie object.
69
*/
70
~DSMovie
()
override
;
71
72
/**
73
* @see DSGraphObject::buildGraph().
74
*/
75
bool
buildGraph
()
override
;
76
77
/**
78
* @see DSGraphObject::releaseGraph().
79
*/
80
void
releaseGraph
()
override
;
81
82
private
:
83
84
/// Sound use state.
85
bool
movieUseSound_ =
true
;
86
};
87
88
}
89
90
}
91
92
}
93
94
#endif
// META_OCEAN_MEDIA_DS_MOVIE_H
DSFiniteMedium.h
DSFrameMedium.h
DSSoundMedium.h
DirectShow.h
Movie.h
Ocean::Media::DirectShow::DSFiniteMedium
This class is the base class for all direct show finite mediums.
Definition
DSFiniteMedium.h:34
Ocean::Media::DirectShow::DSFrameMedium
This is the base class for all DirectShow frame mediums.
Definition
DSFrameMedium.h:35
Ocean::Media::DirectShow::DSLibrary
This class implements the DirectShow library.
Definition
DSLibrary.h:30
Ocean::Media::DirectShow::DSMovie
This class implements a DirectShow movie object.
Definition
DSMovie.h:36
Ocean::Media::DirectShow::DSMovie::useSound
bool useSound() const override
Returns whether the sound of this movie is enabled or disabled.
Ocean::Media::DirectShow::DSMovie::clone
MediumRef clone() const override
Clones this medium and returns a new independent instance of this medium.
Ocean::Media::DirectShow::DSMovie::releaseGraph
void releaseGraph() override
Ocean::Media::DirectShow::DSMovie::~DSMovie
~DSMovie() override
Destructs a DSMovie object.
Ocean::Media::DirectShow::DSMovie::DSMovie
DSMovie(const std::string &url)
Creates a new movie by a given url.
Ocean::Media::DirectShow::DSMovie::setUseSound
bool setUseSound(const bool state) override
Enables or disables the audio in this movie (has no effect if the movie does not have audio).
Ocean::Media::DirectShow::DSMovie::buildGraph
bool buildGraph() override
Ocean::Media::DirectShow::DSSoundMedium
This class is the base class for all DirectShow sound mediums.
Definition
DSSoundMedium.h:35
Ocean::Media::Movie
This class is the base class for all movies.
Definition
Movie.h:40
Ocean::ObjectRef< Medium >
Ocean
The namespace covering the entire Ocean framework.
Definition
Accessor.h:15
impl
ocean
media
directshow
DSMovie.h
Generated on Fri Apr 18 2025 06:04:17 for Ocean by
1.9.8