Looks good.
At 06:55 PM 3/19/2008, Petar Basic wrote:
>Modified by: pbasic at real.com
>Date: 2008/03/20
>Project: strummer
>
>Synopsis: 3gp meta-data upgrades. dtdrplin synchronous
mode.
>Merge also includes a few bug-fixes (in affected files)
from the head branch.
>
>Overview:
>The change updates 3gp-related components to deal with
the full
>meta-data set specified by 3GPP Technical Specification
v7.2.0.
>
>- Rewrote/fixed UTF conversion utilities.
> -Wrote new UTF baseline converters (UTF8 <->
UTF32,
> UTF16 <-> UTF32, ASCII checkers) ->
"uniconv".
> -Removed old UTF baseline converters from
"hlxossstr".
> -Added wchar_t size-based dispatchers where necessary
for
> proper wchar_t <-> UTF conversion.
> -Removed old ConvertUTF16ToUTF8 interface from
"hlxossstr".
> -Added custom baseline wchar_t tools like
StringLengthW
> (and matching char versions for consistency) to
"hlxossstr",
> to have them available on all platforms.
> -Added more inline converter classes (UTF8 <->
wchar_t,
> CurrentCodePage <-> wchar_t, CurrentCodePage
<-> UTF8).
>
>- Added convenience-level tools for UTF string
inspection,
> duplication and conversion (uses
HX_TEXT_ENCODING_TYPE): "encstr".
>
>- Added convenience-level tools for IHXValues
data-transfer: "proptools".
>
>- Added ISO639.2/T language code tools:
"iso639".
>
>- Extended list of 3GP meta-data properties to v7.2.0
set.
>
>- Extended/fixed mp4 file format to properly deal with
> 3GP v7.2.0. meta-data.
> -Added method which extracts language encoding field
from all
> available atoms and deduces "global"
encoding; this is used as
> a workaround for per-atom language-encoding pathway
which is
> missing in the engine.
> -albm & yrrc atoms and language encoding
information are now
> transferred to the engine.
> -Fixed UTF16 string length calculation bugs.
> -Fixed bugs in SetPropertyOnHeader method.
>
>- Extended/fixed mp4 file writer to properly deal with
> 3GP v7.2.0. meta-data.
> -Refactored atom interfaces, added albm & yrrc
atoms.
> -Added UTF16 text output.
> -IHXValues properties are now passed from file-writer
to
> stream-mixer, so that stream-mixer can configure
itself.
>
>- Upgraded dtdriver engine.
> -Added "UTF16Output" option which signals
that the meta-data
> text should be written to the file in UTF16 format.
> -Added "Synchronous" option which signals
that the engine will be
> driven in synchronous mode.
> -Extended meta-data option transfer with full 3GP 7.2
atom set.
>
>- Added Synchronous mode support to dtdrplin.
> If synchronous mode is selected, the "Drive"
method does not exit
> immediately after setting-up a processing job.
Instead, it uses
> calling thread to perform the driving job. It returns
to the caller
> upon job completion or after occurrence of error
condition. This
> has been added to allow for easier integration in
cases where an
> application wants to use non-event-driven flow-control
model
> for meta-data processing.
> -Refactored CThreadCBMgr classes to derive from new
> CallbackManagerBase class.
> -Introduced CNonThreadCBMgr class which serves as a
pass-through
> to converter notifications.
>
>- Fixed reference-counting bugs in dtdrplin.
> Unix version of CThreadCBMgr::OnFileHeader,
> CThreadCBMgr::OnStreamHeader, CThreadCBMgr::OnPacket
were
> expecting equivalent CDataTypeConverter routines to
perform the
> IHXValues releases. Expecting non-local code to
clean-up is a bad
> strategy, but appart from that, old implementation was
clashing
> with Windows version of CThreadCBMgr which did not
have the needed
> AddRef-s. HX_RELEASE calls are moved from
CDataTypeConverter to
> unix version of CThreadCBMgr::OnFileHeader,
> CThreadCBMgr::OnStreamHeader, CThreadCBMgr::OnPacket.
>
>Files Modified:
>common/runtime/Umakefil
>common/runtime/hlxosstr.cpp
>common/runtime/pub/hlxosstr.h
>common/util/Umakefil
>common/util/pckunpck.cpp
>common/util/pub/pckunpck.h
>datatype/include/metainfokeys.h
>datatype/mp4/fileformat/qtffplin.cpp
>datatype/mp4/fileformat/qtatoms.cpp
>datatype/mp4/fileformat/qtatmmgs.cpp
>datatype/mp4/fileformat/pub/qtffplin.h
>datatype/mp4/fileformat/pub/qtatoms.h
>datatype/mp4/fileformat/pub/qtatmmgs.h
>datatype/mp4/filewriter/Umakefil
>datatype/mp4/filewriter/3gpmeta.h
>datatype/mp4/filewriter/mp4sm.h
>datatype/mp4/filewriter/mp4sm.cpp
>datatype/mp4/filewriter/mp4wrtr.cpp
>datatype_rn/mp4/filewriter/Umakefil
>datatype/tools/dtdriver/engine/Umakefil
>datatype/tools/dtdriver/engine/ffdriver.cpp
>datatype/tools/dtdriver/engine/pub/ffdriver.h
>datatype/tools/dtdriver/dtdrplin/platform/win/thrdcbmgr.
h
>datatype/tools/dtdriver/dtdrplin/platform/win/thrdcbmgr.
cpp
>datatype/tools/dtdriver/dtdrplin/platform/unix/thrdcbmgr
.h
>datatype/tools/dtdriver/dtdrplin/platform/unix/thrdcbmgr
.cpp
>datatype/tools/dtdriver/dtdrplin/pub/datatypedr.h
>datatype/tools/dtdriver/dtdrplin/datatypedr.cpp
>datatype/tools/dtdriver/dtdrplin/dtdr_genr_lib
>
>Files Added:
>common/util/uniconv.cpp
>common/util/encstr.cpp
>common/util/proptools.cpp
>common/util/iso639.cpp
>common/util/iso639_codes_inline.h
>common/util/pub/uniconv.h
>common/util/pub/encstr.h
>common/util/pub/proptools.h
>common/util/pub/iso639.h
>datatype/mp4/filewriter/3gpmeta.cpp
>datatype/tools/dtdriver/dtdrplin/cbmgr.h
>datatype/tools/dtdriver/dtdrplin/cbmgr.cpp
>
>Image Size and Heap Use impact:
>Small increase.
>
>Platforms and Profiles Affected:
>All
>
>Platforms and Profiles Build Verified:
>system id: win32-i386-vc7
>profile: helix-client-all-defines
>
>Branch:
>hxclient_3_1_0_atlas
>
>Copyright assignment:
>I am a RealNetworks employee or contractor.
>
>Content-Type: application/octet-stream;
name="common_runtime.diff"
>X-Attachment-Id: f_fe0o5td50
>Content-Disposition: attachment;
filename=common_runtime.diff
>
>Content-Type: application/octet-stream;
name="common_util.diff"
>X-Attachment-Id: f_fe0o65d01
>Content-Disposition: attachment;
filename=common_util.diff
>
>Content-Type: application/octet-stream;
name="datatype_include.diff"
>X-Attachment-Id: f_fe0o68u02
>Content-Disposition: attachment;
filename=datatype_include.diff
>
>Content-Type: application/octet-stream;
name="datatype_mp4_fileformat.diff"
>X-Attachment-Id: f_fe0o6cj93
>Content-Disposition: attachment;
filename=datatype_mp4_fileformat.diff
>
>Content-Type: application/octet-stream;
name="datatype_mp4_filewriter.diff"
>X-Attachment-Id: f_fe0o6fez4
>Content-Disposition: attachment;
filename=datatype_mp4_filewriter.diff
>
>Content-Type: application/octet-stream;
name="datatype_rn_mp4_filewriter.diff"
>X-Attachment-Id: f_fe0o6hii5
>Content-Disposition: attachment;
filename=datatype_rn_mp4_filewriter.diff
>
>Content-Type: application/octet-stream;
>name="datatype_tools_dtdriver_dtdrplin.diff"
>X-Attachment-Id: f_fe0o6lxd6
>Content-Disposition: attachment;
>filename=datatype_tools_dtdriver_dtdrplin.diff
>
>Content-Type: application/octet-stream;
>name="datatype_tools_dtdriver_engine.diff"
>X-Attachment-Id: f_fe0o6pxw7
>Content-Disposition: attachment;
filename=datatype_tools_dtdriver_engine.diff
>
>_______________________________________________
>Masf-restricted-dev mailing list
>Masf-restricted-dev lists.helixcommunity.org
>http://lists.helixcommunity.org/mailman/list
info/masf-restricted-dev
_______________________________________________
Helix-client-dev mailing list
Helix-client-dev helixcommunity.org
http://lists.helixcommunity.org/mailman/listinf
o/helix-client-dev
|