~ubuntu-branches/ubuntu/saucy/gstreamer0.10/saucy

« back to all changes in this revision

Viewing changes to docs/design/part-element-transform.txt

  • Committer: Package Import Robot
  • Author(s): Sebastian Dröge
  • Date: 2011-12-11 18:52:12 UTC
  • mfrom: (32.1.14 experimental)
  • Revision ID: package-import@ubuntu.com-20111211185212-3k215ps4qtyz2qa5
Tags: 0.10.35.2-1
* New upstream pre-release:
  + debian/control.in:
    - Build-depend on GLib >= 2.24.
  + debian/patches/99_ltmain_as-needed.patch:
    - Refreshed to apply cleanly again.
  + debian/libgstreamer.symbols:
    - Update symbols file with new API.
* debian/rules:
  + Remove all dependency_libs from the .la files (Closes: #633319).
* debian/control.in:
  + Put GI package into section introspection.
* debian/compat,
  debian/control.in,
  debian/gir1.2-gstreamer.install,
  debian/libgstreamer-dev.install,
  debian/libgstreamer.install,
  debian/patches/79_multiarch-backwards-compat.patch,
  debian/patches/80_ia32-hack.patch,
  debian/rules:
  + Transition package to multi-arch (Closes: #647481).
    Patch taken from the Ubuntu package.

Show diffs side-by-side

added added

removed removed

Lines of Context:
25
25
Some transform elements can operate in different modes:
26
26
 
27
27
 - passthrough (no changes are done on the input buffers)
28
 
 - in-place (changes made directly to the incomming buffers without requiring a
 
28
 - in-place (changes made directly to the incoming buffers without requiring a
29
29
   copy or new buffer allocation)
30
30
 - metadata changes only 
31
31
 
266
266
        input buffer is transformed into the output buffer. The flow is exactly
267
267
        the same as the case with the same-caps negotiation. (DCC)
268
268
 
269
 
We can immeditatly observe that the copy transform states will need to
 
269
We can immediately observe that the copy transform states will need to
270
270
allocate a buffer from a downstream element using pad-alloc. When the transform
271
271
element is receiving a non-writable buffer in the in-place state, it will also
272
272
need to perform a pad-alloc. There is no reason why the passthrough state would
300
300
in-place transform when the input buffer is not writable or the input buffer
301
301
size is smaller than the output size.
302
302
 
303
 
We are left with the last case (proxy an incomming pad-alloc or not). We have 2
 
303
We are left with the last case (proxy an incoming pad-alloc or not). We have 2
304
304
possibilities here:
305
305
 
306
306
   - pad-alloc is called with the same caps as are currently being handled by
413
413
    
414
414
    Given a caps and a size on one pad, and a caps on the other pad, calculate
415
415
    the size of the other buffer. This function is able to perform all size
416
 
    transforms and is the prefered method of transforming a size.
 
416
    transforms and is the preferred method of transforming a size.
417
417
 
418
418
  - get_unit_size()
419
419