[JUL 13][APP][ALPHA4] Nitrogen 1.1 (music player for Windows Mobile)

Search This thread

microfi

Senior Member
Aug 30, 2008
364
5
Mococa
OCT 27 - Dudes, I'm not dead (as some of you might think)! I'm just taking a break from Nitrogen development because I'm scarcely having any spare time to work over it as I'm studying to pass the college entrance exams (yeah!) which take place next month. So please be patient because I'll resume coding as soon as possible! If you want some news: I could successfully decode MP3 using libmad with no GSPlayer code! This means Nitrogen will soon read Album Art images from ID3v2 tags and most glitches should disappear! I'm also working on an improved plugin framework.

*
*

Microfi Nitrogen 1.1 (July 13, 2009)
(Nitrogen is licensed under GNU General Public License)

mushipkw has worked on a Nitrogen homepage with skin and language gallery! This way, you won't need to post files here and wait for me to update the topic (which is something I also didn't like;)). So, we are proud to annouce:
http://nitrogen.wmskins.com/
Please post your language files and skins there!


*
*

Click on the image below to start downloading!

[More languages/plugins/skins - See Post #2]
[Large files bug - click here to download fix]

What's new:
Now playing MP3/OGG/WMA/WAV/AAC/MP4/M4U files (with included GSPlayer plugins);
Multilanguage support (English/Portuguese-BR built-in, but more languages available on Post #2);
Many memory leaks and bugs were fixed;
Now handling large album art files;
Now remembers last playing position;
(and much more!)


Tip: many features are now accessible through long-tap (tapping and holding for a while): fast-forward and rewind, advanced playlist actions and so on!



For more skins, visit the official skin thread!


If you want to add Nitrogen to your website, please include the XDA-Developers URL, the new homepage URL and the donation URL, as seen below:
Microfi Nitrogen is a native Windows Mobile application (unmanaged code) that allows you to play MP3/OGG/AAC/MP4/M4A/3GP/WAV/WMA songs stored on your Pocket PC device.
It features a file browser, full skin support, smart shuffle and repeat modes, a 10-band equalizer with preset support (8 included presets), built-in sleep mode, a blank screen command to prevent energy waste while playing music and many more new features. Nitrogen uses the MAD/OVD decoders, which are opensource. As the official releases of MAD for Pocket PC seem to be discontinued, Nitrogen uses the libraries from an opensource player (GSPlayer).
Nitrogen was build due to the lack of finger-friendly players for Pocket PC (you have to use stylus even for simple tasks). It features large buttons and you can browse among your playlist by drawing circles on the screen (using skins which support wheel component). In future releases the program will be expected to have other extensions support and more features, but such things are still being tested to ensure stability and efficiency.

Key features
:: Full MP3/OGG/AAC/MP4/M4A/3GP/WAV/WMA playback;
:: Customizable interface with skin support;
:: 10-band equalizer with 8 presets (MP3 only);
:: Large and easy-to-use buttons;
:: Media browser with playlist editor;
:: Large menus to perform tasks with the fingers;
:: Kinetic scrolling;
:: Smart shuffle and repeat modes;
:: Adjustable sleep timer;
:: Amazingly fast to load and to play;
:: Blank screen command to save energy;
:: Native C++ code: no need for .NET framework;
:: Extremely lightweight;
:: File association support;
:: Album art support;
:: Opensource;
:: Multilanguage support;

Please donate if you like the player:
HTML:
https://www.paypal.com/cgi-bin/webscr?cmd=_s-xclick&hosted_button_id=2016778
Check out the official website:
HTML:
http://nitrogen.wmskins.com/
Check out the official XDA-Developers thread:
HTML:
http://xdaforums.com/showthread.php?t=523505

ss.jpg

 

Attachments

  • nmax-qvga-joint.zip
    116.9 KB · Views: 3,771
  • nmax-vga-joint.zip
    375.1 KB · Views: 3,191
  • nitrogen-1.2-wm5-alpha2.cab
    1,006.4 KB · Views: 10,527
Last edited:
  • Like
Reactions: navcar and danilogi

microfi

Senior Member
Aug 30, 2008
364
5
Mococa
Support

Other languages (thanks to XDA members!)
[Please visit http://nitrogen.wmskins.com/ for new languages and to post your own!]


Bulgarian (by Mihof33): Download
Czech (by tampiss): Download - Mirror
Danish (by mikaelwinther): Download - Mirror
Dutch (by kuifje): Download - Mirror
Dutch (by WMH): Download - Mirror
French (by kidoucorp): Download - Mirror
French (by Ang3lo): Download
German (by ChrisXP): Download
German (by DeVisible): Download - Mirror
Greek (by dancer_69): Download - Mirror
Italian (by simoneser): Download - Mirror
Korean (by Sean Lee): Download
Polish (by piotrrz): Download - Mirror
Romanian (by axxelxavier): Download
Russian (by prewed): Download - Mirror
Serbian (by Uros Gojkovic): Download Latin - Download Cyrillic
Simplified Chinese (by guoguo89757): Download - Mirror
Spanish (by davitino): Download - Mirror
Swedish (by norrgrd): Download
Traditional Chinese (by Paul Chen): Download
Traditional Chinese (by PinguW): Download
Turkish (by Resolute): Download



How to install: download the NLG file (or the ZIP file containing it, then extract the NLG file) and copy it to your device, in the folder "\Program Files\Nitrogen\lang" (if you installed Nitrogen on your device memory) or "\Storage Card\Program Files\Nitrogen\lang" (if you installed Nitrogen on storage card). Now run Nitrogen, tap the "Options" softkey, choose "Settings" and then "Language selector". Choose your language:).

Plugins

GSPFLAC - Allows FLAC playback (thanks to Dai_Shan for finding): Sourceforge.net page
GSPMIDI - Allows MIDI playback (not tested yet): GSPlayer page

How to install: download the DLL file (or the ZIP file containing it, then extract the DLL file) and copy it to your device, in the folder "\Program Files\Nitrogen\plugins" (if you installed Nitrogen on your device memory) or "\Storage Card\Program Files\Nitrogen\plugins" (if you installed Nitrogen on storage card). Now run Nitrogen, and your desired media extension will be available:).

Skins

Click here to go to the skins page.

Translate Nitrogen to your language

You may help Nitrogen development by downloading our translation tool, and posting here or sending me an e-mail with the NLG file. This way, your translation will be added in future versions.

For AVRCP users

You may control Nitrogen through AVRCP using AVRCP Agent (by Wolfman-XP). You'll need to configure the agent like this:
Code:
Path to application: "\Program Files\Nitrogen\Nitrogen.exe" (if you installed on the device memory)
Window name: "Nitrogen"
Play: 40001
Forward: 40003
Backward: 40002

For wired headphone users

You may control Nitrogen through wired headphone button using PlayPause mod (thanks to Zepiii).

For developers

Nitrogen now stores the current song info under the following registry key:
Code:
HKEY_LOCAL_MACHINE\System\State\Nitrogen
The registry values are the following:
:: AlbumArtFilename - contains the album art filename of the current song; if no album art was found, this value is "(none)";
:: MusicCode - contains a number that increases whenever the current song changes. This way, developers can check whether they need to update the song info on their programs or not;
:: PlayStatus - may assume the following values:
0 - paused and the current song is not the paused one;
1 - paused and the current song is the paused one;
2 - playing, but the current song is not the playing one;
3 - playing and the current song is the playing one;
(for general purpose, you should display a "Play" button when PlayStatus is 0, 1 or 2, and a "Pause" button when it's 3).
:: Running - 1 when Nitrogen is running, and 0 when it's not;
:: SongArtist - Contains the current song artist;
:: SongTitle - Contains the current song title;
:: TimeElapsed - Contains the elapsed song time (secs);
:: TimeTotal - Contains the total song time (secs);

You can control Nitrogen through the following messages:

:: WM_NTG_ISPLAYING = WM_USER+3001
:: :: wParam = 0; lParam = 0
:: :: Returns 1 when a song is playing;
:: WM_NTG_GETCURRENT = WM_USER+3002
:: :: wParam = 0; lParam = 0
:: :: Returns a LONG in which the low-order is the current song position (secs) and the high-order is the total song time (secs);
:: WM_NTG_SETCURRENT = WM_USER+3003
:: :: wParam = new song time (secs); lParam = 0
:: :: Returns 1 if successful;
:: WM_NTG_GETVOLUME = WM_USER+3005
:: :: wParam = 0; lParam = 0
:: :: Returns the current volume (0~100);
:: WM_NTG_SETVOLUME = WM_USER+3006
:: :: wParam = new volume (0~100) if lParam = 0
:: :: wParam = delta volume (-100~100) if lParam = 1 (relative volume)
:: :: Sets the current volume, and returns 0;
:: WM_NTG_GETMUSICCODE = WM_USER+3007
:: :: wParam = 0; lParam = 0
:: :: Returns a number that increases whenever the current song changes;

Also, you can perform common button tasks with WM_COMMAND messages:
:: ECMD_PLAYPAUSE (WM_COMMAND; wParam = 40001; lParam = 0)
:: :: Simulates a click on the Play/Pause button;
:: ECMD_PREVSONG (WM_COMMAND; wParam = 40002; lParam = 0)
:: :: Simulates a click on the Previous Song button;
:: ECMD_NEXTSONG (WM_COMMAND; wParam = 40003; lParam = 0)
:: :: Simulates a click on the Next Song button;
:: ECMD_VOLUMEDOWN (WM_COMMAND; wParam = 40004; lParam = 0)
:: :: Simulates a click on the Volume Down button;
:: ECMD_VOLUMEUP (WM_COMMAND; wParam = 40005; lParam = 0)
:: :: Simulates a click on the Volume Up button;

For ROM cookers

If you want to include Nitrogen on your ROM distribution, you may set custom skins and config directory (if you want to put the EXE under "\Windows") by adding the following registry keys:
Code:
HKLM\Software\Nitrogen\SkinsPath = {new skins path}
HKLM\Software\Nitrogen\FilesPath = {new config/playlist/presets path}
HKLM\Software\Nitrogen\LangsPath = {new languages path}
Don't forget to add a slash after the path ("\Windows\Nitrogen\" instead of "\Windows\Nitrogen", for instance).
 
Last edited:
  • Like
Reactions: danilogi

microfi

Senior Member
Aug 30, 2008
364
5
Mococa
FAQ

:: I have feature requests and/or want to notify a bug. What do I do?
:: :: First, check if your bug is not yet listed on the "known issues". If you want to suggest a new feature, check if it is not yet listed on the "Coming soon", "Under research" or "Feature requests". If you've found them there, please know I'm working on them to make them available/fixed soon! If not, please ask a question on the forum.

:: How do I include subfolders on my playlist?
:: :: On the Media browser, choose the "Options" softkey and check the option "Recursive search". Now, all commands (Play current folder, Append current folder and so on) will include subfolders.

:: Where are the advanced playlist functions I was used to?
:: :: You need to perform a long-tap (tapping and holding for a while) on the media browser or playlist editor items so that a context menu will pop-up with many advanced options.

:: How do I go to the root directory on the Media browser?
:: :: You must click on the title of the Media browser screen (which contains the current directory).

:: I have questions concerning skins. Where should I ask?
:: :: There is a thread intended for skins questions/requests/comments. Take a look on the FAQ contained there, and if you still have questions, post them on that thread.

:: I want Nitrogen to keep playing after I press the device's "Power" button to blank screen.
It's known that Nitrogen keeps playing if you are using headphones, but not when you're listening to songs through the loudspeaker. That's because the device turns off the loudspeaker while the display is off. You can fix this by setting the following registry entry:
Code:
HKEY_LOCAL_MACHINE\System\CurrentControlSet\Control\Power\State\Unattended\wav1: = 0
And Nitrogen will be playing properly after you soft reset your device.
NOTICE: I don't know the side-effects of this tweak. Use this at your own risk!

:: How does the Album Art support work?
Nitrogen 1.1 tries to find album art files through these ways:
1) Image file with the same filename as the song file (e.g. "\Music\Coldplay - Clocks.jpg" for "\Music\Coldplay - Clocks.mp3");
2) Image file containing the album name (ID3 tag) (e.g. "\Music\*Viva la Vida*.jpg" for a song which ID3 tag for album name is "Viva la Vida");
3) Image file inside the folder which one of these filenames: "Folder.jpg", "Cover.jpg", "AlbumArt.jpg", "AlbumArtSmall.jpg".

:: I tap the previous/next song button but the music only changes the title. Is that a bug?
:: :: It's not a bug, but a feature of Nitrogen. This allows you to select your desired song before playing it, without having to stop the current song. If you don't like this behaviour, check the "Change playing song through previous/next button" option in the Settings dialog.

:: I want to see the texts antialiased but I don't want to enable ClearType on my device.
:: :: Check the "Force ClearType rendering" option in the Settings dialog, and the texts in the main window, media browser and equalizer will become antialiased.

:: Rather than build a whole new player, why don't you take you UI design and implement it as a skin for the Mortplayer which uses the same MAD library and has everything else already DONE?
:: :: I don't know if it's a good or bad aspect of my personality, but sometimes I don't like to use the things that are ready-made. My intention on building Nitrogen is just to have some fun and improve my knowledge on C++ programming language. MortPlayer is great, and I'd be satisfied if my player worked like his. My intention is not the competition nor copying his work, though. The ones that really win with this situation are you, users. This way, you'll be able to choose among several players and enjoy the one that you identify more with.

:: I can't predict how the hell this wheel work.
:: :: If you use the default skin, tap and drag the upper half of the wheel to change the playlist index. Tap and drag the lower half of the wheel to change the volume. This behaviour is customizable through the Skin Maker and in a future release it will be customizable through the player itself.

:: Why are there too few skins (or why there is no skin that fits my resolution)?
:: :: The player is a very new project, and the skin support is even more recent. So, be patient that soon there will be skins for your device or skins that please you. If you want to accelerate this process, download the Skin Maker and design your own skin. I'll be glad to post it in the skins thread.

:: Why does the song stop (or become glitchy) if I minimize the player and do other things with my device?
:: :: That's because the default setting of the decoder is to be a low-priority thread. I've made this default because I didn't want my phone to become slower with the playback, even because the song usually stops only when something is loading or wasting too much CPU. If you want, change the "Thread priority" to "Normal" in the Settings dialog to prevent this effect.

:: What do the "Prebuffer length" and "Output prebuffer" options do?
:: :: Respectively, they specify how many milisseconds and the amount of the MP3 file that will be decoded ahead what is currently being played. If you check the "Low" thread priority setting and your prebuffer length is set to 4000ms, another process can use the CPU for 4 seconds before the song becomes glitchy. If you check the "Normal" thread priority, your prebuffer length does not need to be that large: 1000ms must be enough (this will free up memory).

Older releases

:: Nitrogen 1.0 (Jun 07, 2009) - Download - Download source

:: Visit this thread for more info on the previous release (Nitrogen 0.3.2).
 
Last edited:

microfi

Senior Member
Aug 30, 2008
364
5
Mococa
Issues, feature request and research (help wanted!)

The (1.2) prefix means that the fix/feature will be available on the next release!

Known issues
:: (1.2) Fix for large files (more than 100 minutes long) - click here to download fix for 1.1;
:: Memory leak on libovd (not a Nitrogen bug, but a decoder bug) while loading ID3 tags of OGG media (this bug is also present on GSPlayer and other players which use its libraries) - nothing I can do, then (but investigating).

Coming soon

:: (1.2) Option to disable auto-lock when running Nitrogen (HKCU\ControlPanel\Backlight\AutoDeviceLockEnable - thx bonebox);
:: (1.2) Remap hardware keys;
:: (1.2) Advanced file operations;
:: (1.2) Command-line common options (shuffle all media, start minimized, and so on);
:: (1.2) Option to set default folder;
:: (1.2) Native Titanium today plugin (WM6.5) support;
:: (1.2) Screen rotation changes skin!
:: Multiple playlists and M3U support;

Under research (still figuring them out)

:: Native AVRCP support;
:: Crossfading feature;
:: Use the power button from the phone to blank screen;
:: Load embedded album art files (on ID3 tags);

Feature request (requests from users which I don't know whether and/or how to implement)

:: Last.fm scrobbling;
:: Lyrics support (LRC);
:: Alarm clock;
:: Cue-sheet support;
 
Last edited:

microfi

Senior Member
Aug 30, 2008
364
5
Mococa
Change log

:: On Nitrogen 1.1
:: :: Fixed many memory leaks and minor bugs;
:: :: Added multilanguage support;
:: :: Added option to remember last song position when program starts;
:: :: Added GSPlayer plugin support (now accepting WMA/WAV/AAC/MP4/M4U) files;
:: :: Improved the option "Change playing song through previous/next buttons";
:: :: Nitrogen now pauses when phone receives call;
:: :: Song info is available on registry;
:: :: Fixed the MP3 ringtone issue;
:: :: Now handling large album art files;
:: :: Media browser and Equalizer now show "Ok" button instead of "X", allowing users to close them without closing the whole app;
 
Last edited:

sniggle

Senior Member
Mar 11, 2008
70
3
Huzzah! Thank you very much! This player is very tight.

Couple things:

1) With a very long MP3 (4 hours or so), the timestamp in the middle between the current time and remaining time seems to be random. It's currently showing 13:49 and not changing.
2) Could you possibly add an option in the future to remember where you leave off in a song? For these really long MP3s it would be extremely helpful.

Thanks again, great player!
 

microfi

Senior Member
Aug 30, 2008
364
5
Mococa
Huzzah! Thank you very much! This player is very tight.

Couple things:

1) With a very long MP3 (4 hours or so), the timestamp in the middle between the current time and remaining time seems to be random. It's currently showing 13:49 and not changing.
2) Could you possibly add an option in the future to remember where you leave off in a song? For these really long MP3s it would be extremely helpful.

Thanks again, great player!

Hi!
1) The timestamp in the middle is the current time (01:49 PM in your case) :)
2) I'll surely add that function soon!

Many thanks, Filipe.
 

atzaus

Senior Member
Apr 2, 2009
70
1
excellent job sir, really loving the new version
the next step i guess would be moving to a database system I guess <-- Request
Thanks
 

zelendel

Senior Member
Aug 11, 2008
23,360
20,609
OnePlus 6T
OnePlus 9
Been waiting with baited breath for this update. Runs like a champ on my Tilt with 6.5. The Only thing that is missing is multi play list support (IMO) Other then that this is my player of choice. GREAT work!!!!!
 

littld

Senior Member
May 18, 2005
622
3
I think all my media files are WMA but once that's supported I'd love to try it.
 

-Vulture-

Senior Member
Aug 24, 2008
545
39
Munich
This is just...awesome...dont know what to say, this is really really one of the best programs for windows mobile. Thanks microfi!

Some suggestions for future versions:

Multiple playlists (tabs could be placed in the grey zone on top of the current one) and a search function inside the playlists.
 

bstylz911

Senior Member
Jan 10, 2009
2,358
86
Las Vegas
omg i love it=]
i love the new design and evrything

but im still having a problem
when i try playing a specific song it closes by itself

and suggestions?
 

microfi

Senior Member
Aug 30, 2008
364
5
Mococa
omg i love it=]
i love the new design and evrything

but im still having a problem
when i try playing a specific song it closes by itself

and suggestions?

Hi!
What are you experiencing, specifically?
Does Nitrogen close after you select a song on the Media browser? What is the file extension? Did you find any alternative ways of playing?
Thanks, Filipe.
 

Top Liked Posts

  • There are no posts matching your filters.
  • 2
    OCT 27 - Dudes, I'm not dead (as some of you might think)! I'm just taking a break from Nitrogen development because I'm scarcely having any spare time to work over it as I'm studying to pass the college entrance exams (yeah!) which take place next month. So please be patient because I'll resume coding as soon as possible! If you want some news: I could successfully decode MP3 using libmad with no GSPlayer code! This means Nitrogen will soon read Album Art images from ID3v2 tags and most glitches should disappear! I'm also working on an improved plugin framework.

    *
    *

    Microfi Nitrogen 1.1 (July 13, 2009)
    (Nitrogen is licensed under GNU General Public License)

    mushipkw has worked on a Nitrogen homepage with skin and language gallery! This way, you won't need to post files here and wait for me to update the topic (which is something I also didn't like;)). So, we are proud to annouce:
    http://nitrogen.wmskins.com/
    Please post your language files and skins there!


    *
    *

    Click on the image below to start downloading!

    [More languages/plugins/skins - See Post #2]
    [Large files bug - click here to download fix]

    What's new:
    Now playing MP3/OGG/WMA/WAV/AAC/MP4/M4U files (with included GSPlayer plugins);
    Multilanguage support (English/Portuguese-BR built-in, but more languages available on Post #2);
    Many memory leaks and bugs were fixed;
    Now handling large album art files;
    Now remembers last playing position;
    (and much more!)


    Tip: many features are now accessible through long-tap (tapping and holding for a while): fast-forward and rewind, advanced playlist actions and so on!



    For more skins, visit the official skin thread!


    If you want to add Nitrogen to your website, please include the XDA-Developers URL, the new homepage URL and the donation URL, as seen below:
    Microfi Nitrogen is a native Windows Mobile application (unmanaged code) that allows you to play MP3/OGG/AAC/MP4/M4A/3GP/WAV/WMA songs stored on your Pocket PC device.
    It features a file browser, full skin support, smart shuffle and repeat modes, a 10-band equalizer with preset support (8 included presets), built-in sleep mode, a blank screen command to prevent energy waste while playing music and many more new features. Nitrogen uses the MAD/OVD decoders, which are opensource. As the official releases of MAD for Pocket PC seem to be discontinued, Nitrogen uses the libraries from an opensource player (GSPlayer).
    Nitrogen was build due to the lack of finger-friendly players for Pocket PC (you have to use stylus even for simple tasks). It features large buttons and you can browse among your playlist by drawing circles on the screen (using skins which support wheel component). In future releases the program will be expected to have other extensions support and more features, but such things are still being tested to ensure stability and efficiency.

    Key features
    :: Full MP3/OGG/AAC/MP4/M4A/3GP/WAV/WMA playback;
    :: Customizable interface with skin support;
    :: 10-band equalizer with 8 presets (MP3 only);
    :: Large and easy-to-use buttons;
    :: Media browser with playlist editor;
    :: Large menus to perform tasks with the fingers;
    :: Kinetic scrolling;
    :: Smart shuffle and repeat modes;
    :: Adjustable sleep timer;
    :: Amazingly fast to load and to play;
    :: Blank screen command to save energy;
    :: Native C++ code: no need for .NET framework;
    :: Extremely lightweight;
    :: File association support;
    :: Album art support;
    :: Opensource;
    :: Multilanguage support;

    Please donate if you like the player:
    HTML:
    https://www.paypal.com/cgi-bin/webscr?cmd=_s-xclick&hosted_button_id=2016778
    Check out the official website:
    HTML:
    http://nitrogen.wmskins.com/
    Check out the official XDA-Developers thread:
    HTML:
    http://xdaforums.com/showthread.php?t=523505

    ss.jpg

    1
    Support

    Other languages (thanks to XDA members!)
    [Please visit http://nitrogen.wmskins.com/ for new languages and to post your own!]


    Bulgarian (by Mihof33): Download
    Czech (by tampiss): Download - Mirror
    Danish (by mikaelwinther): Download - Mirror
    Dutch (by kuifje): Download - Mirror
    Dutch (by WMH): Download - Mirror
    French (by kidoucorp): Download - Mirror
    French (by Ang3lo): Download
    German (by ChrisXP): Download
    German (by DeVisible): Download - Mirror
    Greek (by dancer_69): Download - Mirror
    Italian (by simoneser): Download - Mirror
    Korean (by Sean Lee): Download
    Polish (by piotrrz): Download - Mirror
    Romanian (by axxelxavier): Download
    Russian (by prewed): Download - Mirror
    Serbian (by Uros Gojkovic): Download Latin - Download Cyrillic
    Simplified Chinese (by guoguo89757): Download - Mirror
    Spanish (by davitino): Download - Mirror
    Swedish (by norrgrd): Download
    Traditional Chinese (by Paul Chen): Download
    Traditional Chinese (by PinguW): Download
    Turkish (by Resolute): Download



    How to install: download the NLG file (or the ZIP file containing it, then extract the NLG file) and copy it to your device, in the folder "\Program Files\Nitrogen\lang" (if you installed Nitrogen on your device memory) or "\Storage Card\Program Files\Nitrogen\lang" (if you installed Nitrogen on storage card). Now run Nitrogen, tap the "Options" softkey, choose "Settings" and then "Language selector". Choose your language:).

    Plugins

    GSPFLAC - Allows FLAC playback (thanks to Dai_Shan for finding): Sourceforge.net page
    GSPMIDI - Allows MIDI playback (not tested yet): GSPlayer page

    How to install: download the DLL file (or the ZIP file containing it, then extract the DLL file) and copy it to your device, in the folder "\Program Files\Nitrogen\plugins" (if you installed Nitrogen on your device memory) or "\Storage Card\Program Files\Nitrogen\plugins" (if you installed Nitrogen on storage card). Now run Nitrogen, and your desired media extension will be available:).

    Skins

    Click here to go to the skins page.

    Translate Nitrogen to your language

    You may help Nitrogen development by downloading our translation tool, and posting here or sending me an e-mail with the NLG file. This way, your translation will be added in future versions.

    For AVRCP users

    You may control Nitrogen through AVRCP using AVRCP Agent (by Wolfman-XP). You'll need to configure the agent like this:
    Code:
    Path to application: "\Program Files\Nitrogen\Nitrogen.exe" (if you installed on the device memory)
    Window name: "Nitrogen"
    Play: 40001
    Forward: 40003
    Backward: 40002

    For wired headphone users

    You may control Nitrogen through wired headphone button using PlayPause mod (thanks to Zepiii).

    For developers

    Nitrogen now stores the current song info under the following registry key:
    Code:
    HKEY_LOCAL_MACHINE\System\State\Nitrogen
    The registry values are the following:
    :: AlbumArtFilename - contains the album art filename of the current song; if no album art was found, this value is "(none)";
    :: MusicCode - contains a number that increases whenever the current song changes. This way, developers can check whether they need to update the song info on their programs or not;
    :: PlayStatus - may assume the following values:
    0 - paused and the current song is not the paused one;
    1 - paused and the current song is the paused one;
    2 - playing, but the current song is not the playing one;
    3 - playing and the current song is the playing one;
    (for general purpose, you should display a "Play" button when PlayStatus is 0, 1 or 2, and a "Pause" button when it's 3).
    :: Running - 1 when Nitrogen is running, and 0 when it's not;
    :: SongArtist - Contains the current song artist;
    :: SongTitle - Contains the current song title;
    :: TimeElapsed - Contains the elapsed song time (secs);
    :: TimeTotal - Contains the total song time (secs);

    You can control Nitrogen through the following messages:

    :: WM_NTG_ISPLAYING = WM_USER+3001
    :: :: wParam = 0; lParam = 0
    :: :: Returns 1 when a song is playing;
    :: WM_NTG_GETCURRENT = WM_USER+3002
    :: :: wParam = 0; lParam = 0
    :: :: Returns a LONG in which the low-order is the current song position (secs) and the high-order is the total song time (secs);
    :: WM_NTG_SETCURRENT = WM_USER+3003
    :: :: wParam = new song time (secs); lParam = 0
    :: :: Returns 1 if successful;
    :: WM_NTG_GETVOLUME = WM_USER+3005
    :: :: wParam = 0; lParam = 0
    :: :: Returns the current volume (0~100);
    :: WM_NTG_SETVOLUME = WM_USER+3006
    :: :: wParam = new volume (0~100) if lParam = 0
    :: :: wParam = delta volume (-100~100) if lParam = 1 (relative volume)
    :: :: Sets the current volume, and returns 0;
    :: WM_NTG_GETMUSICCODE = WM_USER+3007
    :: :: wParam = 0; lParam = 0
    :: :: Returns a number that increases whenever the current song changes;

    Also, you can perform common button tasks with WM_COMMAND messages:
    :: ECMD_PLAYPAUSE (WM_COMMAND; wParam = 40001; lParam = 0)
    :: :: Simulates a click on the Play/Pause button;
    :: ECMD_PREVSONG (WM_COMMAND; wParam = 40002; lParam = 0)
    :: :: Simulates a click on the Previous Song button;
    :: ECMD_NEXTSONG (WM_COMMAND; wParam = 40003; lParam = 0)
    :: :: Simulates a click on the Next Song button;
    :: ECMD_VOLUMEDOWN (WM_COMMAND; wParam = 40004; lParam = 0)
    :: :: Simulates a click on the Volume Down button;
    :: ECMD_VOLUMEUP (WM_COMMAND; wParam = 40005; lParam = 0)
    :: :: Simulates a click on the Volume Up button;

    For ROM cookers

    If you want to include Nitrogen on your ROM distribution, you may set custom skins and config directory (if you want to put the EXE under "\Windows") by adding the following registry keys:
    Code:
    HKLM\Software\Nitrogen\SkinsPath = {new skins path}
    HKLM\Software\Nitrogen\FilesPath = {new config/playlist/presets path}
    HKLM\Software\Nitrogen\LangsPath = {new languages path}
    Don't forget to add a slash after the path ("\Windows\Nitrogen\" instead of "\Windows\Nitrogen", for instance).
    1
    Hi all,

    I wanted to control Nitrogen using the wired headphone from HTC (Touch HD, but should work for other), I tried AVRCP but don't really like it... S

    Warning
    It's ONLY for NITROGEN PLAYER !! I changed what i could to make it work ! For other player check source below ! Even if is your player is in the list, it won't work, because i changed source !

    How to install?
    > Install Play_Pause3.1b (attached files)
    > Unzip attached files from this post
    > Overwrite the PlayPause.mscr to \Program Files\PlayPause\

    How does it work?
    > Open PlayPause
    > Select MortPlayer : long click will allow you to forward the song
    > Select PocketPlayer : long click will allow you to play/pause the song
    > Then save.
    > For both "player": if the player isn't launched, and you press long clicked of your wired headphone, and it will launch it and play the current song.
    > Select Default(Off) to go back to normal... (don't forget to save)

    Source
    Program used : http://xdaforums.com/showthread.php?t=498349
    IMPORTANT : I HAVEN'T CREATED ANYTHING, SIMPLY MODIFIED SOME STUFF TO ADAPT IT FOR NITROGEN PLAYER !!

    You CAN improve it !
    I can't code, i only did "mongol" modification TBH... A programmer should check and is probably able to it work for both function "double click : Play/Pause" and Long click "Next song"

    See you !
    1
    G-Sensor works on my Omnia. Maybe you should set the sensitivity higher. You have to shake pretty hard with the default settings.


    I encountered a few glitches with the KeyAssignments:
    • the 'Hang Up'-Button does not react when you keep it pressed (i.e. it can't do Rewind or Forward) on Samsung Omnia (I don't know if it works on other phones).
    • when you press Edit the new popup window says (No key assigned) even though it should preselect the already selected key
    • on Samsung Omnia I can't select the buttons on the side (Volume Up, Volume Down, Camera, Menu Button) anymore with alpha 4. it worked fine on alpha 2.
    • I can assign a function to the same button several times

    A few feature requests regarding KeyAssignments:
    • Could it be possible to assign two functions to one button like this:
      short press - function 1, long press - funtion 2?
    • Is it possible to assign a function to the headphones button (wired, not bluetooth)?
    • Pleeaase try to re-implement "Assign Minimized" option :D
      With this function one can really use the phone as a full MP3 Player replacement

    Hi!
    I'll consider going back to keyboard hook as key assigning method. I've tried to implement AllKeys() as a replacement, but it seems keybd_hook is still better. The only side effect is that some keylocking programs won't work properly, since WM just lets one program to hook keyboard each time.
    Thanks for testing, Filipe.