/*++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++*/ void ShutDown(IN RPC_BINDING_HANDLE hBinding) { RPC_STATUS nStatus; // Tell the server to stop listening for remote procedure calls _tprintf_s(TEXT("Shutting down the server\n")); nStatus = RpcMgmtStopServerListening(NULL); EXIT_IF_FAIL(nStatus, "RpcMgmtStopServerListening"); }
bool AudioReceiveThread::setup() { audioDecoder_.reset(new MediaDecoder()); audioDecoder_->setInterruptCallback(interruptCb, this); // custom_io so the SDP demuxer will not open any UDP connections args_.input = SDP_FILENAME; args_.format = "sdp"; args_.sdp_flags = "custom_io"; EXIT_IF_FAIL(not stream_.str().empty(), "No SDP loaded"); audioDecoder_->setIOContext(sdpContext_.get()); EXIT_IF_FAIL(not audioDecoder_->openInput(args_), "Could not open input \"%s\"", SDP_FILENAME); // Now replace our custom AVIOContext with one that will read packets audioDecoder_->setIOContext(demuxContext_.get()); EXIT_IF_FAIL(not audioDecoder_->setupFromAudioData(format_), "decoder IO startup failed"); ringbuffer_ = Manager::instance().getRingBufferPool().getRingBuffer(id_); return true; }