public H264OutputStream(Nalu nalu, SequenceParameterSet sps,PictureParameterSet pps)
        {
            this.Nalu = nalu;
            this.sps = sps;
            this.pps = pps;

            if (pps.EntropyCodingModeFlag)
            {
                //TODO : CABAC
                // entropyOutputStream = new CABAC();
            }
            else
            {
                entropyOutputStream = new Cavlc(this);
            }
        }
        private int DecRefPicMarking(IEntropyOutputStream stream)
        {
            var len = 0;

            if (slice.Picture.IsIDR)
            {
                len += stream.WriteU1(noOutputOfPriorPicsFlag);
                len += stream.WriteU1(longTermReferenceFlag);
            }
            else
            {
                const bool adaptiveRefPicBufferingFlag = false;
                len += stream.WriteU1(adaptiveRefPicBufferingFlag);

                if (adaptiveRefPicBufferingFlag)
                {
                    // TODO Unreachable
                }
            }
            return len;
        }