2010-08-05 17 views
6

Tôi đang tìm thông tin chi tiết về những gì quyết định định dạng phương tiện mà MediaElement có thể phát, dường như tôi không thể tìm thấy bất kỳ nguồn dứt khoát nào. Tôi đã đọc ở đâu đó rằng nếu nó có thể được chơi trong WMP thì MediaElement có thể chơi nó. Điều này có đúng không? Nếu có, thì câu hỏi tiếp theo của tôi là nơi tôi có thể tìm thấy các khả năng và hạn chế của WMP? Và sự liên kết nằm giữa MediaElement và WMP của WPF? Tôi đang tìm kiếm một sự hiểu biết tốt hơn về các thành phần và phát lại video trong WPF và có cho đến nay đấu tranh để tìm thấy bất cứ điều gì trực tuyến.Những loại Video nào có thể MediaElement Play?

Trả lời

8

MediaElement sử dụng nội bộ WMP ActiveX. Về lý thuyết, MediaElement có thể/sẽ có thể chơi bất cứ thứ gì WMP có thể, nhưng nó không phải luôn luôn như vậy, ví dụ như các tệp .vob.

Khi bạn phát tệp trong MediaElement, Windows Media Player ActiveX được tải. WMP sau đó sẽ quyết định sử dụng đường dẫn DirectShow hoặc MediaFoundation để phát phương tiện. Các loại phương tiện truyền thông nó có thể chơi phụ thuộc phần lớn vào loại codec (DirectShow hoặc MF) được cài đặt trên máy tính của bạn. Sau khi một đường dẫn media được chọn, WPF sẽ cung cấp một trình bày tùy chỉnh cho Trình kết xuất video nâng cao để mỗi khung hình video sẽ được hiển thị trên bề mặt D3D, được giới thiệu để trình bày trong công cụ thành phần WPF.

+0

Điều này thật tuyệt vời, cảm ơn lời giải thích. Còn hai câu hỏi nữa - 1) Có cách nào để xem codec nào được cài đặt trên một máy có sẵn cho Directshow và MF không? 2) Bất kỳ ý tưởng nào về tiêu chí nào được chọn để quyết định phát lại Directshow vs MF? Cảm ơn! – Sio

+1

Cách dễ nhất để xem codec nào có sẵn là sử dụng GraphEdit trong thư mục bin của Windows SDK. Tôi không nghĩ rằng một tiện ích tương tự tồn tại cho MF. Tôi không chắc chắn tiêu chí nào được sử dụng để sử dụng MF hoặc DShow. Giả định duy nhất của tôi là nó trys MF đầu tiên và sau đó rơi trở lại DShow. MF trong Windows 7 sẽ hỗ trợ một số hương vị của MPEG4, như h264 và WMV (có thể WM7, 8 và VC1). –

+0

Bây giờ chúng ta nên làm gì nếu chúng ta cần chơi các file .vob trong một ứng dụng WPF? – TheAgent