小编sir*_*ion的帖子

如何在Android中获取wifi热点的IP?

正如标题所说......我试图在配置为热点时能够获得wifi的IP.理想情况下,我想找到适合所有手机的东西.

当然,在从AP获取信息时,WifiManager是无用的.

幸运的是,通过这样做,我已经能够获得所有接口的IP:

public String getLocalIpAddress() {
    try {
        for (Enumeration<NetworkInterface> en = NetworkInterface.getNetworkInterfaces(); en.hasMoreElements();) {
            NetworkInterface intf = en.nextElement();
            for (Enumeration<InetAddress> enumIpAddr = intf.getInetAddresses(); enumIpAddr.hasMoreElements();) {
                InetAddress inetAddress = enumIpAddr.nextElement();
                if (!inetAddress.isLoopbackAddress()) {
                    Log.d("IPs", inetAddress.getHostAddress() );
                }
            }
        }
    } catch (SocketException ex) {
        Log.e(LOG_TAG, ex.toString());
    }
    return null;
}
Run Code Online (Sandbox Code Playgroud)

这段代码将打印所有接口的所有IP(包括Wifi热点).主要问题是我找不到识别WiFi接口的方法.这是一个问题,因为有些手机有多个接口(WiMax等).这是我到目前为止所尝试的:

  • 通过wifi iface显示名称进行过滤:这不是一个好方法,因为显示名称从一个设备更改为另一个设备(wlan0,eth0,wl0.1等).
  • 通过其mac地址过滤:几乎可以工作,但在某些设备上,热点iface没有MAC地址(iface.getHardwareAddress()返回null)...所以不是有效的解决方案.

有什么建议?

java android wifi android-wifi

15
推荐指数
2
解决办法
2万
查看次数

使用ffserver通过RTSP从MP4文件流

我正在尝试使用ffserver通过RTSP流式传输mp4文件,到目前为止没有任何运气。我只想直接从文件中流式传输,而不必从ffmpeg中馈送(不涉及转码)。但我已经将其与mpg视频一起使用。

这是我的ffserver配置文件:

Port 8090
BindAddress 0.0.0.0
MaxHTTPConnections 2000
MaxClients 1000
MaxBandwidth 500000
CustomLog -
NoDaemon

RTSPPort 7654
RTSPBindAddress 0.0.0.0

<Stream test1-rtsp>
    Format rtp
    File "/home/g/video_streaming/sample3-mpeg2.mpg"
</Stream>
<Stream test2-rtsp>
    Format rtp
    File "/home/g/video.mp4"
</Stream>
Run Code Online (Sandbox Code Playgroud)

当我启动ffserver时,根据日志输出,一切似乎都很好:

$ ./dev/ffmpeg/ffserver -f ffserver-sample.conf
ffserver version N-45673-gd0c27e8 Copyright (c) 2000-2012 the FFmpeg developers
  built on Oct 18 2012 10:36:52 with gcc 4.6 (Ubuntu/Linaro 4.6.3-1ubuntu5)
  configuration:
  libavutil      51. 76.100 / 51. 76.100
  libavcodec     54. 66.100 / 54. 66.100
  libavformat    54. 33.100 / 54. 33.100
  libavdevice    54.  3.100 …
Run Code Online (Sandbox Code Playgroud)

mp4 ffmpeg rtsp video-streaming ffserver

5
推荐指数
1
解决办法
1万
查看次数

标签 统计

android ×1

android-wifi ×1

ffmpeg ×1

ffserver ×1

java ×1

mp4 ×1

rtsp ×1

video-streaming ×1

wifi ×1