diff options
Diffstat (limited to 'media/libstagefright/wifi-display/rtp/RTPAssembler.h')
-rw-r--r-- | media/libstagefright/wifi-display/rtp/RTPAssembler.h | 92 |
1 files changed, 0 insertions, 92 deletions
diff --git a/media/libstagefright/wifi-display/rtp/RTPAssembler.h b/media/libstagefright/wifi-display/rtp/RTPAssembler.h deleted file mode 100644 index e456d32..0000000 --- a/media/libstagefright/wifi-display/rtp/RTPAssembler.h +++ /dev/null @@ -1,92 +0,0 @@ -/* - * Copyright 2013, The Android Open Source Project - * - * Licensed under the Apache License, Version 2.0 (the "License"); - * you may not use this file except in compliance with the License. - * You may obtain a copy of the License at - * - * http://www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, software - * distributed under the License is distributed on an "AS IS" BASIS, - * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - * See the License for the specific language governing permissions and - * limitations under the License. - */ - -#ifndef RTP_ASSEMBLER_H_ - -#define RTP_ASSEMBLER_H_ - -#include "RTPReceiver.h" - -namespace android { - -// A helper class to reassemble the payload of RTP packets into access -// units depending on the packetization scheme. -struct RTPReceiver::Assembler : public RefBase { - Assembler(const sp<AMessage> ¬ify); - - virtual void signalDiscontinuity() = 0; - virtual status_t processPacket(const sp<ABuffer> &packet) = 0; - -protected: - virtual ~Assembler() {} - - void postAccessUnit( - const sp<ABuffer> &accessUnit, bool followsDiscontinuity); - -private: - sp<AMessage> mNotify; - - DISALLOW_EVIL_CONSTRUCTORS(Assembler); -}; - -struct RTPReceiver::TSAssembler : public RTPReceiver::Assembler { - TSAssembler(const sp<AMessage> ¬ify); - - virtual void signalDiscontinuity(); - virtual status_t processPacket(const sp<ABuffer> &packet); - -private: - bool mSawDiscontinuity; - - DISALLOW_EVIL_CONSTRUCTORS(TSAssembler); -}; - -struct RTPReceiver::H264Assembler : public RTPReceiver::Assembler { - H264Assembler(const sp<AMessage> ¬ify); - - virtual void signalDiscontinuity(); - virtual status_t processPacket(const sp<ABuffer> &packet); - -private: - int32_t mState; - - uint8_t mIndicator; - uint8_t mNALType; - - sp<ABuffer> mAccumulator; - - List<sp<ABuffer> > mNALUnits; - int32_t mAccessUnitRTPTime; - - status_t internalProcessPacket(const sp<ABuffer> &packet); - - void addSingleNALUnit(const sp<ABuffer> &packet); - status_t addSingleTimeAggregationPacket(const sp<ABuffer> &packet); - - void flushAccessUnit(); - - void clearAccumulator(); - void appendToAccumulator(const void *data, size_t size); - - void reset(); - - DISALLOW_EVIL_CONSTRUCTORS(H264Assembler); -}; - -} // namespace android - -#endif // RTP_ASSEMBLER_H_ - |