⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 writersink.cpp

📁 mpeg4 video codec mpeg4 video codec
💻 CPP
字号:
#include "stdafx.h"#include "writerSink.h"#include "nssBuffer.h"TmyWriterSink::TmyWriterSink(LPUNKNOWN punk,HRESULT *phr):CUnknown(_l("TmyWriterSink"),punk){ AddRef(); f=NULL; *phr=S_OK;}STDMETHODIMP TmyWriterSink::OnHeader(INSSBuffer *pHeader){ if (!f) f=fopen("c:\\2.wmv","wb"); BYTE *buf;DWORD len; pHeader->GetBufferAndLength(&buf,&len); fwrite(buf,1,len,f); return S_OK;}STDMETHODIMP TmyWriterSink::IsRealTime(BOOL *pfRealTime){ *pfRealTime=FALSE; return S_OK;}STDMETHODIMP TmyWriterSink::AllocateDataUnit(DWORD cbDataUnit,INSSBuffer* *ppDataUnit){ if (!ppDataUnit) return E_POINTER; HRESULT hr; TmyNssBuffer *buf=new TmyNssBuffer(NULL,&hr); buf->alloc(cbDataUnit); *ppDataUnit=(INSSBuffer*)buf; return S_OK;}STDMETHODIMP TmyWriterSink::OnDataUnit(INSSBuffer *pDataUnit){ BYTE *buf;DWORD len; pDataUnit->GetBufferAndLength(&buf,&len); char_t pomS[256]; OutputDebugString(_itoa(len,pomS,10)); fwrite(buf,1,len,f); return S_OK;}STDMETHODIMP TmyWriterSink::OnEndWriting(void){ if (f) fclose(f); return S_OK;}

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -