Hi,

I noticed http://www.cinelerra.org.
seems to be owned and operated by you.  If your still
interested in cinelerra, here is a synopsis of a patch I have
which appiles to cinelerra-4.


changes:

libmpeg3
has been recoded in C++ and renamed to libzmpeg3.  The C callable
interface is still available, but the program main must be C++. 
libzmpeg3 can be used in a threaded environment.

Scaling and
several new output formats are supported in video/output.C several
costly memory moves were either recoded, removed, or downscaled.

All of the reconstruction subfunctions are now accelerated using mmx.h and so 
no longer need to be in assembly language source files.

Subtitles were reworked and are now decoded if
 selected.

Closed captioning has been added to video/video.C using subtitle tracks.
  note: the library now uses X fonts, but this can be staticly built by
  specifying a Makefile compile switch.

Nav packets are now (to some extent) supported, for encrypted dvds.

Ifo support is a little more debugged.  The probe phase normally uses
  ifo table information, but some off brand dvds use bizarre generic
  configurations.  The empirical probe is still available if the
  environment variable "IFO_STREAM_PROBE" exists.

The low level io has been recoded as zio.C and supports single access
  threaded streaming data for dvb devices.

Dvb Mgt packets are now decoded (to some extent) in the stream probes.
  Added mpeg3_dvb_* api.  The empirical probe is still available if the
  environment variable "DVB_STREAM_PROBE" exists.

libpthread locks was
 replaced with direct calls to futex.

A couple of test programs have been included in the build directory.

Some improvements were added to slice buffer reading for speedup.

Seeking/Toc have been reworked somewhat to improve accuracy.

Raw MPEG transport streams can be directly captured.



*** cinelerra:
Dvb support has been added.  This caused record*.C to be recoded.
  The use of a remote server was removed.  Direct transport stream
  capture is available and easily captures stream data on my laptop.
  Transcoding still works, but only can keep up at ntsc and below
  on my laptop.

Dvb channel scanning is available (but somewhat unstable).

filempeg was modified to use some of the new features in libzmpeg3.

Device presentation timestamps can be used to sync frame data.
  This is selectable as a preference.

Dvb recording format
 parameters can follow the mpeg probe data.
  This is selectable as a preference.

audiodevice was modified.  Duplex was removed and made inherent.

An input monitoring capability was added to audioidevice.

5.1->2 downmixing is available in audiodevice for input/output.
  This feature can be enabled/disabled using the preferences.
  This is not really needed for cinelerra, since the patchbay does
  this already, but when recording device data the patchbay downmix
  is not available. An indicator appears in meters when downmixing.


I have looked at porting the patch to the version which is supported here, but 
to port my_cinelerra to cinelerra-4 would take a few days.  Also, Adam Williams 
has added a copyright notice to all of the files, but he has indicated to me 
that publishing a derivitive is fine with him.

If you are interested, or would
 like me to post this as a branch, or would just like a copy to evaluate...


I suggest that the port be accomplished by essentially calculating the 
differences for cinelerra2.1->my_cinelerra and then port these changes to 
cinelerra4+above_patch.  I estimate the mod to be ~100K-200K lines for 
{cinelerra, guicast, plugins} and that there are ~2K diffs which require manual 
attention.  Files record* would be summarily replaced.  I would retain the 
build structure of my_cinelerra, but recommend removing inactive files.

If this is unsavory, then perhaps just create a derivitive branch to expose the 
changes.




mailto:[email protected]




      

Reply via email to