[prev in list] [next in list] [prev in thread] [next in thread] 

List:       helix-datatype-cvs
Subject:    [Datatype-cvs] tools/dtdriver/engine/pub csrcsplt.h,1.7,1.8
From:       ehyche () helixcommunity ! org
Date:       2009-05-26 1:34:49
Message-ID: 200905260239.n4Q2dPNI010493 () mailer ! progressive-comp ! com
[Download RAW message or body]

Update of /cvsroot/datatype/tools/dtdriver/engine/pub
In directory cvs01.internal.helixcommunity.org:/tmp/cvs-serv8145/engine/pub

Modified Files:
	csrcsplt.h 
Log Message:
Description
----------------------------------------------
This change fixes various issues found with transcoding
H.264 in FLV files and thumbnail generation using the Flash-player-based FLV renderer. Changes include:

- Fix problem in FLV file format where we fail to issue
  a StreamDone() on the audio stream when fetching packets
  during thumbnail generation. This was causing a dtdrplin hang.
- Call IHXUntimedRenderer::SetUntimedRendering twice when initializing
  the renderer in the video decoder in the dtdrive. The reason is that
  some renderers need to know whether or not they will be doing
  untimed rendering BEFORE receiving the OnHeader() (such as renderers
  that can use either software or hardware decoders). However, some
  renderers need to receive OnHeader() before knowing how to properly
  return the call to SetUntimedRendering (such as the FLV renderer). We
  solve this conflict by calling SetUntimedRendering twice - once before
  OnHeader() and once after.
- Since we are calling it twice, we move the call to SetUntimedRendering()
  and related logic to a common method.
- When we compute the minimum output timestamp in the source splitter
  we need to take into account the StartTime.
- In the source splitter, we should allow streams that are blocked to
  always send their packets through to the processor. That's because
  they are only going to get thrown away anyway, so there's no need
  to queue them up at all.

Files Modified
----------------------------------------------
datatype/flash/flv/fileformat/flv_file_format.cpp
datatype/tools/dtdriver/decoder/video/vdecoder.cpp
datatype/tools/dtdriver/decoder/video/pub/vdecoder.h
datatype/tools/dtdriver/engine/csrcsplt.cpp
datatype/tools/dtdriver/engine/pub/csrcsplt.h

Branches
----------------------------------------------
HEAD, 310Atlas, and 204Cay



Index: csrcsplt.h
===================================================================
RCS file: /cvsroot/datatype/tools/dtdriver/engine/pub/csrcsplt.h,v
retrieving revision 1.7
retrieving revision 1.8
diff -u -d -r1.7 -r1.8
--- csrcsplt.h	13 Feb 2009 22:08:25 -0000	1.7
+++ csrcsplt.h	26 May 2009 01:34:46 -0000	1.8
@@ -492,6 +492,7 @@
     ULONG32 m_ulNumFileHeadersProcessed;
     ULONG32 m_ulNumStreamHeadersProcessed;
     ULONG32 m_ulNumTerminationsProcessed;
+    UINT32  m_ulStartTime;
     HX_RESULT m_statusTermination;
 
     CProcessorResponse** m_pProcessorResponseList;


_______________________________________________
Datatype-cvs mailing list
Datatype-cvs@helixcommunity.org
http://lists.helixcommunity.org/mailman/listinfo/datatype-cvs
[prev in list] [next in list] [prev in thread] [next in thread] 

Configure | About | News | Add a list | Sponsored by KoreLogic