Release Notes

User Story

  • [AVB-217] – Samples: C++: dec_avc_au should work with pre-processed files that contain one AVC / H.264 AU (Access Unit) per file.
  • [AVB-244] – Samples: C#: New dec_avc_au sample
  • [AVB-809] – Samples: C++: New dec_avc_push sample
  • [AVB-810] – Samples: C#: New dec_avc_push sample
  • [AVB-811] – Samples: C++: New dec_avc_pull sample
  • [AVB-812] – Samples: C#: New dec_avc_pull sample
  • [AVB-893] – Samples: C#: New dump_avc_au sample
  • [AVB-954] – Samples: Rename sample-resources directory to assets
  • [AVB-976] – Params: Rename Overlay::BackgroundX and BackgroundY to LocationX and LocationY
  • [AVB-983] – Samples: New demux_mp4_file sample
  • [AVB-1001] – Docs: Document the relation between NumBFrames and NumRefFrames H.264 parameters.
  • [AVB-1021] – Samples: New enc_mpg_dvd sample
  • [AVB-1031] – Samples: C++: New overlay_yuv_jpegs_push_pull sample
  • [AVB-1056] – Remove API deprecated before 2.0
  • [AVB-1061] – Samples: New capture_ds_video_audio sample

Bug

  • [AVB-1030] – Mac: Filters: Overlay: Contour between transparent and opaque area
  • [AVB-1037] – Mac: Segmentation fault while decoding H.264 stream in MPEG-2 PS container and reporting progress
  • [AVB-1053] – Docs: C++: MediaInfo documentation is garbage
  • [AVB-1054] – Docs: C#: Deprecated MediaInfo methods and properties are not visible.
  • [AVB-1055] – Docs: C#: Main page content is not rendered correctly.
  • [AVB-1059] – Codecs: H.264: Intel Quick Sync Video: Encoding fails with unsupported format/operation on Windows 7
  • [AVB-1060] – WMV and WMA decoders not flushed properly. Could lose the last decoded frame.
  • [AVB-1073] – Encoders: AAC: Cannot encode AAC with Push or Pull in .NET
  • [AVB-1081] – Transcoder freezes when an empty sample is pushed

Release Notes

User Story

  • [AVB-220] – Samples: C++: New dump_avc_au sample
  • [AVB-709] – MediaInfo: New MediaInfo block (breaking change)
  • [AVB-758] – Blocks: C++: Immutable block inputs and outputs (breaking change)
  • [AVB-798] – Samples: C++: New overlay_mp4_png_file sample
  • [AVB-799] – Samples: C#: New overlay_mp4_png_file sample
  • [AVB-915] – Samples: Rename decode_jpeg_push to dec_jpeg_push
  • [AVB-918] – Samples: Rename YuvEncoder to enc_yuv_preset_file
  • [AVB-923] – Block: Rename the Stop method to EndOfStream (breaking change)
  • [AVB-931] – Blocks: .NET: Immutable block inputs and outputs (breaking change)
  • [AVB-941] – Samples: C#: New overlay_yuv_jpegs_push_pull sample

Bug

  • [PC-248] – Codecs: MP3: Incorrect duration when ID3 data is garbage
  • [AVB-990] – Codecs: VP8: Tests fail occasionally on Linux
  • [AVB-1017] – Transcoder: Muxer error when splitting a M4V to 1MB clips
  • [AVB-1024] – Transcoder: Demuxer error when splitting M4V to 1MB clips
  • [AVB-1026] – Transcoder: Muxer error when splitting M4V by time

Release Notes

User Story

  • [AVB-220] – Samples: C++: New dump_avc_au sample
  • [AVB-617] – Blocks: New Block abstract class
  • [AVB-758] – API: C++: Immutable block inputs and outputs
  • [AVB-805] – Samples: C# and VB.NET: Isolate and hide command line parsing code
  • [AVB-813] – Samples: C++: Rename H264NaluDecoder to dec_avc_au
  • [AVB-837] – Samples: C++: New enc_avc_push sample
  • [AVB-838] – Samples: C#: New enc_avc_push sample
  • [AVB-861] – Blocks: Transcoder Block
  • [AVB-869] – Samples: C++: New dec_avc_file sample
  • [AVB-870] – Samples: C#: New dec_avc_file sample
  • [AVB-871] – Samples: C++: New enc_avc_file sample
  • [AVB-872] – Samples: C#: New enc_avc_file sample
  • [AVB-892] – Samples: C++: Isolate and hide command line parsing code
  • [AVB-913] – Samples: Rename mp4_mix_yuv_pcm to enc_mp4_avc_aac_push
  • [AVB-914] – Samples: Rename MP4Muxer to mux_mp4_avc_aac_file
  • [AVB-917] – Samples: Rename VideoSplitter to split_mp4_pull_push
  • [AVB-919] – Samples: Rename AVInfo to read_av_info_any_file
  • [AVB-921] – Samples: Rename MetaInfo to read_metadata_any_file
  • [AVB-924] – Filters: Overlay: Handle images with alpha channel
  • [AVB-927] – Samples: CaptureDS: Enable hardware acceleration
  • [AVB-936] – Samples: Exit with non-zero code on error
  • [AVB-941] – Samples: C#: New overlay_yuv_jpegs_push_pull sample
  • [AVB-943] – Docs: Clarify that device ID must be used for the HardwareDevice parameter.
  • [AVB-955] – API: Return frame size from frame dimensions and color format
  • [AVB-1013] – Windows: Upgrade C++ sample projects to Visual Studio 2015

Bug

  • [AVB-925] – Transcoder: AccessViolationException in Transcoder.Close after Transcoder.Run when Run returns false.
  • [AVB-926] – Transcoder: Overlay image not added during MP4 to MP4 conversion
  • [AVB-930] – Encoding 32-bit or 8-bit audio to output preset produces only noise
  • [AVB-952] – Samples: CaptureDS: Transcoder is not flushed when recording is stopped
  • [AVB-991] – Linux: Demo overlay is missing
  • [AVB-1014] – Demuxers: MP4: Cannot decode MP3 audio from MP4 files created by some DVR systems.
  • [PC-234] – Codecs: H.264: AMD MFT encoder crashes if closed without flush
  • [PC-238] – Codecs: H.264: Intel QuickSync Media encoder sporadic failure

Release Notes

Improvement

  • [AVB-879] – Docs: StreamSubType: Update the docs for Mpeg1System and Mpeg2System
  • [AVB-895] – Improve interlaced encoding in hardware and software encoders

Bug

  • [AVB-335] – Some WMA presets produce output files with varying duration / size.
  • [AVB-885] – Intel QSV: Some of the existing H.264 tests fail when hardware encoding is used
  • [AVB-887] – AMD VCE MFT: Some of the existing H.264 tests fail when hardware encoding is used
  • [AVB-894] – Intel QSV: The H.264 encoding may fail if a monitor is not connected to the Intel GPU device.
  • [AVB-896] – Cannot decode MP4 (H.264) video files created by some DVR systems.

Release Notes

Improvement

  • [AVB-736] – Samples: Rename AVMixer to mp4_mix_yuv_pcm
  • [AVB-815] – Samples: C++: Set working directory to be ....\lib\ for easier debugging
  • [AVB-882] – Transcoder: Tests: Add more unit tests for AVI to MP4 transcoding

Bug

  • [AVB-337] – The test rgb24_to_mpeg2ps_write produces an output file with varying duration/size.
  • [AVB-340] – MediaInfo: ScanType is not detected correctly for interlaced video in Debug/x64
  • [PC-136] – Decoders: AVC / H.264 SW: Frames are reordered when decoding 4K video input

Release Notes

New Feature

  • [AVB-828] – Enable / disable hardware platforms at a Library level
  • [PC-183] – Codecs: H.264: AMD/WMF: Real-time 4K encoding on AMD Radeon R9 285 / R9 380 (Tonga Pro, GCN 1.2, VCE 3.0)

Improvement

  • [PC-102] – Use vector extensions on AMD CPUs

Bug

  • [AVB-841] – Encoders: H.264: AMD/WMF: NumRefFrames parameter is ignored

Release Notes

New Feature

  • [AVB-787] – API: Allow to set image overlay through VideoStreamInfo parameter

Improvement

  • [AVB-738] – Transcoder: AMD VCE hardware acceleration for H.264 encoding (via MFT)
  • [AVB-761] – Docs: Transcoder: Document the MediaSample format for each stream supported by Transcoder.Push
  • [AVB-768] – Samples: .NET: Deprecate the .NET CLR 2 projects
  • [AVB-802] – Transcoder: Return Library not initialized if Library.Initialize has not been called.

Bug

  • [AVB-717] – Audio and video out of sync when H.264 uses B-frames in MP4 container
  • [AVB-807] – Muxers: MP4: Transcoding with NVIDIA NVENC and Intel QuickSync encoders fails for certain H.264 settings.
  • [AVB-829] – Hardware: Windows: GPU reset during hardware enumeration on Windows Server 2012 R2+ with XFX AMD R7 260X (Core Edition) GPU, Driver 14.12
  • [PC-115] – Crash in AAC encoder with some combinations of sample rate and bitrate
  • [PC-161] – Encoders: AVC / H.264 SW: Multiple encodings with B-frames do not produce exactly the same output.
  • [PC-171] – Encoders: H.264: AMD: MFT: Hang on Window Server 2012 R2+ with XFX AMD R7 260X GPU (Double Dissipation Edition), Driver 14.12

Release Notes

New Feature

  • [AVB-234] – Presets: MP3 presets
  • [AVB-235] – Presets: WMA Presets
  • [AVB-236] – Presets: AAC Presets
  • [AVB-705] – Transcoder: NVIDIA hardware acceleration for H.264 encoding
  • [AVB-706] – Transcoder: NVIDIA hardware acceleration for H.265 encoding
  • [AVB-710] – Presets: WebM / VP8 encoding presets
  • [AVB-718] – Hardware: New API for encoding hardware enumeration.
  • [PC-106] – MediaBuffer: Add Clone method.
  • [PC-107] – MediaSample: Add Clone method.
  • [PC-108] – Muxers: MP4: Support H.265 elementary stream
  • [PC-157] – MediaPin: Add Clone method
  • [PC-158] – MediaSocket: Add Clone method

Improvement

  • [AVB-161] – Presets: H.264 and AAC encoder default parameters should match the Web preset
  • [AVB-321] – Presets: Remove the sampling rate from the MP4_H264 preset
  • [AVB-720] – Docs: MediaSocket: Improve TimePosition member docs
  • [AVB-730] – Codecs: H.264: The TreatBFramesAsReference param should be false by default.
  • [AVB-733] – Presets: Move all preset definitions under nested namespaces / classes.
  • [AVB-756] – Docs: MediaSocket: .NET: Clarify the time unit for MediaSocket.TimePosition property.
  • [AVB-759] – MediaBuffer: .NET: DataOffset property should be read-only
  • [AVB-760] – MediaBuffer: .NET: DataSize property should be read-only
  • [AVB-794] – Apple Live Streaming Presets: Change the audio sampling rate from 44100Hz to 48000Hz
  • [PC-125] – Codecs: H.264: Intel QSV: Parameter default values should match the software H.264 encoder
  • [PC-126] – Codecs: H.264: AMD VCE: Parameter default values should match the software H.264 encoder
  • [PC-127] – Codecs: H.264: NVIDIA NVENC: Parameter default values should match the software H.264 encoder
  • [PC-138] – StreamSubType: Add AVCC enum value and AVC1 alias.
  • [PC-139] – StreamSubType: Add None enum value
  • [PC-140] – StreamSubType: Add AVC_Annex_B enum value
  • [PC-153] – Muxers: MP4: Update AVCDecoderConfigurationRecord from the H.264 bitstream data
  • [PC-160] – Docs: Document that Media Foundation feature must be installed on Windows Server to be able to use Windows Media codecs

Bug

  • [AVB-65] – Regression: Transcoding a wmv input (with non-explicit/missing fps) to mp4 output fails with a muxer error
  • [AVB-755] – StreamInfo.Bitrate setting is doubled by the H.264 software encoder
  • [AVB-765] – Samples: H264NaluDecoder C++ does not work
  • [AVB-770] – Codecs: NVIDIA NVENC H.264: The NVENC H.264 encoder does not use ProfileIdc param, output bitstream profile is always set to High.
  • [AVB-783] – Process stops abruptly when Hardware::refresh() is called on a system with new AMD drivers (15.7.1)

Release Notes

This release has been tested on Windows 10 Insider Preview.

New Feature

  • [AVB-233] – Presets: Additional Apple HTTP Live Streaming presets
  • [AVB-698] – Transcoder: Intel QuickSync hardware acceleration for H.264 encoding
  • [AVB-707] – Transcoder: AMD Video Coding Engine hardware acceleration for H.264 encoding

Improvement

  • [AVB-510] – Docs: Presets: Document stream and parameter settings used in presets.
  • [AVB-684] – MediaSocket: MediaSocket.FromMediaInfo should call MediaInfo.Load
  • [AVB-693] – Change the demo watermark text
  • [AVB-708] – Transcoder: Return more specific error code and message when frame has uneven dimensions
  • [PC-36] – Muxers: MP4: Support writing MP4 files bigger than 4GB
  • [PC-101] – Demuxers: MP4: Support reading MP4 files bigger than 4GB

Bug

  • [AVB-688] – Transcoder: Video is truncated when MPEG-2 TS is transcoded to DVD_NTSC_PCM preset
  • [AVB-689] – Transcoder: Some MPEG-2 TS streams cannot be transcoded in push mode

Release Notes

New Feature

  • [AVB-147] – Presets: HDV 720P / HDV 1080i encoding presets
  • [AVB-232] – Presets: Additional MP4 presets
  • [AVB-570] – Transcoder: Deliver MPEG-2 TS packets and decoded elementary streams to different outputs of the same transcoder

Bug

  • [AVB-65] – Transcoding a wmv input (with non-explicit/missing fps) to mp4 output fails with a muxer error
  • [AVB-357] – The test “mpg_convert_vsize_convert_abitrate” fails on OS X
  • [AVB-676] – Demuxers: The MPEG-TS demuxer cannot process more than 20 streams
  • [AVB-683] – Audio decoder (Mpeg Audio, AAC) flush does not work. Some audio samples are lost.
  • [AVB-686] – Docs: C++: Nested namespaces under primo::avblocks::Preset are not visible
  • [AVB-687] – The test “mpegts_h264_aac_to_mp4_remux” produces an output with damaged audio.