Icon View Thread

The following is the text of the current message along with any replies.
Messages 1 to 6 of 6 total
Thread Playing videos stored in BLOB fields
Mon, Jan 6 2014 10:36 AMPermanent Link

Edward Jones

National Veterinary Services Limited

Hi all, I have some relatively small (max 90Mb) videos I would like to play in my Delphi 7 application. The videos are stored in a BLOB field in a Elevate table.

I have had a look at DSPack and VLC but these seem to concentrate on actual files or streaming from the web which I am sure is great but not what I am after. VLC does make a great deal about using MRL's and I was wondering if I could use that?

So, does anyone know how to send a BLOB to either of these components? I presume that you load the BLOB into a stream like so (BLStream is defined as a TStream)

 BLStream :=VideoTable.CreateBLOBStream(VideoTable.FieldByName('VIDEO'),bmRead);

but then I am not sure how to pass this into DSPack or VLC.


Regards

Edward Jones
NVS Ltd UK
Mon, Jan 6 2014 10:41 AMPermanent Link

Edward Jones

National Veterinary Services Limited

Sorry, I should of mentioned that I have the VLC Delphi interface PasLibVlcPlayer if that helps.

Edward Jones wrote:

Hi all, I have some relatively small (max 90Mb) videos I would like to play in my Delphi 7 application. The videos are stored in a BLOB field in a Elevate table.

I have had a look at DSPack and VLC but these seem to concentrate on actual files or streaming from the web which I am sure is great but not what I am after. VLC does make a great deal about using MRL's and I was wondering if I could use that?

So, does anyone know how to send a BLOB to either of these components? I presume that you load the BLOB into a stream like so (BLStream is defined as a TStream)

 BLStream :=VideoTable.CreateBLOBStream(VideoTable.FieldByName('VIDEO'),bmRead);

but then I am not sure how to pass this into DSPack or VLC.


Regards

Edward Jones
NVS Ltd UK
Mon, Jan 6 2014 12:21 PMPermanent Link

Tim Young [Elevate Software]

Elevate Software, Inc.

Avatar

Email timyoung@elevatesoft.com

Edward,

<< Sorry, I should of mentioned that I have the VLC Delphi interface
PasLibVlcPlayer if that helps. >>

Post that unit in the ElevateDB Binaries newsgroup, and I'll take a look and
see what it supports.

Tim Young
Elevate Software
www.elevatesoft.com
Mon, Jan 6 2014 12:47 PMPermanent Link

Edward Jones

National Veterinary Services Limited

Hi Tim, many thanks for the swift response! I have posted a zip file with the unit and demo in in the ElevateDB Binaries newsgroup.

Many thanks again!


Regards

Edward Jones
NVS Ltd UK

"Tim Young [Elevate Software]" wrote:

Edward,

<< Sorry, I should of mentioned that I have the VLC Delphi interface
PasLibVlcPlayer if that helps. >>

Post that unit in the ElevateDB Binaries newsgroup, and I'll take a look and
see what it supports.

Tim Young
Elevate Software
www.elevatesoft.com
Tue, Jan 7 2014 2:51 PMPermanent Link

Tim Young [Elevate Software]

Elevate Software, Inc.

Avatar

Email timyoung@elevatesoft.com

Edward,

Okay, I took a look at the source code, and unfortunately the only thing
you're going to be able to do is dump the BLOB to a file, and then use a
file MRL to access it.  There just doesn't appear to be any other way, other
than getting into writing a TCP server that will serve up the streams as
binary responses.

If you have any other questions, please let me know.

Tim Young
Elevate Software
www.elevatesoft.com
Wed, Jan 8 2014 2:52 AMPermanent Link

Edward Jones

National Veterinary Services Limited

Hi Tim, thankyou for spending some time on this as I am sure you are very busy! I like the idea of the TCP server as I already have one that sends out program updates so I can change it to send BLOB streams as well. I should of seen this before but it always helps to get a fresh pair of eyes on a problem!

Regards

Edward Jones

"Tim Young [Elevate Software]" wrote:

Edward,

Okay, I took a look at the source code, and unfortunately the only thing
you're going to be able to do is dump the BLOB to a file, and then use a
file MRL to access it.  There just doesn't appear to be any other way, other
than getting into writing a TCP server that will serve up the streams as
binary responses.

If you have any other questions, please let me know.

Tim Young
Elevate Software
www.elevatesoft.com
Image