TRANG CHỦ > Review Camera > Xuất phim từ component Windows Media trong VB6

Xuất phim từ component Windows Media trong VB6


Trả lời :

Cả ứng dụng Windows Media Player (WMP) lẫn điều khiển Windows Media Player đều không cung cấp chức năng để người dùng có thể “capture” và lưu frame ảnh khi nó đang chiếu phim hay khi nó đang “pause”. Do đó để lập trình thực hiện việc “capture” và lưu frame ảnh của ứng dụng WMP hay của điều khiển WMP hoặc của 1 ứng dụng bất kỳ, cách tổng quát nhất là nhấn phím “Print Screen” để hệ điều hành copy ảnh bitmap của toàn màn hình vào clipboard, rồi viết đoạn code lấy ảnh từ clipboard và lưu lên file theo yêu cầu. Sau đây là qui trình minh họa để viết 1 ứng dụng đơn giản bằng ngôn ngữ VB .Net (version mới hơn VB 6.0) có chức năng lưu ảnh trong clipboard lên file:

1. Chạy chương trình Visual Studio 2005 (hay version mới hơn), chọn menu File.New Project.

2. Khi cửa sổ “New Project” hiển thị, chọn “Project Types” là Visual Basic.Windows, chọn Templates là “Windows Application”, nhập tên Project là “WMPCapture” rồi chọn button Ok để tạo Project mới theo các thông tin đã xác định.

3. Chọn menu View.Code để hiển thị cửa sổ soạn code cho form ứng dụng, viết code sau đây:

‘đặc tả class form ứng dụng

Public Class Form1

‘định nghĩa thủ tục khởi động cho form

Private Sub Form1_Load(ByVal sender As Object, ByVal e As System.EventArgs) Handles Me.Load

‘định nghĩa các biến cần dùng

Dim Capture As System.Drawing.Bitmap

Dim SaveFileDialog1 As New SaveFileDialog

‘đọc ảnh trong Clipboard vào biến Capture

Capture = CType(Clipboard.GetData(System.Windows.Forms.DataFormats.Bitmap), Bitmap)

‘hiển thị cửa sổ chọn file cần lưu

SaveFileDialog1.DefaultExt = “*.bmp”

SaveFileDialog1.Filter = “Bmp Files|*.bmp”

SaveFileDialog1.ShowDialog()

‘cố gắng lưu ảnh lên file

Try

Capture.Save(saveFileDialog1.FileName)

Catch ex As Exception

‘nếu có lỗi thì báo lỗi

MessageBox.Show(“An error has occured while saving”, “Error”, MessageBoxButtons.OK, MessageBoxIcon.Error)

End Try

End Sub

End Class

4. Chọn menu Build.Rebuild WMPCapture để dịch ứng dụng ra file khả thi.

5. Chạy ứng dụng WMP (hay bất kỳ ứng dụng chơi multimedia nào), mở file phim và trình chiếu. Để copy được frame ảnh rõ nhất, bạn nên chạy tiện ích chiếu phim ở chế độ “full screen”. Dời marker của thanh Progressbar về vị trí chứa frame ảnh cần lưu, khi thấy frame ảnh cần lưu hiển thị thì “pause” lại, nhấn phím “Print Screen” để HĐH copy màn hình vào clipboard.

6. Chạy ứng dụng WMPCapture vừa viết, nó sẽ hỏi file cần lưu và lưu ảnh bitmap trong clipboard lên file (dạng *.bmp).

7. Nếu muốn chuyển về định dạng khác (thí dụ *.jpg), bạn có thể dùng bất kỳ trình soạn ảnh nào (Photoshop, CorelDraw, Paint…).

Lưu ý nếu bạn dùng ứng dụng hay điều khiển WMP để chiếu phim thì chức năng Print Screen thường không thể “capture” frame ảnh do WMP hiển thị (do đặc điểm hiển thị động của WMP), do đó tốt nhất là dùng ứng dụng chiếu phim của hãng khác như KMP.

CÁC TIN TỨC KHÁC

Trả lời

Email của bạn sẽ không được hiển thị công khai. Các trường bắt buộc được đánh dấu *

Facebook Auto Publish Powered By : XYZScripts.com