有会用DES的么?(200分)

  • 主题发起人 主题发起人 Superhero9527
  • 开始时间 开始时间
S

Superhero9527

Unregistered / Unconfirmed
GUEST, unregistred user!
情况是这样的,
我现在可以用DES来做视频捕获,已经完成捕获功能了,
可是不能指定我想要的压缩编码器,
有人能解决么?
 
我这样改了一下,但选择驱动时出错
procedure TVideoForm.OnSelectDevice(sender: TObject);
var
videostreamconfig:iamstreamconfig;
amediatype:pam_media_type;
bmiheader: tagbitmapinfoheader;

begin

FilterGraph.ClearGraph;
FilterGraph.Active := false;
Filter.BaseFilter.Moniker := SysDev.GetMoniker(TMenuItem(Sender).tag);
FilterGraph.Active := true;
with FilterGraph as ICaptureGraphBuilder2do


begin

findinterface(@look_downstream_only,nil,Filter as IBaseFilter,IID_IIDivXFilterInterface,videostreamconfig);
//)2.利用Tam_media_type(directshow8)(Tammediatype(directshow9)
在这里出错 Videostreamconfig.getformat(amediatype);
case amediatype.formattype.d1 of
$05589f80:bmiheader:=pvideoinfoheader(amediatype.pbformat)^.bmiheader;
$F72A76A0:bmiheader:=pvideoinfoheader2(amediatype.pbformat)^.bmiheader;
end;

pvideoinfoheader(amediatype.pbformat)^.bmiheader.biwidth:=640;
pvideoinfoheader(amediatype.pbformat)^.bmiheader.biheight:=480;
videostreamconfig.setformat(amediatype^);
deletemediatype(amediatype);
RenderStream(nil, nil, Filter as IBaseFilter, SampleGrabber as IBaseFilter, VideoWindow as IbaseFilter);
FilterGraph.Play;
end;


end;




这段代码在 Delphi 7 + DSPack 2.34 出错,有人能给调一调么?
 
关于使用数据加密标准的帖子DFW里面应该有的,Search一下可以找到的...
 
Johnny_du 可能是我没有说明白让你误解了。
我是想指定我选择的压缩编码器 比如说我选择 DivX 做为视频的 压缩编码器

有人能把下面的VC代码转到 Delphi 么,成功了分就给他了。

STDMETHODIMP CGraphBuilderCB::SelectedFilter(IMoniker *pMon)
{
if (!pMon)
{
return E_POINTER;
}

IBindCtx * pBCtx = NULL;
HRESULT hr = CreateBindCtx(0, (LPBC*)&pBCtx );
if (!pBCtx || FAILED(hr))
{
return E_UNEXPECTED;
}

IBaseFilter * pBf = NULL;
hr = pMon->BindToObject(pBCtx, NULL, __uuidof(IBaseFilter), (void**)&pBf);
pBCtx->Release();
if (FAILED(hr) || !pBf)
{
return E_UNEXPECTED;
}

// Get filter's CLSID
IPersist * pPersist = NULL;
hr = pBf->QueryInterface( __uuidof(IPersist), (void**)&pPersist);
pBf->Release();
if (SUCCEEDED(hr))
{
CLSID clsid = GUID_NULL;
pPersist->GetClassID(&clsid);
pPersist->Release();
if (CSupported::IsGUIDSupported(clsid))
{
return S_OK;
}
}
return E_FAIL;
}
 
再顶一下
 
有人懂么,很急地!
 
还没有人来么?

问题改了,有人知道,如何把捕获的视频和音频保存成 Mpeg1格式么?
 
LZ不厚道
应该在开贴
[:(!]
 
后退
顶部