need an example unix domain sockets usage

Previous Topic Next Topic
 
classic Classic list List threaded Threaded
3 messages Options
Reply | Threaded
Open this post in threaded view
|

need an example unix domain sockets usage

Ratheendran R
Hi All,

can any one help me with a working example using UNIX domain socket.


*I am trying to ffmpeg and ffplay commands on ubuntu as below.the ffplay
<command > gives a permission denied. ffmpeg exits immediatly *

>>>>* ./ffplay -f mpegts unix:///tmp/ff.socket&
*>>>>* sleep 2&&  ./ffmpeg_g -re -i something -vcodec copy -acodec copy -f
*>>
* mpegts unix://tmp/ff.socket
*



*I am not able to make any progress for some time,please let me know
if I am missing anything.*


*Thanks,*


*RS*
_______________________________________________
ffmpeg-user mailing list
[hidden email]
http://ffmpeg.org/mailman/listinfo/ffmpeg-user

To unsubscribe, visit link above, or email
[hidden email] with subject "unsubscribe".
Reply | Threaded
Open this post in threaded view
|

Re: need an example unix domain sockets usage

Moritz Barsnick
On Fri, May 12, 2017 at 19:41:10 +0530, Ratheendran R wrote:

> *I am trying to ffmpeg and ffplay commands on ubuntu as below.the ffplay
> <command > gives a permission denied. ffmpeg exits immediatly *
>
> >>>>* ./ffplay -f mpegts unix:///tmp/ff.socket&
> *>>>>* sleep 2&&  ./ffmpeg_g -re -i something -vcodec copy -acodec copy -f
> *>>
> * mpegts unix://tmp/ff.socket
> *
>
> *I am not able to make any progress for some time,please let me know
> if I am missing anything.*

First of all, your paths to the socket are different:
unix:///tmp/ff.socket
unix://tmp/ff.socket

Secondly, unlike what the ffmpeg documentation says, it looks like you
need to add *no* extra slashes, so the correct URI is
unix:/tmp/ff.socket
(It shouldn't matter in this case, the OS ignores the extra slashes.)

Thirdly, with your commands, both commands should give "no such
file or directory", because ffmpeg needs to feed (and create) the
socket first, before ffplay can access it.

Fourthly, to create a socket, you need to add the "-listen 1" option
to the ffmpeg command line.

Fifthly, if you launch ffmpeg first and try to put it to the
background, you need to disable its interaction with the terminal, by
adding "-nostdin" (otherwise, it stalls in my attempts).

I succeeded with this:

$ ffmpeg -nostdin -f lavfi -i testsrc -f mpegts -listen 1 unix:/tmp/ffmpeg.socket & ffplay unix:/tmp/ffmpeg.socket

(ffplay doesn't need "-f mpegts" in this scenario.)

Moritz
_______________________________________________
ffmpeg-user mailing list
[hidden email]
http://ffmpeg.org/mailman/listinfo/ffmpeg-user

To unsubscribe, visit link above, or email
[hidden email] with subject "unsubscribe".
Reply | Threaded
Open this post in threaded view
|

Re: need an example unix domain sockets usage

Ratheendran R
Thanks Moritz,

You explanation was helpful.

On Sat, May 13, 2017 at 1:07 AM, Moritz Barsnick <[hidden email]> wrote:

> On Fri, May 12, 2017 at 19:41:10 +0530, Ratheendran R wrote:
> > *I am trying to ffmpeg and ffplay commands on ubuntu as below.the ffplay
> > <command > gives a permission denied. ffmpeg exits immediatly *
> >
> > >>>>* ./ffplay -f mpegts unix:///tmp/ff.socket&
> > *>>>>* sleep 2&&  ./ffmpeg_g -re -i something -vcodec copy -acodec copy
> -f
> > *>>
> > * mpegts unix://tmp/ff.socket
> > *
> >
> > *I am not able to make any progress for some time,please let me know
> > if I am missing anything.*
>
> First of all, your paths to the socket are different:
> unix:///tmp/ff.socket
> unix://tmp/ff.socket
>
> Secondly, unlike what the ffmpeg documentation says, it looks like you
> need to add *no* extra slashes, so the correct URI is
> unix:/tmp/ff.socket
> (It shouldn't matter in this case, the OS ignores the extra slashes.)
>
> Thirdly, with your commands, both commands should give "no such
> file or directory", because ffmpeg needs to feed (and create) the
> socket first, before ffplay can access it.
>
> Fourthly, to create a socket, you need to add the "-listen 1" option
> to the ffmpeg command line.
>
> Fifthly, if you launch ffmpeg first and try to put it to the
> background, you need to disable its interaction with the terminal, by
> adding "-nostdin" (otherwise, it stalls in my attempts).
>
> I succeeded with this:
>
> $ ffmpeg -nostdin -f lavfi -i testsrc -f mpegts -listen 1
> unix:/tmp/ffmpeg.socket & ffplay unix:/tmp/ffmpeg.socket
>
> (ffplay doesn't need "-f mpegts" in this scenario.)
>
> Moritz
> _______________________________________________
> ffmpeg-user mailing list
> [hidden email]
> http://ffmpeg.org/mailman/listinfo/ffmpeg-user
>
> To unsubscribe, visit link above, or email
> [hidden email] with subject "unsubscribe".
_______________________________________________
ffmpeg-user mailing list
[hidden email]
http://ffmpeg.org/mailman/listinfo/ffmpeg-user

To unsubscribe, visit link above, or email
[hidden email] with subject "unsubscribe".