Active Topics

 



Notices


Reply
Thread Tools
KotCzarny's Avatar
Posts: 290 | Thanked: 738 times | Joined on Mar 2008 @ .pl
#1
hello!

i've finally gotten around to compile my own player for n8x0/n900/pc/sbc. right now it uses ncurses (terminal) or pygtk (gui) interface, easy to navigate with cursor keys. what can you use it for? well, you can play music in terminal or.. you can connect your device to stereo and control it via network remote!

for recent pc (x86/x64, linux and windows) or sbc (armhf, linux) builds check:
https://sourceforge.net/projects/oscp/files/binaries/

n8x0's build is now in diablo extras, please test and report!

n900's build is now in fremantle extras, please test and report (keep in mind version in fremantle/extras is quite old, so if you want latest and greatest use extras-devel)

if anyone is interested talk to me (KotCzarny) on #maemo on irc.libera.chat (webchat: https://web.libera.chat/?nick=oscp-n?#maemo )

features:
- plays local/networked files, playlists and internet streams (http://, mms://, rtsp://)
- path based search (media libraries are overrated)
- http scraper mode (loads http page, parses it for playable links and plays them)
- multiplatform (you can control maemo core from pc remote and pc core from maemo remote)
- intuitive, easy to use, fast and small (almost no dependencies (needs only libesd and/or libao))
- effects based on sox-14.4.2 (10-band equalizer, flanger, earwax, contrast(compress), reverb, overdrive, oops(karaoke))
- last.fm/libre.fm scrobbler (last.fm broken since spotify takeover)
- remembers play position
- quick fav dir keys
- unzip/unrar support
- ncurses ui with easy navigation (with mouse support)
- classic winamp skin support (with ability to load random one)
- network interface for remote commands (gtk and pygtk gui on local or remote device)
- lirc (remote) support
- many more little bits that make your audio experience smooth and comfortable

---
NEW! - please go to my next post for a manual and more info: --=> http://talk.maemo.org/showthread.php...stcount1460158 <=--
---

screenshots: ncurses on pc, pygtk remote (pc-linux, pc-windows, n800 and n900), pygtk winamp skin mode
Attached Images
     
__________________
oscp - media player with network remote and almost no dependencies (pc/lin/win/maemo(n8x0/n900), x86/x64/armel/armhf) - http://talk.maemo.org/showthread.php?t=94590 - if you like it, tell others.
contact with me: #osc or #maemo on freenode/ircnet or /query KotCzarny

Last edited by KotCzarny; 2021-06-15 at 13:14. Reason: irc moved to libera.chat
 

The Following 38 Users Say Thank You to KotCzarny For This Useful Post:
Posts: 1,808 | Thanked: 4,272 times | Joined on Feb 2011 @ Germany
#2
@KotCzarny

Looks like my kind of music player!

Any quick tutorial/manual? My volume shows "-1" and I cannot seem to find a way to make it output anything (I have to admit I didn't try much, just the obvious).

Thanks.
 

The Following 2 Users Say Thank You to reinob For This Useful Post:
KotCzarny's Avatar
Posts: 290 | Thanked: 738 times | Joined on Mar 2008 @ .pl
#3
oscp manual (c) ariel/KotCzarny

Description

multiplatform player for (almost) any a/v format and network streams (using libav/ffmpeg and others),
using server--client model with GUIs available (ncurses/pygtk/native gtk)

Features

- plays multiple audio formats lossy and lossless (mp3/ogg/aac and friends)
- plays multiple game/tracker formats
- plays network streams (http://, mms://, rtsp://)
- playlists, favourites, one-key recursive playlists
- effects: based on sox-14.4.2, 10-band equalizer, flanger, earwax, contrast(compress), reverb, overdrive, oops(karaoke)
- remembers play position
- quick fav dir keys
- zip/rar/7z support
- path based browse/search (media libraries are overrated)
- ncurses ui with easy navigation (with mouse support)
- network interface for remote commands. gtk+ and pygtk gui on local or remote device. built-in server for remote control
- classic winamp skin support (with ability to load random one)
- lirc (remote) support
- http scraper mode (loads http page, parses it for playable links and plays them)
- multiplatform (you can control maemo core from pc remote and pc core from maemo remote)
- small and lightweight (almost no dependencies, needs only platform based audio library alsa/oss/esd/libao/pulse)
- last.fm/libre.fm scrobbler (last.fm broken since spotify takeover)
- lirc (remote) support
- many more little bits that make your audio experience smooth and comfortable

Usage

- cmdline/ncurses: run it (./oscp or /opt/oscp/bin/oscp or wherever you have put the binary) in terminal and use cursor keys to navigate your folders/files. By default LEFT goes to parent dir, RIGHT enters dir/playlist or plays the file.
- gui: after starting gui, it tries to connect to last used core. if it doesnt find one, you can start it by pressing gears icon (assuming 'oscp' is in your path) or connect to some already running one ('computers' icon). then use it in the same way as ncurses one (most keys should be the same)

Tips & tricks:

- check effects: shift-E - eq, shift-F - flanger, shift-V - reverb, shift-C - contrast (bumps volume without clipping), shift-W - earwax, shift-K - karaoke, shift-O - overdrive
- mrl (make-recursive-list): press ';' to recursively add all known files, starting from current directory
- run it in daemon mode (-d 1 -L 44322) on a machine connected to your stereo, then use remote gui to control it from anywhere
- ncurses: ctrl-l refreshes the window (in case contents get garbled), ctrl-r reloads current directory

Defaults

Default keybindings (configurable via config):
- quit: q,
- help: h,
- clip info: i,
- look for (search): l,
- stop: \,
- play/pause: p,
- prev: [,
- next: ],
- rewind: ",",
- fast forward: ".",
- volume decrease: -,
- volume increase: =,
- left(go parent): "LEFT",
- right(play/enter): "RIGHT",
- special meta menu: /,
- list pos up: "UP",
- list pos down: "DOWN",
- liast page up: "PGUP",
- list page down: "PGDOWN",
- list home: "HOME",
- list end: "END",
- copy file to fav-dir: "INSERT",
- delete file: "DELETE",
- make recursive list: ";",
- go to fav dir/list: 0..9,
- set current dir as fav: shift-0..9,
- repeat: r (cycles through repeat off/all/one),
- shuffle(random play): s,
- shuffle list: S,
- play vids: e
and more keys/actions available in config.


config: ~/.oscp/oscp.conf

cmdline usage: oscp [options] [path]
-A str audio dev (fe. pulse sink or libao "dev" key)
-a 0/1 autoplay off/on
-s 0/1/2 shuffle mode
-r 0/1/2 repeat off/all/single track
-E 0/1 play vids off/on
-t 0/1 display remaining time instead of current
-f 0/1/2 fullpath display
-v 0/1/2 software volume (off/exponential/linear)
-V 0..100 set volume
-l 0/1 use lineart compatible/full
-S 0/1 scrobble off/on
-L 1..65536 listen on TCP port for remote commands
-N str net acl (ip/mask space separated, ex:
"127.0.0.1 192.168.1.0/16 2.3.4.5")
-d 0/1 daemonize (disable ui and fork to background)
-T str dev type
-P 0/1 headphone mode, pause when hp unplugged
(needs dev type set to n900)
-F str fav save path
-M str midi sound patch directory
-m str midi sound patch config file
-C str1 str2 convert file1 into WAV (file2)
-H show supported formats
-h this help (duh)


Effects

Those are based on SoX-1.4.42 and include:
- equalizer (default key: shift-e) - best to cut some freqs, otherwise clipping might happen,
- flanger (shift-f) - "spinning loudspeaker",
- karaoke (shift-k) - works best when voice track is equal in both channels,
- reverb (shift-v) - adds depth,
- contrast (shift-c) - increase volume without clipping,
- earwax (shift-w) - get the sound stage out of you head (headphones),
- overdrive (shift-o) - vroom.

Formats

[slave-libav]: based on libav (Lavc56.1.0, Lavf56.1.0, Lavr2.1.0, Lavu54.3.0), formats: mp3, wav, ogg, flac, alac, ape, mpc, aac, ac3, m4a, mp2, wv, wma, ra, aif, avi, mpg, flv, mpeg, mp4, m4v, mkv, wmv, asf, mov, rm
[slave-xmp]: based on libxmp-4.4.1, formats: mod, med, xm, it, s3m, 669, abk, ac1d, amf, dbm, di, digi, dmf, dtm, emod, eu, far, flx, fnk, gdm, j2b, kris, lax, liq, m15, mdl, mfp, mgt, mmd0, mmd1, mmd2, mmd3, mtm, mtn, mtp, okt, okta, psm, pt36, ptm, rtm, sfx, sfx13, sfx2, stm, stim, stx, ult, umx, wow
[slave-gme]: based on gme-git (0x601), formats: ay, gbs, gym, hes, kss, nsf, nsfe, spc, vgm, vgz
[slave-asap]: based on asap-3.2.0, formats: sap, cm3, cmc, cmr, cms, dmc, dlt, mpd, mpt, rmt, tm2, tm8, tmc, fc
[slave-sc68]: based on libsc68 3.0.0.692M, formats: sc68, sndh
[slave-sid2]: based on libsidplayfp, formats: sid, psid, rsid, mus
[slave-flod]: based on c-flod-4.1, formats: bd, bp, bp3, dm, dm2, dmu, dum, dw, fc, fc13, fc14, fc3, fc4, fred, hip, hipc, jb, mug, rh, sfx, sfx13, sfx2, sid2, sid1, smod
[slave-aosdk]: based on aosdk-1.4.8, formats: psf, psf2, dsf, qsf, spu, ssf, minidsf, minipsf, minipsf2, miniqsf, minissf
[slave-usf]: lazyusf, formats: usf, miniusf
[slave-mdx]: mdxmini-20160105, formats: mdx
[slave-timi]: based on libwildmidi-git (0.4.1), formats: mid, midi, xmi, hmi, hmp
[slave-ym]: based on stsound-1.43, formats: ym
[slave-adplug]: based on adplug-git, formats: a2m, adl, adlib, amd, as3m, bam, cff, d00, dfm, dmo, dro, dtm, hsc, hsp, imf, jbm, ksm, laa, lds, m, mad, mkj, msc, mtk, rad, raw, rix, rol, sa2, sat, sci, sng, wlf, xad, xms, xsm, cmf, mus, got, ims, mdi, mus, sop, vgm
[slave-mpl]: external: mplayer, formats: same as libav
[slave-uade2]: external, formats: aam, adsc, abk, ac1d, ahx, alp, amc, aon, aon8, ast, avp, bp, bp3, bpsm, bd, bds, bsi, bss, chan, cin, cm, core, cust, cus, dat, dh, di, dl, dlm1, dlm2, dln, dm, dm1, dm2, dns, doda, dsc, dsr, dum, dmu, dp, dss, dw, dz, ea, ems, emsv6, eu, ex, fc, fc13, fc14, fc3, fc4, fcm, fp, fred, fw, glue, gmc, gray, hd, hip, hip7, hipc, hn, ims, is, is20, jam, jcb, jcbo, jd, jmf, jo, jpn, jpnd, jpo, jpold, jt, kh, kris, lax, lme, lion, ma, mc, mcmd, mco, mcr, mcs, md, mdat, mdst, mii, mk2, mkii, ml, mmdc, mms, mok, mon, mso, mtp2, mug, mug2, mw, ntp, pap, pc, ps, psa, pt, puma, pvp, qpa, qts, rh, rho, riff, rk, s, s7g, sa, sas, sb, sc, scn, scr, sct, scumm, sdata, sdr, sfx, sfx13, sg, sid1, sid2, sidmon, sjs, sm, sm3, smpro, smus, snk, snx, soc, sog, sonic, spl, sqt, src, ss, sun, syn, synmod, tf, tfmx, tfx, thm, thx, thn, tiny, tme, tpu, tronic, tw, uds, unic, vss, wb, ym, ymst


Links

- http://talk.maemo.org/showthread.php?t=94590 - original oscp's page on TMO - best place to report bugs and/or ask for new features. also new versions are announced there
- https://sourceforge.net/projects/oscp/files/binaries - builds for misc. systems - precompiled for linux x86/x64/arm, cygwin etc.

Contact

- either TMO page or ircnet/freenode (#maemo or #osc)
__________________
oscp - media player with network remote and almost no dependencies (pc/lin/win/maemo(n8x0/n900), x86/x64/armel/armhf) - http://talk.maemo.org/showthread.php?t=94590 - if you like it, tell others.
contact with me: #osc or #maemo on freenode/ircnet or /query KotCzarny

Last edited by KotCzarny; 2018-02-21 at 09:41. Reason: updated formats list
 

The Following 4 Users Say Thank You to KotCzarny For This Useful Post:
pichlo's Avatar
Posts: 6,447 | Thanked: 20,981 times | Joined on Sep 2012 @ UK
#4
If I may have a suggestion, I would do:

left, right: prev / next file
enter: play file / enter dir / up dir if cursor on ".." *)
p or space: pause / resume

Seems more intuitive, but of course YMMV.

*) Caveat: I have not tried it yet, so I do not know it there even is a ".."
__________________
Русский военный корабль, иди нахуй!
 

The Following User Says Thank You to pichlo For This Useful Post:
KotCzarny's Avatar
Posts: 290 | Thanked: 738 times | Joined on Mar 2008 @ .pl
#5
@pichlo: that's a valid suggestion, i'll implement key mapping later too. i personally prefer arrow keys for navigation because once i find the directory/playlist i like it just goes without interruption on shuffle mode
__________________
oscp - media player with network remote and almost no dependencies (pc/lin/win/maemo(n8x0/n900), x86/x64/armel/armhf) - http://talk.maemo.org/showthread.php?t=94590 - if you like it, tell others.
contact with me: #osc or #maemo on freenode/ircnet or /query KotCzarny
 

The Following 3 Users Say Thank You to KotCzarny For This Useful Post:
Posts: 915 | Thanked: 3,209 times | Joined on Jan 2011 @ Germany
#6
Any chance to get the source code?
 

The Following User Says Thank You to sulu For This Useful Post:
KotCzarny's Avatar
Posts: 290 | Thanked: 738 times | Joined on Mar 2008 @ .pl
#7
@sulu: sure, i didnt post it yet because it requires a bit of setup with libs, talk to me on irc and i'll give you the sources
__________________
oscp - media player with network remote and almost no dependencies (pc/lin/win/maemo(n8x0/n900), x86/x64/armel/armhf) - http://talk.maemo.org/showthread.php?t=94590 - if you like it, tell others.
contact with me: #osc or #maemo on freenode/ircnet or /query KotCzarny
 

The Following 4 Users Say Thank You to KotCzarny For This Useful Post:
Posts: 915 | Thanked: 3,209 times | Joined on Jan 2011 @ Germany
#8
Sorry, I don't have any IM accounts and I don't intend to change that.
Can you please attach an archive here?
 

The Following 2 Users Say Thank You to sulu For This Useful Post:
KotCzarny's Avatar
Posts: 290 | Thanked: 738 times | Joined on Mar 2008 @ .pl
#9
you don't have to have any im account to use irc, you can even use http based client:
http://webchat.freenode.net/ for 'channels' enter #maemo
i'll make a source pkg in a few
__________________
oscp - media player with network remote and almost no dependencies (pc/lin/win/maemo(n8x0/n900), x86/x64/armel/armhf) - http://talk.maemo.org/showthread.php?t=94590 - if you like it, tell others.
contact with me: #osc or #maemo on freenode/ircnet or /query KotCzarny
 

The Following 2 Users Say Thank You to KotCzarny For This Useful Post:
KotCzarny's Avatar
Posts: 290 | Thanked: 738 times | Joined on Mar 2008 @ .pl
#10
@sulu: here's the source. i compile things by hand, so you would need to install libs needed (libao, libesd, libav, libxmp etc)
Attached Files
File Type: gz oscp-0.9.6.tar.gz (79.5 KB, 882 views)
__________________
oscp - media player with network remote and almost no dependencies (pc/lin/win/maemo(n8x0/n900), x86/x64/armel/armhf) - http://talk.maemo.org/showthread.php?t=94590 - if you like it, tell others.
contact with me: #osc or #maemo on freenode/ircnet or /query KotCzarny
 

The Following 6 Users Say Thank You to KotCzarny For This Useful Post:
Reply


 
Forum Jump


All times are GMT. The time now is 17:43.