代碼說明:
1.回調函數STREAM_DIRECT_READ_CALLBACK1是在上篇文章的基礎上修改的,也主要是參照 的VC++的源代碼改寫的。
2.CaptureState變量主要用於STREAM_DIRECT_READ_CALLBACK1中控制是否寫文件。
3.btnStart_Click 與btnStop_Click分別代表界面上的開始錄像和停止錄像按鈕。
4.注意寫文件的方式,開始錄像用FileMode.Create,持續寫入用 FileMode.Append。
補充:
1.錄像的時候務必考慮單錄像文件的大小以及磁盤空間不夠的問題,最好還能考慮下分時段監控等。
2.注意保存文件頭的變量FileHeader,如果分文件連續保存的話有可能出現第一個文件能播放,後面的都不能播放了,可能是文件頭變 量的數據類型問題,你可以換byte[] -> IntPtr保存試試看。
3.自帶的示例裡面有播放器極其源碼,打開播放器,直接將.264文件 拖拽到裡面就可以播放了;如果報錯那麼說明你的錄像有問題!!
結束
雖然代碼都給出來了,但是裡面整個過程還是需要理解 的,一定要配合VC++自帶的例子進行調試編寫。