2

I recently acquired a Go Pro Hero 3. Its working fine but when i attempt to stream live video/audio it gitches every now and then. Initially i just used vlc to open the m3u8 file, however when that was glitchy i downloaded the android app and attempted to stream over that. It was a little better on the app. I used wireshark and i think the cause of it is its simply not transferring/buffering fast enough. Tried just to get everything with wget in loop, it got through 3 loops before it either: caught up (possible but i dont think so ... though i may double check that) or fell behind and hence timed out/hung. There is also delay in the image, but i can live with that. I have tried lowering the resolution/frame rate but im not sure if it is actually doing anything as i can't tell any difference. I think it may be just the settings for recording on the go pro. Either way, it didn't work. Essentially i am looking for any possible methods for removing this 'glitchiness' My current plan is to attempt writing something in python to get the files over UDP (no TCP overhead).

Ill just add a few more details/symptoms:

The Go Pro is using the Apple m3u8 streaming format. At anyone time there are 16 .ts files in the folder. (26 Kb each) These get overwritten in a loop (circular buffer)

When i stream on vlc:

Approx 1s delay - streams fine for ~0.5s, stops for a little less than that, then repeats. What i think is happening is the file its trying to transfer gets overwritten which causes it to timeout.

Over the android App:

Less delay and shorter 'timeouts' but still there

I want to write a python script to try get a continuous image. The files are small enough that they should fit in a single UDP packet (i think ... 65Kb ish right?)

Is there anything i could change in terms of wifi setting on my laptop to improve it too? Ie some how dedicate it to that?

Thanks, Stephen

da_steve101
  • 283
  • 4
  • 16
  • I had _NO_ problem streaming via WiFi across a flight hangar filled with other wifi's and what not at full speed with a 1 second delay (DreamHack was the hangar). I'd say something's up with your WiFi and not the gopro or the software you're using. This is just gentle reminder that you might be going about this the wrong way :) AFAIK GoPro already streams via UDP, your wireshark should give you a hint of it. – Torxed Aug 14 '13 at 09:31
  • Also, the reason why i'm suggestion you go about this the wrong way is because (i'm 99% sure you are and) if you spend the time developing a UDP socket that can generate an image on your screen in Python (and you find out i was right) you're gona be unicorn-ly pissed at the universe. – Torxed Aug 14 '13 at 09:33
  • ok, thanks. I thought that too initially from what i had read online it seemed fine for everyone else so i downloaded the app. Just surprised it happened on two different devices. Any idea what could be causing it? – da_steve101 Aug 14 '13 at 21:47

1 Answers1

2

I've been working on creating a GoPro API recently for Node.js and found the device very glitchy too. Its much more stable after installing the latest gopro firmware (3.0.0).

As for streaming, I couldnt get around the wifi latency and went for a record and copy approach.

Chris GW Green
  • 1,145
  • 9
  • 17