2009-07-17 37 views
5

Cách tốt nhất/dễ nhất để hiển thị video (với âm thanh!) Trong ứng dụng bằng cách sử dụng XAudio2 và Direct3D9/10 là gì?Hiển thị video trong DirectX

Ít nhất nó cần có khả năng phát các video có khả năng lớn hơn và chú ý đến tỷ lệ khung hình cửa sổ có thể khác với video (ví dụ: bằng cách thêm các hộp thư), mặc dù Id lý tưởng như khả năng nhúng video vào cảnh 3D. Tôi có thể tất nhiên làm việc ra một cách để tải từng khung hình vào một kết cấu, loại bỏ/tái sử dụng các kết cấu sau khi kết xuất, và chơi âm thanh riêng biệt thông qua XAudio2, tuy nhiên cũng như viết một bộ nạp cho ít nhất một định dạng, ive cũng phải đối phó với những thứ như đồng bộ hóa các thành phần video và âm thanh, vì vậy hy vọng có một giải pháp háo hức hoặc thậm chí là một giải pháp sẵn sàng miễn phí với sự phù hợp (phân phối thương mại dưới dạng nhị phân, liên kết động là tốt trong trường hợp nói LGPL).

+0

DirectShow không phải là một lựa chọn? Nó sử dụng Direct3D để dựng hình video. –

Trả lời

7

Trong Windows SDK, có DirectShow example để kết xuất video thành kết cấu. Nó cũng xử lý đầu ra âm thanh.

Nhưng có những hạn chế và tôi thực sự không thể gọi nó dễ dàng.

1

Bạn đã xem Bink video chưa? Đó là những gì rất nhiều trò chơi sử dụng để phát lại video. Hoạt động tốt và bạn không phải tự mình mã hóa tất cả nội dung video đó từ đầu.

+0

Thật không may, nó cũng rất tốn kém. Theora là một sự thay thế miễn phí, và chỉ là tốt từ một quan điểm khách quan. – CodeMouse92

Các vấn đề liên quan