Opened 19 years ago
Closed 14 years ago
#367 closed enhancement (fixed)
[REQUEST] NSC stream decoder/parser
Reported by: | Owned by: | reimar | |
---|---|---|---|
Priority: | normal | Component: | streaming |
Version: | unspecified | Severity: | minor |
Keywords: | Cc: | ||
Blocked By: | Blocking: | ||
Reproduced by developer: | no | Analyzed by developer: | no |
Description
Note! This is not a bug report but instead just a feature suggestion/request:
Microsoft Windows Media Player's NSC (Windows Media Station) format (Windows
Media Technology Server) support would be very nice in MPlayer, to be ample to
play NSC broadcast or multicast streams. Now that Jon Lech Johansen
(a.k.a. "DVD Jon") have reversed-engineered Microsoft's (proprietary algorithm)
encryption coding for Windows Media Player this should now hopefully be
possible to achive. http://nanocrew.net/?p=128
The NSC file (is similar to a ASX file as it) contains information about the
stream, such as the IP-address and port of the stream server plus the
name/title and stream/codec format of the media-file it point to. Normally when
the file is opened in Media Player, the file is decoded and then connected to
the stream server specified. NSC (Windows Media Station) connections is also
known as "Multicast Windows Media Streaming (WMS) sessions" though broadcast
can be used as well (and broadcast might also suit most network enviroments
better). As I see it the only big difference between .NSC and .ASX metafiles is
that .NSC is encrypted and .ASX is not.
Looks like a VideoLan-client developer is working on it for VLC:
http://sidequest.org/weblog/archives/2005/08/multicast_from.html
More info about Windows Media Station (.nsc) files can be found on MSDN:
http://msdn.microsoft.com/library/en-us/wmp6sdk/htm/stations.asp
PS! I'm not a programmer myself so hope someone else who is will be intersting
in developing a patch for this and submit it to MPlayer.
Change History (9)
comment:1 by , 19 years ago
comment:2 by , 19 years ago
example meta file looks like this:
[Address]
Time To Live=0x00000002
URL=023m000000001WQ01q07G0S00w02y 0Bm1Z06y0P01b06C0Sm0k06q0QG1Z0780Rm1p06y0PW
1q02u 0Om1l06q0Bm1f07C0OG1m06a0Bm1j0700TG1m06S0SW1X06G0P G0k06G0R01i0000
Player Version=020m000000000MD00k0300BW0n02u0Cm0u03K0C000 00
NSC Format Version=029G0000000008Cm0k0300000
Channel Version=0x00000083
Name=026G000000000UKW1b06m0QG1 X06C0OG1p07G0KW1X06G0QG1l0000
IP Address=02EG000000000KCW0p03C0BW0p02u0Cm0k0340000
IP Port=0x00000457
Delivery Mode=0x00000002
nscdec translates it to this:
[Address]
Time To Live=64
URL= /media/files/Cisco.asx
Name= Demonstration Content
IP Address=169.254.10.1
IP Port=22593
comment:3 by , 19 years ago
NSC is _not_ encrypted! The fact that somebody at Cisco is too stupid to
recognized a modified base64 encoding does not change that fact.
A decoder for nsc is available since quite some time, see the thread starting at
http://mplayerhq.hu/pipermail/mplayer-dev-eng/2005-January/032748.html
Though I sure wouldn't mind if somebody extended our playlist parser to support
that (although my personal opinion is that most playlist parsing should be done
by external programs).
comment:4 by , 19 years ago
Can you provide (non-multicast) samples? I implemented a playlist parser but
have no samples to test it.
comment:5 by , 19 years ago
http://mplayerhq.hu/pipermail/mplayer-dev-eng/2005-September/thread.html#36903
http://mplayerhq.hu/pipermail/mplayer-dev-eng/2005-September/036903.html
Thanks Reimar =)
hmm, non-multicast (broadcast) samples/examples, ...will see if I can find any
comment:6 by , 19 years ago
How can one tell if a stream is multicast or broadcast?, I tried google for nsc
http://www.rusmedia.ru/Broadcast/radio/nsc/Mayak24.nsc
http://www.rusmedia.ru/Broadcast/radio/nsc/MayakUnost.nsc
http://www.rusmedia.ru/Broadcast/radio/nsc/RMayak.nsc
http://www.rusmedia.ru/Broadcast/radio/nsc/RusRadio16.nsc
http://www.rusmedia.ru/Broadcast/radio/nsc/RusRadio32.nsc
http://www.rusmedia.ru/Broadcast/radio/nsc/mayak.nsc
PS! I'm at work right now so can't get through the firewall to test any streams
comment:7 by , 19 years ago
Non-working (and not tested) samples provided by Diego Biurrun:
http://www.igt.ethz.ch/streams/sample/ASFStation.nsc
http://supcnt07.lboro.ac.uk:20000/LCR.nsc
http://www.europeonline.net/datafiles/stream/CHANNEL18.nsc
http://219.144.186.194/Station1.nsc
Got no clue how to tell if are multicast, unicast or broadcast.
comment:8 by , 14 years ago
Owner: | changed from | to
---|
comment:9 by , 14 years ago
Resolution: | → fixed |
---|---|
Status: | new → closed |
Microsoft even has proper documentation about this now: http://msdn.microsoft.com/en-us/library/cc236240%28PROT.10%29.aspx
Anyway, since I already had the code I committed the playlist parser, however I haven't been able to find any available server so no idea if it is useful for anything.
http://nanocrew.net/software/nscdec.c
Download: nscdec.c
MD5: 7c81ca49bc68c2b8671d00f0cdf960e3)
Example usage:
$ nscdec