<?xml version="1.0"?>
<rss version="2.0">
	<channel>
		<title>Announcement regarding APEG</title>
		<link>http://www.allegro.cc/forums/view/385191</link>
		<description>Allegro.cc Forum Thread</description>
		<webMaster>matthew@allegro.cc (Matthew Leverton)</webMaster>
		<lastBuildDate>Sun, 25 Jul 2004 15:02:59 +0000</lastBuildDate>
	</channel>
	<item>
		<description><![CDATA[<div class="mockup v2"><p>For those that may or may not know, APEG has been my little side-project-baby-thing for quite a while. When I last worked on it several moths ago, the code was in shambles. The audio playback was using my proprietary mixer streams since I was having problems using Allegro&#39;s audio streams skipping horrendously, I couldn&#39;t get the video and audio to sync up no matter what I did, I was experimenting with the new functionality&#39;s API, and by the time I set it down, I had the audio code completely disabled.</p><p>Much has happened since then, including a complete reinstall of Gentoo Linux. However, I decided yesterday to take a peak at the code and see if I could think of anything. Here&#39;s an update of what I&#39;ve done in the past 12 hours.</p><ul><li><p>Reenabled the audio</p></li><li><p>Fixed the audio streams (NOTE: you must be <i>very fast</i> with the stream buffer after get_audio_stream_buffer, especially under Unix/Linux)</p></li><li><p>Got the video and audio sync&#39;d up beautifully</p></li><li><p>Implemented audio playback for both the blocking and non-blocking player functions</p></li><li><p>Fixed various bugs relating to auidio/video playback</p></li></ul><p>&lt;/li&gt;<br />Not bad for a day&#39;s work, IMO. <img src="http://www.allegro.cc/forums/smileys/wink.gif" alt=";)" /></p><p>APEG&#39;s audio capabilities include:
</p><ul><li><p>Able to play layer 1, 2, <i>and 3</i> MPEG-1 streams, with or without video</p></li><li><p>3DNow! and MMX support (run-time detection for both, and MMX can also be forced on at compile time if you so wish)</p></li><li><p>1:1, 2:1, and 4:1 downsampled playback</p></li><li><p>Downchanneled playback</p></li></ul><p>&lt;/li&gt;<br />In essence, you could use just this instead of AllegroMP3, although APEG doesn&#39;t load MP3s into SAMPLE structs, or provide non-polled streaming (which really shouldn&#39;t be provided anyway, IMO). It does, however, support mp1 and mp2 files in addition to mp3s.</p><p>However, all is not currently sunny-happy-bright in the kingdom of APEG. There are a few glaring problems, one of which I have never run into before (and I know wasn&#39;t there when I last tried it before restarting work). For some reason, when exiting, pthreads will trigger a SIGABRT signal. I have no idea why or exactly where since there&#39;s no useable backtrace, even in debug mode. I have a feeling it&#39;s somewhat related to all the SIG32 signals I now get in gdb since I reinstalled Gentoo. Other problems are.. 1:1 playback is currently b0rked. I haven&#39;t had the opportunity to look into why yet, though 2:1 and 4;1 playback is fine. It&#39;s not quite multi-stream safe, yet (opening more than one audio stream will b0rk the program). The audio API isn&#39;t completely finished. And I haven&#39;t fully cleaned out the code from when it used to be a standalone, mpg123 lib example player.</p><p>But other than that, yeah. It&#39;s progressing much faster than I anticipated. Once I get the above issues worked out, expect to see a beta release. <img src="http://www.allegro.cc/forums/smileys/smiley.gif" alt=":)" />
</p></div>]]>
		</description>
		<author>no-reply@allegro.cc (Kitty Cat)</author>
		<pubDate>Mon, 19 Jul 2004 18:34:43 +0000</pubDate>
	</item>
	<item>
		<description><![CDATA[<div class="mockup v2"><p>Sweet KC... keep up the work on APEG <img src="http://www.allegro.cc/forums/smileys/smiley.gif" alt=":)" />
</p></div>]]>
		</description>
		<author>no-reply@allegro.cc (Steve Terry)</author>
		<pubDate>Mon, 19 Jul 2004 19:08:17 +0000</pubDate>
	</item>
	<item>
		<description><![CDATA[<div class="mockup v2"><p>Small appendature to the above: The 3DNow-enhanced 1:1 decoder is currently b0rked. The normal 1:1 decoder is fine. Unfortunately this means I&#39;ll have to dable in the asm to fix (or at least find the cause).. which isn&#39;t necesarrilly impossible..  I had to make a small adjustment to the MMX asm. Just don&#39;t hold your breath. <img src="http://www.allegro.cc/forums/smileys/tongue.gif" alt=":P" />
</p></div>]]>
		</description>
		<author>no-reply@allegro.cc (Kitty Cat)</author>
		<pubDate>Mon, 19 Jul 2004 19:30:23 +0000</pubDate>
	</item>
	<item>
		<description><![CDATA[<div class="mockup v2"><p>Wow! Great work - thanks a lot.
</p></div>]]>
		</description>
		<author>no-reply@allegro.cc (spellcaster)</author>
		<pubDate>Mon, 19 Jul 2004 21:32:13 +0000</pubDate>
	</item>
	<item>
		<description><![CDATA[<div class="mockup v2"><p>Do you have a download link or a link to the project page?
</p></div>]]>
		</description>
		<author>no-reply@allegro.cc (Steve Terry)</author>
		<pubDate>Mon, 19 Jul 2004 22:55:08 +0000</pubDate>
	</item>
	<item>
		<description><![CDATA[<div class="mockup v2"><p>The only page I have for it is at <a href="http://kcat.strangesoft.net/">http://kcat.strangesoft.net/</a>. Not much to look at, and the version there is an older version.
</p></div>]]>
		</description>
		<author>no-reply@allegro.cc (Kitty Cat)</author>
		<pubDate>Tue, 20 Jul 2004 07:09:27 +0000</pubDate>
	</item>
	<item>
		<description><![CDATA[<div class="mockup v2"><p>if you need testers, let me know.<br />i have a fairly robust system to test it with, including creating multi instances of it and playing them all back similtaneously.
</p></div>]]>
		</description>
		<author>no-reply@allegro.cc (A J)</author>
		<pubDate>Tue, 20 Jul 2004 11:55:52 +0000</pubDate>
	</item>
	<item>
		<description><![CDATA[<div class="mockup v2"><p>Ok, hopefully this will work elsewhere. The only issues there currently are are finalizing the new API parts and the dumb Abort message I get in Linux. Here&#39;s a pre-release of APEG 0.9, for your testing pleasure.</p><p><a href="http://kcat.strangesoft.net/apeg-src.tar.gz">http://kcat.strangesoft.net/apeg-src.tar.gz</a>  ~4.2MB with a test stream<br />or:<br /><a href="http://kcat.strangesoft.net/apeg-nostream-src.tar.gz">http://kcat.strangesoft.net/apeg-nostream-src.tar.gz</a>  ~82KB without a test stream (obviously useful only if you already have mpeg-1 videos)</p><p>The docs haven&#39;t really been updated since the last version. Just extract, run fix, then make (append DEBUGMODE=1 to make for a debug build). That&#39;ll build the lib and two example players.</p><p>What I would like you to be on the lookout for, other than the usual, is skipping, eratic pauses, etc.
</p></div>]]>
		</description>
		<author>no-reply@allegro.cc (Kitty Cat)</author>
		<pubDate>Thu, 22 Jul 2004 13:18:05 +0000</pubDate>
	</item>
	<item>
		<description><![CDATA[<div class="mockup v2"><p>using mingw   g++ (GCC) 3.2 (mingw special 20020817-1)<br />winXP, AMD2500+</p><p>D:\tmp\APEG_V~1&gt;fix mingw<br />Configuration script to setup the proper makefile for DJGPP or MinGW.</p><p>Configuring for MinGW...<br />Done! Type &#39;make&#39; to start compiling.</p><p>D:\tmp\APEG_V~1&gt;set DEBUGMODE=1</p><p>D:\tmp\APEG_V~1&gt;make<br />gcc -DDEBUGMODE -MMD -W -Wall -Iinclude -g3 -o obj/mingw/display.o -c src/displa<br />y.c<br />In file included from src/display.c:19:<br />include/mpeg1dec.h:196: parse error before &quot;byte&quot;<br />include/mpeg1dec.h:196: warning: no semicolon at end of struct or union<br />include/mpeg1dec.h:196: warning: no semicolon at end of struct or union<br />include/mpeg1dec.h:203: parse error before &#39;*&#39; token<br />include/mpeg1dec.h:203: warning: type defaults to `int&#39; in declaration of `pcm_s<br />ample&#39;<br />include/mpeg1dec.h:203: warning: data definition has no type or storage class<br />include/mpeg1dec.h:208: parse error before &#39;}&#39; token<br />include/mpeg1dec.h:208: warning: type defaults to `int&#39; in declaration of `audio<br />&#39;<br />include/mpeg1dec.h:208: warning: data definition has no type or storage class<br />include/mpeg1dec.h:209: parse error before &#39;}&#39; token<br />include/mpeg1dec.h:209: warning: type defaults to `int&#39; in declaration of `APEG_<br />LAYER&#39;<br />include/mpeg1dec.h:209: warning: data definition has no type or storage class<br />src/display.c: In function `apeg_initialize_display&#39;:<br />src/display.c:77: `layer&#39; undeclared (first use in this function)
</p></div>]]>
		</description>
		<author>no-reply@allegro.cc (A J)</author>
		<pubDate>Thu, 22 Jul 2004 13:51:18 +0000</pubDate>
	</item>
	<item>
		<description><![CDATA[<div class="mockup v2"><p>Hmm.. I thought Windows compilers predefined byte. <img src="http://www.allegro.cc/forums/smileys/sad.gif" alt=":(" /> Oh well, here&#39;s a fixed file (put it in apeg&#39;s include dir, overwriting the old file).
</p></div>]]>
		</description>
		<author>no-reply@allegro.cc (Kitty Cat)</author>
		<pubDate>Thu, 22 Jul 2004 14:03:21 +0000</pubDate>
	</item>
	<item>
		<description><![CDATA[<div class="mockup v2"><p>D:\Documents and Settings\Steve Terry\Desktop\apeg\apeg&gt;gcc -v<br />Reading specs from D:/Dev-cpp/mingw32/bin/../lib/gcc-lib/mingw32/3.2/specs<br />Configured with: ../gcc/configure --with-gcc --with-gnu-ld --with-gnu-as --host=<br />mingw32 --target=mingw32 --prefix=/mingw --enable-threads --disable-nls --enable<br />-languages=f77,c++,objc,ada --disable-win32-registry --disable-shared<br />Thread model: win32<br />gcc version 3.2 (mingw special 20020817-1)</p><p>[snip]<br />gcc -DDEBUGMODE -MMD -W -Wall -Iinclude -g3 -o obj/mingw/vbrhead.o -c src/audio/<br />vbrhead.c<br />gcc -o obj/mingw/dct36_3dnow.o -c src/audio/dct36_3dnow.s<br />src/audio/dct36_3dnow.s: Assembler messages:<br />src/audio/dct36_3dnow.s:30: Warning: .type pseudo-op used outside of .def/.endef<br /> ignored.<br />src/audio/dct36_3dnow.s:30: Warning: rest of line ignored; first ignored charact<br />er is `d&#39;<br />gcc -o obj/mingw/dct64_3dnow.o -c src/audio/dct64_3dnow.s<br />src/audio/dct64_3dnow.s: Assembler messages:<br />src/audio/dct64_3dnow.s:13: Warning: .type pseudo-op used outside of .def/.endef<br /> ignored.<br />src/audio/dct64_3dnow.s:13: Warning: rest of line ignored; first ignored charact<br />er is `d&#39;<br />gcc -o obj/mingw/dct64_MMX.o -c src/audio/dct64_MMX.s<br />gcc -o obj/mingw/dct64_i486-a.o -c src/audio/dct64_i486-a.s<br />src/audio/dct64_i486-a.s: Assembler messages:<br />src/audio/dct64_i486-a.s:8: Warning: .type pseudo-op used outside of .def/.endef<br /> ignored.<br />src/audio/dct64_i486-a.s:8: Warning: rest of line ignored; first ignored charact<br />er is `d&#39;<br />gcc -o obj/mingw/decode_3dnow.o -c src/audio/decode_3dnow.s<br />src/audio/decode_3dnow.s: Assembler messages:<br />src/audio/decode_3dnow.s:30: Error: unknown pseudo-op: `.local&#39;<br />src/audio/decode_3dnow.s:31: Warning: rest of line ignored; first ignored charac<br />ter is `,&#39;<br />src/audio/decode_3dnow.s:34: Warning: .type pseudo-op used outside of .def/.ende<br />f ignored.<br />src/audio/decode_3dnow.s:34: Warning: rest of line ignored; first ignored charac<br />ter is `b&#39;<br />src/audio/decode_3dnow.s:35: Warning: .size pseudo-op used outside of .def/.ende<br />f ignored.<br />src/audio/decode_3dnow.s:35: Warning: rest of line ignored; first ignored charac<br />ter is `b&#39;<br />src/audio/decode_3dnow.s:40: Warning: .type pseudo-op used outside of .def/.ende<br />f ignored.<br />src/audio/decode_3dnow.s:40: Warning: rest of line ignored; first ignored charac<br />ter is `s&#39;<br />make: *** [obj/mingw/decode_3dnow.o] Error 1
</p></div>]]>
		</description>
		<author>no-reply@allegro.cc (Steve Terry)</author>
		<pubDate>Fri, 23 Jul 2004 06:54:37 +0000</pubDate>
	</item>
	<item>
		<description><![CDATA[<div class="mockup v2"><p>Alright. Hopefully I got the problems sorted out. At least I got one report of a successful windows build. The archives were updated:</p><p><a href="http://kcat.strangesoft.net/apeg-src.tar.gz">http://kcat.strangesoft.net/apeg-src.tar.gz</a><br />or:<br /><a href="http://kcat.strangesoft.net/apeg-nostream-src.tar.gz">http://kcat.strangesoft.net/apeg-nostream-src.tar.gz</a></p><p>Just to reiterate.. it is not complete. Some functionality is not complete, and it is not recommended you use this in your programs (though I won&#39;t stop you if you really want to). If this works, it shouldn&#39;t be too long before a real release.</p><p>Oh yes.. this should work under OSX again too, hopefully.
</p></div>]]>
		</description>
		<author>no-reply@allegro.cc (Kitty Cat)</author>
		<pubDate>Fri, 23 Jul 2004 11:17:54 +0000</pubDate>
	</item>
	<item>
		<description><![CDATA[<div class="mockup v2"><p>excellent work, it compiles on winXP now, with mingw 3.2</p><p>next problem...</p><div class="source-code snippet"><div class="inner"><pre>D:\tmp\APEG_V~<span class="n">2</span>\examples&gt;exsimple.exe <span class="s">"Digital Skateboarding - #10 Everyday Skate Videos.mpg"</span>

D:\tmp\APEG_V~<span class="n">2</span>\examples&gt;ren <span class="s">"Digital Skateboarding - #10 Everyday Skate Videos.mpg"</span> d.mpg

D:\tmp\APEG_V~<span class="n">2</span>\examples&gt;exsimple.exe d.mpg
</pre></div></div><p>

it failed to load my skate mpg, so i renamed it to d.mpg and it worked.<br />so there is something wrong with using spaces or long filenames.
</p></div>]]>
		</description>
		<author>no-reply@allegro.cc (A J)</author>
		<pubDate>Fri, 23 Jul 2004 13:09:45 +0000</pubDate>
	</item>
	<item>
		<description><![CDATA[<div class="mockup v2"><p>I think it has to do with the # in the filename. Allegro&#39;s packfile routines expect everything before it to be a datafile, and everything after to be a datafile object. I&#39;ll try to remember to bring this issue up on AD.
</p></div>]]>
		</description>
		<author>no-reply@allegro.cc (Kitty Cat)</author>
		<pubDate>Fri, 23 Jul 2004 13:20:54 +0000</pubDate>
	</item>
	<item>
		<description><![CDATA[<div class="mockup v2"><p>I get an average of 50% frames skipped on windowed and fullscreen playback and the sound is a bit staticy but it&#39;s looking good though.</p><p>AMD Athlon 1900+<br />512MB RAM<br />Nvidia Ti 4400
</p></div>]]>
		</description>
		<author>no-reply@allegro.cc (Steve Terry)</author>
		<pubDate>Sat, 24 Jul 2004 02:28:38 +0000</pubDate>
	</item>
	<item>
		<description><![CDATA[<div class="mockup v2"><p>Update. <img src="http://www.allegro.cc/forums/smileys/smiley.gif" alt=":)" /> This uses a different timing technique which seems to keep it better in sync and hopefully those systems that had a lot of frames dropped won&#39;t be so bad anymore. The docs have also been updated, though it&#39;s still not complete.</p><p><a href="http://kcat.strangesoft.net/apeg-src.tar.bz2">http://kcat.strangesoft.net/apeg-src.tar.bz2</a><br />or:<br /><a href="http://kcat.strangesoft.net/apeg-nostream-src.tar.bz2">http://kcat.strangesoft.net/apeg-nostream-src.tar.bz2</a></p><p>Note they&#39;re bz2 format now, so the old gz urls won&#39;t work.
</p></div>]]>
		</description>
		<author>no-reply@allegro.cc (Kitty Cat)</author>
		<pubDate>Sun, 25 Jul 2004 08:55:20 +0000</pubDate>
	</item>
	<item>
		<description><![CDATA[<div class="mockup v2"><p>I got the following warnings (MinGW v3.2.3):</p><div class="source-code"><div class="toolbar"></div><div class="inner"><table width="100%"><tbody><tr><td class="number">1</td><td>src<span class="k3">/</span>mpeg1dec.c: In function `apeg_reset_stream<span class="s">':</span></td></tr><tr><td class="number">2</td><td><span class="s">src/mpeg1dec.c:397: warning: argument `sequence'</span> might be clobbered by `<a href="http://www.delorie.com/djgpp/doc/libc/libc_546.html" target="_blank">longjmp</a><span class="s">'</span></td></tr><tr><td class="number">3</td><td><span class="s"> or `vfork'</span></td></tr><tr><td class="number">4</td><td>&#160;</td></tr><tr><td class="number">5</td><td>...</td></tr><tr><td class="number">6</td><td>&#160;</td></tr><tr><td class="number">7</td><td>gcc <span class="k3">-</span>x assembler-with-cpp <span class="k3">-</span>DASM_PREFIX\<span class="k2">(</span>x\<span class="k2">)</span><span class="k3">=</span>_##x <span class="k3">-</span>o obj<span class="k3">/</span>mingw<span class="k3">/</span>decode_3dnow.o <span class="k3">-</span>c</td></tr><tr><td class="number">8</td><td>src<span class="k3">/</span>audio<span class="k3">/</span>decode_3dnow.s</td></tr><tr><td class="number">9</td><td>C:\DOCUME~<span class="n">1</span>\ROBERT~<span class="n">1</span>\LOCALS~<span class="n">1</span>\Temp<span class="k3">/</span>ccWyaaaa.s: Assembler messages:</td></tr><tr><td class="number">10</td><td>C:\DOCUME~<span class="n">1</span>\ROBERT~<span class="n">1</span>\LOCALS~<span class="n">1</span>\Temp<span class="k3">/</span>ccWyaaaa.s:38: Warning: <a href="http://www.allegro.cc/manual/rest" target="_blank"><span class="a">rest</span></a> of <a href="http://www.allegro.cc/manual/line" target="_blank"><span class="a">line</span></a> ignored<span class="k2">;</span></td></tr><tr><td class="number">11</td><td> first ignored character is `,<span class="s">'</span></td></tr><tr><td class="number">12</td><td><span class="s">gcc -x assembler-with-cpp -DASM_PREFIX\(x\)=_##x -o obj/mingw/decode_i586.o -c s</span></td></tr><tr><td class="number">13</td><td><span class="s">rc/audio/decode_i586.s</span></td></tr><tr><td class="number">14</td><td><span class="s">C:\DOCUME~1\ROBERT~1\LOCALS~1\Temp/ccwnaaaa.s: Assembler messages:</span></td></tr><tr><td class="number">15</td><td><span class="s">C:\DOCUME~1\ROBERT~1\LOCALS~1\Temp/ccwnaaaa.s:38: Warning: rest of line ignored;</span></td></tr><tr><td class="number">16</td><td><span class="s"> first ignored character is `,'</span></td></tr><tr><td class="number">17</td><td>gcc <span class="k3">-</span>x assembler-with-cpp <span class="k3">-</span>DASM_PREFIX\<span class="k2">(</span>x\<span class="k2">)</span><span class="k3">=</span>_##x <span class="k3">-</span>o obj<span class="k3">/</span>mingw<span class="k3">/</span>decode_MMX.o <span class="k3">-</span>c sr</td></tr><tr><td class="number">18</td><td>c<span class="k3">/</span>audio<span class="k3">/</span>decode_MMX.s</td></tr><tr><td class="number">19</td><td>gcc <span class="k3">-</span>x assembler-with-cpp <span class="k3">-</span>DASM_PREFIX\<span class="k2">(</span>x\<span class="k2">)</span><span class="k3">=</span>_##x <span class="k3">-</span>o obj<span class="k3">/</span>mingw<span class="k3">/</span>equalizer_3dnow.o</td></tr><tr><td class="number">20</td><td><span class="k3">-</span>c src<span class="k3">/</span>audio<span class="k3">/</span>equalizer_3dnow.s</td></tr><tr><td class="number">21</td><td>gcc <span class="k3">-</span>x assembler-with-cpp <span class="k3">-</span>DASM_PREFIX\<span class="k2">(</span>x\<span class="k2">)</span><span class="k3">=</span>_##x <span class="k3">-</span>o obj<span class="k3">/</span>mingw<span class="k3">/</span>tabinit_MMX.o <span class="k3">-</span>c s</td></tr><tr><td class="number">22</td><td>rc<span class="k3">/</span>audio<span class="k3">/</span>tabinit_MMX.s</td></tr><tr><td class="number">23</td><td>C:\DOCUME~<span class="n">1</span>\ROBERT~<span class="n">1</span>\LOCALS~<span class="n">1</span>\Temp<span class="k3">/</span>ccWyaaaa.s: Assembler messages:</td></tr><tr><td class="number">24</td><td>C:\DOCUME~<span class="n">1</span>\ROBERT~<span class="n">1</span>\LOCALS~<span class="n">1</span>\Temp<span class="k3">/</span>ccWyaaaa.s:11: Warning: <a href="http://www.allegro.cc/manual/rest" target="_blank"><span class="a">rest</span></a> of <a href="http://www.allegro.cc/manual/line" target="_blank"><span class="a">line</span></a> ignored<span class="k2">;</span></td></tr><tr><td class="number">25</td><td> first ignored character is `,<span class="s">'</span></td></tr><tr><td class="number">26</td><td><span class="s">C:\DOCUME~1\ROBERT~1\LOCALS~1\Temp/ccWyaaaa.s:13: Warning: rest of line ignored;</span></td></tr><tr><td class="number">27</td><td><span class="s"> first ignored character is `,'</span></td></tr></tbody></table></div></div><p>

<i>explay</i> works fine graphically, but sound is still awful, you hear like static.</p><p>With MinGW 2.95.3-6, fails here:</p><div class="source-code snippet"><div class="inner"><pre>gcc <span class="k3">-</span>x assembler-with-cpp <span class="k3">-</span>DASM_PREFIX\<span class="k2">(</span>x\<span class="k2">)</span><span class="k3">=</span>_##x <span class="k3">-</span>o obj<span class="k3">/</span>mingw<span class="k3">/</span>dct36_3dnow.o <span class="k3">-</span>c s
rc<span class="k3">/</span>audio<span class="k3">/</span>dct36_3dnow.s
src<span class="k3">/</span>audio<span class="k3">/</span>dct36_3dnow.s:10: unterminated character constant
src<span class="k3">/</span>audio<span class="k3">/</span>dct36_3dnow.s:19: unterminated character constant
make: <span class="k3">*</span><span class="k3">*</span><span class="k3">*</span> <span class="k2">[</span>obj<span class="k3">/</span>mingw<span class="k3">/</span>dct36_3dnow.o<span class="k2">]</span> Error <span class="n">1</span>
</pre></div></div><p>

Though I would not worry for this one, I guess I have something old there.
</p></div>]]>
		</description>
		<author>no-reply@allegro.cc (ReyBrujo)</author>
		<pubDate>Sun, 25 Jul 2004 09:08:06 +0000</pubDate>
	</item>
	<item>
		<description><![CDATA[<div class="mockup v2"><div class="quote_container"><div class="title">Quote:</div><div class="quote"><p>warning: argument `sequence&#39; might be clobbered by `longjmp&#39; or `vfork&#39;</p></div></div><p>
If anyone can provide me with a -W switch to shut this warning up, I&#39;d be grateful. <img src="http://www.allegro.cc/forums/smileys/smiley.gif" alt=":)" /> There&#39;s no risk of &#39;sequence&#39; being improperly used since the function returns immediately if it longjmp&#39;s back there.</p><div class="quote_container"><div class="title">Quote:</div><div class="quote"><p>Warning: rest of line ignored;  first ignored character is `,&#39;</p></div></div><p>
Okay, I don&#39;t know what&#39;s wrong with these. The lines that are producing this warning are:
</p><div class="source-code snippet"><div class="inner"><pre>.<span class="k1">long</span> <span class="n">1</span>  <span class="c">// two of these</span>
.data
intwinbase:
</pre></div></div><p>there&#39;s no commas at all, even on the lines right after it.</p><p>As for the sound static, I don&#39;t know.. what if you try downsampling (-downsample 1 or 2 with explay)? If that doesn&#39;t fix it, then could you try building with NO_ASM (make sure to make clean before this)?</p><div class="quote_container"><div class="title">Quote:</div><div class="quote"><p>src/audio/dct36_3dnow.s:10: unterminated character constant</p></div></div><p>
It seems the preprocessor is behaving differently. Older versions seem to be treating &#39; as a character constant, even in # comment lines. I&#39;ll try and clear this up (I didn&#39;t really expect # asm comments to work right with the preprocessor anyway).
</p></div>]]>
		</description>
		<author>no-reply@allegro.cc (Kitty Cat)</author>
		<pubDate>Sun, 25 Jul 2004 09:25:56 +0000</pubDate>
	</item>
	<item>
		<description><![CDATA[<div class="mockup v2"><p>About the sound issue, I would wait until someone else tries with their files, most of my files are MPEG-2, these are old ones. Using downsample helps, so it might be static sound present already in the sample.</p><p>How you got those lines are the ones triggering the warnings? Oh, and I have no idea how to skip that warning.</p><p>(Edited: compiled fine with GCC v3.2.2 under Mandrake, and sound lacks there too, guess it is the stream. Warning with the clobber stuff, but the assembler was fine).
</p></div>]]>
		</description>
		<author>no-reply@allegro.cc (ReyBrujo)</author>
		<pubDate>Sun, 25 Jul 2004 09:42:54 +0000</pubDate>
	</item>
	<item>
		<description><![CDATA[<div class="mockup v2"><p>The code around the clobber warning line is this:
</p><div class="source-code snippet"><div class="inner"><pre><span class="k1">int</span> apeg_reset_stream<span class="k2">(</span>APEG_STREAM <span class="k3">*</span>stream, <span class="k1">int</span> sequence<span class="k2">)</span>
<span class="k2">{</span>
  APEG_LAYER <span class="k3">*</span>layer <span class="k3">=</span> stream-&gt;layer<span class="k2">;</span>
  <span class="k1">int</span> ret<span class="k2">;</span>

  <span class="k1">if</span><span class="k2">(</span><span class="k2">(</span>ret <span class="k3">=</span> <a href="http://www.delorie.com/djgpp/doc/libc/libc_703.html" target="_blank">setjmp</a><span class="k2">(</span>jmp_buffer<span class="k2">)</span><span class="k2">)</span> <span class="k3">!</span><span class="k3">=</span> <span class="n">0</span><span class="k2">)</span>
    <span class="k1">return</span> ret<span class="k2">;</span>

  <span class="c">// If sequence_num is less than 0, reset to the current stream</span>
  <span class="k1">if</span><span class="k2">(</span>sequence <span class="k3">&lt;</span> <span class="n">0</span><span class="k2">)</span>
    sequence <span class="k3">=</span> stream-&gt;sequence<span class="k2">;</span>
...
</pre></div></div><p>It probably has to do with some optimization GCC is trying, because debug builds don&#39;t produce the warning. <img src="http://www.allegro.cc/forums/smileys/sad.gif" alt=":(" /></p><p>And when you say downsampling helps with the static, does that mean it goes away or is just less noticeable? If it goes away, there might be a problem with the 1:1 decoder being selected (do you have 3dnow and mmx? Allegro&#39;s tests/test program will say). What about the stream that&#39;s in with the examples (if you downloaded that version)?</p><p>(EDIT: the code boxes seem to like adding extra line breaks when I use tab characters. <img src="http://www.allegro.cc/forums/smileys/sad.gif" alt=":(" />)
</p></div>]]>
		</description>
		<author>no-reply@allegro.cc (Kitty Cat)</author>
		<pubDate>Sun, 25 Jul 2004 09:57:49 +0000</pubDate>
	</item>
	<item>
		<description><![CDATA[<div class="mockup v2"><p>Any search for the warning gives the same result: reestructurate the code for not using setjmp, or don&#39;t use -Wall, like in <a href="http://lists.debian.org/debian-user/2002/01/msg05243.html">this</a> message.</p><p>Now, downsampling under Linux: 1 lowered the noise, 2 made it disappear. Under Windows, downsampling 1 or 2 makes no sound at all be generated.</p><p>(Edited: test.exe reports: CPU family: 1586 / cpuid/ FPU / cmov / SSE / SSE2 / MMX / MMX+ <s>-yep, Intel</s>-).</p><p>(Edited 2: And I was referring as to how you knew <i>.long</i> and so were the ones giving warnings).
</p></div>]]>
		</description>
		<author>no-reply@allegro.cc (ReyBrujo)</author>
		<pubDate>Sun, 25 Jul 2004 10:07:57 +0000</pubDate>
	</item>
	<item>
		<description><![CDATA[<div class="mockup v2"><div class="quote_container"><div class="title">Quote:</div><div class="quote"><p>Now, downsampling under Linux: 1 lowered the noise, 2 made it disappear. Under Windows, downsampling 1 or 2 makes no sound at all be generated.</p></div></div><p>
Okay, that makes little sense. The only difference between the downsampling modes are the decoder functions used and the audio stream&#39;s playback frequency. While the noise being lowered makes sense (and thus seems to indicate that it is the stream), it makes no sense to why Windows would lose sound.</p><div class="quote_container"><div class="title">Quote:</div><div class="quote"><p>Edited: test.exe reports: CPU family: 1586 / cpuid/ FPU / cmov / SSE / SSE2 / MMX / MMX+ --yep, Intel--</p></div></div><p>
Okay.. I disabled the 3dnow stuff and played a few streams.. it all sounds fine. So either you played a bad stream, or APEG&#39;s not properly decoding the stream for some resaon.</p><div class="quote_container"><div class="title">Quote:</div><div class="quote"><p>(Edited 2: And I was referring as to how you knew .long and so were the ones giving warnings).</p></div></div><p>
Because the warning message had line numbers. <img src="http://www.allegro.cc/forums/smileys/smiley.gif" alt=":)" /> And if the warnings were from the post-preprocessed assembly source, it would make even less sense since it would put the warning right in the middle of assembly code, where it would cause real problems.
</p></div>]]>
		</description>
		<author>no-reply@allegro.cc (Kitty Cat)</author>
		<pubDate>Sun, 25 Jul 2004 10:55:32 +0000</pubDate>
	</item>
	<item>
		<description><![CDATA[<div class="mockup v2"><p>I hate when anyone guesses unix tools because I have <i>sh.exe</i> in my path <img src="http://www.allegro.cc/forums/smileys/wink.gif" alt=";)" /></p><p>Now, compiling with <i>NO_ASM</i> increases notably the noise. And happens with some more mpeg files I had around. <i>-downsample</i> works here, though. They are played well enough with Media Player.</p><p>And since there is no , in the assemble clode, I still have my doubts about the lines you guessed...
</p></div>]]>
		</description>
		<author>no-reply@allegro.cc (ReyBrujo)</author>
		<pubDate>Sun, 25 Jul 2004 11:20:48 +0000</pubDate>
	</item>
	<item>
		<description><![CDATA[<div class="mockup v2"><div class="quote_container"><div class="title">Quote:</div><div class="quote"><p>I hate when anyone guesses unix tools because I have sh.exe in my path</p></div></div><p>
APEG doesn&#39;t. I might&#39;ve accidently slipped in a command that&#39;s needs unix/unix tools.. what is it?</p><div class="quote_container"><div class="title">Quote:</div><div class="quote"><p>Now, compiling with NO_ASM increases notably the noise. And happens with some more mpeg files I had around. -downsample works here, though. They are played well enough with Media Player.</p></div></div><p>
Somewhat makes sense, since the downsampling synth code is C anyway (the dct code is a different story, but I guess that means it&#39;s not the dct code if downsampling is just like before).</p><p>Also, out of curiousity, which sound driver are you using? The 4.0.3 default? What if you use the AllegMix driver?</p><div class="quote_container"><div class="title">Quote:</div><div class="quote"><p>And since there is no , in the assemble clode, I still have my doubts about the lines you guessed...</p></div></div><p>
Which is why I&#39;m completely baffled by it. Maybe it has something to do with the preprocessor..
</p></div>]]>
		</description>
		<author>no-reply@allegro.cc (Kitty Cat)</author>
		<pubDate>Sun, 25 Jul 2004 11:34:42 +0000</pubDate>
	</item>
	<item>
		<description><![CDATA[<div class="mockup v2"><p>Hmm... this is strange... I think it is because my sh.exe is outdated:</p><div class="quote_container"><div class="title">make said:</div><div class="quote"><p>gcc -x assembler-with-cpp -DASM_PREFIX\(x\)=_##x -o obj/mingw/dct36_3dnow.o -c s<br />rc/audio/dct36_3dnow.s<br />e:/utils/sh: D:/Compiler/Mingw/bin/gcc.exe: Not enough memory (ENOMEM)</p></div></div><p>

</p><div class="quote_container"><div class="title">make clean said:</div><div class="quote"><p>del obj\mingw*.*<br />e:/utils/sh: del: command not found<br />make: *** [clean] Error 127</p></div></div><p>

About the assembler error:</p><div class="source-code snippet"><div class="inner"><pre>D:\Compiler\Source\C\apeg\src\audio&gt;cpp decode_3dnow.s <span class="k3">&gt;</span> i.s

D:\Compiler\Source\C\apeg\src\audio&gt;as i.s
i.s: Assembler messages:
i.s:38: Warning: <a href="http://www.allegro.cc/manual/rest" target="_blank"><span class="a">rest</span></a> of <a href="http://www.allegro.cc/manual/line" target="_blank"><span class="a">line</span></a> ignored<span class="k2">;</span> first ignored character is `,<span class="s">'</span>
</pre></div></div><p>

Line 38 is <i>       .comm buffs.40,4352,32</i>.</p><p>(Edited: added the assembler error correctly)
</p></div>]]>
		</description>
		<author>no-reply@allegro.cc (ReyBrujo)</author>
		<pubDate>Sun, 25 Jul 2004 11:43:41 +0000</pubDate>
	</item>
	<item>
		<description><![CDATA[<div class="mockup v2"><p>Okay.. fixed the assembly warning messages. My asm reference says that .comm can accept an optional third parameter (for alignment), but apparently, mingw doens&#39;t like it. So I&#39;m just doing the alignment with .align.</p><p>And I confirmed it.. the static is <i>not</i> due to your stream. There&#39;s something funky MinGW is doing that Linux-GCC doesn&#39;t, is all that I can guess. I&#39;ll look through the code to see if there&#39;s anything non-standard it&#39;s doing.
</p></div>]]>
		</description>
		<author>no-reply@allegro.cc (Kitty Cat)</author>
		<pubDate>Sun, 25 Jul 2004 15:02:59 +0000</pubDate>
	</item>
</rss>
