UDP NET_ADMIN error on Android app
Gregoire Gentil
gregoire at gentil.com
Tue Mar 23 07:56:05 UTC 2021
Hello,
I have added udp-buffer-size=262144 to my pipeline and the net_admin
permission problem disappears. But now, I'm getting:
PermissionCache: checking android.permission.ACCESS_SURFACE_FLINGER for
uid=10075 => denied (2263 us)
It's like Android wants to get a system app to do video via GStreamer on
Android TV. Any clue what's going on?
Grégoire
On 3/22/21 6:29 PM, Gregoire Gentil wrote:
> Hello,
>
> I'm using gstreamer 1.16.2 in an Android app built with API version 29
> and NDK 21.1. I'm running that app on Android TV 9 with kernel 4.1.
>
> I get the strange error message:
>
> 03-21 19:10:46.896 9080 9223 W GStreamer+udpsrc: 0:00:10.827964588
> 0xd1507750 ../gst/udp/gstudpsrc.c:1447:gst_udpsrc_open:<udpsrc0>
> warning: Could not create a buffer of requested 524288 bytes (Operation
> not permitted). Need net.admin privilege?
>
> 03-21 19:10:46.897 9080 9223 W GStreamer+udpsrc: 0:00:10.828812588
> 0xd1507750 ../gst/udp/gstudpsrc.c:1457:gst_udpsrc_open:<udpsrc0> have
> udp buffer of 262144 bytes while 524288 were requested
>
> 03-21 19:10:51.996 9080 9223 W GStreamer+rtspsrc: 0:00:15.928045518
> 0xd1507750
> ../gst/rtsp/gstrtspsrc.c:5771:gst_rtspsrc_reconnect:<rtspsrc0> warning:
> Could not receive any UDP packets for 5.0000 seconds, maybe your
> firewall is blocking it. Retrying using a tcp connection.
>
> 03-21 19:11:13.472 9080 9223 W GStreamer+rtspsrc: 0:00:37.404373634
> 0xd1507750
> ../gst/rtsp/gstrtspsrc.c:5560:gst_rtspsrc_loop_interleaved:<rtspsrc0>
> error: Could not receive message. (System error)
>
> 03-21 19:11:13.474 9080 9223 W GStreamer+rtspsrc: 0:00:37.406002134
> 0xd1507750 ../gst/rtsp/gstrtspsrc.c:6056:gst_rtspsrc_loop:<rtspsrc0>
> error: Internal data stream error.
>
> 03-21 19:11:13.474 9080 9223 W GStreamer+rtspsrc: 0:00:37.406265426
> 0xd1507750 ../gst/rtsp/gstrtspsrc.c:6056:gst_rtspsrc_loop:<rtspsrc0>
> error: streaming stopped, reason error (-5)
>
> 03-21 19:11:13.495 9080 9223 W GStreamer+default: 0:00:37.427520719
> 0xd1507750 ../gst-libs/gst/rtsp/gstrtspconnection.c:1234:write_bytes
> Operation was cancelled
>
> 03-21 19:11:13.496 9080 9223 W GStreamer+rtspsrc: 0:00:37.427919303
> 0xd1507750 ../gst/rtsp/gstrtspsrc.c:6402:gst_rtspsrc_try_send:<rtspsrc0>
> send interrupted
>
> 03-21 19:11:13.496 9080 9223 W GStreamer+rtspsrc: 0:00:37.428175428
> 0xd1507750 ../gst/rtsp/gstrtspsrc.c:8650:gst_rtspsrc_pause:<rtspsrc0>
> PAUSE interrupted
>
> 03-21 19:11:13.503 9080 9223 W GStreamer+default: 0:00:37.435170178
> 0xd1507750 ../gst-libs/gst/rtsp/gstrtspconnection.c:1234:write_bytes
> Error sending data: Broken pipe
>
> 03-21 19:11:13.503 9080 9223 W GStreamer+rtspsrc: 0:00:37.435540720
> 0xd1507750 ../gst/rtsp/gstrtspsrc.c:6400:gst_rtspsrc_try_send:<rtspsrc0>
> error: Could not send message. (System error)
>
> 03-21 19:11:13.504 9080 9223 W GStreamer+rtspsrc: 0:00:37.436036929
> 0xd1507750 ../gst/rtsp/gstrtspsrc.c:8075:gst_rtspsrc_close:<rtspsrc0>
> error: Could not send message. (System error)
>
> My pipeline is:
>
> rtspsrc latency=250 location=rtsp://10.10.10.1:81 ! rtph264depay ! queue
> ! h264parse ! mpegpsmux ! filesink
>
> NET_ADMIN privilege is only for system app. Obviously, the device is not
> rooted. I'm confused why I get such udpsrc error. Note that the second
> line of the log indicates that it can't get a 512kB buffer but it can
> get a 256kB. Has anyone got an idea?
>
> Grégoire
More information about the gstreamer-devel
mailing list