Archive for foobar2000

SSE enabled components

ANOTHER UPDATE:

foo_input_reverse 0.1.1 – added option in input preference, you can specified the threshold to decide if to decode to memory or temp disk file

ANOTHER UPDATE:

please re-download those files, there was a bug in them when I was optimizing the SDK lib

I’ve just made a new component for fun, foo_input_reverse, it will allow you to play songs in a reversed way, but only support files that have a fixed length.

also be warned, it decodes the file to memory before play, so it will take a lot of memory!
add a file location in the menu item (CTRL+U), then enter the way like mslive:
rev://|c:\1.mp3|/

—————————————————————————————————————————-
UPDATE:
here is the list of files that have been recompiled with SSE by Intel Compiler:

foo_dsp_crossfader
foo_dsp_skip_silence
foo_dsp_soundtouch
foo_dts
foo_input_awma (updated to 0.1.6.5)
foo_input_mslive (updated to 0.3.7)
foo_masstag_addons
foo_menu_addons.zip (updated to 0.3.9.1)

components that not in this list are basically abandoned by me, they won’t be updated, I just leave them in the server for people who want them only.
note that some of them need libmmd.dll, you can find it in my component post, download it, you’ll need it for any new update or components, read my component post for more info.
—————————————————————————————————————————-

recently, for my own foobar2000, I use the intel compiler to generate SSE enabled components (not SSE2), I found it’s quite suitable for components like dsp and input, because of its single precision floating point capability. and it’s obviously faster than those generated by the compiler by microsoft.
now, it’s your choice, do you want me to post SSE enabled components or remain no change?
if no response or objections, I’ll force everyone who uses my components to use the SSE version.

The advantage of the switching is of course the speed, the disadvantage is the file size will increase and some of them will require the “libmmd.dll” for the math calculations. but the VC runtime is still needed in both approach.
actually I quite wonder how many people will object, because the requirement of SSE is just a Pentium 3+ (or compatible, eg. AMD) computer.

anyway, leave your comment (don’t ask me to generate generic code and SSE code in the same dll, I don’t want to do this stupid thing for a single component).

Comments (15)

foo_input_mslive 0.3

* WMP7+ needed, also the requirements listed in my component post *

current version: 0.3.8

examples of valid stream urls:
mms://www.stream.com/stream
rtsp://www.stream.com/stream
mslive://|mms://www.stream.com/stream|/
mslive://|mms://www.stream.com/stream|live|/
mslive://|c:\stream.mp3|/

to avoid foobar uses other decoders, url like this:
“mms://www.stream.com/stream.wma” is recommended to be specified as “mslive://|mms://www.stream.com/stream.wma|/”

examples of valid asx playlist:
mslive://|http://www.stream.com/stream.asx|/
mslive://|http://www.stream.com/stream.asx|list|/
c:\stream.asx

“list” and “live” are to override the content type detected by mslive, list is playlist, live is stream.

change log

0.3.8
- added an option to suppress playlist specific dialogs
- fixed little memory leak

0.3.7
- fixed a bug that was introduced when fixing another bug

0.3.6
- fixed another tiny little bug

0.3.5
- fixed tiny little bug that try to play CDDA://

0.3.4
- fixed a minor bug of crashing from the Add Location dialog
- fixed incorrect display of utf-8 encoded asx

0.3.3
- fixed always play the same entry as if hide playlist entries is enabled
- “Add Location (mslive)” item now accepts mslive location syntax as well

0.3.2
- fixed opening asx file (no extension) transfered from browser, it can’t open

0.3.1
- fixed if server is busy, will give up trying other reference urls

0.3
- heavily rewrite
- ENTREF will not be expanded, even when tagging (only local asx is supported)
- only root asx entries will be listed, recursive asx will be handled internally
- support source switch and msn radio stream type
- dynamic display of meta data of the stream
- able to detect if is asx
- able to load asx to foobar from browser
- will loop through all the reference urls if the first cannot connect
- options now available under the input section in the foobar preference dialog
- option to show playlist entries as only one
- option to display the track info dynamically
- “Add Location (mslive)” item added to the main menu, simplify the need to add the weird url syntax

Comments (24)

foo_masstag_addons 0.3.3 released

0.3.3
- codepage combo boxes items are sorted now, it was auto sorted in xp, but in vista, it is a mess.

just to remind you, needs vc8 sp1 runtime libraries

Comments (12)

foo_dsp_crossfader 0.2 released

update:
0.2.6
- fixed when it’s gonna stop playback after the current one, the gap/silence at the end of the current song will be lost
- a bit more code optimisation

0.2.5.1
- fixed the crackle sound produced during track change when both gapless and fading enabled

0.2.5
- when gapless or fading is disabled, their memory buffers will be freed
- little code optimisation
- minor bugs fixed

0.2.4
- fixed the crackle sound produced during track change when both gapless and fading enabled
- during fading when encounter another track change, it will not crossfade now
- the name “Crossfader” is changed to “Gapless Crossfader”

0.2.3
- finally eliminated the annonying incorrect fading behavior
- slightly improved gap detection

0.2.2
- fixed incorrect fading implementation when gapless and fading both enabled
- fixed audio samples in buffer will not be played when encounters different sample rate
- fixed some other buffer managment problems

0.2.1
- for some fading length values would make incorrect output, now fixed
- little changes to the menu items

0.2
- resampling function removed
- integrated with foo_dsp_gapless, which is now discontinued
- some minor changes

Comments (4)

new component and one update

update:
foo_dsp_gapless 0.2
- rewrote, now behaves like the one in 0.8.3, even the setting.
so you should remove the current setting in foobar to avoid any unexpected errors

update:
foo_dsp_gapless 0.1.3
foo_dsp_crossfader 0.1.7.2
- they both had a common bug that produce white noise, now fixed.

update:
foo_dsp_gapless 0.1.2
- gaps will not be removed after seeking

update:
foo_dsp_gapless 0.1.1
foo_dsp_crossfader 0.1.7.1
- they both had a common bug, now fixed.

foo_dsp_gapless 0.1
- provides gapless playback, probably a lot of people has been long for this.

foo_dsp_crossfader 0.1.7
- added a resampling function internally, so different sample rate songs can have the fading effect.

Comments (19)

foo_menu_addons 0.3.9 released

update:
- jump group is moved to the EDIT main menu
- added a title format viewer

probably the update of this component is a bit too fast, but today I was customising the layout of foobar, I found it is quite handy if can have a title format evaluator next to you. I know in the foobar preference’s dialog already has one, but it just too inconvenient.
this is my new foobar look, it’s cool, isn’t it?

Comments (7)

foo_menu_addons 0.3.8 released

update:
1. invert select is moved out of selection group
2. jump and expand group now support genre
3. expand by user defined tag is now supported
4. added repeat A-B type of playback
更新:
1. invert select 搬離了selection組別
2. jump 和 expand 組別現支援genre
3. expand指令新增了使用者定義的tag
4. 新增了重播A-B這種播放方式

Comments (2)

my new components dependency

annoucement:
starting from foo_menu_addons 0.3.7, all of my update or new components will need the vc8 sp1 runtime libraries, it can be downloaded in my component post.

公告:
由foo_menu_addons 0.3.7開始, 以後我的新插件或更新一律需要vc8 sp1 runtime libraries, 它可在我的插件貼子中找到

Comments off

foo_menu_addons 0.3.7 released

NEW UPDATE:
version is now 0.3.7c, no code change, just reuse the new manifest.
vc8 sp1 runtime libraries is needed, can be downloaded in my component post.

新更新:
現在版本為0.3.7c, 沒有源碼改變, 只是再用新的manifest.
需要vc8 sp1 runtime libraries, 可在我的插件貼子中下載

update:
version is now 0.3.7b, increased the speed of expanding items.

更新:
現在版本為0.3.7b, 加快了播放列表項目擴張的速度

just little minor fixes:
1. jump commands didn’t work for the first playlist
2. jump previous wrongly set the first item focused if no focused item

小修正:
1. 跳躍指令對第一個播放列表失效
2. 如果沒有焦點了的播放列表項目, “跳到上一個”這指令會錯誤把第一個播放列表項目設為焦點

Comments (4)

foo_input_mslive version 0.2 released

plese report if this component works for you
請留言你是否能成功使用這個插件

Major Changes

  • the prefix has changed to “mslive://”, e.g “mslive://mms://www.radio.com/stream”
  • any media types can be tried to play with this component as long as the prefix is specified
  • for mms and rtsp, the prefix can be omitted
  • no more *.pls support, now only asx playlist is supported
  • no more implementation of filesystem, so problems related to that are gone

New Things

  • status/buffering dialog now is modeless, like the foobar preference dialog
  • support unicode/utf-8/ansi asx playlist (both read and write)
  • cue sheet like handling of asx playlist
  • fully support of asx/wax/wvx (virtually the same), even those do not follow the asx specification
  • support of asx playlist tagging (only “ARTIST”, “TITLE” and “COPYRIGHT”)

live stream
for mms and rtsp, because at the moment there are no components to handle them, it is safe to omit the mslive prefix.
so “mslive://mms://www.radio.com/stream” and “mms://www.radio.com/stream” are basically the same, unless any future components come in to take over, this will do well. but you must add the prefix for http stream.
so I suggest when playing http mp3 stream, use the default decoder, and when playing wma/asf stream, use this component.

like this:
“http://www.radio.com/stream.mp3″
“mslive://http://www.radio.com/stream.wma”

and remember, no tagging support

asx playlist
for local asx, the prefix is optional, you can just drag & drop it to foobar.
although if you don’t specify the prefix, it will still work for asx retrieved from http, it may just show one entry, which can be more than this, so I suggest you to specify it.

tagging is only supported for the meta data of “ARTIST”, “TITLE” and “COPYRIGHT” (as asx elements).
and while you are playing, you can’t tag, because you can’t seek.
after tagging, the ENTRYREF elements in the asx will be resolved as the actual ENTRY, and even if the asx file is just referencing urls, the tagged output file will be a valid asx file

Conclusion
if you want to explicitly use this component to play, you must add the prefix.
and if you are confused by when to use the prefix, that’s fine, just prefix “mslive://” anytime you need to use this component.

Happy Streaming~

重大改動

  • 舊有的前置標籤改為”mslive://”, 例如: “mslive://mms://www.radio.com/stream”
  • 任何媒體檔皆可以利用前置標籤來嘗試播放
  • 如果是mms或rtsp, 前置標籤可以省略
  • 不再支援*.pls, 現只支援asx

新東西

  • 狀態/緩衝對話框現在跟foobar的設置對話框一樣為非強制回應
  • 支援unicode/utf-8/ansi的asx播放列表
  • 和cue sheet相似的asx 播放列表處理方法
  • 完全支援asx/wax/wvx播放列表 (基本上一樣的東西), 那些不依規格的asx也基本上支援
  • 支援修改asx標籤 (僅 “ARTIST”, “TITLE” 和 “COPYRIGHT” 可修改)
  • 不再以filesystem的方法處理協議, 所以相關的問題沒有了


對於mms和rtsp的流, 前置標籤是可以省略的, 因為現在沒有插件支援它們, 所以foobar一定會找這個插件來播放. 除非在未來的日子有其他插件介入, 你可以一直省略前置標籤.
在目前, “mslive://mms://www.radio.com/stream” 和 “mms://www.radio.com/stream” 基本上一樣.
但是對於http的流, 就一定要有前置標籤. 我個人建議播放mp3流用回foobar本身的解碼, 對於wma/asf流就用我這個解碼. 即是:

http://www.radio.com/stream.mp3

mslive://http://www.radio.com/stream.wma

還有是修改標籤不適用於流

asx 播放列表
對於本機asx, 前置標籤可有可無, 你可以拖asx到foobar
雖然就算你不使用前置標籤, 也沒有播放上的問題, 但是如果asx內裝有不止一個曲目, 沒有使用前置標籤的, 只會顯示出一個, 這是foobar的http處理器的問題, 所以我建議你還是用好一點.

修改標籤只可以改 “ARTIST”, “TITLE” 和 “COPYRIGHT” (asx的元素), 當你在播放時不可以修改, 因為不能seek.

修改後出來的asx的ENTRYREF元素將會被實際ENTRY取代, 又如果asx檔本身只是一些reference urls, 修改後出來的檔案將是有效的
asx播放列表.

結論
如果你指定要用這個插件來播放, 你要使用前置標籤, 例如: “mslive://mms://www.radio.com/stream”.
但若是你對於前置標籤何時使用感到混亂, 沒問題, 你永遠用前置標籤就好了.

祝各位流得愉快~

Comments (14)

« Previous Page« Previous entries « Previous Page · Next Page » Next entries »Next Page »