when i did my first emm decoder (;->) i took the source code from
dvbsnoop and it worked for me ..... can you try it?

can you try first dvbsnoop with the parameters you want?

On Tue, Dec 15, 2009 at 11:50 AM, lucabe...@libero.it
<lucabe...@libero.it> wrote:
> hello i have write i little c program for test :
> here is the program:
>
> #include
>
> <stdio.h>
> #include </usr/include/linux/dvb/frontend.h>
> #include <stdlib.h>
>
>
> #include <stdint.h>
> #include <ctype.h>
> #include <sys/ioctl.h>
> #include
>
> <sys/poll.h>
> #include <unistd.h>
> #include <error.h>
> #include <errno.h>
> #include
>
> <sys/types.h>
> #include <sys/stat.h>
> #include <fcntl.h>
> #include <time.h>
>
>
> #include <unistd.h>
> #include <linux/dvb/dmx.h>
> #include <linux/dvb/frontend.h>
>
>
> #include <linux/dvb/dmx.h>
>
> #define MIA "/dev/dvb/adapter0/frontend0"
> #define
>
> MD "/dev/dvb/adapter0/demux0"
> //#define DVR "/dev/dvb/adapter0/dvr0"
> #define
>
> DVR_FILE "/home/lucak904/Scrivania/Luca/prog_c/sat/mio.dat"
> #define BUFFY
>
> (188*20)
>
> main()
>
> {
>    struct dvb_frontend_info luca;
>    struct
>
> dvb_frontend_parameters parametri;
>    struct dvb_frontend_parameters luca2;
>
>
>    struct dmx_pes_filter_params filtri;
>
>    parametri.frequency = 1197700;
>
>
>    parametri.inversion = INVERSION_AUTO;
>    parametri.u.qpsk.symbol_rate =
>
> 2750000;
>    parametri.u.qpsk.fec_inner   = FEC_AUTO;
>
>
>    fe_status_t status;
>
>
>    int fd, min, max,chiudo_fd, chiudo_md, chiudo_dvr ,stato, pp, freq,
>
> ritorno, sy_rate, tt, md,fec_inn, inv, dvr, dvr_out,len;
>    uint8_t buf
>
> [BUFFY];
>
>
> if((fd = open(MIA,O_RDWR)) < 0){
>                perror("FRONTEND
>
> DEVICE: ");
>                return -1;
>    }
> if (ioctl(fd, FE_SET_FRONTEND,
>
> &parametri) < 0){
>                perror("QPSK TUNE: ");
>                return
>
> -1;
>    }
>    if (ioctl(fd, FE_GET_FRONTEND ,&luca2) <0){
>
> perror
> ("GET_INFO: ");
>                return -1;
>    }
>
> printf("\nfreq :%d",
> luca2.
> frequency);
>    printf("\nsimbol_rate : %d", luca2.u.qpsk.symbol_rate);
>
>
> printf("\ninversion : %d", luca2.inversion);
>    printf("\nfec : %d", luca2.
> u.
> qpsk.fec_inner);
>
>
>    if (ioctl(fd, FE_GET_INFO  ,&luca) <0){
>
>
> perror("GET_INFO: ");
>                return -1;
>    }
>
> printf
> ("\nfreq min:%
> d", luca.frequency_min);
> printf("\nfreq max:%d", luca.
> frequency_max);
>
> if
> (ioctl(fd, FE_READ_STATUS  ,&status) <0){
>
> perror
> ("FE_READ_STATUS: ");
>                return -1;
>    }
>
>    // apro il
> demux
>
>
>    printf("\nstato :%d", status);
>    if((md = open(MD,
> O_RDWR|O_NONBLOCK)) < 0)
> {
>                perror("DEMUX DEVICE: ");
>
>                return -1;
>    }
>
>
>    //setto il demux
>
>    filtri.pid = 1296;
>
>    filtri.input =
> DMX_IN_FRONTEND;
>    filtri.output = DMX_OUT_TAP;
>    filtri.
> pes_type =
> DMX_PES_OTHER;
>    filtri.flags = DMX_IMMEDIATE_START;
>    if (ioctl
> (md,
> DMX_SET_PES_FILTER, &filtri) < 0) {
>            perror("DEMUX DEVICE: ");
>
>
>            return -1;
>    }
>
>    //apro il dvr
>
>    //if ((dvr = open(DVR,
>
> O_RDONLY|O_NONBLOCK)) < 0) {
>      //      perror("DVR DEVICE : ");
> //
>
> /    return -1;
>  //  }
>
>    if ((dvr_out = open
>
> ("/home/lucak904/Scrivania/Luca/prog_c/sat/prova_scar.txt", O_WRONLY)) < 0) {
>
>
>            perror(" DVR FILE : ");
>            return -1;
>    }
>
>
>    if((len
>
> = read(md,buf, BUFFY)) < 0){
>        perror("non leggo");
>    }
>    else{
>
>
>        write(dvr_out,buf,len);
>
>    }
>
>    chiudo_fd = close(fd);
>
>
> chiudo_md = close(md);
>    //chiudo_dvr = close(dvr);
> }
>
> It is just a test
>
>
> every time i get Resource temporarily unavailable
> For my understanding it means
>
> that nothing is readed from demux device, wath is wrong , the pid and 
> frequency
>
> are ok the SNR is more than 70%
>
> Thanks
>
> Luca
> --
> To unsubscribe from this list: send the line "unsubscribe linux-media" in
> the body of a message to majord...@vger.kernel.org
> More majordomo info at  http://vger.kernel.org/majordomo-info.html
>
--
To unsubscribe from this list: send the line "unsubscribe linux-media" in
the body of a message to majord...@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html

Reply via email to