https://bugs.winehq.org/show_bug.cgi?id=40179
Bug ID: 40179 Summary: Cannot insert mpg files in Powerpoint 2010 Product: Wine Version: 1.9.4 Hardware: x86 OS: Linux Status: NEW Severity: normal Priority: P2 Component: winegstreamer Assignee: wine-bugs@winehq.org Reporter: dimesio@earthlink.net Distribution: SUSE
Created attachment 53687 --> https://bugs.winehq.org/attachment.cgi?id=53687 Log trying to insert mpg in Powerpoint 2010
The two videos from bug 17448,
http://fgouget.free.fr/tmp/wine-test-videos/daytona_crw.mpg http://fgouget.free.fr/tmp/wine-test-videos/Ikea_Tidy_up_2_11.mpg
now work for me in Powerpoint 2003 and 2007, but not Powerpoint 2010. Powerpoint 2010 pops up an error message that says "Powerpoint cannot insert a video from the selected file. Verify that the necessary codec for this media is installed, and then try again."
Terminal output (full log attached) includes this line:
** (wine:22741): CRITICAL **: gst_audio_format_to_string: assertion 'format != GST_AUDIO_FORMAT_UNKNOWN' failed
https://bugs.winehq.org/show_bug.cgi?id=40179
Andrew Eikum aeikum@codeweavers.com changed:
What |Removed |Added ---------------------------------------------------------------------------- CC| |aeikum@codeweavers.com
https://bugs.winehq.org/show_bug.cgi?id=40179
--- Comment #1 from Andrew Eikum aeikum@codeweavers.com --- (In reply to Rosanne DiMesio from comment #0)
Terminal output (full log attached) includes this line:
** (wine:22741): CRITICAL **: gst_audio_format_to_string: assertion 'format != GST_AUDIO_FORMAT_UNKNOWN' failed
This is fixed now, but videos still fail to insert. I'm looking into it.
https://bugs.winehq.org/show_bug.cgi?id=40179
renatkh@gmail.com changed:
What |Removed |Added ---------------------------------------------------------------------------- CC| |renatkh@gmail.com
https://bugs.winehq.org/show_bug.cgi?id=40179
--- Comment #2 from Andrew Eikum aeikum@codeweavers.com --- Trying with wineqtdecoder on Mac fails similarly, indicating this might be a bug in quartz or strmbase.
https://bugs.winehq.org/show_bug.cgi?id=40179
--- Comment #3 from Andrew Eikum aeikum@codeweavers.com --- One source of this bug is that PowerPoint asks for ARGB32 while winegstreamer's YUV transformation filter converts only to RGB24. Quickly hacking this to use the right format allows IGraphBuilder::Connect to succeed, but then it fails later. I haven't figured that out yet.
https://bugs.winehq.org/show_bug.cgi?id=40179
--- Comment #4 from Andrew Eikum aeikum@codeweavers.com --- I've added a new ARGB filter to winegstreamer. Unfortunately, this commit:
commit 46d5973961fe2266074ac2855368c3fcf987c1b5 Author: Akihiro Sagawa sagawa.aki@gmail.com Date: Fri May 8 00:37:21 2015 +0900
mciqtz32: Guarantee that CoInitialize and CoUninitialize run on the same thread.
causes a deadlock. Since that commit, the main thread spawns a new thread to handle the MCI_OPEN command. The new thread eventually calls SetParent, setting the parent of the videorenderer window to a window owned by the main thread which called MCI_OPEN. Since the main thread is blocked waiting on the newly created thread to finish, this deadlocks since the messages from SetParent to the main thread never get handled.
One solution is to handle the MCI_OPEN command on the main thread, so the SetParent occurs on the main thread and doesn't deadlock. But that seems to break what Akihiro was fixing in the first place. Still looking into it...
https://bugs.winehq.org/show_bug.cgi?id=40179
Andrew Eikum aeikum@codeweavers.com changed:
What |Removed |Added ---------------------------------------------------------------------------- CC| |sagawa.aki+winebugs@gmail.c | |om
--- Comment #5 from Andrew Eikum aeikum@codeweavers.com --- That commit was added to fix Bug 38241. Reverting it fixes this issue and allows a video to play in Powerpoint.
https://bugs.winehq.org/show_bug.cgi?id=40179
--- Comment #6 from Andrew Eikum aeikum@codeweavers.com --- Created attachment 54420 --> https://bugs.winehq.org/attachment.cgi?id=54420 Patch set to fix video insertion in Powerpoint 2010
Here's a set of patches which allows me to insert MPG videos into Powerpoint 2010. There are other bugs, particularly involving seeking, but this at least allows insertion and playback. I'm submitting them upstream now.
https://bugs.winehq.org/show_bug.cgi?id=40179
--- Comment #7 from Rosanne DiMesio dimesio@earthlink.net --- With the patches I can insert a video and press play, but nothing plays; the window remains black. It also breaks playback in Powerpoint 2007.
https://bugs.winehq.org/show_bug.cgi?id=40179
--- Comment #8 from Andrew Eikum aeikum@codeweavers.com --- (In reply to Rosanne DiMesio from comment #7)
With the patches I can insert a video and press play, but nothing plays; the window remains black. It also breaks playback in Powerpoint 2007.
Does running "wine regsvr32 winegstreamer.dll" help?
https://bugs.winehq.org/show_bug.cgi?id=40179
--- Comment #9 from Rosanne DiMesio dimesio@earthlink.net --- No.
Powerpoint 2010 has no audio, whereas Powerpoint 2007 plays the opening sound, but then gets stuck repeating the same sound. Neither show any of the video.
https://bugs.winehq.org/show_bug.cgi?id=40179
--- Comment #10 from Andrew Eikum aeikum@codeweavers.com --- (In reply to Rosanne DiMesio from comment #9)
No.
Powerpoint 2010 has no audio, whereas Powerpoint 2007 plays the opening sound, but then gets stuck repeating the same sound. Neither show any of the video.
OK, thanks for testing. I'll see if I can break it similarly here.
https://bugs.winehq.org/show_bug.cgi?id=40179
--- Comment #11 from Rosanne DiMesio dimesio@earthlink.net --- I tested the patches one by one, and 0003-winegstreamer-Flip-video-output.patch is the one that breaks video playback in Powerpoint 2007. With just the first two patches, both audio and video playback are normal in Powerpoint 2007, and the video even plays in Powerpoint 2010, but upside-down and without any audio.
https://bugs.winehq.org/show_bug.cgi?id=40179
--- Comment #12 from Andrew Eikum aeikum@codeweavers.com --- (In reply to Rosanne DiMesio from comment #11)
I tested the patches one by one, and 0003-winegstreamer-Flip-video-output.patch is the one that breaks video playback in Powerpoint 2007. With just the first two patches, both audio and video playback are normal in Powerpoint 2007, and the video even plays in Powerpoint 2010, but upside-down and without any audio.
Thanks. I wonder if you're missing the videoflip filter? In my distro, it comes from the gst-plugins-good package, in the file /usr/lib32/gstreamer-1.0/libgstvideofilter.so. If you want, you could attach a log with +tid,+gstreamer,+quartz,+strmbase,+qcap,+qedit.
https://bugs.winehq.org/show_bug.cgi?id=40179
--- Comment #13 from Rosanne DiMesio dimesio@earthlink.net --- Created attachment 54424 --> https://bugs.winehq.org/attachment.cgi?id=54424 +tid,+gstreamer,+quartz,+strmbase,+qcap,+qedit log, Powerpoint 2010
(In reply to Andrew Eikum from comment #12)
Thanks. I wonder if you're missing the videoflip filter? In my distro, it comes from the gst-plugins-good package, in the file /usr/lib32/gstreamer-1.0/libgstvideofilter.so.
On openSUSE it's in gstreamer-plugins-good and gstreamer-plugins-good-32bit. I have both /usr/lib/gstreamer-1.0/libgstvideofilter.so and /usr/lib64/gstreamer-1.0/libgstvideofilter.so.
If you want, you could attach a log with +tid,+gstreamer,+quartz,+strmbase,+qcap,+qedit.
I'm attaching a log from Powerpoint 2010, running with all three patches applied.
https://bugs.winehq.org/show_bug.cgi?id=40179
Andrew Eikum aeikum@codeweavers.com changed:
What |Removed |Added ---------------------------------------------------------------------------- Attachment #54420|0 |1 is obsolete| |
--- Comment #14 from Andrew Eikum aeikum@codeweavers.com --- Created attachment 54437 --> https://bugs.winehq.org/attachment.cgi?id=54437 Updated patches to fix video insertion in PPT 2010
Here's a new patchset with a couple more patches, to fix audio playback and greatly decrease the insertion time of videos.
Rosanne, I expect this won't fix your problem. I tried making an OpenSUSE VM to build Wine, but ran into issues trying to build against their 32-bit gstreamer libraries. Wine's configure script wouldn't find them. I might be able to figure it out, but any tips to save me some time?
https://bugs.winehq.org/show_bug.cgi?id=40179
--- Comment #15 from Rosanne DiMesio dimesio@earthlink.net --- (In reply to Andrew Eikum from comment #14)
Created attachment 54437 [details] Updated patches to fix video insertion in PPT 2010
Here's a new patchset with a couple more patches, to fix audio playback and greatly decrease the insertion time of videos.
Rosanne, I expect this won't fix your problem. I tried making an OpenSUSE VM to build Wine, but ran into issues trying to build against their 32-bit gstreamer libraries. Wine's configure script wouldn't find them. I might be able to figure it out, but any tips to save me some time?
I know the problem well; the glib2-devel-32bit packages for 13.1, 13.2, and Leap 42.1 are missing the 32 bit header and pkgconfig files (https://bugzilla.opensuse.org/show_bug.cgi?id=973217). The workaround for 13.1 (which is what I'm on) and 13.2 is to extract the files from the i586 package and manually copy them to /usr/include and /usr/lib/pkgconfig. I mentioned it on https://wiki.winehq.org/OpenSUSE.
I probably won't get a chance to test the new patchset until tomorrow. One thing did occur to me that might be the problem: I'm still on gstreamer 1.6.3; packages for 1.8.x aren't available for 13.1.
https://bugs.winehq.org/show_bug.cgi?id=40179
Rosanne DiMesio dimesio@earthlink.net changed:
What |Removed |Added ---------------------------------------------------------------------------- Attachment #54424|0 |1 is obsolete| |
--- Comment #16 from Rosanne DiMesio dimesio@earthlink.net --- Created attachment 54440 --> https://bugs.winehq.org/attachment.cgi?id=54440 +tid,+gstreamer,+quartz,+strmbase,+qcap,+qedit, PPT2010, with the new patchset
Attaching a +tid,+gstreamer,+quartz,+strmbase,+qcap,+qedit log with the new patchset. It doesn't fix the video, but I now get the initial sound/stuttering sound in PPT 2010 that I was only getting in 2007 before. It also does reduce the insertion time, though it still takes noticeably longer than on Windows (about 10 seconds vs. about 4 seconds).
https://bugs.winehq.org/show_bug.cgi?id=40179
--- Comment #17 from Andrew Eikum aeikum@codeweavers.com --- I got it built, but it looks like the 32-bit ugly plugins package doesn't include the mpeg decoder in Tumbleweed, and the 32-bit bad plugins package is broken. So I wasn't able to get playback to work at all.
If you try again without the video flip patch, it plays correctly, but upside-down, right? Can you get me a log in that state?
https://bugs.winehq.org/show_bug.cgi?id=40179
Rosanne DiMesio dimesio@earthlink.net changed:
What |Removed |Added ---------------------------------------------------------------------------- Attachment #54440|0 |1 is obsolete| |
--- Comment #18 from Rosanne DiMesio dimesio@earthlink.net --- Created attachment 54457 --> https://bugs.winehq.org/attachment.cgi?id=54457 +tid,+gstreamer,+quartz,+strmbase,+qcap,+qedit, PPT2010, without the flip video patch
Attaching new log, without the flip video patch.
Without the patch, the video inserts much faster and the audio is also fine, but it plays upside-down.
BTW, I also noticed upside-down playback in MPC-HC when I tested bug 20728 last week. I tested your updated patchset with the flip video patch on that, too, and while it didn't prevent playback, it also didn't fix the upside-down issue.
Regarding the plugins: are you using the packages from the distro, or Packman? You need Packman for anything multimedia-related, because the packages from the distro are crippled for legal reasons.
https://bugs.winehq.org/show_bug.cgi?id=40179
Andrew Eikum aeikum@codeweavers.com changed:
What |Removed |Added ---------------------------------------------------------------------------- Attachment #54437|0 |1 is obsolete| |
--- Comment #19 from Andrew Eikum aeikum@codeweavers.com --- Created attachment 54465 --> https://bugs.winehq.org/attachment.cgi?id=54465 New patchset with QOS improvements
I found some bugs in our quality-of-service implementation which could possibly cause this behavior. Please give this new patchset a try. If it doesn't help, please add +strmbase_qc,+dsound to the logging.
https://bugs.winehq.org/show_bug.cgi?id=40179
--- Comment #20 from Andrew Eikum aeikum@codeweavers.com --- (In reply to Andrew Eikum from comment #19)
Created attachment 54465 [details] New patchset with QOS improvements
I found some bugs in our quality-of-service implementation which could possibly cause this behavior. Please give this new patchset a try. If it doesn't help, please add +strmbase_qc,+dsound to the logging.
If it's not too late, chuck a +pulse,+alsa in there, too.
https://bugs.winehq.org/show_bug.cgi?id=40179
Rosanne DiMesio dimesio@earthlink.net changed:
What |Removed |Added ---------------------------------------------------------------------------- Attachment #53687|0 |1 is obsolete| | Attachment #54457|0 |1 is obsolete| |
--- Comment #21 from Rosanne DiMesio dimesio@earthlink.net --- Created attachment 54468 --> https://bugs.winehq.org/attachment.cgi?id=54468 +tid,+gstreamer,+quartz,+strmbase,+qcap,+qedit,+strmbase_qc,+dsound,+pulse,+alsa, patchset 3
Doesn't help; still has stuttering sound and no video.
https://bugs.winehq.org/show_bug.cgi?id=40179
--- Comment #22 from Andrew Eikum aeikum@codeweavers.com --- (In reply to Rosanne DiMesio from comment #21)
Created attachment 54468 [details] +tid,+gstreamer,+quartz,+strmbase,+qcap,+qedit,+strmbase_qc,+dsound,+pulse, +alsa, patchset 3
Doesn't help; still has stuttering sound and no video.
I wonder if you're getting hit by the pre-gst-1.7 bug that I had to work around. Our quartz sink pin has a workaround for this bug, but videoflip probably doesn't.
Can you get me (yet another :) log, but this time also add +timestamp and the variable GST_DEBUG=9.
https://bugs.winehq.org/show_bug.cgi?id=40179
--- Comment #23 from Andrew Eikum aeikum@codeweavers.com --- Created attachment 54474 --> https://bugs.winehq.org/attachment.cgi?id=54474 Patch set that works in 1.6.3 for me
(In reply to Andrew Eikum from comment #22)
(In reply to Rosanne DiMesio from comment #21)
Created attachment 54468 [details] +tid,+gstreamer,+quartz,+strmbase,+qcap,+qedit,+strmbase_qc,+dsound,+pulse, +alsa, patchset 3
Doesn't help; still has stuttering sound and no video.
I wonder if you're getting hit by the pre-gst-1.7 bug that I had to work around. Our quartz sink pin has a workaround for this bug, but videoflip probably doesn't.
Can you get me (yet another :) log, but this time also add +timestamp and the variable GST_DEBUG=9.
Scratch that. I was able to build 1.6.3 for Arch and reproduce your probblem. Here's a new patch sequence that fixes it for me.
https://bugs.winehq.org/show_bug.cgi?id=40179
--- Comment #24 from Rosanne DiMesio dimesio@earthlink.net --- That fixes it.
https://bugs.winehq.org/show_bug.cgi?id=40179
Rosanne DiMesio dimesio@earthlink.net changed:
What |Removed |Added ---------------------------------------------------------------------------- Status|NEW |RESOLVED Resolution|--- |FIXED
--- Comment #25 from Rosanne DiMesio dimesio@earthlink.net --- Marking fixed.
https://bugs.winehq.org/show_bug.cgi?id=40179
Bruno Jesus 00cpxxx@gmail.com changed:
What |Removed |Added ---------------------------------------------------------------------------- Fixed by SHA1| |008e4d3e86073c77c173fdaa339 | |cbb6fa06cfd85
https://bugs.winehq.org/show_bug.cgi?id=40179
Alexandre Julliard julliard@winehq.org changed:
What |Removed |Added ---------------------------------------------------------------------------- Status|RESOLVED |CLOSED
--- Comment #26 from Alexandre Julliard julliard@winehq.org --- Closing bugs fixed in 1.9.11.