KonradIT / goprowifihack

Unofficial GoPro WiFi API Documentation - HTTP GET requests for commands, status, livestreaming and media query.
Apache License 2.0
2.13k stars 334 forks source link

Android - Live Streaming from GoPro Hero4 #84

Closed chri1389 closed 7 years ago

chri1389 commented 7 years ago

Problem:


I need to develop an Android App that display live video from GoPro Hero4. I have done these steps:

1) Android App do an http request (through Volley library) to this link: http://10.5.5.9/gp/gpControl/execute?p1=gpStream&a1=proto_v2&c1=restart

2) Android use the Android FFmpeg library downloadable at this link: http://writingminds.github.io/ffmpeg-android-java/

to use the ffmpeg android library the code is this: String command = "ffmpeg -f mpegts -i udp://10.5.5.100:8554 -b 800k -r 30 -f mpegts"; String[] cmd = command.split(" "); try { ffmpeg.execute(cmd, new ExecuteBinaryResponseHandler(){ ...etc...


During the execution, it call more times the onProgress(String message) method, and the "message" parameter has that values, for example:

message= [h264 @ 0xeecfc000] no frame! message= [h264 @ 0xeecfc000] non-existing PPS 0 referenced message= Last message repeated 1 times etc....

and at the end call onFailure method with this messages:

[NULL @ 0xeecaca00] Unable to find a suitable output format for 'ffmpeg' ffmpeg: Invalid argument

What is wrong in my approach?

Is there another method to live stream from GoPro Hero4 to Android?

Thank you very much!! Best Regards!