
/*---------------------------------------------------------------------------*/
/* ios_video_io.h                                                            */
/* copyright (c) innovaphone 2015                                            */
/*                                                                           */
/*---------------------------------------------------------------------------*/

class IosVideoIoChannel : public VideoIoChannel {
    char * videoFrame;
    int frameLength;
    bool dropFrame;
    bool sequenceGap;
    bool rtpMarker;
    dword lTimestamp;
    int maxRtpVideoData;

    int frameLengthFua;
    int fragSb;
    dword fuaTimestamp;

    byte firCommandSequence;

    int rxVp8PicId;

/*
    void Transcode(const byte * buf, int len, dword timestamp, dword duration, short sequenceNumberDiff);
    void RecvH264(const byte * buf, int len, dword timestamp, short sequenceNumberDiff, bool marker);
    void RecvVp8(const byte * buf, int len, dword timestamp, short sequenceNumberDiff, bool marker);
    void Recv(const byte * buf, int len, dword timestamp, short sequenceNumberDiff, bool marker);
    void SendFullIntraRequest(void);
*/
public:
    int transcoder_id;

    IosVideoIoChannel(class IIoMux * const iomux, class IVideoIo * mediaIo, class UMediaIoChannel * const user, class IInstanceLog * log);
    virtual ~IosVideoIoChannel();
/*
    void Initialize(void * context, const char * channelId, enum VideoCoder coder, ConnectionType connType) override;
    void TryClose(void) override;
    virtual void VideoSample(const void * buf, int len, dword timestamp, dword duration) override;
    virtual void ForwardRtp(const void * buf, int len, dword timestamp, dword duration, short sequenceNumberDiff, bool marker, enum VideoCoder videoIoChannelCoder) override;
*/
};

/*---------------------------------------------------------------------------*/
