谁有网络视频传输代码? (求助),可以给全部分500 ( 积分: 200 )

  • 主题发起人 主题发起人 yuki11111111
  • 开始时间 开始时间
Y

yuki11111111

Unregistered / Unconfirmed
GUEST, unregistred user!
谁有网络视频传输代码? (求助),可以给全部分500
 
谁有网络视频传输代码? (求助),可以给全部分500
 
视频传输代码
ImageServer.Canvas.Lock;
try
hr := Grabber.SampleGrabber.GetConnectedMediaType(MediaType);
if hr <> S_OK then

Exit;
try
if IsEqualGUID(MediaType.majortype, MEDIATYPE_Video) then

begin

BIHeaderPtr := nil;
if IsEqualGUID(MediaType.formattype, FORMAT_VideoInfo) then

if MediaType.cbFormat = SizeOf(TVideoInfoHeader) then

BIHeaderPtr := @(PVideoInfoHeader(MediaType.pbFormat)^.bmiHeader);
if not Assigned(BIHeaderPtr) then

Exit;
BitmapHandle := CreateDIBSection(0, PBitmapInfo(BIHeaderPtr)^, DIB_RGB_COLORS, DIBPtr, 0, 0);
if BitmapHandle <> 0 then

begin

if DIBPtr = nil then

Exit;
if BufferLen > Integer(BIHeaderPtr^.biSizeImage) then

BufferLen := BIHeaderPtr^.biSizeImage;
Move(pBuffer^, DIBPtr^, BufferLen);
ImageServer.Picture.Bitmap.Handle := BitmapHandle;
end;

end;

finally
FreeMediaType(@MediaType);
end;


memStream := TMemoryStream.Create;
jpg := TJpegImage.Create;
jpg.Assign(ImageServer.Picture.Bitmap);
jpg.CompressionQuality := 100;
jpg.JPEGNeeded;
jpg.Compress;
jpg.SaveToStream(memStream);
jpg.Free;

if TCPClient.Connected then

begin

try
TCPClient.WriteInteger(memStream.Size);
TCPClient.WriteBuffer(memStream.Memory^, memStream.Size, True);
except
end;

end;

memStream.Free;
finally
ImageServer.Canvas.Unlock;
end;
 
关注、但没找到方法
我也想知道
 
我有现成的代码,是基于directshow的
qq:364893066
 
星际天涯:
你的是发图片啊!!!有没有流的!!!
 
我做过基于VFW的
qq:85089708
 
后退
顶部