2012-04-16 37 views
5

Có một số kỹ thuật đơn giản để chỉ phát một phần nhất định của video HTML5 không? Ví dụ trong clip 30 giây, tôi chỉ muốn chơi phần 5-20 giây. Ngoài ra, phần còn lại của video sẽ không thể truy cập được từ giao diện người dùng (nghĩa là dòng thời gian video chỉ hiển thị phần 5-20 giây).Video HTML5 - chỉ phát một phần của video

Tôi đã xem qua một số trình phát video HTML5 nhưng không có người nào trong số họ dường như hỗ trợ loại chức năng này. Nếu có ai biết một cách tốt để thực hiện tính năng này, hãy cho tôi một gợi ý.

Cảm ơn trước!

+0

Tôi đã thực hiện một số thử nghiệm bằng trình phát VideoJS (http://videojs.com/) và tôi đã cố gắng làm cho nó hoạt động ít nhất trên máy tính để bàn, thiết bị Android và iPad. – calle

+0

Về cơ bản, tôi phải ghi đè một số chức năng của trình phát gốc để hiển thị chính xác các điều khiển và phát xung quanh với sự kiện 'thời gian' của video để giới hạn thời gian phát của video. Tôi phải đồng ý với @Riplikash rằng hiện tại cách duy nhất để hoàn thành hành vi chơi một phần là phục vụ nội dung có thể chơi được từ máy chủ và không cố gắng hạn chế nó từ phía máy khách. – calle

Trả lời

1

Mặc dù câu hỏi này đã được đánh dấu là đã trả lời, đây là điều mà bạn có thể quan tâm và bất kỳ ai khác tình cờ gặp ở đây: Specifying playback range.

Đó là một phần của Media Fragment API và hiện đang hoạt động trong các phiên bản mới nhất của Firefox, Chrome và Safari 6+.

+0

Câu trả lời này hữu ích hơn câu trả lời được đánh dấu đúng. Cảm ơn @Ian Devlin –

+0

Liên kết đó không còn hợp lệ nữa, không có thông tin về việc chỉ định phạm vi phát lại. – prendio2

0

Bạn có thể thực hiện nó có sự kiện Player.Play() trong trình phát, bất cứ khi nào Play() gọi là bắt đầu hẹn giờ và gọi Player.stop() vào thời gian cụ thể bạn muốn.

0

Tôi có cùng một vấn đề và tôi đã không tìm thấy một cái gì đó mà có thể giải quyết vấn đề này, những gì bạn có thể làm là để thực hiện điều khiển của riêng bạn và hiển thị video với vải ...

và nếu bạn là cố gắng để thực hiện điều này trong IOS, bạn sẽ không thể làm điều đó.

+0

Với javascript bạn có thể chơi một phần thời gian bạn muốn nhưng giao diện người dùng sẽ hiển thị thời gian thực, bạn có thể ẩn các điều khiển gốc nhưng người dùng có thể hiển thị chúng bằng "nhấp chuột phải" -> "hiển thị điều khiển "Cách gần nhất tôi thấy là sử dụng một trình phát có thể hiển thị một phần thời gian đó là JWPlayer, nó có thể hiển thị thời lượng" giả "nhưng thời gian bắt đầu luôn là 0 ngay cả khi bạn có thể bắt đầu tại điểm khác ... –

+0

nhưng iOS nó không hoạt động ... –

0

Suy nghĩ của tôi là sử dụng các điều khiển tùy chỉnh, vì tôi không tin rằng chức năng đó có sẵn một cách tự nhiên. Tất cả các chức năng của điều khiển html5 (chơi, tạm dừng, bắt đầu tại dấu thời gian, vv) có thể được gọi thông qua javascript. Trong trường hợp này, bạn sẽ muốn chỉnh sửa biến currentTime.

Vì vậy, bạn có thể muốn xem xét thiết lập thanh trượt của riêng mình, nơi bắt đầu thanh trượt đại diện cho điểm bắt đầu của bạn và kết thúc điểm kết thúc của bạn. Đặt video không phát khi tải trang. Sau đó, khi tải trang có chức năng javascript, hãy thay đổi currentTime thành điểm bắt đầu của bạn. Để dừng bạn thỉnh thoảng có thể truy vấn currentTime. Tôi sẽ không sử dụng một bộ đếm thời gian như sự chậm trễ như tải chậm có thể ném nó đi.

+0

Bạn sẽ không thể giới hạn hoàn toàn người dùng xem các phần khác của video thông qua video HTML5. Nó giống như thẻ . Nó rất cởi mở. Bạn sẽ phải giới hạn phần nào của video sẽ được phân phát trên máy chủ. – Riplikash

+0

Muốn một số đoạn mã hoạt động –

0

Tôi đang cố triển khai một video tương tự trong "Chế độ xem trước". Tôi đang sử dụng các phương pháp đã nêu ở trên bằng cách thêm một trình lắng nghe sự kiện và sau đó tạm dừng video tại một postTime hiện tại() == 'x'. Để ngăn người dùng chỉ cần nhấn phát lại, trình nghe thời gian hiện tại sẽ không cho phép phát lại qua thời gian 'x' trong dòng thời gian để mỗi khi người dùng truy cập phát, nó sẽ tự động bị tạm dừng lại ngay lập tức. Hơn nữa, tại thời điểm 'x', vùng chứa video sẽ bị ẩn qua CSS, do đó ngăn chặn tương tác từ người dùng với video.

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