Categories: AnnouncementRVMedia

RVMedia 10.3

We’ve released RVMedia 10.3

A trial version can be downloaded from https://www.trichview.com/download/

This is a minor update, featuring several fixes and adjustments, along with a few new features.

MJPEG video

JPEG images without a Huffman table

Most cameras that produce MJPEG video provide frames as normal JPEG images. However, some cameras create JPEG images without a Huffman table (these images have an “AVI1” signature instead of “JFIF”). It is assumed that a default table is used. TJpegImage and other Delphi libraries cannot read such images as they are.

RVMedia 10.3 contains code that allows reading these images (currently, in VCL and Lazarus projects).

Ability to use Fast Jpeg Decoder

Fast JPEG Decoder for Delphi is an open-source unit that enables reading JPEG images much faster than TJpegImage. Reading JPEGs is important for RVMedia because it is used in the following scenarios:

  • When reading MJPEG streams (usually from IP cameras).
  • When decoding data from local USB cameras that provide frames as JPEGs.
  • In TRVCamReceiver, if TRVCamSender encodes frames as JPEGs (the default setting).

This unit can only be used in Delphi 32-bit VCL projects. It is not compatible with Lazarus or C++Builder, and RVMedia does not use it for FireMonkey projects.

I conducted some tests and found that the standard TJpegImage reads large JPEGs very fast in Win64 projects, but much slower in Win32 projects (at least, on my computer). Therefore, faster reading of JPEG images would be very useful. For example, on my computer, I was able to increase the FPS of a local camera in RVMedia with Fast Jpeg Decoder to the maximum 30fps (frame size 1920×1080) from 7fps using TJpegImage.

Fast JPEG Decoder is open source, and RVMedia can use it under the MPL license. This license requires the distribution of the source code of this unit with applications that use it. This is why it is not enabled by default (another reason is that it is not compatible with C++Builder, so it cannot be used in RVMedia packages that generate code for both Delphi and C++Builder).

To activate Fast JPEG Decoder, remove the dot from the line {.$DEFINE RVMUSEFASTJPEGDECODER} in Include\MRV_Defs.inc.

RVMedia’s license has been updated to cover the use of Fast JPEG Decoder.

FFmpeg

New property TRVCamera.FFMpegProperty.NoDelay.

The NoDelay property, when set to True, enables RVMedia to play video using FFmpeg by receiving and displaying video frames as fast as possible, without any delay. This option is only applied to video without sound and not from a local file.

This option is particularly useful when displaying internet streams that are sent in real-time. It is especially important for UDP streams, which should be processed as soon as possible to avoid delays that may degrade video quality.

Default value: False.

Sergey Tkachenko

Recent Posts

ANN: IDEInstaller 2.5

IDEInstaller 2.5 includes support for 64-bit Delphi IDE.

1 week ago

ANN: TRichView 23.2 – Markdown in Clipboard

We have released TRichView 23.2 and updates of related components The main new feature in…

2 weeks ago

ANN: RVMedia 11.1 – error handling and UDP streaming

RVMedia 11.1 has been released Main new features: UDP streaming with FFmpeg improved error handling…

3 weeks ago

TRichView 23.1 – RichViewActions for Lazarus for Linux

We have released TRichView 23.1 and updates of related components The main new feature in…

3 months ago

IDEInstaller v2.4

We've released our installer program as freeware with source code:http://www.trichview.com/ideinstall/ It was updated to version…

4 months ago

TRichView 23 – Lazarus for Linux, equations in files

We have released TRichView 23 and updates of related components This update is free for…

4 months ago