Bug 169706 - FILESAVE PPTX Empty reference to missing audio saved during conversion
Summary: FILESAVE PPTX Empty reference to missing audio saved during conversion
Status: RESOLVED FIXED
Alias: None
Product: LibreOffice
Classification: Unclassified
Component: filters and storage (show other bugs)
Version:
(earliest affected)
6.3.0.4 release
Hardware: All All
: medium normal
Assignee: Aron Budea
URL:
Whiteboard: target:26.2.0 target:25.8.4
Keywords: bibisected, bisected, implementationError
Depends on:
Blocks: PPTX-Corrupted Media PPTX-Animations
  Show dependency treegraph
 
Reported: 2025-11-27 08:45 UTC by Aron Budea
Modified: 2025-12-01 12:23 UTC (History)
0 users

See Also:
Crash report or crash signature:


Attachments
lp1277529-1.odp (60.34 KB, application/vnd.oasis.opendocument.presentation)
2025-11-27 08:45 UTC, Aron Budea
Details
lp823155-2.odp (13.31 KB, application/vnd.oasis.opendocument.presentation)
2025-11-30 11:15 UTC, Aron Budea
Details

Note You need to log in before you can comment on or make changes to this bug.
Description Aron Budea 2025-11-27 08:45:51 UTC
Created attachment 204311 [details]
lp1277529-1.odp

Impress tends to save audio during animations and transitions linked into ODP, and with relative path (see bug 67544), eg. like this in content.xml (from lp1277529-1.odp, attached):
<anim:audio xlink:href="../../../../usr/lib/libreoffice/basis3.3/share/gallery/sounds/apert.wav"/>

If the file is moved elsewhere, these can become invalid, and when the file is saved to PPTX (which tries to embed the audio), in case of animations, invalid reference gets saved into the PPTX in ppt/slides/slideX.xml:
<p:sndTgt name=""/>
vs. something like this when the reference is valid:
<p:sndTgt r:embed="rId1" name="apert.wav"/>

To create such a file locally:
- start a new presentation,
- add a shape,
- on Animations sidebar deck, click "+ Add" with the shape selected,
- click the Options button,
- pick a Sound from the dropdown,
- save as ODP.

Then:
- move to a different directory,
- open and save ODP to PPTX,
- try opening the result in PowerPoint.

Only animations are affected, transitions with invalid audio links are exported fine, the audio reference gets removed properly.

Observed using LO 26.2.0.0.alpha1+ (2025-11-22), 6.3.0.4 / Windows.

This started with the following commit in 6.3, when exporting audio to PPTX was implemented:
https://git.libreoffice.org/core/commit/d98d3e2a0bc087ec9157e8e32e9f0ea4207d36e2
author		Mark Hung <marklh9@gmail.com>	Fri Mar 01 10:09:30 2019 +0800
committer	Mark Hung <marklh9@gmail.com>	Mon Mar 04 14:32:15 2019 +0100

tdf#44223: Export the audio of effects and transitions.
Comment 1 Aron Budea 2025-11-29 17:07:11 UTC
The fixes got merged with the wrong bug report reference.

----

Aron Budea committed a patch related to this issue.
It has been pushed to "master":

https://git.libreoffice.org/core/commit/0cf6caa3c267805dc99c8c138656f901879e80fa

tdf#169438 sd: reference to missing audio results in invalid PPTX

It will be available in 26.2.0.

The patch should be included in the daily builds available at
https://dev-builds.libreoffice.org/daily/ in the next 24-48 hours. More
information about daily builds can be found at:
https://wiki.documentfoundation.org/Testing_Daily_Builds

Affected users are encouraged to test the fix and report feedback.

----

Aron Budea committed a patch related to this issue.
It has been pushed to "libreoffice-25-8":

https://git.libreoffice.org/core/commit/d93ff51910f2c61949460eecc6fe6c0348ca652b

tdf#169438 sd: reference to missing audio results in invalid PPTX

It will be available in 25.8.4.

The patch should be included in the daily builds available at
https://dev-builds.libreoffice.org/daily/ in the next 24-48 hours. More
information about daily builds can be found at:
https://wiki.documentfoundation.org/Testing_Daily_Builds

Affected users are encouraged to test the fix and report feedback.
Comment 2 Aron Budea 2025-11-30 11:15:04 UTC
Created attachment 204344 [details]
lp823155-2.odp

(In reply to Aron Budea from comment #0)
> (from lp1277529-1.odp, attached):
That was meant to be lp823155-2.odp.
Comment 3 Commit Notification 2025-11-30 16:21:34 UTC
Aron Budea committed a patch related to this issue.
It has been pushed to "master":

https://git.libreoffice.org/core/commit/919b0984ed7bf5cfd599fbf0fcf613121026976e

tdf#169706 correct unit test and file name

It will be available in 26.2.0.

The patch should be included in the daily builds available at
https://dev-builds.libreoffice.org/daily/ in the next 24-48 hours. More
information about daily builds can be found at:
https://wiki.documentfoundation.org/Testing_Daily_Builds

Affected users are encouraged to test the fix and report feedback.
Comment 4 Commit Notification 2025-12-01 12:23:29 UTC
Aron Budea committed a patch related to this issue.
It has been pushed to "libreoffice-25-8":

https://git.libreoffice.org/core/commit/29aad31182b878620beb3b6f1de470f98c8251dc

tdf#169706 correct unit test and file name

It will be available in 25.8.4.

The patch should be included in the daily builds available at
https://dev-builds.libreoffice.org/daily/ in the next 24-48 hours. More
information about daily builds can be found at:
https://wiki.documentfoundation.org/Testing_Daily_Builds

Affected users are encouraged to test the fix and report feedback.