MediaSuite.NET
Release Notes

Version 1.5.982

Bug fixes:

  • Elimination of initial delay of frames when decoding H.264
  • Fixed bug in RTPFrame creation in MPEG4Encoder
  • Fixed occasional lockup of FilePlayer when seeking

Version 1.5.981

  • 64-bit support

Version 1.5.980

  • Added Proxy support to RTSP (RTSPManager)
  • Added LastError to CamCapture to better troubleshoot device initiation
  • H.264 Encoder performance gain (intermediate buffer elimination)

Version 1.5.979

  • Fixed ConnectionReset Exception in RTPParticipant when remote endpoint is not valid
  • Support for simplified/traditional Chinese in CamCapture
  • AACDecoder PS Tool is now disabled by default

Version 1.5.978

New features:

  • H.264Encoder 4 new Rate Control modes (ConstantQuality, ConstantQualitySlice, ConstantBitrate, ConstantBitrateSlice)
  • RTSP Content-Location header is now in URL selection chain
  • Full support for RTP Header extensions
  • SpeechDecoder PacketDuration is now set to default value for each codec after calling SetCodec

Bug fixes:

  • RTPParticipant fixed bug where SendTo on symmetric RTP would cause an exception
  • RTSP rewritten RTSP describe reply parser in RTSPManager
  • Fixed bug in G.722 post filtering

Version 1.5.977-P3

Bug fixes:

  • WaveOutput
    • CurrentSampleOffset wasn't working on some XP systems
  • Speedup in instantiation time of each class in MediaSuite.

Version 1.5.977-P2

New features:

  • WaveOutput
    • Extended AudioDeviceInfo: Channels, Product and Manufacturer Id, WaveFormats, Support Functions
    • New Function: OpenDevice(AudioDeviceInfo), Pause, Resume
  • WaveInput
    • Extended AudioDeviceInfo: Channels, Product and Manufacturer Id, WaveFormats, Support Functions
    • New Function: OpenDevice(AudioDeviceInfo), WaitSamplesAvailable(int) to avoid busy waiting on samples
  • AACDecoder
    • Option to explicitly disable SBR (incl Quality/Performance Control) and PS tools (AACDecoder.Tools)

Version 1.5.977-P1

Bug fixes:

  • RTSP.URL.Clone not copying query parameter
  • RTSP.Describe fixed extra termination character when authentication is used
  • RTPParticipant passing port 0 endpoint for local RTP/RTCP will let the OS decide the port. But now this only goes for rtp port and rtcp port will be rtp.port + 1
  • Added support for multiple RTSP authorization headers in RTSPManager (Axis encrypted & unencrypted)
  • RTSPPlayer support for AAC mono, G.711a/u and G.726
  • Timers.StopWatch now delivers in double precision, microsecond resolution and is multiprocessor safe

Version 1.5.953

New features:

  • Support for audio channel masks in WaveOutput/WaveInput
  • Comprehensive rate control support MPEG4 encoder
  • Completely rewritten FLVWriter.NET

Bug Fixes:

  • Fixed bug in RTSPConnectionManager where Endpoint binding caused an exception
  • Fixed bug in RTCP-SR/RTCP-SDES 32-bit alignment
  • Added function AddChunk (SDESChunk) to RTCPSDES
  • Fixed bug with zero length headers in RTSP parser
  • Added RTSP GET_PARAMETER method
  • Added custom timestamp incrementor in AACFrameCreator and choice between single or multi AU per packet (SingleAU)

Version 1.5.952

  • AAC Frame Creator ADTS/ADIF/RAW autodetection
  • SpeechEncoder Speex NB/WB crash fix

Version 1.5.951

  • Version 1.5.950 runtime library fixup

Bug Fixes:

  • SpeechEncoder Timestamp generation corrected

Version 1.5.950

New features:

  • LipSync framework
  • JitterBuffer framework
  • AVIReader support for HTTP streams (beta)
  • MP4Reader support for HTTP streams (beta)
  • RTPPacket: UpdateAge, SetExpiry, IsExpired
  • RTSPManager ConnectionState, ConnectTimeout
  • AAC AU Frame Creator

Enhancements:

  • RTSP Player:
    • Ability to save stream to file
    • Arbitrary video clocking resolution

Bug fixes:

  • FLVReader ECMA Array Termination
  • FLVReader TrackStatus corrected for EOS
  • Improved ReceiveBuffer for RTPParticipant
  • RTCPSR NTP-Timestamp was a reference and interpreted as valuetype
  • RTCPCompoundPacket wrong length byte
  • MP4Writer invalid file structure for H.264 streams
  • MP4Writer fixed H.264 SPS/PPS index overrun
  • MP4Writer wrong codec tag for MPEG4.2
  • RTSP absolute/relative path determination for SETUP, introduces new function RTSP.URL.Combine
  • SDPMessage Parser correction of initial string trimming
  • RTSPManager Fixed uncatchable exception when connecting to an invalid remote endpoint
  • G.726 Reamplification and G.726->16-bit linear
  • RTCP-APP length byte fix

Version 1.5.930

New Features:

  • High Resolution Timing functions
    • StopWatch for timing intervals at milliseconds and microsecond resolution (10th of)
    • Waitable for waitable timers at millisecond and microsecond resolution (10th of)
    • Sleep - Replacement for System.Threading.Thread.Sleep with more accuracy using waitable timer per thread at millisecond resolution
  • RTSP
    • Embedded/Interleave TCP mode support
    • Headers: RTP-Info, Scale, Require, Timestamp, If-Modified-Since are no longer generic headers.
    • Full support for PAUSE and REDIRECT
    • Convenience classes for server-side development: RTSPSession, RTSPSessionManager and RTSPConnectionManager
  • MediaPackage
    • New DataLength property to have data inside a buffer of arbitrary length and to avoid resizing (performance gain)
    • 4 more constructors for more convenience
  • AAC Encoder
    • Support for Spectral Band Replication (SBR)
  • H.263 Decoder
    • New function: PredictFrameType  to predict the type of frame without decoding it.
  • MPEG4 Decoder
    • New function: PredictFrameType  to predict the type of frame without decoding it.
  • H.264 Encoder
    • Profile, Level, Speed/Quality tradeoff, Number of reference frames, Deblocking filter and B-Frame Count can now be set.
    • Overall performance improvement
  • WaveOutput
    • New properties: Volume, Pitch, PlaybackRate and Capabilities
    • New properties: CurrentTimeOffset and CurrentSampleOffset for more accurate timing
  • WaveInput
    • New property: BytesAvailable - To retrieve the number of bytes queued
  • SpeechDecoder
    • Support for AMR-NB Storage Format (RFC 3267)
    • Support for decoding single RTP packets or whole frames
  • SpeechEncoder
    • Support for AMR-NB Storage Format (RFC 3267)
    • New property: CompatibilityMode for accepting unsupported parameters without throwing exception
  • MP4Writer
    • New property: CompatibilityMode for accepting unsupported parameters without throwing exception
    • Full support for H.264 video streams
  • FLVWriter (Beta):
    • FLV Writer for Adobe Flash Video supports H.264 Baseline and AAC
    • It is currently only able  to write to file streams (arbitrary streams, including network streams will be supported in the next release)

Bug Fixes:

  • Removed debug message from RTPSession.GetNextFrame
  • Fixed PacketsSent counter in RTPSession
  • FLVReader is now IDisposable
  • Fixed support for sending RTCP through RTPParticipant
  • Common interface for audio encoders (MP3, AAC)
  • Fix in MP4Writer where Init would return false on success.
  • Fixed length bug in RTCPBye class
  • SDPAttribute equal sign not always serialized
  • Fixed problem with OpenMP conflicting with other OpenMP libraries

Misc:

  • Support for .divx in FilePlayer
  • Support for 3gp, 3g2 and Flash F4V files in FilePlayer
  • New design and feature support in RTSPPlayer
  • Obsoleted properties in WaveOutput: CurrentTimestamp,  CurrentDuration, LastSampleTickerDelta  -> See CurrentTimeOffset and CurrentSampleOffset for replacement
  • DTMFDetector performance improvement
  • RTSPPlayer support for AMR and AAC

Version 1.5.892

  • BUG - MP4Reader Track order was wrong for some MP4 files
  • BUG - AVIReader Track order was wrong for some AVI files
  • BUG - MP4Reader Support for AAC Version 0 and 1 headers
  • BUG - H263/2190 Bit start/end bit buffer was shifted incorrectly - Mode B start/end bits are now correctly carried.
  • BUG - RTPFrame Incorrect Age values - Age now reports the correct time in milliseconds since the creation of itself.
  • BUG - WaveInput Improved buffer overflow protection - On slower machines, chunks of the ring buffer aren't returned to the OS fast enough.
  • NEW - FLVReader Release
  • NEW - H263Decoder Improved Error Recovery (vlc->DC Coeffs) - When false VLCs are encountered, the decoder will continue at the next MB boundary.
  • NEW - H263Decoder improved Deblocking Filter
  • NEW - MPEG4Encoder Support for Data Partitioning (error resilience) and VOP, VOL Header Generation
  • NEW - H264Encoder Support for getting SPS and PPS NAL Units (GetDecoderConfigurationInfo)
  • NEW - Common interface to MP4/AVI/FLV Writer
  • NEW - Resampler.NET
  • NEW - Local/Remote RTP/RTCP Endpoint retrieval after initialization in RTP.NET
  • NEW - SDP static helper functions (SDPMessage.Create, SDPAttribute.CreateKeyValue)
  • NEW - RTSP static helper functions (ResponseHeader.Create, GetResponseCodeText)

 

Version 1.5.864

  • Additional features for CamCapture: SelectDevice, SelectMetrics, BasicMode
  • FLVReader.NET (New!)
  • Performance improvements for SpeechDecoder and SpeechEncoder
  • Additional features for RTSP.NET: AddGenericHeader, DeleteGenericHeader
  • Additional features for SpeechDecoder: MaximumInputLength
  • Additional features for H263Decoder.NET: Support for uneven resolutions, parameterless initialization
  • Bug Fix: MP3Decoder sample frequencies (16000, 22050, 24000) now working properly
  • Bug Fix: SpeechDecoder for possible buffer overrun.
  • Video Capture Device support in DrawTest Demo Application
  • FLV Support in FilePlayer Demo Application (including HTTP streaming)

 

Version 1.0.840

Features/Bug Fixes:

  • Additional features for MP3Encoder: Low Pass Filter, Advanced Noise Shaping, Stereo Modes (L/R, JT, M/S, Mono), MediaPackage encoding (timing information present)
  • Additional features for AACEncoder: Config Parameter String generation for i.e. SDP
  • New WaveInput property: TransferBufferCount
  • New StreamTools.Visuals function: Array24Rotate
  • Fixed compatibility issues (VideoLAN) with MPEG4Encoder
  • Bug Fix in WaveInput for buffer underruns with high sample frequencies
  • Bug Fix AVIWriter, MP4Writer (Filename & Init)
  • Bug Fix AACDecoder for possible buffer overflows
  • Additional Sample Code (available online) for AVIWriter and MP4Writer

 

Version 1.0.828

Features/Bug Fixes:

  • Support for Speex Codec (NB, WB)
  • Improved support for MPEG-4 Audio (AudioSource parameter specification)
  • Improved Waveout/Wavein performance (GetNextData, GetAllData)
  • Fixed PictureStartCodeCompression in RTP4629
  • Fixed bug in Downsampler for SpeechEncoder
  • Support for additional FourCCs in AVIReader

 

Version 1.0.806

Features/Bug Fixes:

  • Mode1 Packetizer for H.264
  • Significant RTSP parser performance improvement
  • H.264 Encoder I-FrameFrequency minor correction
  • H.264 larger output buffer adjustment (would produce null frames in certain conditions)
  • New H.264 / RFC 3984 Packetizer for Mode 1 (H264FrameCreator)
  • RTP.NET support for symmetric NAT
  • AAC Encoder Initialization and Encoding interface fixed

Version 1.0.804

Features/Bug Fixes:

  • Fixed char* conversion bug in Mp4Reader
  • Camera Capture Support
  • Added PayloadType to SpeechEncoder
  • Fixed constant timestamp value in H.263 Encoder
  • Fixed Bug in AMR Packetizer
  • RTSP Renamed URL to URI
  • Waveinput optimizations
  • WaveInput/WaveOutput device selection
  • Bug Fix in RTCP (SDESChunk PRIV)

Version 1.0.803

Features:

  • RTSP.NET Basic & Digest Authentication
  • RTSP.NET Automatic & Manual authentication (automatic through simply setting username & password)
  • Adjustable Receive Buffer in RTP.NET
  • DTMF Tone Generator
  • DTMF Tone Detector
  • Arbitrary Frequency Tone Generator
  • New & Improved Sample Code
  • H.263 fine tuning

Bug Fixes:

  • Fixed bug in AACEncoder initialization routine
  • Fixed bug in H264Encoder initialization routine
  • Fixed bug in RTSPManager DNS resolution when URI host is an IP address