This page is outdated!
Nearly all of these requests are included in Blender 2.42. The new requests are located here: Requests/Sequencer
--Peter Schlaile 19:52, 20 November 2006 (CET)
Sequencer Update Plan
I'm just starting to build this page, more info to come in the near future. I'll put what I see as the "way-ahead" here. Feel free to contribute as you see fit, it's a WIKI isn't it. I plan on using this location as a central place to develop.
Just me so far. I'm always looking for help. If you're interested in helping, drop me a line at bob_holcomb-at-hotmail.com. I could really use some people to help with the design aspect of the sequencer upgrades (work flow, GUI, etc.) as well as coders.
Update the Blender sequencer to allow it to import/export more types of audio/video files and act as a compositor.
By achieving each of the milestones.
This stage is mostly about the design of how the sequencer should be upgraded, in what order, and what features should be added. The only real product that should be introduced into Blender in this stage is the ability to have a baseline audio/video codec ability for all platforms and the GUI interface to the new functions.
- Requests/Sequencer/Solidify Goals
- Requests/Sequencer/BAVBlenderAudioVideo Blender Audio/Video API
- Requests/Sequencer/Libavicodec library customization
- Requests/Sequencer/Integrate new movie code in blender
- Add audio support for movie code
The Audio mixdown function is already present in blender's sequencer code, just need to redirect it from outputting to a .wav file to a stream that plugs into the codec
- Requests/Sequencer/Update UI in Blender to support new options
- Requests/Sequencer/Image Buffer Update
- Rewrite still/movie writing API
develop a generic, cross platform, blender library (with a C API) that handles input and output to Movie and image formats offered by 3rd party libraries (e.g. not in Blender Imbuf). Possibly include Blender Imbuf in the rewrite. I'm looking at an object oriented solution to the multiple platform options. I've built the base object and moved the SGI movie and QT movie code to thier own objects and when either is needed, runtime polymorphism calls the appropriate object.
- Sequencer Tool updates
- Cut movie/strip
- Stretch/compress movie/strip
- Transform tools (scale, rotate, grab, as with 3D objects) -- Test.MicahFitch#14Jun105_MF
- Node based Composition design Very Shake style compositing, not going to lose the track view, but this will be an addition way to make composite images/videos. Object oriented solutions seems best way to tackle this problem. Certain nodes will have thier own track, such as a source node (scene, movie, audio), a mask node, or an effect. May want to have an output node that is what shows up on the track view. I would like to get some comments on how people think this should work.
- Requests/Sequencer/Track View Integration/Issues
- UI update Using the OOPS display code to display nodes for the compositor nodes. Try to reuse some of this code to maintain a similar look/feel to the updated sequencer. Also update the buttons window so that there is a sequence editing specific panel that shows the current options for the sequence editor. For example, a chroma key node is selected, the node panel would have the controls for it available for that node. There would also be a sequencer render options node, which would remove the sequencer rendering options from the render panel making more room for upcoming options and allow a seperation of video formats from image formats. Some of the buttons would have to be linked, such as the resolution buttons. If you're rendering a CG sequence from blender and then importing it to the sequencer, you shouldn't have two places to let blender know that you're outputting a 640x480 image.
- IPO integration Each node should have the ability to animate it over time. The IPO editor lends itself to this perfectly. Need to add a Sequencer componets (nodes) to the IPO selector. Each node type will have different types of IPO, but idealy, every parameter should be animatable.
This should include IPOs for transformation data. -- Test.MicahFitch#14Jun105_MF
Bob (-- RobertHolcomb - 20 Jan 2005)
I've just started looking at the blender source recently, and was thinking of adding [Matroska] support to blender as my first project. As a multimedia container format it has a lot to recommend it, and usage seems to be picking up (if a perusal of some of the more popular torrent sites is any indicator, at least). I had gotten as far as adding a panel with controls for compression options before I saw this page. What you're working on is probably too ambitious for me given that I've yet to grok the Blender code, but I look forward to seeing the results!
I also looked at [UCI] while researching; though it hasn't produced working code AFAIK, the idea is interesting and might provide some ideas for the design of a general codec interface. An integrated subtitle editor as part of the sequencer would be cool (especially if it output subtitle streams directly into an .mkv, or as [USF]), as would lipsyncing functionality akin to [Magpie]. I can think of some neat applications for an embedded phoneme stream in a video file...
Anyways, good luck!
Rob (-- RobertMedeiros - 10 Mar 2005)
Hey Bob, It's great you are doing this! If I could code I would love to help! One thing I can see as being very useful and a base for more advanced tools is transform and IPOs in the sequencer. This would simply include scale, rotate and grab. I have added it to stage 2 and added IPO integration in stage 3. I hope you see this as a good idea also! Another idea would be to add transformation with node implementation. This might be easier.
I think that adding transformation tools now will allow for easier camera tracking plugins or even integrated tools far in the future!
Micah Fitch (-- MicahFitch - 14 Jun 2005)