Get mjpeg udp stream from actioncam HX-A1

classic Classic list List threaded Threaded
7 messages Options
Reply | Threaded
Open this post in threaded view
|

Get mjpeg udp stream from actioncam HX-A1

MICHON Anthony

Hi

 

I want to get the video stream of an actioncam panasonic HX-A1 and stream it on RTSP H264 with gstreamer.

System is Windows 8.1 (project constraints...)

I got the stream get working with ffplay,  with ff_probe : http://pastebin.com/WhLcspW8

 

Unfortunatly with gstreamer I have following errors :

ERROR: from element /GstPipeline:pipeline0/GstUDPSrc:udpsrc0: Internal data flow error.

http://pastebin.com/mGX7wd90

 

Debug logs (GST_DEBUG=4) : http://pastebin.com/4rnndqfx

 

 

I'm afraid that some caps are missing somewhere.

I tried with those caps but without success

caps="application/x-rtp, media = video, clock-rate = 90000, width = 640, height = 360, encoding-name = MJPEG, payload = 96"

Details logs logs (GST_DEBUG=4) : http://pastebin.com/AEMqvvia

 

I have no information about the actioncam stream but ffplay is able to get it so I'm wondering how can I deal it with gstreamer ?

Have you any ideas ?

Thank you for helping me

 

Anthony


_______________________________________________
gstreamer-devel mailing list
[hidden email]
https://lists.freedesktop.org/mailman/listinfo/gstreamer-devel
Reply | Threaded
Open this post in threaded view
|

Re: Get mjpeg udp stream from actioncam HX-A1

Tim Müller
On Wed, 2016-04-13 at 09:14 +0000, MICHON Anthony wrote:

Hi,

> C:\gstreamer\1.0\x86_64\bin>gst-launch-1.0.exe udpsrc port=1234
> ...
> ERROR: from element /GstPipeline:pipeline0/GstUDPSrc:udpsrc0:
> Internal data flow error.
> ...
> streaming task paused, reason not-linked (-1)

Your pipeline is incomplete. The source will just receive data and try
to push the data to the next element but there is no next element.

You could try if this works:

  gst-play-1.0 udp://127.0.0.1:1234

This should work if the stream is typefindable (i.e. MPEG-TS over UDP).

For RTP maybe the cam has an in-built RTSP server you can connect to to
set up the streaming?

Otherwise you'll need a manual pipeline, something like

  udpsrc caps=application/x-rtp,media=video,encoding-name=JPEG,clock-
rate=90000 ! rtpjitterbuffer latency=200 ! rtpjpegdepay ! queue !
decodebin ! videoconvert ! videoscale ! autovideosink

Cheers
 -Tim



--
Tim Müller, Centricular Ltd - http://www.centricular.com


_______________________________________________
gstreamer-devel mailing list
[hidden email]
https://lists.freedesktop.org/mailman/listinfo/gstreamer-devel
Reply | Threaded
Open this post in threaded view
|

RE: Get mjpeg udp stream from actioncam HX-A1

MICHON Anthony

>You could try if this works:

>  gst-play-1.0 udp://127.0.0.1:1234
 
No error but no output :(
See http://pastebin.com/wqed8abf


>This should work if the stream is typefindable (i.e. MPEG-TS over UDP).

>For RTP maybe the cam has an in-built RTSP server you can connect to to set up the streaming?

There is no RTSP server, I have used wireshark to get frames from camera to android app, I suspect the traffic were not RTP based on but I don't know any program to check the protocol.

>Otherwise you'll need a manual pipeline, something like

>  udpsrc caps=application/x-rtp,media=video,encoding-name=JPEG,clock-
>rate=90000 ! rtpjitterbuffer latency=200 ! rtpjpegdepay ! queue !
>decodebin ! videoconvert ! videoscale ! autovideosink

No success again :(
See http://pastebin.com/5LdQXc91


I although tried with playbin (playbin2 seems not available under Windows) http://pastebin.com/LitKd3h2
I'll try with linux, perhaps I will have more information to get

_______________________________________________
gstreamer-devel mailing list
[hidden email]
https://lists.freedesktop.org/mailman/listinfo/gstreamer-devel
Reply | Threaded
Open this post in threaded view
|

Re: Get mjpeg udp stream from actioncam HX-A1

Tim Müller
On Wed, 2016-04-13 at 12:45 +0000, MICHON Anthony wrote:


> >   gst-play-1.0 udp://127.0.0.1:1234
>  
> No error but no output :(
> See http://pastebin.com/wqed8abf

Did you adjust the IP? 127.0.0.1 is not going to work obviously, since
the camera can't send to it..

> There is no RTSP server, I have used wireshark to get frames from
> camera to android app, I suspect the traffic were not RTP based on
> but I don't know any program to check the protocol.

What does ffplay say? And what is the ffplay comman line you use?

 Cheers
  -Tim

--
Tim Müller, Centricular Ltd - http://www.centricular.com


_______________________________________________
gstreamer-devel mailing list
[hidden email]
https://lists.freedesktop.org/mailman/listinfo/gstreamer-devel
Reply | Threaded
Open this post in threaded view
|

RE: Get mjpeg udp stream from actioncam HX-A1

MICHON Anthony


> >   gst-play-1.0 udp://127.0.0.1:1234
>  
> No error but no output :(
> See http://pastebin.com/wqed8abf

>Did you adjust the IP? 127.0.0.1 is not going to work obviously, since the camera can't send to it..

You're right, there is more verbose info with local ip : http://pastebin.com/KNbNi5kb
But I don’t understand the problem (ERROR Can't play a text file without video or visualizations.)



> There is no RTSP server, I have used wireshark to get frames from
> camera to android app, I suspect the traffic were not RTP based on but
> I don't know any program to check the protocol.

>What does ffplay say? And what is the ffplay comman line you use?

With no options
Ffplay udp://192.168.0.100:1234 :

http://pastebin.com/ZvbTDdDj

 
_______________________________________________
gstreamer-devel mailing list
[hidden email]
https://lists.freedesktop.org/mailman/listinfo/gstreamer-devel
Reply | Threaded
Open this post in threaded view
|

RE: Get mjpeg udp stream from actioncam HX-A1

MICHON Anthony
I finally had success when using following command ! (so simple when I read it..)

gst-launch-1.0.exe udpsrc port=1234 ! jpegdec ! autovideosink

I would now use a command to save as single jpeg frames like I did with ffplay :

ffmpeg -i udp://192.168.0.100:1234 –qscale :v 2 -f image2 -update 1 d:\img.jpg

I just tried this : gst-launch-1.0.exe udpsrc port=1234 !  jpegparse ! filesink location=image.jpg
I have a single fiel BUT it is growing...

Any solution to use a ffplay "-update" like options with gstreamer ?

thx


-----Message d'origine-----
De : gstreamer-devel [mailto:[hidden email]] De la part de MICHON Anthony
Envoyé : mercredi 13 avril 2016 15:41
À : Discussion of the development of and with GStreamer
Objet : RE: Get mjpeg udp stream from actioncam HX-A1



> >   gst-play-1.0 udp://127.0.0.1:1234
>  
> No error but no output :(
> See http://pastebin.com/wqed8abf

>Did you adjust the IP? 127.0.0.1 is not going to work obviously, since the camera can't send to it..

You're right, there is more verbose info with local ip : http://pastebin.com/KNbNi5kb But I don’t understand the problem (ERROR Can't play a text file without video or visualizations.)



> There is no RTSP server, I have used wireshark to get frames from
> camera to android app, I suspect the traffic were not RTP based on but
> I don't know any program to check the protocol.

>What does ffplay say? And what is the ffplay comman line you use?

With no options
Ffplay udp://192.168.0.100:1234 :

http://pastebin.com/ZvbTDdDj

 
_______________________________________________
gstreamer-devel mailing list
[hidden email]
https://lists.freedesktop.org/mailman/listinfo/gstreamer-devel
_______________________________________________
gstreamer-devel mailing list
[hidden email]
https://lists.freedesktop.org/mailman/listinfo/gstreamer-devel
Reply | Threaded
Open this post in threaded view
|

Re: Get mjpeg udp stream from actioncam HX-A1

Tommy_Lee
In reply to this post by MICHON Anthony
Hi,

did you finally find how to get the video from the Panasonic action cam?
i'd like to get it too.

thanks,