版本更新记录与翻译 Beta版本更新 0.9.6b5 new! Foobar2000 0.9.5.6 Final 标准汉化版发布 标题格式化和媒体库查询表达式帮助
Foobar2000基础帮助中心
新手必看 FB2K小常识
Foobar2000汉化周年纪念版
无损音乐资源共享
插件集合帖
汉化团队插件发布帖
foobar2000全球资源搜索引擎
foobar2000扩展与主题支持beta
1/1页1 跳转到查看:1714
发新话题 回复该主题

fb2k 0.9X/0.8X开放接口|历史版本软件开发包

fb2k 0.9X/0.8X开放接口|历史版本软件开发包

foobar2000 OpenAL output component



Important note regarding an updated version compatible with foobar2000 0.9x:

There is currently NO version of the OpenAL output component for foobar 0.9x, the reason is that the SDK is in a very early state and that there is NO support for 3rd party output components. From the foobar2000 forum http://www.hydrogenaudio.org/forums/index.php?showtopic=42612# :


Peter (foobar2000 developer)

"In my opinion, current "output API" as used by the Kernel Streaming output is not ready for SDK inclusion and should not be used because of various design issues (flooding device list, no proper output switcher GUI) and will likely change with upcoming 0.9.X releases."



In other words, there will be NO 3rd party output components for foobar2000 0.9. So for now, please stay with foobar2000 0.83 if you want to use OpenAL as output API.

Update : Started a forum thread about it, read it here :    http://www.hydrogenaudio.org/forums/index.php?act=ST&f=34&t=43929



Current versions :   


V 0.81 (09.04.2004)


Download :

Download the latest version for foobar2000 V0.8x by clicking on this link :

foo_output_oal.zip



Requirements :



The OpenAL output component has the following software requirements .


  • The foobar2000 V0.8x application.

Installation :



Follow these steps to install and run the OpenAL component :



  • Unpack the ZIP file to a temporary directory.
  • Copy the DefOpenAL32.DLL to your foobar2000 installation directory. (this can be skipped if the soundcard supports OpenAL through driver DLL. If unsure, copy the DLL, it won't harm.)
  • Copy the foo_output_oal.dll to the "component" subdirectory of your  foobar2000 installation directory.
  • You need the C-Runtime DLL MSVCR71.DLL to run the component. If you don't have it download it here and copy it to your Windows/sytem(32) directory.
  • Start foobar2000, go to output preferences and choose OpenAL.
  • The component should autodetect the best rendering mode, feel free to edit the options in the configuration dialog.



Known limitations :

There are some known limitations  :
  • This version is only tested on Creative Audigy hardware with latest drivers and emulation driver. Other hardware may or may not work.
  • Only support for 8 and 16 Bit fixed-point samples on non nVidia nForce soundchips. This is a limitation of the OpenAL API V1.0.  24/32 bit support through nVidia extension (nForce1/2 only but see problem below)
  • Only support for 1 or 2 channels. This is a limitation of the OpenAL API V1.0.
  • It won't work with nForce APU with current drivers (2.45 or below). This is a driver bug and NOT a bug in my component. I filed a bug report to nVidia but never received an answer from nVidia. I'm still waiting for an updated driver or any hint from nVidia...here is a decription of the bug as send to nVidia by mail  :
<snip>


Bug description :

It isn't possible to create a OpenAL hardware device after creating/destroying the same device before in one process. This sequence will fail :

alCreateDevice()
...
alDestroyDevice()
alCreateDevice()

The second alCreateDevice will return a NULL pointer, the creation fails.

I modified the OpenALEnum sample from the nVidia Audio SDK to show the bug. There are only two changes to the original sample code.

1. I changed the name of the device because the latest OpenAL driver has changed the name too.
2. I loop the original code 10 times, two times would be enough to show the bug.

If there is any workaround for current drivers please let me know.

<snip>






Bug reports, comments and suggestions :

Use the official foobar2000 forum to discuss problems. You can find the forum here. I'm a regular visitor of this forum too.




Version history :
  •     V0.81 :
      • Some changes to OpenAL (de-)initialisation.
      • Removed some obsolete console messages
      • Based on foobar2000 SDK 0.81
  •     V0.8 :
      • Revised the configuration dialog
      • Based on foobar2000 SDK 0.8
  •     V0.71 :
      • Component now handles changes of bitrate, samplerate or channels during playback correctly
      • Fixed some possible crashes after a failure in OpenAL initialization
      • Updated DefOpenAL32.DLL to 0.9.9.5
      • Updated to new foobar2000 SDK.
      • Other minor changes.
      • Based on foobar2000 SDK 0.7.1
  •     V0.7 :
      • Added possibility to enable EAX effects for mono channel streams.
      • Changes to string handling related to changes in foobar SDK 0.7.
      • One unified version for WinNT and Win9x now.
      • Some changes to init code, this was a try to workaround the nVidia nForce driver bug.
      • Reverted back to original Creative OpenAL DLL.
      • Component is no longer static linked to C-runtime, so you need the MSVCR71.DLL to run it.
      • Synced component version to foobar2000 version.
      • Updated to new foobar2000 SDK.
      • Other minor changes.
      • Based on foobar2000 SDK 0.7
  •     V0.5 :
      • Added support for nVidia nForce APU 24/32 bit extension.
      • Updated to new foobar2000 SDK.
      • Other minor changes.
      • Based on foobar2000 SDK 0.62
  •     V0.4 :
      • Now the OpenAL32.DLL decides which device is the best to use.
      • Added more information about the OpenAL renderer to configuration dialog.
      • Optimized OpenAL32.DLL loading. This should reduce loading time of the component.
      • Updated to new foobar2000 SDK.
      • Removed emulation OpenAL32.DLL from Creative Labs and added OpenAL32.DLL build from latest CVS checkout.
      • Added README.TXT.
      • Other minor changes.
      • Based on foobar2000 SDK 0.61a
  •     V0.3 :
      • Added possibility to choose renderer in configuration dialog
      • Added some information about  the renderer in configuration dialog.
      • Added the ANSI version of the component for Win9x.
      • Added latest emulation OpenAL32.DLL library for software rendering to package, no need for an additional download anymore.
      • Removed some obsolete stuff.
      • Other minor changes.
      • Based on foobar2000 SDK 0.6
  •     V0.2 :
      • OpenAL32.DLL will be loaded dynamically now, loading of component won't fail if  OpenAL32.DLL isn't present on system.
      • Reduced memory footprint if component isn't used.
      • Changed AL context creation, this may increase output quality on certain cards.
      • Other minor changes
      • Based on foobar2000 SDK 0.6
  •     V0.1 :
      • Initial revision
      • Based on foobar2000 SDK 0.6
Links :

foobar2000 player :      http://www.foobar2000.org/

OpenAL Specification :    http://www.openal.org

中文站首发:http://www.foobar2000.com.cn
最后编辑foobar2000 最后编辑于 2007-09-15 20:26:00

TOP

 
1/1页1 跳转到
发表新主题 回复该主题