From mvd at mylinux.com.ua  Mon Dec 13 07:07:36 2004
From: mvd at mylinux.com.ua (Maxim V. Dziumanenko)
Date: Mon Dec 13 07:05:24 2004
Subject: [Player-l10n] Localization HelixPlayer in Ukrainian (po-files)
Message-ID: <1102950456.29597.9.camel@tst>

Hi all.

I've translated HelixPlayer in Ukrainian.
Please, summit attached files to HelixPlayer source tree.

Thanks.
-- 
Maxim V. Dziumanenko 
-------------- next part --------------
A non-text attachment was scrubbed...
Name: hxplay.uk.po.bz2
Type: application/x-bzip
Size: 9711 bytes
Desc: not available
Url : http://lists.helixcommunity.org/pipermail/player-l10n/attachments/20041213/349efc3d/hxplay.uk.po.bin
-------------- next part --------------
A non-text attachment was scrubbed...
Name: libgtkhx.uk.po.bz2
Type: application/x-bzip
Size: 4863 bytes
Desc: not available
Url : http://lists.helixcommunity.org/pipermail/player-l10n/attachments/20041213/349efc3d/libgtkhx.uk.po.bin
From cyun at real.com  Tue Dec 14 09:49:33 2004
From: cyun at real.com (Cyrus Yun)
Date: Tue Dec 14 09:49:37 2004
Subject: [Player-l10n] Localization HelixPlayer in Ukrainian (po-files)
Message-ID: <5.1.0.14.2.20041214093106.02f95018@mailone.real.com>

Hello Maxim,

I am the Localization Program Manager at RealNetworks and will be handling 
your submission. You may send future emails to me directly.

I want to thank you for your interest in localizing the Helix Player into 
Ukrainian. We hope to add Ukrainian to our increasing language additions 
for our future releases. In order to make that possible, we need to follow 
through a few steps in quality control and completeness.

First, we have received your submission of the .po files (both hxplay and 
libgtkhx).

Second, we now need to evaluate the translations for accuracy, quality, and 
completeness. Every submission undergoes this process and this is normal. 
To facilitate this process, we need to have a glossary. You can create this 
from your already translated .po files using a utility called .poEdit, 
which you may already be familiar with:
http://prdownloads.sourceforge.net/poedit/poedit-1.3.1-setup.exe

poEdit can export the contents of the .po file into a table-based html 
file. By opening this html in Microsoft Excel (or any other spreadsheet 
application) and saving it as XLS or CSV format, you can easily generate a 
glossary file. Please provide me with this glossary.

Once received, I will get back to you within a week.

Thanks,
Cyrus Yun




From cyun at real.com  Tue Dec 14 10:07:16 2004
From: cyun at real.com (Cyrus Yun)
Date: Tue Dec 14 10:07:19 2004
Subject: [Player-l10n] My troubles during translation
Message-ID: <5.1.0.14.2.20041214100117.02f95a60@mailone.real.com>

Marcin,

I understand the frustration you encountered in creating the glossary. We 
have found a better and easier way to prepare the glossary using poEdit. 
Unfortunately, this realization came after your glossary submission. The 
latest LocKit101 now includes this info. We strive to find ways to improve 
the process of localization, and we will continue to listen to the comments 
from the HC and implement the best approaches.

Thank you,
Cyrus


From nichlurs at gmail.com  Sun Dec 19 05:31:29 2004
From: nichlurs at gmail.com (Zhen Liu)
Date: Sun Dec 19 14:38:02 2004
Subject: [Player-l10n] Helix player didn't convert strings to UTF8 correctly?
Message-ID: <9d68d65b041219053172eb84ff@mail.gmail.com>

Hi All,

My English is quite poor,don't laugh at me :)

I would like to point out that helix player can't display Chinese
titles correctly.If I open a file using Chinese title, or the clip
title is in Chinese, the console tells me that "Invalid UTF8...." ( I
can't remember, I will post it here next time). I have check the
source,and found that the program uses "g_convert" function to convert
a invalid UTF8 string:
str2 = g_convert(str1, strlen, "UTF8", "ISO8859-1", &in, &out, NULL);
please note that str1 is NOT always in ISO8859-1, maybe it is in GBK
or BIG5,etc..
I think it should be this:
str2 = g_locale_to_utf8(str1,strlen,&in,&out,NULL);
I also found that "recent_urls" and "favorites" have the same problem.
It seems that the program have not checked if url and other strings
are valid UTF8 strings (or convert them are required to print).

If I misunderstood author's thoughts, please point out.

btw: When you replay this mail, also cc to my address below, thanks!

-- 
Yours Sincerely                      http://nichlurs.blogchina.com
Zhen Liu                             nichlurs at gmail.com

From srikanth_sri420in at yahoo.co.in  Tue Dec 21 03:55:09 2004
From: srikanth_sri420in at yahoo.co.in (sri kanth)
Date: Wed Dec 22 09:46:14 2004
Subject: [Player-l10n] details about installation of helix player 1.0 gold
Message-ID: <20041221115509.39762.qmail@web8408.mail.in.yahoo.com>

please say me the details about installation procedure
of helix player 1.0 gold in linux environment.

please send me step by step and command that are used
in terminal



                                  


	
		
__________________________________ 
Do you Yahoo!? 
Yahoo! Mail - You care about security. So do we. 
http://promotions.yahoo.com/new_mail

From rmathew at real.com  Thu Dec 23 16:48:47 2004
From: rmathew at real.com (Rishi Mathew)
Date: Thu Dec 23 16:51:15 2004
Subject: [Player-l10n] Fwd: [Common-dev] CR: UTF16 to Unicode conversion
	functions
Message-ID: <6.1.2.0.2.20041223164729.038fc6f0@mailone.real.com>

Skipped content of type multipart/alternative-------------- next part --------------
? Makefile
? Umakefil.upp
? common_runtime.dsp
? common_runtime.dsw
? dbg32
? rel32
? vc60.idb
Index: hlxosstr.cpp
===================================================================
RCS file: /cvsroot/common/runtime/hlxosstr.cpp,v
retrieving revision 1.17
diff -u -w -r1.17 hlxosstr.cpp
--- hlxosstr.cpp	9 Jul 2004 18:21:24 -0000	1.17
+++ hlxosstr.cpp	24 Dec 2004 00:16:39 -0000
@@ -88,6 +88,20 @@
 static const unsigned int z_UTF8Bounds[] = {
     0, 0x80, 0x800, 0x10000, 0x200000, 0x4000000, 0x80000000};
 
+
+// UTF16 <-> Unicode conversion functions
+// Declare static tables and types needed by the UTF16 <-> Unicode functions
+#define UTF16_BOM_BE	0xFEFF
+#define UTF16_BOM_LE	0xFFFE
+#define UTF16_W_PREFIX_MASK	0xFC00
+#define UTF16_W1_PREFIX	0xD800
+#define UTF16_W2_PREFIX	0xDC00
+#define UTF16_W_VALUE_MASK 0x03FF
+#define UTF16_W_VALUE_BIT_NUM 10
+#define UTF16_BOUND_1 0x10000
+#define UTF16_BOUND_2 0x10FFFF
+
+
 static int UTF8toUnicode(const char* pIn, 
 			 int inSize,
 			 unsigned int& out)
@@ -214,6 +228,91 @@
     return bytesWritten;
 }
 
+/**************************************************************************************
+ * UTF16ToUnicode()
+ *
+ *Parameters:
+ *	const UINT16* pwIn:	[in] input UTF16 code array.
+ *	int iInSize:		[in] the number UTF16 in pwIn, iInSize is at least 1
+ *	UINT32* pdwOut:		[out] the result UICODE. 0 means the termination of the string
+ *	
+ *Return:
+ *	int : the number of UTF16 comsumed in this function. 0 means invalid code is met or no enough data in input buffer.
+ *
+ ************************************************************************************/
+static int UTF16BEToUnicode(const UINT16* pwIn, int iInSize,UINT32* pdwOut)
+{
+	UINT16 wUtf16[2];
+	const UINT8* pbTmp = (const UINT8*)pwIn;
+	
+	/* check input parameters */
+	
+	/* parse input string */
+	if(iInSize >= 1)	{
+		wUtf16[0] = (UINT16)*pbTmp++ << 8;
+		wUtf16[0] |= (UINT16)*pbTmp++;
+		if((wUtf16[0] & UTF16_W_PREFIX_MASK) != UTF16_W1_PREFIX)	{
+			*pdwOut = (UINT32)wUtf16[0];
+			return 1;
+		}
+		else if(iInSize>=2)	{
+			wUtf16[1] = (UINT16)*pbTmp++ << 8;
+			wUtf16[1] |= (UINT16)*pbTmp++;
+			if((wUtf16[1] && UTF16_W_PREFIX_MASK) ==  UTF16_W2_PREFIX)	{
+				*pdwOut = (UINT32)((wUtf16[0] & UTF16_W_VALUE_MASK) << UTF16_W_VALUE_BIT_NUM);
+				*pdwOut |= (UINT32)(wUtf16[1] & UTF16_W_VALUE_MASK);
+				return 2;
+			}
+		}
+	}
+	/* error code or input buffer empty, terminate */
+	*pdwOut = 0;
+	return 0;
+
+}
+
+/**************************************************************************************
+ * UTF16ToUnicode()
+ *
+ *Parameters:
+ *	const UINT16* pwIn:	[in] input UTF16 code array.
+ *	int iInSize:		[in] the number UTF16 in pwIn, iInSize is at least 1
+ *	UINT32* pdwOut:		[out] the result UICODE. 0 means the termination of the string
+ *	
+ *Return:
+ *	int : the number of UTF16 comsumed in this function. 0 means invalid code is met or no enough data in input buffer.
+ *
+ ************************************************************************************/
+static int UTF16LEToUnicode(const UINT16* pwIn, int iInSize,UINT32* pdwOut)
+{
+	UINT16 wUtf16[2];
+	const UINT8* pbTmp = (const UINT8*)pwIn;
+	
+	/* check input parameters */
+	
+	/* parse input string */
+	if(iInSize >= 1)	{
+		wUtf16[0] = (UINT16)*pbTmp++;
+		wUtf16[0] |= (UINT16)*pbTmp++ << 8;
+		if((wUtf16[0] & UTF16_W_PREFIX_MASK) != UTF16_W1_PREFIX)	{
+			*pdwOut = (UINT32)wUtf16[0];
+			return 1;
+		}
+		else if(iInSize>=2)	{
+			wUtf16[1] = (UINT16)*pbTmp++;
+			wUtf16[1] |= (UINT16)*pbTmp++ << 8;
+			if((wUtf16[1] && UTF16_W_PREFIX_MASK) ==  UTF16_W2_PREFIX)	{
+				*pdwOut = (UINT32)((wUtf16[0] & UTF16_W_VALUE_MASK) << UTF16_W_VALUE_BIT_NUM);
+				*pdwOut |= (UINT32)(wUtf16[1] & UTF16_W_VALUE_MASK);
+				return 2;
+			}
+		}
+	}
+	/* error code or input buffer empty, terminate */
+	*pdwOut = 0;
+	return 0;
+}
+
 static int ConvertUTF8ToUnicode(const char* pInBuf, 
 				int iInSize,
 				wchar_t* pOutWideBuf,
@@ -329,6 +428,89 @@
     return used_from_output;
 }
 
+ 
+/**************************************************************************************
+ * ConvertUTF16ToUTF8()
+ *
+ * Parameters:
+ *	UINT8* pbInCur		[in]: the input UTF8 buffer 
+ *	int iInSize	[in]: the size of pbInCur
+ *	UINT16* pwOut	[out]: the output UTF16 buffer
+ *
+ * Return:
+ *	int: the number of UTF8 (exclude termination char) in pbOut
+ *
+ *************************************************************************************/
+int ConvertUTF16ToUTF8(const UINT16* pwIn,int iInSize,UINT8* pbOut,int iOutSize,UTF16_TYPE Utf16Type)
+{
+	int iTmpConvertSize = 0;
+	int iUTF8Count = 0;
+	UINT16 wUtf16 = 0;
+	UINT32 dwUtf32 = 0;
+	
+	/* check parameters */
+	if(pwIn == NULL || pbOut == NULL || iInSize <= 2 || iOutSize<=2)
+		return 0;
+
+	/* determin type */
+	if(Utf16Type == UTF16)	{
+		const unsigned char* pbInCur = (const unsigned char*)pwIn;
+		if(pbInCur[0] == 0xFE && pbInCur[1] == 0xFF)
+			Utf16Type = UTF16BE;
+		else if(pbInCur[0] == 0xFF && pbInCur[1] == 0xFE)
+			Utf16Type = UTF16LE;
+		else
+			return 0;
+
+		/* move pointer to first UTF16 char */
+		pwIn += 1;
+		iInSize -= 1;
+	}
+	
+	/* parse string */	
+	while(1)	{
+		/* convert UTF16 to UTF32 */
+		if(Utf16Type == UTF16LE)	{
+			iTmpConvertSize = UTF16LEToUnicode(
+								pwIn,
+								iInSize,
+								&dwUtf32);
+		}
+		else	{
+			iTmpConvertSize = UTF16BEToUnicode(
+								pwIn,
+								iInSize,
+								&dwUtf32);
+		}
+		/* update pointer */
+		pwIn += iTmpConvertSize;
+		iInSize -= iTmpConvertSize;
+
+		/* check result */
+		if(iTmpConvertSize ==0 || dwUtf32 == 0)	{
+			/* convertion is terminate */
+			*pbOut++ = 0x00;
+			break;
+		}
+
+		/* convert UTF32 to UTF8 */
+		iTmpConvertSize = UnicodeToUTF8(
+								dwUtf32,
+								(char*)pbOut,
+								iOutSize-1);
+		if(iTmpConvertSize ==0)	{
+			/* convertion is terminate */
+			*pbOut++ = 0x00;
+			break;
+		}
+		pbOut += iTmpConvertSize;
+		iOutSize -= iTmpConvertSize;
+		iUTF8Count += iTmpConvertSize;
+	}
+
+	return iUTF8Count;
+}
+				
 int MultiByteToWideChar(UINT8 CodePage,        // code page
 			 ULONG32 dwFlags,       // character-type options
 			 const char* lpMultiByteStr, // string to map
Index: pub/hlxosstr.h
===================================================================
RCS file: /cvsroot/common/runtime/pub/hlxosstr.h,v
retrieving revision 1.7
diff -u -w -r1.7 hlxosstr.h
--- pub/hlxosstr.h	9 Jul 2004 18:21:21 -0000	1.7
+++ pub/hlxosstr.h	24 Dec 2004 00:16:39 -0000
@@ -154,4 +154,21 @@
 
 #endif /* __cplusplus */
 
+
+// UTF16 <-> Unicode conversion functions
+#ifdef __cplusplus
+extern "C" {
+#endif
+typedef enum	{
+	UTF16,
+	UTF16BE,
+	UTF16LE,
+} UTF16_TYPE;
+
+int ConvertUTF16ToUTF8(const UINT16* pwIn,int iInSize,UINT8* pbOut,int iOutSize,UTF16_TYPE Utf16Type);
+
+#ifdef __cplusplus
+}
+#endif
+
 #endif /* HLXOSSTR_H */
From mgarski at post.pl  Sun Dec 26 06:39:10 2004
From: mgarski at post.pl (Marcin Garski)
Date: Sun Dec 26 06:39:17 2004
Subject: [Player-l10n] details about installation of helix player 1.0 gold
In-Reply-To: <20041221115509.39762.qmail@web8408.mail.in.yahoo.com>
References: <20041221115509.39762.qmail@web8408.mail.in.yahoo.com>
Message-ID: <41CECD0E.3010506@post.pl>

sri kanth wrote:
> please say me the details about installation procedure
> of helix player 1.0 gold in linux environment.
> 
> please send me step by step and command that are used
> in terminal

Hi,

This mailing list is used for discussion of the Helix Player 
localization. If you want to ask end user question you should use 
player-users mailing list instead.

Installation Instructions can be obtained from:
https://player.helixcommunity.org/2004/unix/releases/hx1gold/HX1_0_2ReleaseNotes.html
-- 
Best Regards
Marcin Garski

 

Site Map   |   Terms of Use   |   Privacy Policy   |   Contact Us

Copyright © 1995-2007 RealNetworks, Inc. All rights reserved. RealNetworks and Helix are trademarks of RealNetworks.
All other trademarks or registered trademarks are the property of their respective holders.