40 using Service::Service;
42 int setAVTransportURI(
const std::string& uri,
const std::string& metadata,
45 return setURI(uri, metadata, instanceID,
false);
48 int setNextAVTransportURI(
const std::string& uri,
const std::string& md,
51 return setURI(uri, md, instanceID,
true);
55 enum PlayMode {PM_Unknown, PM_Normal, PM_Shuffle, PM_RepeatOne,
56 PM_RepeatAll, PM_Random, PM_Direct1
58 int setPlayMode(PlayMode pm,
int instanceID=0);
67 std::string pbstoragemed;
68 std::string rcstoragemed;
71 int getMediaInfo(
MediaInfo& info,
int instanceID=0);
73 enum TransportState {Unknown, Stopped, Playing, Transitioning,
74 PausedPlayback, PausedRecording, Recording,
77 enum TransportStatus {TPS_Unknown, TPS_Ok, TPS_Error};
79 TransportState tpstate;
80 TransportStatus tpstatus;
95 int getPositionInfo(
PositionInfo& info,
int instanceID=0,
int timeoutms=-1);
98 std::string playmedia;
100 std::string recqualitymodes;
106 std::string recqualitymode;
110 int stop(
int instanceID=0);
111 int pause(
int instanceID=0);
112 int play(
int speed = 1,
int instanceID = 0);
114 enum SeekMode {SEEK_TRACK_NR, SEEK_ABS_TIME, SEEK_REL_TIME, SEEK_ABS_COUNT,
115 SEEK_REL_COUNT, SEEK_CHANNEL_FREQ, SEEK_TAPE_INDEX,
119 int seek(SeekMode mode,
int target,
int instanceID=0);
123 int next(
int instanceID=0);
124 int previous(
int instanceID=0);
126 enum TransportActions {TPA_Next = 1, TPA_Pause = 2, TPA_Play = 4,
127 TPA_Previous = 8, TPA_Seek = 16, TPA_Stop = 32
129 int getCurrentTransportActions(
int& actions,
int instanceID=0);
132 static bool isAVTService(
const std::string& st);
133 bool serviceTypeMatch(
const std::string& tp)
override;
137 static const std::string SType;
139 int setURI(
const std::string& uri,
const std::string& metadata,
140 int instanceID,
bool next);
141 int CTAStringToBits(
const std::string& actions,
int& iacts);
144 void UPNPP_LOCAL evtCallback(
145 const std::unordered_map<std::string, std::string>&);
146 void UPNPP_LOCAL registerCallback()
override;