Code Monkey home page Code Monkey logo

rpidatv's People

Contributors

davecrump avatar elfeesho avatar f5oeo avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

rpidatv's Issues

Synchronization error with Raspberry pi B+

Hello F5OE0. I'm new using the Rapsberry. I trying to stream the file attached to your code "mire.jpg" using the console command ./rpidatv.... The thing is after i execute the command a lot of SYNC ERROR appear. "ladecadence" commented on 25 May about this issue. I tried the solution you gave him, I also put the Raspberry in Turbo Mode using the raspi-config and the error continues. I'm using the last Raspian distribution updated and the Model B+. If you could please provide me another solution to this issue. I just have this raspberry pi model so i'm trying to look for any solution instead of just change it to a newer faster model.

Encription of .TS

Is There a posibility to add encription to the Transmission stream in order to allow just some user to watch like the standard DVB-CA ?

/leandvb2video.sh still not ok for me

pi@raspberrypi:~/rpidatv $ ./scripts/leandvb2video.sh
Freq = 437500000
leandvb: no process found
mplayer: no process found
mkfifo: cannot create fifo ‘fifots’: File exists

from menu i got
/home/pi/rpidatv/scripts/menu.sh: line 459: let: 437.5: syntax error: invalid arithmetic operator (error token is ".5")
receive on 250000 at Frequency
mkfifo: cannot create fifo ‘fifots’: File exists

MPlayer interrupted by signal 15 in module: demux_open
Cannot seek backward in linear streams!
Seek failed

after the update still not running.

Edwin

make problem

Linux raspberrypi 4.1.19-v7+ #858 SMP Tue Mar 15 15:56:00 GMT 2016 armv7l GNU/Linux

cc -Wall -g -O2 -Wno-unused-variable -Wno-unused-function -o ../bin/rpidatv rpidatv.c rpigpio.c dvbsenco8.s fec100.c mailbox.c rpidma.c -lm -lrt -lpthread
rpidatv.c: In function ‘main’:
rpidatv.c:1285:15: warning: variable ‘TotalByteRead’ set but not used [-Wunused-but-set-variable]
static int TotalByteRead;
^
rpidma.c: In function ‘InitDma’:
rpidma.c:43:11: warning: assignment from incompatible pointer type
virtbase = (uint32_t *)mbox.virt_addr;
^
rpidma.c: In function ‘mem_phys_to_virt’:
rpidma.c:65:18: warning: initialization makes integer from pointer without a cast
uint32_t result=(uint8_t *)mbox.virt_addr+offset;

Cannot stream RPi Camera

Hi, I have seen demonstrations where a camera stream is used. I have a Raspberry Pi camera and would like to stream this. What is the command required?
So far, I have tried to broadcast sample picture in /video but VLC doesn't play anything when I use:
sudo rtl_sdr -f 437500000 -s 2400000 - | ./leandvb --gui | vlc -

Help with setup

Hi,

This seems to be a good project. Also it's live as the "dev" branch is active.

However, for newbies is quite difficult to understand it.
So, please can you help me to understand some things?

  • My target is a standard DVB-S STB, then the 23cm band is required, right?

  • Using a Pi3 version, and receiving the MPEG-TS over the network, what is the maximum useable Symbolrate? This TS is CBR and the Pi3 doesn't need to process it, only modulate the signal.

  • And using an upconverter, will be possible to improve the Symbolrate?

Thank you for this interesing project.

leandvb2video.sh kills nonexistent processes

rpidatv/scripts/leandvb2video.sh: lines 34 - 36

sudo killall leandvb
sudo killall mplayer
mkfifo fifots

Should check whether leandvb and mplayer are running before killing. Generates unnecessary error messages when they aren't. Same with mkfifo fifots, check if fifots exists first. Also, might want to change the name 'fifots' to something less "generic".

Piping avc2ts output to rpidatv input

I don't know if you already have done this, since i haven't seen the command in the code. Is it possible to direct piping the acv2ts output to the rpidatv using the | for redirection ? What could be a example of the command if the answer is yes.

scripts pointing to /home/pi

All the scripts points to /home/pi/....
I think it's wrong and should not use absolute paths, instead i would use ../ or something similar.

reception menu

add a menu for reception parameter instead og using rf tx parameters

avc2ts installation fail

When i try to make the compilation of the code it guives me the next error:

Compilation terminated.
Makefile:17: recipe for target 'vncclient.o' failed
make: *** [vnclient.o] Error 1

I don't know what is the recipe i'm missing.

Patern generator makes issue on RF mode

Using Tcanim with a high framerate disturb transmission in RF mode. Seems to be a memory contention. Need to investigate. For now, workaround is to slow the framerate (2 fps).

Getting started for beginners

Hey, thanks for this it's so exciting!
I was planning to use the raspberry as tv transmitter for a university project but, if I can use raspberry for some stuff, I can't really know how to manage the Tv technical side...
I tried to start following the steps on https://github.com/BritishAmateurTelevisionClub/rpidatv but i dont know how to receive the transmission on a tv.

Do I need just to tune the tv on my frequency or am I ignoring some steps?
I'm attaching a snapshot of my tv settings which dont work...
Edit: im using a Raspi 2B

Is there a guide I can follow?
Many thanks
20170723_143642

Pattern mode

Seems that patern doesn't work with RF mode. Need to see if with other output mode (IQ/DTX1) it is the same. Suspicious is a DMA stop because of grabbing display.

Dvb-c signal with the raspberry PI

I want to use the raspberry as dvb-c transmitter to add extra channels to my standard cable provider (304 MHz QAM: 64 Symbol: 6875 ). Is it possible or can you make it possible to transmit dvb-c channels?

Am i doing something wrong?

Hi Folks

I would really appreciate some advice. I simply cannot get rpidatv to work properly. Watching the numerous youtube demos, it seems very easy. I would like to use RF (GPIO) mode. I am trying to use a single Pi for send and receive.

On the transmit side, I have been using a variation of this command:

./rpidatv -i result.ts -s 1000 -c 3/4 -f 434.0 -l -p 7 -x 12 -m RF

And on the receive side, this command:

rtl_sdr -f 434000000 -s 3200000 -g 0 -p 78 - | ./leandvb --fastlock --gui -v --sr 1250000 --cr 5/6 | vlc -

I have tried the following to no avail:

  • Lower symbol rates (150, 250, 333)
  • Different receive sample rates (2.4Msps and 3.2 Msps)
  • Different 'cr' values (1/2, 3/4)
  • Plugging a wire directly from my GPIO pin to my SDR input
  • Trying GPIO 12 and 18
  • Changing the RTL-SDR (currently have 2 NooElec models)
  • Change the Pi (2B and 3B+ - same SD card/OS though)
  • 4 different TS files (result.ts (which is just the sample blank color pages) from avc2ts, one I had lying around, one from a link in another issue in this repo, and an H264 TS I downloaded from the internet)

The best I've got, and it only does this maybe 10% of the time, are a couple of frames here or there.

The only thing I will say, is that I live quite close to an AM transmitter (within a few miles), however I have also tried putting an AM filter on the input.

My OS is:
Raspbian Stretch with desktop and recommended software
Version:November 2018
Release date:2018-11-13
Kernel version:4.14

Does anyone have any ideas? I must be doing something wrong?

I can confirm that rpitx works as expected.

Thanks

JT

Model B

On model B, pin 12 isn't laid out. The program should change it to 18 (and 4?) instead.

avc2ts null buffer

At Higher SR (>=500) , avc2ts lost some frame, which does not feed Transport stream and rpidatv is underflow. Need to fix this by alerting rpidatv.

Minor documentation correction

Hello Everiste,
I am about to download / install this latest version, I see that you have put in a lot of effort tidying up and improving on this great little project.
Since you are busy working on rpidatv, can I just mention that the documentation "README.MD" has an error, in the modulator section, it shows the example using "[-o OutputMode]" where the help text says "-m" as outputmode. I believe I had read in a previous issue that this had caused some confusion when trying to use the software in a terminal window.

Also for the installation instructions, should the user set themselves as su or does the ./install.sh need to be prefixed sudo?

73
Bevan
VK5BD

Add more option on menu

Add a choice of auto-start :

  • Terminal menu
  • Display menu (need screen type)
  • Push button
  • LIRC

g++ issue in "-03" option

I have problems with this line
g++ -O3 -DGUI leandvb.cc -lX11 -o leandvb
it guives me an error: unknown option "-03"
i follow all the options in order to install leandvb but this is the line that stop the progress.

rpidatv Higher Symbol Rates

Hello,
Thank you for your efforts in making this whole project work.
The issue I am currently having when using it in IQ mode, I can not set my Symbol Rate above 1495, when I do the I and Q Signals stop being generated.
I see the documentation talks about 125 to 2000 being possible settings, and I was hoping to push out to 5000, but seemed to have found an unexpected limit.
I am currently doing the testing on a Pi 3.
Regards,
Bevan
Australia

The example for a transmission contains an unknown option

The example:
Example : sudo ./rpidatv -i sample.ts -s 250 -c 1/2 -o RF -f 437.5 -l
contains the -o option, which is refused by the program

./rpidatv: invalid option -- 'o'
rpidatv: unknown option `-o'.

Can / should it be omitted ?

Thanks,
Ben

Bitrate issue over 2MSymbols

As encoder is now on QP constant, algorithm to calculate QP is not precise enough at high bitrate : should go back to constant bitrate for high SR or rewrite QP calculation

Results of testing new version (avc2ts)

Hello Everiste,
Congratulation on the new input features, certainly makes the project more flexible.
Some issues that I have come across are:
-The audio PID doesn't end up being PMT +2 as expected, seems to =PMT for inputs using the avc2ts method, and I have not heard any audio. The only source that generates audio is the CAMMPEG-2 which generates the tones with a PID of PMT +2, A IPTSIN has audio but believe that is due to the PID's being generated on the source PC and not in the PI
-The video bit rate is quite low at higher symbol rates (For the testing I used IQ modulation, 3/4 FEC, PatternAudio. I sampled the output stream using Minitioune to decode the DVBS and UDP into TSReader Lite, each symbol rate was measured for around 5mins. At 250ksymbols the Video rate 238.87kbps, stuffing rate 97.86kbps, overall Mux bitrate 345588bps. At 500ksymbols the Video rate 298.17kbps, stuffing rate 383.65kbps, overall Mux bitrate 691097bps. At 1000ksymbols the Video rate 177.42kbps, stuffing rate 1.20Mbps, overall Mux bitrate 1382220bps. At 2000ksymbols the Video rate 462.31kbps, stuffing rate 2.29Mbps, overall Mux bitrate 27647057bps. At 5000ksymbols the Video rate 137.08kbps, stuffing rate 6.77Mbps, overall Mux bitrate 6911764bps.) As you can see the transport stream had an overall Mux rate that was to be expected at each symbol rate, however the stream seemed to just be stuffed with more null packets rather than video data, making it unusable at higher symbol rates.
Regards,
Bevan
VK5BD

At 5000K
dvbs 5000ks ts reader

At 250K
dvbs 250ks ts reader

At 500k
dvbs 500ks ts reader

At 1000k
dvbs 1000ks ts reader

At 2000k
dvbs 2000ks ts reader

I try to decode the stream using standard DVB-S receiver but don't work help me please.

I try to decode the stream using standard DVB-S receiver ... but when i search the channel the receiver don't found my modulation ... i use the LNA at 9750 I try to check the modulation with HackRF and #SDR amd i see the modulation but i don't have any kind of software for decode DVB-S with HackRF i search online but found nothing ... do you have some suggestions ? If not i order a RTL-SDR ... but i thought that with HackRF i don't need a RTL dongle help me please :)
Thanks
Roberto

mplayer vs VLC

mplayer just doesn't work on the raspberry pi (lirc troubles, amongst others). Using newest raspbian jessie (May 2016), downloaded yesterday. Swapping mplayer for VLC at least opens the VLC window with fifots in the header bar.
Either way, no video on receive.

SDR Output

I'd like to be able to output generated I/Q to an SDR - in my case the hackRF.

This would allow a fairly cheap set up with kit that a PA can be easily attached to.

Something like SoapySDR as a layer to abstract away from a specific vendor/model might be a solid starting point.

Button Mode incompatible with IQ output

My enhancement to control nyqist filter switching conflicts with button mode as it uses the same GPIO pins. I will try to correct this in the next week or so. Dave G8GKQ

Check if camera

Working without camera have to be checked : dev/video0 error .

How to start

I'm trying to install your software on a clean Raspberry Pie 1B with the latest edition of Rasbian. I'm sure i do something wrong due to the fact that there is no signal-out after these steps:

  1. deploy Rasbian lite image to Pi (last version)
  2. expand memory via raspi-config
  3. these commando's:

sudo apt-get update &&
sudo apt-get install rpi-update &&
sudo rpi-update &&
sudo apt-get install apt-transport-https &&
sudo apt-get install git &&
git clone git://github.com/f5oeo/rpidatv &&
cd rpidatv/src &&
make -j 4

Do i forget something? Do I something wrong? (NB. I had exactly the same results with a Pi 3B, so i'm quite sure I do something wrong)

Cheers,
Dustin

Update help text

Bonjour!

Please correct the explanations here on github:

Example : sudo ./rpidatv -i sample.ts -s 250 -c 1/2 -o RF -f 437.5 -l

The option -o RF is not valid any more.

73,

Paul (DD8PL)

Video Latency

Output bitrate from ffmpeg seems not set at exactly the bitrate causing rpidatv to wait for samples and wrong timecodes.
Ways to correct :

  • Let libmpegts do the transport encoding
  • Make a filling "null packet" process to set the right bitrate coming in rpidatv
  • Try gstreamer to see if improve

Output actual ffmpeg transport stream over IP is around 100ms latency.

Multi cameras supports

By switching from several UDP Transport stream over ethernet (or wifi), add item in menu to switch beetween sources.

Raspberry Pi 3 not working

It looks rpidatv is buggy in the raspberry pi 3. Using leandvb on my laptop (or any other sdr app, like gqrx), I can see the signal coming and then going flat after a few seconds, then coming again, etc. I don't know if it's something related to the GPIOs on the pi3. I have the last raspbian version, updated as of today.
When I call rpidatv on the console I got this:

sudo ./rpidatv -i ../video/mire.jpg -s 250 -c 1/2 -m RF -f 437.5
RPIDATV Version May 25 2016 (F5OEO Evariste) on
Model 2Tuning on 437.532046 MHZ (harmonic 5)
Nb PCM STEP (<1000):999

TS Bitrate should be 230392 bit/s
1464181813:921022107 : Fulling buffer
TSrate in byte =28799
Init Filling Memory buffer 0
.End Init Filling Memory buffer 71440
Filling BUffer : EOF
Memavailable 832840/1880000 FreeSlot=60736/64000 Bitrate : 0.000000
SYNC ERROR
SYNC ERROR
SYNC ERROR
SYNC ERROR
SYNC ERROR
SYNC ERROR
...

and lots and lots of SYNC ERROR messages.

TS bitrate is different of the value put in the command.

I was running the rpidatv program several times with several .ts files. The program run without error, i use the SDR# aplication to watch the RF signal generates by the raspberry pi. The problem i have is when i try to demodulate the RF with leandvb. I got the PSK symbol clouds for half a second then the PSK gone. I was looking some of the issues concerning to the leandvb in its official page and i found two of the issues that could be the cause:

  • Internal saturation
  • Wrong symbol/sample rate

I think my problem is the second one, so i use some .ts with known bitrate, but i noticed that the rpidatv, during execution in the terminal fprint:

TS bitrate should be "bitrate"

is lower that the one i setup in the rpidatv command (in the "-s" parameter). I'm using the B+ raspberry. Please help with this, if i wrong about those values, or if there's a real issue with my rpi model.

leandvb2video.sh not working

After installing everything as per the instructions the error below presented itself when trying to run leandvb2video.sh

./leandvb2video.sh: line 25: let: 437.5: syntax error: invalid arithmetic operator (error token is ".5")
leandvb: no process found
mplayer: no process found
mkfifo: cannot create fifo ‘fifots’: File exists

Patern is not working

Patern mode is not working properly : coding in MPEG-2 is too cpu consuming , causing issue.
Need to encode via GPU.

Include a sample video

I think we can include an optional-download demo video (eg. Big Buck Bunny) to demonstrate the performance.

I already tried converting Big Buck Bunny in 240p to MPEG-2 TS.
It works well when the symbol rate is around 750k...1000k.
(Though at the end of the file, the program starts sending empty buffers.)

Camera preview

Camera preview is there even the mode is pattern or file.
Shoud be better to display what is transmitted (JPEG pattern or VideoFile)

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.