Hãy nhớ rằng mặc dù một dự án là GPL, điều đó không có nghĩa là bạn không thể liên hệ với tác giả về tùy chọn LGPL trên mã cơ bản.
Giải pháp của riêng bạn có thể là sử dụng openGL làm bề mặt tổng hợp cho video và nhận thư viện hậu trường như ffmpeg nếu bạn cần xử lý các loại video cụ thể.
NeHe có một ví dụ về render AVI để OpenGL: http://nehe.gamedev.net/data/lessons/lesson.asp?lesson=35
FFMpeg gần đây đã được chuyển sang iPhone và là một LGPL dựa sản phẩm: http://geek.thinkunique.org/2008/03/05/ffmpeg-on-the-iphone/
(Lưu ý: Có một số cuộc tranh luận về việc sử dụng thương mại của LGPL trên iPhone vì giấy phép tham chiếu đến cụm từ "động" khi đề cập đến liên kết thư viện mà iPhone không cho phép. Tôi chưa thấy bất kỳ nhóm dự án nào sử dụng mã của họ đang được sử dụng trên iPhone một cách tĩnh lặng, nhưng bạn nên liên hệ trực tiếp với tác giả để làm rõ.)
Phiên bản khác (mặc dù GPL) của trình phát video OpenGL là: http://code.google.com/p/glover/
Điều bạn nhận được thông qua giải pháp như thế này về cơ bản là bỏ qua chi tiết kỹ thuật cụ thể của iPhone/Mac/CALayer và tận dụng cơ sở kiến thức hiện có của video OpenGL mặc dù không mở rộng, vẫn được hỗ trợ rộng rãi.
Nếu bạn đang xử lý một kiểu video cụ thể, bạn có thể muốn xem thư viện có sẵn cho định dạng video cụ thể trực tiếp từ nhà cung cấp thay vì sử dụng công cụ đa năng như FFMpeg hay không. Một khi bạn đã làm việc tổng hợp, video có thể đến từ hầu hết mọi thư viện.
Barney
Nguồn
2009-11-17 23:35:36
Tôi không hỗ trợ MPMoviePlayerController, nhưng nó có thuộc tính cho "initialPlaybackTime". Tùy thuộc vào nhu cầu của bạn, điều này kết hợp với thông báo Play/Finished và bộ hẹn giờ/luồng có thể cung cấp một số mức độ kiểm soát bổ sung. Nó không phải là khá mặc dù! :) –