Perfect 500 streaming

dweeb4

Inactive User
Joined
May 11, 2007
Messages
437
Reaction score
4
Location
Ireland
Hey guys, just wanted to tell you that I have been testing a streaming module that works on the PLi Helenite image and the developer has just about ironed out all the issues.

It works perfectly on most channels & I mean perfectly, no glitches, no skips - no nothing just smooth viewing. The only issues left are to sort it out for the other channels which the developer expects to have completed by the weekend.

He also tells me that he has applied some of the same code to the recording module and the results look promising.

So the promise of perfect recording is realiseable at last! Knew we would get there for some image at least.

Edit: Oh, one other thing, it seems the streaming (called ZapStream) works fine for DM500S as is & recording apparently is also error free. Go figure
 
Last edited:
Sounds good dweeb4.

Does this come as a plugin or is it something that can be implimented into the CVS?
 
im hoping it will be implemented into the CVS, can get it on the next gemini image then :) but if its as good as it seems, might switch to pli
 
I'm not too sure Devilfish, I think it would have to be part of the CVS as there are two parts to it - Zapstream template, which is downloaded with blue button and zapstream which is part of the image. Although I'm testing the zapstream module by loading it in /var/bin and using a new inetd.conf, loaded into /var/etc which contains the following line:

zapstream stream tcp nowait root /var/bin/zapstream zapstream -ts

So I suppose this could be retrofitted into an image?
 
Maybe one of the Linux gurus could help me? I want to automate the process above whereby every time i boot the box I have to kill inetd and start the new one above so I picked up this little snippet which I think will do this job but is there any script I can add it to which is started at every boot?

ps | grep inetd | grep -v grep | awk '{ print $1 }' | xargs kill
inetd /var/etc/inetd.conf


I know the answer is not to turn off the box but I turn off all these electrics at night - safety & energy issues you know!
 
Unfortunately, the first part of this does not kill the existing inetd process - can anyone correct it?
 
Here's an analysis of a short recording I did of the stream using the following script:

vlc.exe http://192.168.0.24:31344 :sout=#duplicate{dst=display,dst=std{access=file,mux=ts,url=c:\jk.ts}}

File Size Processed: 247.33 MB, Play Time: 00h:07m:35s
720 x 576, 25.00 fps, 8.00 Mbps (4.11 Mbps Average).
Average Video Quality: 20.05 KB/Frame, 0.40 Bits/Pixel.
MPEG Audio.
0 of 11390 video frames found with errors.
0 of 0 audio frames found with errors.
0 corrupted video bytes in file.

I know it's too short (for Senor Ding Dong) to prove anything but I will do a longer one & post analysis
 
Here's an analysis of a short recording I did of the stream using the following script:

vlc.exe http://192.168.0.24:31344 :sout=#duplicate{dst=display,dst=std{access=file,mux=ts,url=c:\jk.ts}}

File Size Processed: 247.33 MB, Play Time: 00h:07m:35s
720 x 576, 25.00 fps, 8.00 Mbps (4.11 Mbps Average).
Average Video Quality: 20.05 KB/Frame, 0.40 Bits/Pixel.
MPEG Audio.
0 of 11390 video frames found with errors.
0 of 0 audio frames found with errors.
0 corrupted video bytes in file.

I know it's too short (for Senor Ding Dong) to prove anything but I will do a longer one & post analysis

looking good thou mate, the port u using im guessing is linked to this feature your testing? as its not a regular port (i dont think), what his feature doing then? caching the stream, doing some error correction and transmitting it back out on a different port?
 
I don't exactly know the technical details (the developer did not say exactly) but before this I tried streamts from snakehand & it was variable - this works every time without fail.

Also remember that this recording was done without turning off the display on the DM500 & it was also streaming the channel to the PC screen - so I was watching this on the PC at the same time as recording it.

Edit: Also I wasn' being precious about using the PC during recording - was accessing the web & deleting files etc
 
Last edited:
Just got the final version of the module & it works flawlessly for all channels - will do a long recording of stream tomorrow & post the anlysis!
 
Is there any source code for that module ?
 
Just got the final version of the module & it works flawlessly for all channels - will do a long recording of stream tomorrow & post the anlysis!
Great news!

Have you been able to check the direct recording that you mentioned in the first post?

I have a NAT drive I would love to record on to :)
 
Great news!

Have you been able to check the direct recording that you mentioned in the first post?

I have a NAT drive I would love to record on to :)

It is great news isn't it. The developer is perfecting the streaming first & as I said in the thread somewhere he has applied some of the same code to the recording module and it looks good but I don't think it's fully formed & ready for the big time yet. So we will have to wait for flawless direct recording initiated from the 500 box.

However, you can record the stream, flawlessly as I did above. I will be doing a longer recording tonight & will post the analysis.

I always wanted to be able to initiate recordings from the PC using the epg as a starting point to set up timer based recordings and this seems gives me the foundation for achieving this. PLi Helenite already gives me a two week epg in SQLLite database stored on a PC mount (derived from UK Radio Times XML). The further issues that need to be addressed to achieve this are:

- some open source epg (possibly write SQL to interface with existing DB) which will allow changes to write scripts for:
- query the box for the name of the program to be used as the recording file name
- query the epg for the start & end time & use this in the VLC script
- a VLC script as above without the screen display, just recording the stream to disk

What do y'all think - feasible or not?
 
It is great news isn't it. The developer is perfecting the streaming first & as I said in the thread somewhere he has applied some of the same code to the recording module and it looks good but I don't think it's fully formed & ready for the big time yet. So we will have to wait for flawless direct recording initiated from the 500 box.

However, you can record the stream, flawlessly as I did above. I will be doing a longer recording tonight & will post the analysis.

I always wanted to be able to initiate recordings from the PC using the epg as a starting point to set up timer based recordings and this seems gives me the foundation for achieving this. PLi Helenite already gives me a two week epg in SQLLite database stored on a PC mount (derived from UK Radio Times XML). The further issues that need to be addressed to achieve this are:

- some open source epg (possibly write SQL to interface with existing DB) which will allow changes to write scripts for:
- query the box for the name of the program to be used as the recording file name
- query the epg for the start & end time & use this in the VLC script
- a VLC script as above without the screen display, just recording the stream to disk

What do y'all think - feasible or not?

In short - Yes!

I haven't used the sqllite epg yet but it should be possible to have an application on the PC read the data from the epg which I will assume has the channel details in. Change the channel on the DB and then use VLC (based on you test recording above) to inititate the recording. I have the programming skills to do it and would be happy to have a go, could you possibly send me a copy of the sqllite database, assuming it doesn't contain any personal details just epg data?
 
Good man mshears30,

It's great to see people having a go & advancing the collective knowledge (sounds like the Borg). I might have been a bit too simplistic though as I think other bits & pieces are needed:
- a function to match the box channels & the epg channels & store whatever pids are needed to zap the box for recording the stream
- a function that allows recording events to be set-up (essentially a zap & VLC script start for the duration of the program)
- so a new table is needed to store this info.

If you're still interested I will email you a SQLite epg? PM me your addr

On the other hand we could make a more universal utility which would have wider applicability. we have access to the source of an XML epg viewer (written in C, I think) to which the above functions could be added. are you a C programmer?
 
Hi All,
Here's the recording analysis I promised. Not completely error free, unfortunately but most of the errors appreared in the last minute for some reason? Anyway, best I've ever seen on my 500.

File Size Processed: 1.44 GB, Play Time: 00h:54m:33s
720 x 576, 25.00 fps, 8.00 Mbps (3.34 Mbps Average).
Average Video Quality: 16.31 KB/Frame, 0.32 Bits/Pixel.
MPEG Audio.
15 of 81832 video frames found with errors.
0 of 0 audio frames found with errors.
77865 corrupted video bytes in file.

Senor might want to look at the attached file & give us his expert opinion on the recording?
 
Here's another recorded file analysis - better than the last one

Sequence Frame 3170(1-B) / Time 0:02:06 :
VideoError: Slice 34 followed by invalid slice 18. (Should differ by one row)
VideoError: MPEG2 Intra DCT coefficient index out of bounds. MBA=1463(176,528)
VideoError: Failed to decode macroblock at MBA=1463(176,528)
VideoError: Missing 125 macroblocks in picture slice(s) at MBA=1459(112,528).
FileInfo: Last video errors span 15599 bytes at file offset 52292433

Sequence Frame 42995(2-I) / Time 0:28:39 :
VideoError: Invalid macroblock address increment code. MBA=956(512,336)
VideoError: Missing 5 picture slices at MBA=955(496,336)
FileInfo: Last video errors span 637 bytes at file offset 725796392
FileInfo: Last video errors span 1 bytes at file offset 725798728

Sequence Frame 71554(9-B) / Time 0:47:42 :
Info: End of MPEG2 sequence

Sequence Summary:

File Size Processed: 1.13 GB, Play Time: 00h:47m:42s
704 x 576, 25.00 fps, 10.00 Mbps (3.02 Mbps Average).
Average Video Quality: 14.76 KB/Frame, 0.30 Bits/Pixel.
MPEG Audio.
2 of 71554 video frames found with errors.
0 of 0 audio frames found with errors.
16236 corrupted video bytes in file.
 
Those last two recordings aren't really uncommon for server based recordings. Some people get quite a bit more, but it varies, and it's certainly in the general range of what I used to get using DbowWinserver with Enigma based images. Sometimes I would get no errors at all on 1 hour recordings, and there seems to be no real pattern to how or where they appear. Had you only recorded half an hour of that first recording, it would have looked pretty decent, but then you got a big chunk of errors just a few minutes before the end. I couldn't really say these results look better than what I have seen using DboxWinserver, I'm afraid, though I have seen worse. :)
 
Back
Top