如何播放1080p高清DICOM视频@ 30fps

时间:2016-08-29 07:13:49

标签: video dicom leadtools-sdk fo-dicom

我已经尝试使用Leadtool SDK来播放1080p DICOM视频@ 30fps,但是我从DICOM文件读取图像时遇到问题,从DICOM文件中获取图像需要很长时间。

如果我们必须达到30fps的帧速率,那么Image应该在33毫秒内读取,因为33毫秒是两帧之间的时间,帧速率为30fps。 引导工具花费超过50毫秒来读取1080p的单个图像/帧。

因此,我无法实现1080p视频的30fps帧速率。

Leadtool可以读取720p视频文件,没有任何问题,只有1080p高清视频的问题。

我使用下面的代码来获取图片。

RasterImage image = _Dataset.GetImage(null, count++, 0,
                                                 _DicomImageInformation.IsGray ? RasterByteOrder.Gray : RasterByteOrder.Bgr | RasterByteOrder.Rgb,
                                                 DicomGetImageFlags.None | DicomGetImageFlags.AutoLoadOverlays);

请有人建议我解决这个问题,或者有人知道任何DICOM库,而不是能够播放1080p DICOM视频@ 30fps。

2 个答案:

答案 0 :(得分:1)

看起来您使用的是LEADTOOLS静态图像支持,而不是LEADTOOLS Multimedia SDK。我们提供了专门用于从DICOM文件中提取视频数据的DirectShow DICOM Reader Filter

如果您希望对DICOM文件中的每个帧执行某些操作,可以将LEADTOOLS Video Callback filter与播放或转换控件结合使用。如果你只想简单回放,这段代码就可以了:

   private Leadtools.Multimedia.PlayCtrl _playctrl;

   _playctrl = new Leadtools.Multimedia.PlayCtrl();
   _playctrl.AutoStart = false;
   _playctrl.Location = new System.Drawing.Point(10, 67);
   _playctrl.Name = "_playctrl";
   _playctrl.Size = new System.Drawing.Size(325, 283);
   _playctrl.SourceFile = @"C:\Users\Public\Documents\LEADTOOLS Images\MR.dcm";
   this.Controls.Add(_playctrl);
   _playctrl.Run();

如果您对使用LEADTOOLS有任何疑问或疑虑,请随时直接与我们联系。

答案 1 :(得分:0)

我使用FO-DICOM和Leadtool完成了它。现在我可以播放1080p DICOM视频@ 30fps。 FO-DICOM。

相关问题