2009-03-21 21 views
13

Những người chơi chính dường như là x264, và xvid, và cả hai đều là GPL. Điều này có nghĩa là chúng tôi không thể tích hợp khả năng giải mã vào ứng dụng phát lại mà không cấp phép cho toàn bộ điều như GPL, vì vậy chúng tôi không thể sử dụng cả hai.Free/Open h.264 thư viện giải mã video? (Non-GPL)

Nền tảng mục tiêu được ưu tiên là Linux. Bất kỳ giấy phép mở không phải là virus nào cũng tốt, chúng tôi rất sẵn lòng cung cấp nguồn của bất kỳ thay đổi nào chúng tôi thực hiện cho các thư viện, không phải toàn bộ ứng dụng của chúng tôi.

Có gì không? Hoặc có lẽ chúng ta nên sử dụng GPL bây giờ làm thử nghiệm trong quá trình phát triển và dự định thay thế nó bằng codec được cấp phép thương mại trước khi giao hàng?

+3

xvid không phải là một codec H.264, nó là một định dạng MPEG-4 part 2 codec. –

Trả lời

2

Một dự án có nguồn gốc từ thư viện hiệu năng AMD, Framewave, hiện có một thành phần video hỗ trợ giải mã h.264.

Giấy phép là "Apache 2.0 giấy phép"

bạn có thể kiểm tra xem nó ra tại Sourceforge SVN

+0

Cảm ơn, tôi đã thấy điều đó và vượt qua nó, giả sử nó chỉ là AMD. –

1

Ok, FFMpeg xuất hiện để xử lý h.264. Tôi tin rằng phần lớn là LGPL.

Bạn vẫn muốn nghe trải nghiệm với nó (tốt hay xấu) hoặc các tùy chọn khác, cảm ơn.

- Sửa, phiên bản tôi vừa kiểm tra có vẻ được biên dịch bằng "--enable-gpl", điều này dẫn tôi đến việc tin rằng nó đang sử dụng codec được cấp phép GPL. Argh!

+0

FFMPEG tùy chọn liên kết đến x264, và nếu có, nó rơi theo GPL. Sự lựa chọn giấy phép phụ thuộc vào tùy chọn cấu hình và tôi tin rằng x264 là cần thiết để hỗ trợ h.264. – greyfade

+0

Ứng dụng của bạn có bị nhiễm GPL không nếu nó chỉ lập hóa đơn ffmpeg thông qua hệ thống() hoặc popen()? – mouviciel

+0

^^ IANAL, nhưng tôi nghĩ nếu bạn gửi các tệp nhị phân GPL với ứng dụng của mình, thì có thể cho là có. – damian

0

Tôi đã thực hiện một số công việc với FFmpeg, mặc dù nó được giới hạn trong libavformat (phần codec được gọi là libavcodec). Tôi tìm thấy API đáng ngạc nhiên về phía trước và dễ sử dụng. Chúng cung cấp một số mẫu thực sự hữu ích và khai sáng trong phân phối nguồn chuẩn.

Nói chung thư viện có chất lượng khá cao, nhưng một số mô-đun dường như thiếu, vì vậy tôi không thể xác minh cho phần h264. Tôi đã nghe những điều tốt đẹp về bộ mã hóa, mặc dù.

3

IANAL, nhưng nếu bạn đang vận chuyển bằng sáng chế phần mềm bất cứ nơi nào được thực thi, không chỉ làm bạn phải trả tiền bản quyền MPEG LA cho h.264 giải mã, nhưng licensesức ngăn cản bạn từ việc sử dụng bộ giải mã nguồn mở dù sao đi nữa. Tôi đã nghe nói về những phiền toái tương tự áp dụng cho các codec khác.

2

IANAL.

Nếu bạn gửi các tệp nhị phân chưa sửa đổi được tạo từ nguồn GPL chưa sửa đổi và ứng dụng của bạn đơn giản gọi chúng, tôi tin rằng toàn bộ ứng dụng của bạn không phải là GPL. Bạn có thể phải bao gồm tài liệu GPL và/hoặc nguồn của các ứng dụng GPL đi kèm, nhưng nếu bạn không thực hiện bất kỳ sửa đổi nào hoặc liên kết với mã GPL, mã của bạn sẽ không bị ảnh hưởng.

Theo như tiêu chuẩn MPEG, đó có thể là một túi sâu hoàn toàn ...

+0

Vâng, chúng tôi làm điều đó ngay bây giờ, chỉ cần gọi mplayer. Mục tiêu trong tương lai là tích hợp video cùng với nội dung khác vào kết quả liền mạch, có thể với tính minh bạch hoặc các hiệu ứng khác. Suy nghĩ hiện tại là, để thực hiện điều này với hiệu suất hợp lý, nó phải được tích hợp. –

+2

IANAL, nhưng tôi sẽ thận trọng về việc gây nhầm lẫn giữa LGPL và GPL tại đây. Những gì bạn mô tả sẽ chính xác 100% đối với mã LGPL nhưng được cho là nếu thành phần GPL mà bạn đang vận chuyển + không thích nhị phân là một phần của ứng dụng tổng thể, thì ứng dụng tổng thể cũng cần phải là GPL. http://www.gnu.org/philosophy/why-not-lgpl.html – damian

+0

cho bất kỳ ai không nhận ra từ viết tắt, IANAL là viết tắt của 'Tôi không phải là luật sư'. – Wyatt8740

1

Đưa hãy xem Intel IPP Libraries. Họ không phải là miễn phí, nhưng rất rẻ (một lần thanh toán một trăm đô la hoặc một cái gì đó). Bạn cũng có thể nhận được một đánh giá miễn phí để kiểm tra nó ra. Giấy phép là rất mở, và theo như tôi biết cho phép bạn phân phối không giới hạn trong ứng dụng của bạn mãi mãi một khi bạn mua nó.

9

Bộ giải mã ffmpeg H.264 là LGPL. Chỉ các bộ mã hóa là GPL và x264 không cung cấp bộ giải mã.

Nó cũng có lợi thế hơn Framewave và IPP thực sự có thể sử dụng được.

+0

Có một số bộ mã hóa không phải của GPL trong những ngày này: http://stackoverflow.com/a/39338135/32453 – rogerdpack

2

Cisco phát hành một BSD cấp phép thư viện h264 để mã hóa và giải mã.

Tôi ước bạn sẽ chỉ sử dụng GPL, nhưng tôi sẽ không chỉ bảo bạn làm điều đó khi có câu trả lời ở đó.

http://www.openh264.org/
và trang GitHub:
https://github.com/cisco/openh264

+0

Lưu ý rằng bạn phải trả tiền hoàng gia MPEG-LA khi biên soạn và phân phối nó. Sẽ rất thú vị nếu một sơ đồ tương tự với những gì @HUAGHAGUAH nói về GPL áp dụng (gọi trực tiếp). –