After an evaluation, GNOME has moved from Bugzilla to GitLab. Learn more about GitLab.
No new issues can be reported in GNOME Bugzilla anymore.
To report an issue in a GNOME project, go to GNOME GitLab.
Do not go to GNOME Gitlab for: Bluefish, Doxygen, GnuCash, GStreamer, java-gnome, LDTP, NetworkManager, Tomboy.
Bug 729365 - Failure playing video files using GES on Windows 7
Failure playing video files using GES on Windows 7
Status: RESOLVED NOTABUG
Product: GStreamer
Classification: Platform
Component: gst-editing-services
1.2.4
Other Windows
: Normal major
: git master
Assigned To: GStreamer Maintainers
GStreamer Maintainers
Depends on:
Blocks:
 
 
Reported: 2014-05-01 23:35 UTC by Benas
Modified: 2014-05-08 16:25 UTC
See Also:
GNOME target: ---
GNOME version: ---



Description Benas 2014-05-01 23:35:55 UTC
Hi, I am using Windows 7 x86 and I am unable to play video using "ges-launch-1.0.exe".
I decided to do everything in clean working environment, that is, I installed clean version of Windows 7 x86 on VMware virtual machine, this is because I wanted to have no interference with previous installations of gstreamer and wanted to provide accurate and reproducable state of the environment.

Steps taken:
1)  Downloaded trial version of "VMware Workstation 10 for Windows" from http://www.vmware.com/products/workstation/workstation-evaluation .
2)  Installed "VMware Workstation 10 for Windows" on my computer.
3)  Launched "VMware Workstation 10"
4)  Created new virtual machine which hosts Windows 7 Ultimate SP1 x86. 
--- Everything described below happened on virtual machine ---
5)  Downloaded gstreamer-1.0-x86-1.2.4.1.msi from http://gstreamer.freedesktop.org/data/pkg/windows/1.2.4.1/ .
6)  Executed gstreamer-1.0-x86-1.2.4.1.msi , during installation pressed "Next", marked checkbox and pressed "Next", pressed on "Complete", "Install", "Finish". Folder named "gstreamer" appeared in C:/ .
7)  Downloaded gstreamer-1.0-devel-x86-1.2.4.1.msi from http://gstreamer.freedesktop.org/data/pkg/windows/1.2.4.1/ 
8)  Executed gstreamer-1.0-devel-x86-1.2.4.1.msi, during installation process pressed "Next", marked checkbox and pressed "Next", pressed on "Complete", "Install", "Finish".
9)  Pressed right mouse button on "My computer", selected "Properties" -> "Change settings" -> "Advanced" -> "Environment variables". Ensured that environment variable "GSTREAMER_1_0_ROOT_X86" had value "C:\gstreamer\1.0\x86\"
10)  In the same "Environment variables" window under the "System variables" found and edited "Path" envirenment variable, by adding "C:\gstreamer\1.0\x86\bin\;" to it. Then "OK'eyed" my way out to the desktop.
11)  Restarted the OS of virtual machine, just to be sure, that environment variables got set.
12)  Pasted "example.mp3" to C:/ .
13)  Pressed Windows "start", in the search input typed cmd, then left click on command prompt icon and "Run as administrator". 
14)  In command prompt "cd C:\gstreamer\1.0\x86\bin"
15)  Executed command "ges-launch-1.0.exe file:///C:/example.mp3 0 10" and music played just fine.
16)  Pasted video file "example.mpg" to C:/ .
--- Odd behaviour below ---
17)  Executed command "ges-launch-1.0.exe file:///C:/example.mpg 0 10" and this is the first time when something odd was spotted: it played music without video.
18)  Then executed GST command "gst-launch-1.0.exe playbin uri=file:///C:/example.avi" and it also played music without video 

19)  Downloaded "Windows Driver Kit Version 7.1.0"
20)  Mounted "Windows Driver Kit Version 7.1.0" .iso file and started autorun
21)  In the selection tree selected only "Build environments" and pressed "OK".
22)  Folder C:\WinDDK\7600.16385.1 was created for me.
23)  Installed "Visual Studio 2010 Ultimate"
24)  Opened "Visual Studio 2010 Ultimate" with administrator rights, then "File" -> "New" -> "Project", then "Visual C++" -> "Win32" -> "Win32 Console Application", also entered project name "GESExamples", clicked "OK".
25)  Then,  "View" -> "Property manager", right clicked on solution name (GESExamples), then "Add existing property sheet" for each of the following files: C:\gstreamer\1.0\x86\share\vs\2010\msvc\x86.props, C:\gstreamer\1.0\x86\share\vs\2010\libs\gstreamer-1.0.props, C:\gstreamer\1.0\x86\share\vs\2010\libs\gst-editing-services-1.0.props .
26)  "View" -> "Solution Explorer", right clicked on solution name (GESExamples), then "Properties" -> "Configuration properties" -> "Debugging" and changed "Working directory" value to $(GSTREAMER_1_0_ROOT_X86)\bin , then pushed "OK".
27)  Downloaded GES source file gstreamer-editing-services-1.2.1.tar.xz from http://gstreamer.freedesktop.org/src/gstreamer-editing-services/
28)  Using 7zip extracted gstreamer-editing-services-1.2.1.tar.xz file twice
29)  Opened text_properties.c example project which is located in extracted dir \gstreamer-editing-services-1.2.1\tests\examples and copied its contents.
30)  In Visual Studio solution explorer clicked "Right mouse button" on folder "Source", then "Add"->"New Item", under "Installed templates"->"Visual C++" and selected "C++ File(.cpp)" , set the file name to "Source" and pressed "OK".
31)  In Visual Studio solution explorer renamed just created "Source.cpp" file to "Source.c" file.
32)  Opened "Source.c" file and pasted all the code from "text_properties.c", saved project
33)  "Build" -> "Rebuild solution" - no errors
34)  "Left mouse button click" on solution name (GESExamples) "Properties"-> "Configuration properties" -> "Debugging" -> "Command arguments" value set to:
--path=C:/example.mpg --duration=10 --text=test
35)  Pressed "OK"
36)  "Debug" -> "Start without debugging"
37)  No video output, no sound output

38)  Some debug traces are needed. Next steps are for debugging.
39)  GST_DEBUG_FILE was added to the system environment variables with value: 
C:\debugOutput.txt
40)  Virtual machine restarted.
41)  In visual studio opened with administrator rights "left mouse button" on solution name (GESExamples) "Properties" -> "Configuration Properties" -> "Debugging" -> "Command arguments" changed value to:
--path=C:/example.mpg --duration=10 --text=test --gst-debug 5
42)  Now "Debug" -> "Start without debugging"
43)  I will include that debug file as attachment to the bug report, also I will add gst-launch-1.0.exe and ges-launch-1.0.exe debug traces.
44)  commands used for gst and ges traces: 
gst-launch-1.0.exe playbin uri=file:///C:/video/01.avi --gst-debug 5
ges-launch-1.0.exe file:///C/video/01.avi 0 1 --gst-debug 5
45)  What is more it looks like pragram works from the beginning to the end, the same happens with simple1.c, test1.c, test2.c, test3.c, test4.c. Actually I am unable to sucessfully launch any of GES examples, however they compile without errors. 

Whats is wrong with this development environment? I also had same issues on Windows XP virtual machine. It must be wrong configuration.
Since there seems to be no official guide for GES and GST environment setup I referenced 0.10 guide: http://docs.gstreamer.com/display/GstSDK/Installing+on+Windows
Comment 1 Benas 2014-05-01 23:54:18 UTC
Debug log files download link:
http://www63.zippyshare.com/v/24639652/file.html
Comment 2 Thibault Saunier 2014-05-02 07:20:19 UTC
OK so to me the issue is:

18)  Then executed GST command "gst-launch-1.0.exe playbin
uri=file:///C:/example.avi" and it also played music without video

Right?

If it is the case, please provide us with that sample file. You might be missing the video codec used in that file.
Comment 3 Benas 2014-05-02 08:20:39 UTC
Yes, it also played only a music without video. Here is that video sample:
http://www54.zippyshare.com/v/89124814/file.html
Comment 4 Thibault Saunier 2014-05-02 08:47:15 UTC
  42298 0:00:04.913715600  2336   08581E60 DEBUG           d3dvideosink d3dvideosink.c:439:gst_d3dvideosink_start:<d3dvideosink0> Start() called
  42299 0:00:04.913769100  2336   08581E60 DEBUG           d3dvideosink d3dhelpers.c:2194:d3d_class_init: D3D class init [refs:1]
  42300 0:00:04.998850600  2336   08581FA0 DEBUG           d3dvideosink d3dhelpers.c:2557:d3d_hidden_window_thread: Direct3D hidden window handle: 0005037E
  42301 0:00:04.999009900  2336   08581FA0 DEBUG           d3dvideosink d3dhelpers.c:2326:d3d_class_display_device_create:  
  42302 0:00:05.002455700  2336   08581FA0 ERROR           d3dvideosink d3dhelpers.c:2346:d3d_class_display_device_create: Unable to request adapter[0] device caps
  42303 0:00:05.002561800  2336   08581FA0 ERROR           d3dvideosink d3dhelpers.c:2563:d3d_hidden_window_thread: Failed to initiazlize adapter: 0
  42304 0:00:15.506270700  2336   08581E60 DEBUG           d3dvideosink d3dhelpers.c:2279:d3d_class_destroy: D3D class destroy [refs:0]
  42305 0:00:15.507310100  2336   08581E60 DEBUG           d3dvideosink d3dhelpers.c:2300:d3d_class_destroy: Direct3D object released. Reference count: 0
  42306 0:00:15.507709100  2336   08581E60 DEBUG               basesink gstbasesink.c:5042:gst_base_sink_change_state:<d3dvideosink0> failed to start
  42307 0:00:15.507871100  2336   08581E60 INFO              GST_STATES gstelement.c:2609:gst_element_change_state:<d3dvideosink0> have FAILURE change_state return
  42308 0:00:15.508046800  2336   08581E60 INFO              GST_STATES gstelement.c:2203:gst_element_abort_state:<d3dvideosink0> aborting state from NULL to READY
  42309 0:00:15.508181800  2336   08581E60 DEBUG             GST_STATES gstelement.c:2563:gst_element_set_state_func:<d3dvideosink0> returned FAILURE
  42310 0:00:15.508294000  2336   08581E60 DEBUG          GST_PARENTAGE gstelement.c:2965:gst_element_set_bus_func:<d3dvideosink0> setting bus to 00000000


I suspect this is because you are in a VM.
Comment 5 Benas 2014-05-08 16:25:22 UTC
I managed to launch video on my pc with GES by using code from my answer in https://bugzilla.gnome.org/show_bug.cgi?id=729120 . I tried the same program on Windows 7 x86 virtual machine and it played only a sound, though. Maybe it is virtual machine problem. Oh, and I tried this video sample: http://www.auby.no/files/video_tests/h264_720p_hp_5.1_3mbps_vorbis_styled_and_unstyled_subs_suzumiya.mkv . So I guess I will mark this as RESOLVED and NOTABUG since I tried to play broken test projects.