Quantcast
Channel: Ricks Satellite Wildfeed and Backhaul Forum - Computer and USB Satellite Receivers and Recording
Viewing all 810 articles
Browse latest View live

Help needed with streamreader.dll c#

$
0
0
Hello

I'm trying to write an application using streamreader.dll to simply stream filtered transponder data over HTTP once a client requests that specific data. The client could be a Dreambox or OSEmu for example. Basically anything that will further process the data. After some not so great results in C++ I decided to use C# instead because I'm hoping the handling of client connections and threads plus the GUI will be somewhat easier.

streamreader.dll should work, right? And in part it does - i can tune in to a frequency and set filter, but the problem I'm having is with the callback function which is supposed to read the data. The problem is that I'm only getting one byte in the buffer, it's byte 0x47, which means it works in part, but where are the other 187 bytes? The len parameter clearly shows the streamingCB function got 188 bytes, yet the buffer contains just one. I'm stuck here and I have no idea if this is my c# coding error or incorrect use of the streamreader.dll.

Here's my code. And a screenshot of what I get is attached. Any help would be much appreciated. I think such application would be quite helpful, so far I don't think anything like this exists!

Code:

using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
using System.Windows;
using System.Windows.Controls;
using System.Windows.Data;
using System.Windows.Documents;
using System.Windows.Input;
using System.Windows.Media;
using System.Windows.Media.Imaging;
using System.Windows.Navigation;
using System.Windows.Shapes;
using System.Runtime.InteropServices;
namespace SimpleSatServer
{
    /// <summary>
    /// Interaction logic for MainWindow.xaml
    /// </summary>
    /// 
    public class DVB_card
    {
        public DVB_card(string name, int id)
        {
            this.Name = name; this.Id = id;
        }
        public string Name
        { get; set; }
        public int Id
        { get; set; }
    }
    public partial class MainWindow : Window
    {
        public static MainWindow GUI { get; private set; }
        //
        //public static extern void StreamingCB2(byte
        public static extern bool StartDVBEx(Int32 index);
        
        public static extern bool StopDVB();
        
        public static extern bool CheckForDVB();
        
        public static extern UInt32 GetCaps();
        public delegate void DVBCallbackFunc(int index, String name);
        
        public static extern bool CheckForDVBEx(DVBCallbackFunc func);
        
        public static extern bool GetSignal(ulong Level, ulong Quality);
        
        public static extern bool SetChannelEx(Int32 freq, Int32 symbrate, Int32 pol, Int32 fec, Int32 lof1, Int32 lof2, Int32 lofsw, Int32 mod);
        
        public unsafe static extern bool GetSignalExEx(bool* pPresent, bool* pLock, int* pRFLevel, float* pSNR, float* pBER);
        public unsafe delegate void StreamingCallbackFunc(byte
        public unsafe static extern bool SetFilter(int pid, StreamingCallbackFunc lpFunc, Int32 CallBackType, Int32 size, Int32* lpfilter_num);
       
        
        public MainWindow()
        {
            InitializeComponent();
            log("Looking for DVB tuners... ");
            CheckForDVBEx(InfoCB);
            dvb_dev_list.SelectedIndex = 0;
        }
              
        public void InfoCB(int index, String name)
        {
             dvb_dev_list.Items.Add(new DVB_card(name, index));
            log("Found DVB tuner " + name);
        }
                
        public void StreamingCB(byte[] buffer, int len)
        {
            log("BUFFER LEN: " + buffer.Length);
            log("LEN: " + len.ToString());
            log("BUFFER: " + BitConverter.ToString(buffer));
            //System.IO.File.WriteAllBytes("file.ts", buffer);
        }
        
        public void log(string tolog)
        {
            try { 
            this.Dispatcher.Invoke(() =>
                {
                 log_window.AppendText(DateTime.Now.ToString("H:mm:ss") + ": " + tolog + "\n");
                 log_window.ScrollToEnd();
             });
            }
            catch
            {
            }
            
        }

        private void Button_Click(object sender, RoutedEventArgs e)
        {
            //public static extern void DisplayHelloFromDLL();
            Int32 nr = dvb_dev_list.SelectedIndex;
            if (!StartDVBEx(nr))
            {
                log(string.Format("StartDVBEx({0}) fail", nr));
                dvb_dev_list.Background = Brushes.Red;
            }
            else
            {
                log(string.Format("StartDVBEx({0}) OK", nr));
                dvb_dev_list.Background = Brushes.Green;
                dvb_deb_stop.IsEnabled = true;
                dvb_deb_start.IsEnabled = false;
                dvb_dev_list.IsEnabled = false;   
            }  
        }
        private void Button_Click_1(object sender, RoutedEventArgs e)
        {
            
            if (!StopDVB())
            {
                log(string.Format("StopDVB err"));
            }
            else
            {
                log(string.Format("StopDVB OK"));
                dvb_dev_list.ClearValue(Button.BackgroundProperty);
                dvb_dev_list.IsEnabled = true;
                dvb_deb_start.IsEnabled = true;
                dvb_deb_stop.IsEnabled = false;
                sig_info_lock.ClearValue(Button.BackgroundProperty);
                sig_info_snr.Content = "";
            }
        }
        private unsafe void btn_signal_info_Click(object sender, RoutedEventArgs e)
        {
            sig_info_lock.ClearValue(Button.BackgroundProperty);
            sig_info_snr.Content = "";
            if (!SetChannelEx(11804000, 27500000, 1, 0, 97500000, 10600000, 11700000, 0))
            {
                log(string.Format("SetChannelEx err"));
            }
            bool pPresent;
            bool pLock;
            int pRFLevel;
            float pSNR;
            float pBER;
            GetSignalExEx(&pPresent, &pLock, &pRFLevel, &pSNR, &pBER);
            log("Signal Present: " + pPresent.ToString());
            log("Signal Lock: " + pLock.ToString());
            log("Signal SNR: " + pSNR.ToString());
            log("Signal BER: " + pBER.ToString());
            log("Signal RF: " + pRFLevel.ToString());
            if (pLock)
            {
                sig_info_lock.Background = Brushes.Green;
                sig_info_snr.Content = pSNR.ToString() + " dB";
            }
            int filter1;
            StreamingCallbackFunc sh = StreamingCB;
            if (!SetFilter(17, sh, 4, 1, &filter1))
            {
                log("Filter fail");
            }
            else
            {
                log("Filter set");
            }
        }
    }
}

Category: Computer and USB Satellite Receivers and Recording


TBS6983 DVB-S2 Professional TV Tuner PCIe Card

$
0
0
I'm finally in the market to pickup a TBS6983 PCIe card and to my surprise Rick has sold out, so also the TBS official Online store. The TBS6893 is even no longer in the list of available cards on TBS official site, unless you do a search, which produces a result indicating the product is out of stock. I see a lot of PCIe cards on TBS' official website. My question is this.......which is the replacement card for the TBS6983. I need a card that can handle the UHD/4K signals and more.

Edit: What advantage does the TBS5925 have over the newer units like the TBS6983?

Category: Computer and USB Satellite Receivers and Recording

TBS6903 Softwares

$
0
0
I'm soon to get delivery of my TBS6903 by early next week. I would like to get a head start on gathering all the necessary software and any plugins that I may need to enjoy a smooth installation and operation of the unit. Any suggestions on setup steps and softwares to get in addition to the stock software that comes with the receiver card?

Category: Computer and USB Satellite Receivers and Recording

Montage and ACM/VCM

What are PMT, PAT, SDT, and EIT, and do I want to rewrite them?

$
0
0
I was looking through the TVHeadEnd configuration settings and came across the page at http://docs.tvheadend.org/webui/config_streamprofile/ which mentions stream profiles.  I know that by default the "pass" profile, a.k.a. "MPEG-TS Pass-through" is used but in the second screenshot on that page, it shows all the boxes checked for "Rewrite PMT", "Rewrite PAT", "Rewrite SDT", and "Rewrite EIT".  In my current install only "Rewrite PAT" is checked, but that screenshot shows all four of them checked.  I was wondering what those do and what difference they might make.

Unfortunately the TVHeadEnd help only says this:
Quote:

MPEG-TS Pass-through Settings

Rewrite PMT/PAT/SDT/EIT : Rewrite PMT/PAT/SDT/EIT packets to only include information about the currently streamed service.


Not real informative.  Other pages seem to indicate that the acronyms expand to these:

PMT - Program Map Table
PAT - Program Association Table
SDT - Service Description Table
EIT - Event Information Table

The MuMuDVB documentation at least mentions a couple of these.  In that software,

Quote:

PAT (Program Allocation Table) Rewriting
-----------------------------------------
This feature is mainly intended for set-top boxes. This option will announce only the streamed channel in the Program Allocation Table instead of all transponder channels. Computer clients parse this table and decode the first working program. Set-top boxes usually try only the first one which give usually a blank screen in most of the channels.

To enable PAT rewriting, add `rewrite_pat=1` to your config file. This feature consumes few CPU, since the rewritten PAT is stored in memory and computed only once per channel.

PAT rewrite can fail (i.e. doesn't solve the previous symptoms) for some channels if their PMT pid is shared. In this case you have to add the `service_id` option to the channel to specify the service id.

SDT (Service Description Table) Rewriting
-----------------------------------------
This option will announce only the streamed channel in the Service Description Table instead of all transponder channels. Some clients parse this table and can show/select ghost programs if it is not rewritten (even if the PAT is). This can rise to a random black screen.

To enable SDT rewriting, add `rewrite_sdt=1` to your config file. This feature consumes few CPU, since the rewritten SDT is stored in memory and computed only once per channel.

If you don't use full autoconfiguration, SDT rewrite needs the `service_id` option for each channel to specify the service id.

EIT PID (Event Information Table) Sorting
-----------------------------------------
This option will make MuMuDVB stream only the EIT packets corresponding to the streamed channel instead of all transponder channels. Some clients parse this table and can show/select ghost programs (even if the PAT and the SDT are rewritten).

The EIT PID contains the description of the current program and the future programs. It is used to build the Electronic Program Guide.

To enable EIT sorting, add `sort_eit=1` to your config file.

If you don't use full autoconfiguration, EIT sorting needs the `service_id` option for each channel to specify the service id.

The last one (EIT PID Sorting) doesn't directly correspond to the TVHeadEnd "Rewrite EIT" option but it at least gives some idea what it is.  PMT is not described.  What I could not find anywhere was a clear explanation of why you would enable or disable those.  As I noted, on my TVHeadEnd install only "Rewrite PAT" is currently checked, but I don't recall if that was the default setting or if I changed it for some reason or what.

So my question is, for those of you that run software that includes these "rewrite" settings, do you enable the rewrites on all of them, some of them, or none of them, and if only some, which ones?  I guess I am just curious as to why these settings exist.  Obviously there must be circumstances where you'd use one or the other, but I cannot find any explanation that makes any sense to me anywhere. I'd particularly like to know which settings are best to use with DVB-S/S2 channels from C-band or Ku-band dishes. Any thoughts?

Category: Computer and USB Satellite Receivers and Recording

Streamreader Download

Genpix Skywalker 3

$
0
0
Has anybody purchased this new version Genpix card? I have not seen any reviews anywhere on it. SW-3-4.JPG   
Supported modulations:

DVB-S2 QPSK/8PSK
DVB-S (QPSK)
Digicipher II Combo
Digicipher II Split (I/Q)
Digicipher II Offset QPSK
DSS (QPSK)
Turbo-FEC is not supported


Symbol Rate:

DVB-s/DSS/Digicypher II: 1 - 45 msps
DVB-S2: 5 - 33 msps

Supported FEC rates:

DVB-S2 QPSK: Auto, 1/2, 3/5, 2/3, 3/4, 4/5, 5/6, 8/9, 9/10
DVB-S2 8PSK: Auto, 3/5, 2/3, 3/4, 5/6, 8/9, 9/10
DVB-s:           Auto, 1/2, 2/3, 3/4, 5/6, 7/8
Digicipher II:   Auto, 1/2, 5/11, 3/5, 2/3, 3/4, 4/5, 5/6, 7/8
DSS (QPSK):   Auto, 1/2, 2/3, 6/7


RF specification:

• Frequency range: 250-2150 MHz
• input connector: IEC F-type female
• LNB/switch control: 13/18V (or 14/19V), 22 kHz, Tone Burst, DiSEqC 1.0/1.2, Legacy switch commands, max. 750 mA *

* 750mA is maximum NON-continuous (for several minutes) allowable load. To avoid overheating, it's advisable not to exceed 450mA for permanent load.


Minimum PC requirements:

• Pentium III 1GHz (more powerful CPU and advanced graphics card are required for HDTV programming)
• Supported Operating System: Windows 2000, Windows XP/2003, Vista/2008, Windows 7/2008 R2, Windows 8/2012, Windows 8.1/2012 R2, Windows 10.
• Sound card
• available USB 2.0 5-pin or 10-pin header on the motherboard (check your motherboard manual) - here is a guide for SkyWalker-2/-3 installation into PC.


Accessories:

• SkyWalker-3 internal DVB-S2 card (the size of Low Profile PCI card);
• 12" 5-pin to 5-pin internal USB 2.0 cable;
• replacement bracket (to convert SkyWalker-3 into standard size PCI card)


Supported Software:

• TSReader™ (evaluation version is available from COOL.STF web-site) + genpix SW-3 interface ver. 1.0.3 or newer
• DVB Dream (available from dbvdream.org web-site) + genpix SW-3 interface ver. 1.0.3 or newer

* the applications above are using Genpix WDM driver (already available).
Genpix BDA driver is in development (which will enable support of other DVB applications).

Category: Computer and USB Satellite Receivers and Recording

TBS USB receivers


suggestions for a newbie please.

$
0
0
Hello ladies and gentlemen.  Any input on a Computer DVB-S2 card that is no more then $150 to $200.00 max? I like the NEW Genpix and some of the TBS cards too, but can't really decide on what can be the best for me. Keep in mind I am 65 yrs old so any "old man friendly" PC card will be best for my use.

I currently use the GEOSATpro microHD HD FTA Satellite Receiver and works wonderful so wanted something similar for my Dell Computer that I purchased last year.

Category: Computer and USB Satellite Receivers and Recording

How To Use TBS Blindscan with TBS Viewer

$
0
0
I have done a Blindscan using the "TBS Blindscan" and it logged transponders, but I have tried without success to link the scanned transponders to the "TBS Viewer" to watch the resulting channels. I might add that, I'm able to just scan the frequency ranges only with "TBS Viewer" and watching the scanned in channels. I'm using the TBS 6903 card on a Windows 10 Pro machine. Any tutorial on this will be highly appreciated.

Category: Computer and USB Satellite Receivers and Recording

Kodi 18 test

$
0
0
Since they are now developing kodi 18 I decided to clone the repo and compile/install it and check it out.

Right off the bat I found out that they have dropped automake and now they are using cmake to compile it. Instead of my usual:

./bootstrap
./configure --with-ffmpeg=force
make
sudo make install

I had to do an out-of-source build with cmake:

mkdir kodi-build && cd kodi-build
cmake ../project/cmake/
make
sudo make install

I have always liked it building and using their ffmpeg and so far I have not found if even that is even possible now. Will have to do some researching. And of course they changed the API so I had to compile a new Tvheadend pvr.hts plugin.

After compiling and installing it worked fine and it looks similar to Kodi 17 with some cosmetic differences. My ATSC and satellite channels worked good as usual with the Tvheadend backend.

Category: Computer and USB Satellite Receivers and Recording

Tsreader Positioner

Kodi

help to googlecast from PC (UHD)

$
0
0
I own a e55ud2 from Vizio.  It has Smartcast / Chromecast built-in which today is simply called Google Cast.  I would like to watch live UHD on my TV.  I have PC with USB tuner and am practicing with NASA UHD mux. 

What is the best way to go from PC (i use TSReader) to my TV via Googlecast?

I have already tried VLC's newest Renderer option.  It works for H264 (1080p) and gives me sound for UHD channel, but no picture.

I do not own a laptop, PC, or any receiver than can send the signal via HDMI to my TV.  This must be done via Googlecast.  I have successfully watched 2160 UHD youtube videos via casting already.

So anyone accomplish this yet? Thanks

Category: Computer and USB Satellite Receivers and Recording

Zinwell San-4803 Multi-switch


Help with Linux and TBS 5925

$
0
0
I'm trying to get my TBS 5925 to work with Linux, but I'm having no success.
I've looked through the following threads:
V41-update
Linux getting started-dvb
Update DVB thread
TBS Open Source Drivers 
and others.
I'm totally confused. Probably because I'm an idiot regarding Linux, but I'm totally confused.
I can run the Terminal, but I constantly run into errors which I don't understand and can't fix.
I've installed Ubuntu 16.04 LTS on my computer using VMWare workstation 12 Player.
I'm probably asking for the impossible, but are there any step by step instructions that I can follow to make my TBS 5925 work in Linux?

Category: Computer and USB Satellite Receivers and Recording

TBS 6925 x 6983

$
0
0
It is no news that the 6925 is a far better card then the 6983. Surely TBS did not do a good job on this 6983. Never the less if anyone has the 6925 they should take really good care not to brake it.



Here is what Pendragon said:



"        

Posted 01/04/13                 #2

It's quite possible the tuner chip in your 6925 has suffered a performance degradation, such as in phase noise. I've seen this happen rather suddenly on two other STB 6100-based cards with different demodulators. With increased phase noise, DVB-S2 (8PSK+ and high FEC) may be compromised, while DVB-S still works fine."



So how can we prevent the tuner chip to have these issues? Is it possible that this card gets really hot and then it starts to be an issue? Mine was always too hot...



What in heaven causes these cards to fail as many members posted on this forum?

Category: Computer and USB Satellite Receivers and Recording

Raw commands for switch

$
0
0
I have a Zinwell 4x8 switch. The 2nd input port (13V) is connected to a ku band dish aimed at 125w. All other inputs aren't connected. The first output port is connected to a dvb card using dvbdream. I set the diseqc config switch type to none, Lof-1 Lof-Sw and Lof-2 to 10750000, raw diseqc to E0 10 38 F4, and uncommited to disabled. I tried tuning into PBS (12180V) but am not getting any signal. If I remove the switch and connect directly to the LNB it works fine. Is there something wrong in the config? The documentation I've seen for raw commands mentioned the following:

port 1 = E0 10 38 F0
port 2 = E0 10 38 F4
port 3 = E0 10 38 F8
port 4 = E0 10 38 FC

Category: Computer and USB Satellite Receivers and Recording

8 Ft. Fiberglass Dish for Ku Only

$
0
0
Thinking using extra 8 ft, 4 panel fg i have with CKS1 peaked for ku.Anyone using or tried this?

If i getdecent c band,fine.But treallywant it for ku.

Anyreplies welcome!



Forgot to mention it's a center pole mount(not J Pole).

Category: Computer and USB Satellite Receivers and Recording

Streamreader vs BDA

Viewing all 810 articles
Browse latest View live