[prev in list] [next in list] [prev in thread] [next in thread]
List: helix-datatype-cvs
Subject: [Datatype-cvs] mp4/payload pcmpyld.cpp,1.1.4.3,1.1.4.4
From: tianguan () helixcommunity ! org
Date: 2013-08-08 7:32:54
[Download RAW message or body]
Update of /cvsroot/datatype/mp4/payload
In directory cvs01.internal.helixcommunity.org:/tmp/cvs-serv10418/payload
Modified Files:
Tag: hxclient_3_1_0_atlas
pcmpyld.cpp
Log Message:
Summary: [RPD-850][RP_jupiter_Playback]: Pop up AutoUpdate then nothing output for \
someone mov (H264_BP+PCM) clip
Bug: NA
Review: Y
Popup AU and cannot play mov files with sowt pcm audio, this mov is generated by some \
dv device
Root cause:
1. Assume the opaque data in file header is 44 bytes long, but it is not true, the \
length is not fixed, we should count it from the "size" field. 2. The sample size \
calculated by parsing 'stsd' or 'sdsz' atom is not accurate or reliable.
Index: pcmpyld.cpp
===================================================================
RCS file: /cvsroot/datatype/mp4/payload/pcmpyld.cpp,v
retrieving revision 1.1.4.3
retrieving revision 1.1.4.4
diff -u -d -r1.1.4.3 -r1.1.4.4
--- pcmpyld.cpp 7 May 2010 04:16:02 -0000 1.1.4.3
+++ pcmpyld.cpp 8 Aug 2013 07:32:31 -0000 1.1.4.4
@@ -104,9 +104,15 @@
res = pHeader->GetPropertyBuffer("OpaqueData", pBuffer);
if (SUCCEEDED(res ))
{
- if (pBuffer->GetSize() == WAVOPAQUEHEADER::static_size())
+ ULONG32 ulBufferSize = pBuffer->GetSize();
+ m_OpaqueDataWavHeader.unpack(pBuffer->GetBuffer(), ulBufferSize);
+ //the data before usSize is 8 bytes, refer to WAVOPAQUEHEADER in \
pcmpyld.h + // UINT8 usVersion; 1 byte
+ // UINT8 usFlags[3]; 3 bytes
+ // UINT32 usEntriesCount; 4 bytes
+ //then UINT32 usSize; totaly 8 bytes before usSize
+ if((m_OpaqueDataWavHeader.usSize + 8) == ulBufferSize)
{
- m_OpaqueDataWavHeader.unpack(pBuffer->GetBuffer(), \
pBuffer->GetSize()); res = HXR_OK;
if (m_OpaqueDataWavHeader.usDataFormat != WAV_FOURCC('a', 'l', 'a', \
'w') &&
m_OpaqueDataWavHeader.usDataFormat != WAV_FOURCC('u', 'l', \
'a', 'w'))
_______________________________________________
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