Unable to get visual window when running gstreamer under Windows (work under Bash for Windows)

Ben Rush ben at ben-rush.net
Mon Apr 8 18:29:30 UTC 2019


With respect to the x264enc: I was mistaken and was able to get it to work
under Windows. It must have been an earlier experiment which made me
believe it wasn't available. So, I apologize. I tried it, and the behavior
was the same: no window was shown.

Regarding the firewall: turning it off completely also made no difference
_visually_. But it might have changed things under the hood; what I mean by
that is that I'm seeing more at the console now. Wireshark shows UDP
traffic is flowing on the loopback device. This is the kind of output I'm
seeing despite no visual window (note: when running under Bash for Windows,
I don't see this output). Note that this output displays in bursts, with a
period of maybe five seconds where nothing is shown.

/GstPipeline:pipeline0/GstDecodeBin:decodebin0/GstH264Parse:h264parse0.GstPad:sink:
caps = video/x-h264, stream-format=(string)avc, alignment=(string)au,
codec_data=(buffer)01f4000dffe1001d67f4000d919b28283f602d41804150000003001000000303c8f142996001000668ebec448440,
level=(string)1.3, profile=(string)high-4:4:4
/GstPipeline:pipeline0/GstDecodeBin:decodebin0/GstTypeFindElement:typefind.GstPad:sink:
caps = video/x-h264, stream-format=(string)avc, alignment=(string)au,
codec_data=(buffer)01f4000dffe1001d67f4000d919b28283f602d41804150000003001000000303c8f142996001000668ebec448440,
level=(string)1.3, profile=(string)high-4:4:4
/GstPipeline:pipeline0/GstDecodeBin:decodebin0.GstGhostPad:sink: caps =
video/x-h264, stream-format=(string)avc, alignment=(string)au,
codec_data=(buffer)01f4000dffe1001d67f4000d919b28283f602d41804150000003001000000303c8f142996001000668ebec448440,
level=(string)1.3, profile=(string)high-4:4:4
/GstPipeline:pipeline0/GstRtpH264Depay:rtph264depay0.GstPad:src: caps =
video/x-h264, stream-format=(string)avc, alignment=(string)au,
codec_data=(buffer)01f4000dffe1001d67f4000d919b28283f602d41804150000003001000000303c8f142996001000568ebec4480,
level=(string)1.3, profile=(string)high-4:4:4
/GstPipeline:pipeline0/GstDecodeBin:decodebin0.GstGhostPad:sink.GstProxyPad:proxypad0:
caps = video/x-h264, stream-format=(string)avc, alignment=(string)au,
codec_data=(buffer)01f4000dffe1001d67f4000d919b28283f602d41804150000003001000000303c8f142996001000568ebec4480,
level=(string)1.3, profile=(string)high-4:4:4
/GstPipeline:pipeline0/GstDecodeBin:decodebin0/GstTypeFindElement:typefind.GstPad:src:
caps = video/x-h264, stream-format=(string)avc, alignment=(string)au,
codec_data=(buffer)01f4000dffe1001d67f4000d919b28283f602d41804150000003001000000303c8f142996001000568ebec4480,
level=(string)1.3, profile=(string)high-4:4:4
/GstPipeline:pipeline0/GstDecodeBin:decodebin0/GstH264Parse:h264parse0.GstPad:sink:
caps = video/x-h264, stream-format=(string)avc, alignment=(string)au,
codec_data=(buffer)01f4000dffe1001d67f4000d919b28283f602d41804150000003001000000303c8f142996001000568ebec4480,
level=(string)1.3, profile=(string)high-4:4:4
/GstPipeline:pipeline0/GstDecodeBin:decodebin0/GstTypeFindElement:typefind.GstPad:sink:
caps = video/x-h264, stream-format=(string)avc, alignment=(string)au,
codec_data=(buffer)01f4000dffe1001d67f4000d919b28283f602d41804150000003001000000303c8f142996001000568ebec4480,
level=(string)1.3, profile=(string)high-4:4:4
/GstPipeline:pipeline0/GstDecodeBin:decodebin0.GstGhostPad:sink: caps =
video/x-h264, stream-format=(string)avc, alignment=(string)au,
codec_data=(buffer)01f4000dffe1001d67f4000d919b28283f602d41804150000003001000000303c8f142996001000568ebec4480,
level=(string)1.3, profile=(string)high-4:4:4
/GstPipeline:pipeline0/GstRtpH264Depay:rtph264depay0.GstPad:src: caps =
video/x-h264, stream-format=(string)avc, alignment=(string)au,
codec_data=(buffer)01f4000dffe1001d67f4000d919b28283f602d41804150000003001000000303c8f142996001000668ebec448440,
level=(string)1.3, profile=(string)high-4:4:4
/GstPipeline:pipeline0/GstDecodeBin:decodebin0.GstGhostPad:sink.GstProxyPad:proxypad0:
caps = video/x-h264, stream-format=(string)avc, alignment=(string)au,
codec_data=(buffer)01f4000dffe1001d67f4000d919b28283f602d41804150000003001000000303c8f142996001000668ebec448440,
level=(string)1.3, profile=(string)high-4:4:4
/GstPipeline:pipeline0/GstDecodeBin:decodebin0/GstTypeFindElement:typefind.GstPad:src:
caps = video/x-h264, stream-format=(string)avc, alignment=(string)au,
codec_data=(buffer)01f4000dffe1001d67f4000d919b28283f602d41804150000003001000000303c8f142996001000668ebec448440,
level=(string)1.3, profile=(string)high-4:4:4
/GstPipeline:pipeline0/GstDecodeBin:decodebin0/GstH264Parse:h264parse0.GstPad:sink:
caps = video/x-h264, stream-format=(string)avc, alignment=(string)au,
codec_data=(buffer)01f4000dffe1001d67f4000d919b28283f602d41804150000003001000000303c8f142996001000668ebec448440,
level=(string)1.3, profile=(string)high-4:4:4
/GstPipeline:pipeline0/GstDecodeBin:decodebin0/GstTypeFindElement:typefind.GstPad:sink:
caps = video/x-h264, stream-format=(string)avc, alignment=(string)au,
codec_data=(buffer)01f4000dffe1001d67f4000d919b28283f602d41804150000003001000000303c8f142996001000668ebec448440,
level=(string)1.3, profile=(string)high-4:4:4
/GstPipeline:pipeline0/GstDecodeBin:decodebin0.GstGhostPad:sink: caps =
video/x-h264, stream-format=(string)avc, alignment=(string)au,
codec_data=(buffer)01f4000dffe1001d67f4000d919b28283f602d41804150000003001000000303c8f142996001000668ebec448440,
level=(string)1.3, profile=(string)high-4:4:4

On Mon, Apr 8, 2019 at 12:33 PM Ben Rush <ben at ben-rush.net> wrote:

> I will check my firewall, but also note that the bash for Windows scripts
> that worked ran on the same computer as the Windows scripts that did not.
>
> Different subsystems, but it was the same instance of Windows running on
> the same computer and with the same networking stack.
>
> On Mon, Apr 8, 2019, 12:27 Nicolas Dufresne <nicolas at ndufresne.ca wrote:
>
>> Le lundi 08 avril 2019 à 11:49 -0500, Ben Rush a écrit :
>>
>> I imagine a lot of the community here is using Linux, but I'm bound by
>> Windows because of my work. I mention this because I'm not sure how much
>> traction I'll get asking a Windows-specific question, but I'll try.
>>
>> I'm trying to get some basic gst-launch-1.0 commands to work, but thus
>> far have been unable. Moving those same commands over to Bash for Windows
>> and launching them there, I'm able to get the play window to run (I'm
>> running Xming on my Windows machine as an X server). Note that some
>> commands do work and display the interface, so I think it's unlikely to be
>> a bad installation.
>>
>> First, this command works just fine when run under windows:
>>
>> .\gst-launch-1.0.exe videotestsrc is-live=true ! openh264enc ! rtph264pay
>> ! rtph264depay ! decodebin ! autovideosink
>>
>> Upon executing it, I get the test video to show up in the video window.
>> But when I try to split this up as a server/client, it fails. First I run
>> the following command to spin up the client:
>>
>> .\gst-launch-1.0.exe -v udpsrc port=3000 caps="application/x-rtp" !
>> application/x-rtp,clock-rate=90000,payload=96 ! rtph264depay ! decodebin !
>> autovideosink
>>
>> Once running, I then run this command to acts as the server and start
>> pushing UDP packets:
>>
>> .\gst-launch-1.0.exe videotestsrc is-live=true ! openh264enc ! h264parse
>> ! rtph264pay pt=96 ! udpsink port=3000
>>
>>
>> I've recently hit a IPv6 vs IPv4 issue when not specifying any
>> host/address on the udp elements. You should also check your firewall, udp
>> is often dropped by default.
>>
>>
>> Nothing crashes, and I don't get any errors, but also no window opens up.
>> I see nothing. However, if I spin up Bash for Windows (with Xming) and run
>> this in one window:
>>
>> gst-launch-1.0 -v udpsrc port=3000 caps="application/x-rtp" !
>> application/x-rtp,clock-rate=90000,payload=96 ! rtph264depay ! decodebin !
>> autovideosink
>>
>> Followed by this in another window:
>>
>> gst-launch-1.0 videotestsrc is-live=true ! x264enc ! h264parse !
>> rtph264pay pt=96 ! udpsink port=3000
>>
>> The only difference is the x264enc instead of the openh264enc. I'm not
>> sure how to get the x264enc to exist under Windows (I cannot find the
>> plugin for Windows).
>>
>>
>> I've check our CI builds and they are present, so it mean libgstx264
>> should also be in the official builds:
>>
>> https://gstreamer.freedesktop.org/data/pkg/windows/1.14.4/
>>
>>
>> Any help or input would be appreciated. Thanks in advance.
>>
>>
>> _______________________________________________
>>
>> gstreamer-devel mailing list
>>
>> gstreamer-devel at lists.freedesktop.org
>>
>>
>> https://lists.freedesktop.org/mailman/listinfo/gstreamer-devel
>>
>> _______________________________________________
>> gstreamer-devel mailing list
>> gstreamer-devel at lists.freedesktop.org
>> https://lists.freedesktop.org/mailman/listinfo/gstreamer-devel
>
>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <https://lists.freedesktop.org/archives/gstreamer-devel/attachments/20190408/02f1cd76/attachment-0001.html>


More information about the gstreamer-devel mailing list