live
liveMedia
OggFileServerMediaSubsession.hh
Go to the documentation of this file.
1
/**********
2
This library is free software; you can redistribute it and/or modify it under
3
the terms of the GNU Lesser General Public License as published by the
4
Free Software Foundation; either version 3 of the License, or (at your
5
option) any later version. (See <http://www.gnu.org/copyleft/lesser.html>.)
6
7
This library is distributed in the hope that it will be useful, but WITHOUT
8
ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS
9
FOR A PARTICULAR PURPOSE. See the GNU Lesser General Public License for
10
more details.
11
12
You should have received a copy of the GNU Lesser General Public License
13
along with this library; if not, write to the Free Software Foundation, Inc.,
14
51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA
15
**********/
16
// "liveMedia"
17
// Copyright (c) 1996-2024 Live Networks, Inc. All rights reserved.
18
// A 'ServerMediaSubsession' object that creates new, unicast, "RTPSink"s
19
// on demand, from a track within an Ogg file.
20
// C++ header
21
22
#ifndef _OGG_FILE_SERVER_MEDIA_SUBSESSION_HH
23
#define _OGG_FILE_SERVER_MEDIA_SUBSESSION_HH
24
25
#ifndef _FILE_SERVER_MEDIA_SUBSESSION_HH
26
#include "
FileServerMediaSubsession.hh
"
27
#endif
28
#ifndef _OGG_FILE_SERVER_DEMUX_HH
29
#include "
OggFileServerDemux.hh
"
30
#endif
31
32
class
OggFileServerMediaSubsession
:
public
FileServerMediaSubsession
{
33
public
:
34
static
OggFileServerMediaSubsession
*
35
createNew
(
OggFileServerDemux
& demux,
OggTrack
* track);
36
37
protected
:
38
OggFileServerMediaSubsession
(
OggFileServerDemux
& demux,
OggTrack
* track);
39
// called only by createNew(), or by subclass constructors
40
virtual
~OggFileServerMediaSubsession
();
41
42
protected
:
// redefined virtual functions
43
virtual
FramedSource
*
createNewStreamSource
(
unsigned
clientSessionId,
44
unsigned
& estBitrate);
45
virtual
RTPSink
*
createNewRTPSink
(
Groupsock
* rtpGroupsock,
unsigned
char
rtpPayloadTypeIfDynamic,
FramedSource
* inputSource);
46
47
protected
:
48
OggFileServerDemux
&
fOurDemux
;
49
OggTrack
*
fTrack
;
50
unsigned
fNumFiltersInFrontOfTrack
;
51
};
52
53
#endif
FileServerMediaSubsession.hh
OggFileServerDemux.hh
FileServerMediaSubsession
Definition:
FileServerMediaSubsession.hh:32
FramedSource
Definition:
FramedSource.hh:31
Groupsock
Definition:
Groupsock.hh:78
OggFileServerDemux
Definition:
OggFileServerDemux.hh:32
OggFileServerMediaSubsession
Definition:
OggFileServerMediaSubsession.hh:32
OggFileServerMediaSubsession::createNew
static OggFileServerMediaSubsession * createNew(OggFileServerDemux &demux, OggTrack *track)
OggFileServerMediaSubsession::OggFileServerMediaSubsession
OggFileServerMediaSubsession(OggFileServerDemux &demux, OggTrack *track)
OggFileServerMediaSubsession::~OggFileServerMediaSubsession
virtual ~OggFileServerMediaSubsession()
OggFileServerMediaSubsession::fNumFiltersInFrontOfTrack
unsigned fNumFiltersInFrontOfTrack
Definition:
OggFileServerMediaSubsession.hh:50
OggFileServerMediaSubsession::createNewStreamSource
virtual FramedSource * createNewStreamSource(unsigned clientSessionId, unsigned &estBitrate)
OggFileServerMediaSubsession::createNewRTPSink
virtual RTPSink * createNewRTPSink(Groupsock *rtpGroupsock, unsigned char rtpPayloadTypeIfDynamic, FramedSource *inputSource)
OggFileServerMediaSubsession::fOurDemux
OggFileServerDemux & fOurDemux
Definition:
OggFileServerMediaSubsession.hh:48
OggFileServerMediaSubsession::fTrack
OggTrack * fTrack
Definition:
OggFileServerMediaSubsession.hh:49
OggTrack
Definition:
OggFile.hh:92
RTPSink
Definition:
RTPSink.hh:36
Generated on Tue Jun 25 2024 22:52:35 for live by
1.9.5