Audio link in dictionary app builder

Hi there,
I’m new to Dictionary app builder. I can’t play audio files in Android. In my Lexique Pro it’s Ok. But I can’t see any audio link to play after installing mydictionay.apk using Dictionary app builder.
Could you help me please?
Thank you

@rasky Sorry for the delay but we were all off on two weeks break.

Did you add you audio files into the audio section? If you did then can I have a look at the source of a single entry that should have an audio file?

@razky Am I right in thinking you are exporting to .lift format from Lexique Pro then using that lift file as your source in Dictionary App Builder? If so, you will find that Lexique Pro does not export sound files to lift. If you do not have many sound files, you can edit the lift file manually and add in the code. A good place to add it is after the tag. Eg.

aha "

But if you have lots of sounds then Ian_McQuay may be able to help you when he is back from his break.

Capture

Hi Ian,
I have just tried Stuart’s code manually in the Lift file and it works. Is there any way to do this for a lot of audio files to avoid doing it manually?

Thank you for any help.

Abdelhak

Hi Stuart,
The code you sent me works fine. I have added the code manually in the Lift file and then used the DAB
If there’s any another way of doing it within DAB since I have a lot of audio file I would appreciate.
Thanks so much.
Abdelhak

Abdelhak,

Since you have a lot of sound files, it would be better to wait for Ian as he has a method of creating a lift file from a .db file directly.

Stuart

Thank you. I`ll be waiting for Ian’s answer.
Thanks all.

@razky what form do you keep your source in for Lexique Pro? SFM or LIFT?

If you want to send me whatever it is you can Personal message me with the details of where I can get it from. Then I can look at it.

Hi Ian,
I use Lift with Lexique Pro. I used the code Stuart sent and it works but introducing it manually in Lift. If there’s anther way of doing it for more than one sound file, I’d appreciate.
Thanks

Hi Ian,
I use Lift with Lexique Pro.
I can send you my sample of my lift file with just few entries if you send me your personal email since I coudn´t send it to you via community email.

Thanks

Hi Ian,
Please check your personal msg box for a sample.
Thanks in advance

@rasky Thanks I got your sample files.

There are a number of issues that I noticed when comparing the LIFT file with the SFM that is your source file in Lexique-Pro. The data does not look like typical dictionary data.

  1. The \cf field is not brought into the LIFT file. This may be because of the fact that the \cf entries are not in the data set that you sent to me.

  2. The trait field that is in the LIFT file, DAB does not display in DAB. It needs to be in a note field with a type attribute as the label if you want that to be shown in your dictionary app.

  3. While Lexique Pro lets you put fields where you want, LIFT has a Schema that should be followed if you want to import to LIFT into DAB. The LIFT-standard can be found here: https://github.com/sillsdev/lift-standard. Along those lines I did two things.

    • Reordered the fields to be more acceptable to LIFT.
    • I used the program Solid to generate a LIFT file from the SFM. Solid can be found here: https://software.sil.org/solid/. I modified the schema a little from standard MDF schema so that the LIFT output would work.

This is a reordered entry:

\lx 
\ps
\sd
\gv
\pc
\va
\sf
\cf

The Hierarchy is:

\lx 13 Rua
  \ps
    \sd
    \gv
    \pc
  \va
  \sf
  \cf

So the three elements under the \ps occur in the sense element and the rest occur in the entry element along with the sense. I had to add a \ps field to each entry to mark the sense start consistently.

I do have another method of converting SFM to LIFT but it takes a long while to set up and the data set was too small to justify that amount of work.

I’ll send you what I have generated separately.

HI Ian,
I tried to build the android app to test the lift file you sent me. DAB stop at 4% while writing entries to data base. Do you have any hint why?

Thanks

Here’s a print screen

@razky it is good you got me to look again.

The cause of the stoppages was in the pronunciation field with the empty lang attribute:

		<pronunciation>
			<form
				lang="">
				<text>01ABAEFA.mp3</text>
			</form>
		</pronunciation>

There are a number of other issues in the LIFT file that was created from Solid.

  1. There should be no path before the audio or image files.
  2. The pronunciation field should be changed which fixes the stoppage issue:
        <pronunciation>
            <media href="03ABAEFB.mp3">                
            </media>
        </pronunciation>
  1. Your gloss should not be the same language as your main entries otherwise there is no index for it.
  2. The note field is missing a type attribute. With that missing it displays nothing. Of course the note field is being generated by Solid since it can’t find main entries that correspond to the data in the \cf fields. If the field matches then it would output a field:
<relation type="See also" ref="01abaeFA_fe2c0b9d-8556-44ce-90e0-1a6df50c87fa"/>

So Solid is not going to give you the output you need without further modification.

It is better if all your image and .mp3 files are in the one folder each and named appropriately. Then if removing the path by search and replace you only have to do it once for the audio files and once for the image files.

As your data does not look like regular dictionary data it gets a bit hard to know what to recommend.

I think you should import your SFM data into FieldWorks Language Explorer and export your LIFT from there. Lexique Pro is not going to be upgraded or fixed so it exports the media. Solid is not in development either so FieldWorks is the best option. Though it is a lot more complex to use.

Thank you Ian for corrections and suggestions that

I’ll try to apply.

Le lun. 13 janv. 2020 à 01:26, Ian McQuay via SIL Software software_community@sil.org a écrit :