Các plugin VST được tạo ra như thế nào?


105

Tôi muốn tạo (hoặc học cách tạo) các plugin VST. Có một SDK đặc biệt cho việc này không? làm thế nào để tạo ra một .vst thay vì một .exe? Ngoài ra, nếu một người đang tìm cách tạo các Đơn vị âm thanh cho Logic Pro, thì điều đó được thực hiện như thế nào? Cảm ơn

Câu trả lời:


50

Bắt đầu với liên kết này đến wiki, giải thích chúng là gì và cung cấp các liên kết đến sdk. Đây là một số thông tin liên quan đến deve

Cách biên dịch plugin - Để tạo plugin VST trong C ++ Builder, trước tiên bạn cần sdk VST của Steinberg. Nó có sẵn từ trang web của Yvan Grabit (liên kết ở đầu trang).

Điều tiếp theo bạn cần làm là tạo một tệp .def (ví dụ: myplugin.def). Điều này cần phải chứa ít nhất các dòng sau:

EXPORTS main=_main

Các trình biên dịch Borland thêm dấu gạch dưới vào tên hàm và điều này xuất main()hàm theo cách mà máy chủ VST mong đợi. Để biết thêm thông tin về tệp .def, hãy xem tệp trợ giúp C ++ Builder.

Tuy nhiên, điều này là không đủ. Nếu bạn định sử dụng bất kỳ phần tử VCL nào (bất kỳ thứ gì liên quan đến biểu mẫu hoặc thành phần), bạn phải cẩn thận để plugin của mình không làm hỏng Cubase (hoặc một máy chủ VST khác, vì vấn đề đó). Đây là cách thực hiện:

  1. Bao gồm float.h.
  2. Trong hàm tạo của lớp hiệu ứng của bạn, hãy viết

    _control87(PC_64|MCW_EM,MCW_PC|MCW_EM);

Điều đó sẽ làm các trick.

Dưới đây là một số trang web hữu ích hơn:

http://www.steinberg.net/en/company/developer.html

cách viết một plugin vst (pdf) qua http://www.asktoby.com/#vsttutorial


1
hai trong số các liên kết của bạn chưa hoàn thành, vui lòng sửa nó.
tiboo

44

Tôi biết cái này đã 3 năm tuổi, nhưng đối với tất cả mọi người đang đọc cái này bây giờ: Đừng dính vào định dạng VST, AU hoặc bất kỳ nhà cung cấp nào. Steinberg đã ngừng hỗ trợ VST2 và mọi người đang gặp khó khăn khi chuyển mã của họ sang các định dạng mới hơn, vì nó quá ràng buộc với VST2.

Các hướng dẫn này bao gồm việc tạo các plugin chạy trên Win / Mac, 32/64, tất cả các định dạng plugin từ cùng một cơ sở mã.


Hướng dẫn đó dường như chỉ dành cho Mac.
liftarn

6
Đối với các phần có sự khác biệt, các hướng dẫn bao gồm cả Mac và Windows. Tác giả sử dụng máy Mac mặc dù.
khốn nạn

28

Tôi đã viết một CÁCH THỨC phát triển VST trên C ++ với Visual Studio trong một thời gian ngắn trở lại, trong đó nêu chi tiết các bước cần thiết để tạo một plugin cơ bản cho nền tảng Windows (phiên bản Mac của bài viết này sắp ra mắt). Trên Windows, một plugin VST chỉ là một DLL bình thường, nhưng có một số "gotchas" và bạn cần phải xây dựng plugin bằng cách sử dụng một số công tắc trình biên dịch / liên kết cụ thể, nếu không, nó sẽ không được một số máy chủ nhận ra.

Đối với Mac, một plugin VST chỉ là một gói với phần mở rộng .vst, mặc dù cũng có một số cài đặt phải được định cấu hình chính xác để tạo một plugin hợp lệ. Bạn cũng có thể tải xuống một tập hợp các mẫu dự án plugin Xcode VST mà tôi đã tạo trong một thời gian ngắn, có thể giúp bạn viết một plugin hoạt động trên nền tảng đó.

Đối với AudioUnits, Apple đã cung cấp các mẫu dự án của riêng họ được bao gồm trong Xcode. Apple cũng có các hướng dẫn và tài liệu trực tuyến rất tốt:

Tôi cũng thực sự khuyên bạn nên xem qua Juce Framework , có hỗ trợ tuyệt vời để tạo các plugin VST / AU đa nền tảng. Nếu bạn đang sử dụng mã nguồn mở, thì Juce không cần phải bàn cãi, nhưng bạn sẽ cần phải trả phí cấp phép cho nó nếu bạn định phát hành tác phẩm của mình mà không có mã nguồn.


7

Nếu bạn biết một ngôn ngữ .NET (C # / VB.NET, v.v.) thì hãy xem VST.NET . Khuôn khổ này cho phép bạn tạo các plugin VST 2.4 (không được quản lý) trong .NET. Nó đi kèm với một khuôn khổ cấu trúc và đơn giản hóa việc tạo một VST Plugin với sự hỗ trợ cho các Tham số, Chương trình và Độ bền.

Có một số mẫu minh họa các tình huống plugin điển hình. Ngoài ra còn có tài liệu giải thích cách bắt đầu và một số khái niệm đằng sau VST.NET.

Hy vọng nó giúp. Marc Jacobi


5

Tôi nhận ra đây là một bài đăng rất cũ, nhưng tôi đã thành công khi sử dụng thư viện JUCE, nơi xây dựng các dự án cho các IDE chính như Xcode, VS và Codeblocks và tự động xây dựng VST / 3, AU / v3, RTAS và AAX.

https://www.juce.com/


Đối với những người tự hỏi liệu đây có phải là một con đường tốt hay không, việc làm theo hướng dẫn OSX chính xác không mang lại kết quả cho tôi, chỉ có lỗi.
chín Reed
Khi sử dụng trang web của chúng tôi, bạn xác nhận rằng bạn đã đọc và hiểu Chính sách cookieChính sách bảo mật của chúng tôi.
Licensed under cc by-sa 3.0 with attribution required.