Skip to content
Commits on Jan 16, 2012
  1. Make isStreamableV2() private (thanks Raptor399!)

    committed Jan 16, 2012
    Removed deprecated mark-up and made isStreamableV2() private. Also some
    corrections to related documentation.
  2. Improve efficiency of DLNAResource.addChild() method

    committed Jan 16, 2012
    With the knowledge of the relationship between isCompatible(),
    isStreamableV2(), and isSkipTranscode(); and also the peculiarity with it was possible to optimize the efficiency of the
    DLNAResource.addChild() method.
    Here, the isIncompatible variable is used to over-ride the relationship
    for WEB "formats".
  3. Improve decision for generating [NO TRANSCODE] child

    committed Jan 16, 2012
    The #TRANSCODE# folder is only generated for children of type video, so
    the child's format is never null. Similarly, the following relationship
    applies (we never deal with the WEB "format" here):
    isCompatible() = (isStreamableV2() || isSkipTranscode())
  4. Store the results for isStreamableV2() and isSkipTranscode() in the

    committed Jan 16, 2012
    These values describe the child and should be associated with it. This
    fixes a bug in, where
    justStreamed.isSkipTranscode() always returns false during the the [NO
    TRANSCODE] folder decision.
  5. A method for recalling media info results

    committed Jan 16, 2012
    Remove forceTranscodeV2. Use isStreamableV2() and setStreamableV2()
    The DLNAResource.isStreamableV2() method is intended to describe whether
    a resource's media info has support defined from it's default renderer.
    This value can be stored instead of continuously recalculating it.
  6. Prevent forceTranscodeV2 from returning false unless the media is in

    committed Jan 16, 2012
    fact streamable.
    This patch ensures/enforces the following relationship:
    Format.isCompatible() = isSkipTranscode() && !forceTranscodeV2
    The above relationship may be exploited in the future to enhance
    the efficiency of the code. The override of isCompatible() by
    currently prevents this (it is the only "format" which breaks the
    Motivation for use as exploit:
    See the addChild() method in and notice how the
    conditional statements reduce when applying this relationship. The same
    applies for
    Additionally, there is more control over when
    RendererConfiguration.match() and Format.skip() are executed.
Commits on Jan 15, 2012
  1. @Raptor399
  2. @Raptor399

    Updated CHANGELOG

    Raptor399 committed with Jan 15, 2012
  3. @Raptor399
  4. @Raptor399

    Removing skip() override introduced in 562fdb8.

    Raptor399 committed with Jan 15, 2012
    The method interfered with the correctness of isCompatible() and its
    backwards compatibility with ps3compatible().
    On top of that the comment seemed to want to force transcoding, where
    in reality returning true ended up forcing streaming. To remove this
    paradox and to restore control to each individual renderer
    configuration the method has been removed, bringing the code in line
    with all other formats.
  5. @Raptor399
  6. @Raptor399
  7. @Raptor399

    Removed outdated comments

    Raptor399 committed with Jan 14, 2012
  8. @Raptor399
  9. @Raptor399

    Moved isCompatible() implementation to Format.

    Raptor399 committed with Jan 14, 2012
    Removed the overrides of it in all formats. Also verified that the
    PS3.conf correctly mimicks the behavior of ps3compatible(), meaning the
    new isCompatible() should correctly mimicks the behavior of
    ps3compatible() for the PS3 in particular.
    Other renderers may notice different behavior now that the hardcoded
    behavior of ps3compatible() is gone. That is a side effect of the
    newly won possiblity to truly configure compatibility per renderer.
  10. @Raptor399
  11. @Raptor399
  12. @Raptor399
  13. @SubJunk
  14. @Raptor399

    Updated FFmpeg build.

    Raptor399 committed Jan 15, 2012
    Also improved PMS build instructions.
Commits on Jan 12, 2012
  1. @Raptor399

    Merge pull request #8 from ExSport/master

    Raptor399 committed Jan 11, 2012
    Ability of defining CustomMencoderOptions on renderer level
  2. @ExSport
  3. @ExSport

    CustomMencoderOptions defined on renderer level added.

    ExSport committed Jan 12, 2012
    Added info to Renderer.conf for hidden params.
Commits on Jan 11, 2012
  1. @Raptor399

    Enabled build information again (thanks, smo!)

    Raptor399 committed Jan 12, 2012
    Eclipse warns about the execution of the plugin, but it is executed
    by Maven nevertheless. Building works on Windows and OSX.
Commits on Jan 10, 2012
  1. @Raptor399
Commits on Jan 9, 2012
  1. @SubJunk

    Increment year

    SubJunk committed Jan 10, 2012
  2. @SubJunk
  3. @SubJunk

    Updated JRE autodownload to 7u2 from 7u1

    SubJunk committed Jan 10, 2012
    Improves reliability, performance and Firefox compatibility
  4. @SubJunk

    Tweak settings language

    SubJunk committed Jan 10, 2012
  5. @Raptor399

    Disabled build information.

    Raptor399 committed Jan 10, 2012
    Due to a problem with the maven-git-commit-id-plugin not running on the
    "initialize" phase in the pom.xml the git properties are not replaced
    with proper values in the project properties files.
    See: ktoso/maven-git-commit-id-plugin#22
  6. @Raptor399

    Whitespace nitfix

    Raptor399 committed Jan 10, 2012
Commits on Jan 8, 2012
  1. @Raptor399
  2. @Raptor399
  3. @Raptor399

    Adding Executor to enforce serial processing and limiting the number …

    Raptor399 committed Dec 10, 2011
    …of channel handling threads to 1 to avoid concurrency issues.
    This should fix issue 1156 for the HTTP V2 engine.
    Logging reveals that multiple threads can be involved in handling the same request.
    The PMS code has not been designed to handle one request with multiple threads in parallel.
    As a result concurrency issues arise at random locations, several ArrayOutOfBoundsExceptions
    and NullPointerExceptions have been reported at places where they should not occur in a
    single thread environment.
    To avoid concurrency issues this commit limits the number of pool threads to 1.
    Performance does not seem to take a hit from this change.
    Also, it is still possible to stream to multiple clients at the same time.
Commits on Jan 7, 2012
  1. @Raptor399
Something went wrong with that request. Please try again.