Jump to content

Recommended Posts

  • Replies 429
  • Created
  • Last Reply

Top Posters In This Topic

Top Posters In This Topic

Thanks a lot for adding support to 32bit FLAC files!

But there is some strange behavior going on. Some files have playback issues. It's almost like a CD skipping, or broken buffering, the audio changes in speed and jitters back and forth.

At first I thought I had broken files, so I went and remade them, with a more recent version of the encoder, but the problem persisted. So I listened to them on the PC and they play perfectly fine there, both the original files and the remade ones, so the files are not the issue. I tried moving the files from the SD card (which is a decent unit with sane speeds) to the internal memory and the problem still persisted. It doesn't seem like weak hardware either as I can play much heavier 32bit WavPack files such as hhx6 ones without issues, and the phone doesn't even warm up or anything. I also tried changing the buffer size, turning the equalizer on or off and changing the output sample rates, no dice, the playback issues continue.

This doesn't affect a single file either, entire albums are like this, while others play fine even if they are made with the exact same settings on the exact same encoder.

Another interesting thing is, there are heavier files (higher sample rates and bitrates) that also play perfectly fine, proving that it doesn't seem like a hardware issue. 32bit 96kHz files seem to be the most affected for some reason.

I gotta say though I'm pretty sure the player I'm using on PC (Foobar2000) to play these files does not use ffmpeg to decode these FLACs instead relying on libFLAC as it has been able to play 32bit FLAC files way before ffmpeg could, so maybe thats an ffmpeg thing?

2 hours ago, ScarletNeko said:

At first I thought I had broken files, so I went and remade them, with a more recent version of the encoder, but the problem persisted. So I listened to them on the PC and they play perfectly fine there, both the original files and the remade ones, so the files are not the issue. I tried moving the files from the SD card (which is a decent unit with sane speeds) to the internal memory and the problem still persisted. It doesn't seem like weak hardware either as I can play much heavier 32bit WavPack files such as hhx6 ones without issues, and the phone doesn't even warm up or anything. I also tried changing the buffer size, turning the equalizer on or off and changing the output sample rates, no dice, the playback issues continue.

I am just curious - what is the original source you are using for these 32bit FLAC files? I know that the format is now available, but wasn't sure where to get anything in 32bit native yet. 

25 minutes ago, MotleyG said:

what is the original source you are using for these 32bit FLAC files?

Mostly from the e-onkyo store, I think mora(dot)jp has also been offering them, and I'm almost sure I've already seen some on bandcamp too. They usually offer a range of options and sometimes you can get 32bit files on WAV or AIFF form. There are even some floating point 32bit ones but these are very uncommon.

They aren't distributed as FLACs, as I've said above they come either in WAV or AIFF, I encode them to FLAC myself.

20 minutes ago, ScarletNeko said:

Mostly from the e-onkyo store, I think mora(dot)jp has also been offering them, and I'm almost sure I've already seen some on bandcamp too. They usually offer a range of options and sometimes you can get 32bit files on WAV or AIFF form. There are even some floating point 32bit ones but these are very uncommon.

They aren't distributed as FLACs, as I've said above they come either in WAV or AIFF, I encode them to FLAC myself.

Thanks for sharing. So far sites like HDTracks and ProStudioMasters haven't offered anything in 32bit that I have seen.

On 2/3/2023 at 8:15 AM, andrewilley said:

感謝更新最大。

耗盡的歌詞淡出延遲現在似乎更好了。
@有餅 新的超時延遲(如果在此期間不需要新歌詞,似乎大約 7-8 秒)現在對你來說還好嗎?

此外, PA現在不允許手動向下滾動到你最終得到一個空屏幕 - 雖然我仍然不確定為什麼需要允許未同步的歌詞滾動到他們的最後一行之外。


然而,具有相同時間碼 的條目 仍然不會同時突出顯示 - 因此只有最後一個被點亮。我創建了一個簡單的文件來測試它,文件中引用了兩次完全相同的時間碼(在現實世界中,這種重複的時間碼用於語言翻譯等):

在 foobar2000 插件中,所有三個 [0:32.50] 行在播放的適當時刻一起突出顯示:

圖片.png

但是在 Poweramp 中,雖然所有三行 [0:32.50] 都正確顯示,但只有最後一行被突出顯示,而不是前面的兩行:

圖片.png

我可以將我創建的文件發送給您,但從屏幕截圖中可以很好地解釋,理想情況下,相同的時間碼應該同時突出顯示。

安德烈

Ty,but Some songs still time out, I think it would be better to set the timeout to 12 seconds.

Edited by 有餅
18 minutes ago, 有餅 said:

Ty,but Some songs still time out

Well to be fair they are meant to. Once a given line is finished, it's pointless keeping the text highlighted on the screen for a long time when the song has already moved on into an instrumental passage or the bridge.

Some lyrics files even include an empty timecoded line to force just this - e.g. the "Miss the mark with a sense of adventure" line in this example will be forcibly faded after 5 seconds, rather than being left on the screen until the next "Don't blame this sleeping satellite" line turns up 25 second later:

[02:42.00]Like a shot in the dark
[02:43.85]Miss the mark with a sense of adventure
[02:48.83]
[03:08.50]Don't blame this sleeping satellite
[03:13.00]

But the current default of 7+ seconds seems to cover the issue of lyrics disappearing too soon during continuous singing though.

Andre

@Chris Sorum no such issue exist for Poweramp in recent builds (945-952). If it doesn't search for you - you're blocked from Google on the device IP address (e.g. due to public wifi network): it requires captcha - which can be done once in the browser on the device.

1 hour ago, Chris Sorum said:

Is there still an issue with latest build of not being able to search for, or download Album Art?

Yes, problem still exists in 952. Opening the 'Album Art' option for a song returns image search results, but selecting 'Image' at the Album level returns a blank page.

Screenshot_20230207-150204_Poweramp.jpg

Andre

Noticed that on my Huawei P30 Pro, the audio policy file Poweramp is reading is /vendor/etc/audio_policy.conf 

I think it should also read:

/vendor/etc/audio/audio_policy_configuration.xml 

It is only in the second file that the hi res capabilities are defined. This may explain why hires capability that other audio players recognise (e.g. Neutron) is not being picked up by recent Poweramp builds. 

The content is as follows:

Spoiler

<?xml version="1.0" encoding="UTF-8" standalone="yes"?>

<!-- Copyright (C) 2015 The Android Open Source Project

 

     Licensed under the Apache License, Version 2.0 (the "License");

     you may not use this file except in compliance with the License.

     You may obtain a copy of the License at

 

          http://www.apache.org/licenses/LICENSE-2.0

 

     Unless required by applicable law or agreed to in writing, software

     distributed under the License is distributed on an "AS IS" BASIS,

     WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.

     See the License for the specific language governing permissions and

     limitations under the License.

-->

 

<audioPolicyConfiguration version="1.0" xmlns:xi="http://www.w3.org/2001/XInclude">

    <!-- version section contains a “version” tag in the form “major.minor” e.g version=”1.0” -->

 

    <!-- Global configuration Decalaration -->

    <globalConfiguration speaker_drc_enabled="false"/>

 

 

    <!-- Modules section:

        There is one section per audio HW module present on the platform.

        Each module section will contains two mandatory tags for audio HAL “halVersion” and “name”.

        The module names are the same as in current .conf file:

                “primary”, “A2DP”, “remote_submix”, “USB”

        Each module will contain the following sections:

        “devicePorts”: a list of device descriptors for all input and output devices accessible via this

        module.

        This contains both permanently attached devices and removable devices.

        “mixPorts”: listing all output and input streams exposed by the audio HAL

        “routes”: list of possible connections between input and output devices or between stream and

        devices.

            "route": is defined by an attribute:

                -"type": <mux|mix> means all sources are mutual exclusive (mux) or can be mixed (mix)

                -"sink": the sink involved in this route

                -"sources": all the sources than can be connected to the sink via vis route

        “attachedDevices”: permanently attached devices.

        The attachedDevices section is a list of devices names. The names correspond to device names

        defined in <devicePorts> section.

        “defaultOutputDevice”: device to be used by default when no policy rule applies

    -->

    <modules>

        <!-- Primary Audio HAL -->

        <module name="primary" halVersion="2.0">

            <attachedDevices>

                <item>Earpiece</item>

                <item>Speaker</item>

                <item>Telephony Tx</item>

                <item>Built-In Mic</item>

                <item>Built-In Back Mic</item>

                <item>Telephony Rx</item>

                <item>Dgtl Dock Headset</item>

            </attachedDevices>

            <defaultOutputDevice>Speaker</defaultOutputDevice>

            <mixPorts>

                <mixPort name="primary out" role="source" flags="AUDIO_OUTPUT_FLAG_PRIMARY">

                    <profile name="" format="AUDIO_FORMAT_PCM_32_BIT"

                             samplingRates="48000"

                             channelMasks="AUDIO_CHANNEL_OUT_STEREO"/>

                </mixPort>

                <mixPort name="lowlatency out" role="source" flags="AUDIO_OUTPUT_FLAG_FAST">

                    <profile name="" format="AUDIO_FORMAT_PCM_32_BIT"

                             samplingRates="48000"

                             channelMasks="AUDIO_CHANNEL_OUT_STEREO"/>

                </mixPort>

                <mixPort name="mmap out" role="source" flags="AUDIO_OUTPUT_FLAG_DIRECT|AUDIO_OUTPUT_FLAG_MMAP_NOIRQ">

                    <profile name="" format="AUDIO_FORMAT_PCM_16_BIT"

                             samplingRates="48000"

                             channelMasks="AUDIO_CHANNEL_OUT_STEREO"/>

                </mixPort>

                <mixPort name="offload" role="source" flags="AUDIO_OUTPUT_FLAG_DIRECT|AUDIO_OUTPUT_FLAG_COMPRESS_OFFLOAD|AUDIO_OUTPUT_FLAG_NON_BLOCKING">

                    <profile name="" format="AUDIO_FORMAT_MP3"

                             samplingRates="8000,11025,12000,16000,22050,24000,32000,44100,48000"

                             channelMasks="AUDIO_CHANNEL_OUT_STEREO"/>

                </mixPort>

                <mixPort name="direct_pcm" role="source" flags="AUDIO_OUTPUT_FLAG_DIRECT|AUDIO_OUTPUT_FLAG_DIRECT_PCM|AUDIO_OUTPUT_FLAG_VOIP_RX">

                    <profile name="" format="AUDIO_FORMAT_PCM_16_BIT"

                             samplingRates="8000,16000,32000,44100,48000,88200,96000,176400,192000,384000"

                             channelMasks="AUDIO_CHANNEL_OUT_MONO,AUDIO_CHANNEL_OUT_STEREO"/>

                    <profile name="" format="AUDIO_FORMAT_PCM_FLOAT"

                             samplingRates="8000,16000,32000,44100,48000,88200,96000,176400,192000,384000"

                             channelMasks="AUDIO_CHANNEL_OUT_MONO,AUDIO_CHANNEL_OUT_STEREO"/>

                    <profile name="" format="AUDIO_FORMAT_PCM_32_BIT"

                             samplingRates="8000,16000,32000,44100,48000,88200,96000,176400,192000,384000"

                             channelMasks="AUDIO_CHANNEL_OUT_MONO,AUDIO_CHANNEL_OUT_STEREO"/>

                </mixPort>

                <mixPort name="primary in" role="sink">

                    <profile name="" format="AUDIO_FORMAT_PCM_16_BIT"

                             samplingRates="8000,11025,16000,22050,24000,32000,44100,48000"

                             channelMasks="AUDIO_CHANNEL_IN_MONO,AUDIO_CHANNEL_IN_STEREO,AUDIO_CHANNEL_IN_VOICE_CALL,AUDIO_CHANNEL_IN_VOICE_CALL_STEREO"/>

                </mixPort>

                <mixPort name="lowlatency in" role="sink" flags="AUDIO_INPUT_FLAG_FAST">

                    <profile name="" format="AUDIO_FORMAT_PCM_16_BIT"

                             samplingRates="48000"

                             channelMasks="AUDIO_CHANNEL_IN_MONO,AUDIO_CHANNEL_IN_STEREO"/>

                </mixPort>

                <mixPort name="mmap in" role="sink" flags="AUDIO_INPUT_FLAG_MMAP_NOIRQ">

                    <profile name="" format="AUDIO_FORMAT_PCM_16_BIT"

                             samplingRates="48000"

                             channelMasks="AUDIO_CHANNEL_IN_MONO,AUDIO_CHANNEL_IN_STEREO"/>

                </mixPort>

            </mixPorts>

            <devicePorts>

                <!-- Output devices declaration, i.e. Sink DEVICE PORT -->

                <devicePort tagName="Earpiece" type="AUDIO_DEVICE_OUT_EARPIECE" role="sink">

                </devicePort>

                <devicePort tagName="Speaker" type="AUDIO_DEVICE_OUT_SPEAKER" role="sink">

                </devicePort>

                <devicePort tagName="Wired Headset" type="AUDIO_DEVICE_OUT_WIRED_HEADSET" role="sink">

                </devicePort>

                <devicePort tagName="Dgtl Dock Headset" type="AUDIO_DEVICE_OUT_DGTL_DOCK_HEADSET" role="sink">

                </devicePort>

                <devicePort tagName="Wired Headphones" type="AUDIO_DEVICE_OUT_WIRED_HEADPHONE" role="sink">

                </devicePort>

                <devicePort tagName="BT SCO" type="AUDIO_DEVICE_OUT_BLUETOOTH_SCO" role="sink">

                </devicePort>

                <devicePort tagName="BT SCO Headset" type="AUDIO_DEVICE_OUT_BLUETOOTH_SCO_HEADSET" role="sink">

                </devicePort>

                <devicePort tagName="BT SCO Carkit" type="AUDIO_DEVICE_OUT_BLUETOOTH_SCO_CARKIT" role="sink">

                </devicePort>

                <devicePort tagName="FM" type="AUDIO_DEVICE_OUT_FM" role="sink">

                </devicePort>

                <devicePort tagName="Telephony Tx" type="AUDIO_DEVICE_OUT_TELEPHONY_TX" role="sink">

                </devicePort>

                <devicePort tagName="Modem Primary Out" type="AUDIO_DEVICE_OUT_BUS" role="sink" address="modem_phone_call">

                    <profile name="" format="AUDIO_FORMAT_PCM_FLOAT"

                             samplingRates="44100,48000" channelMasks="AUDIO_CHANNEL_OUT_STEREO"/>

                    <profile name="" format="AUDIO_FORMAT_PCM_16_BIT"

                             samplingRates="44100,48000" channelMasks="AUDIO_CHANNEL_OUT_STEREO"/>

                </devicePort>

                <devicePort tagName="USB EXTDevice Out" type="AUDIO_DEVICE_OUT_USB_DEVICE_EXTENDED" role="sink">

                </devicePort>

                <devicePort tagName="Built-In Mic" type="AUDIO_DEVICE_IN_BUILTIN_MIC" role="source">

                </devicePort>

                <devicePort tagName="Built-In Back Mic" type="AUDIO_DEVICE_IN_BACK_MIC" role="source">

                </devicePort>

                <devicePort tagName="Wired Headset Mic" type="AUDIO_DEVICE_IN_WIRED_HEADSET" role="source">

                </devicePort>

                <devicePort tagName="BT SCO Headset Mic" type="AUDIO_DEVICE_IN_BLUETOOTH_SCO_HEADSET" role="source">

                </devicePort>

                <devicePort tagName="Telephony Rx" type="AUDIO_DEVICE_IN_TELEPHONY_RX" role="source">

                </devicePort>

                <devicePort tagName="FM Tuner" type="AUDIO_DEVICE_IN_FM_TUNER" role="source">

                </devicePort>

                <devicePort tagName="USB EXTDevice In" type="AUDIO_DEVICE_IN_USB_DEVICE_EXTENDED" role="source">

                </devicePort>

                <devicePort tagName="Modem Primary In" type="AUDIO_DEVICE_IN_BUS" role="source" address="modem_phone_call">

                     <profile name="" format="AUDIO_FORMAT_PCM_16_BIT"

                             samplingRates="8000,16000,32000,44100,48000"

                             channelMasks="AUDIO_CHANNEL_IN_MONO,AUDIO_CHANNEL_IN_STEREO"/>

                </devicePort>

            </devicePorts>

            <!-- route declaration, i.e. list all available sources for a given sink -->

            <routes>

                <route type="mix" sink="Earpiece"

                       sources="primary out,lowlatency out,mmap out,offload,direct_pcm"/>

                <route type="mix" sink="Speaker"

                       sources="primary out,lowlatency out,mmap out,offload,direct_pcm"/>

                <route type="mix" sink="Wired Headset"

                       sources="primary out,lowlatency out,mmap out,offload,direct_pcm"/>

                <route type="mix" sink="Wired Headphones"

                       sources="primary out,lowlatency out,mmap out,offload,direct_pcm"/>

                <route type="mix" sink="Dgtl Dock Headset"

                       sources="primary out"/>

                <route type="mix" sink="BT SCO"

                       sources="primary out,direct_pcm"/>

                <route type="mix" sink="BT SCO Headset"

                       sources="primary out,direct_pcm"/>

                <route type="mix" sink="BT SCO Carkit"

                       sources="primary out,direct_pcm"/>

                <route type="mix" sink="FM"

                       sources="primary out"/>

                <route type="mix" sink="Modem Primary Out"

                       sources="primary out"/>

                <route type="mix" sink="Telephony Tx"

                       sources="primary out"/>

                <route type="mix" sink="USB EXTDevice Out"

                       sources="primary out,lowlatency out,mmap out,offload,direct_pcm"/>

                <route type="mix" sink="primary in"

                       sources="Built-In Mic,Built-In Back Mic,Wired Headset Mic,BT SCO Headset Mic,FM Tuner,Telephony Rx,USB EXTDevice In,Modem Primary In"/>

                <route type="mix" sink="lowlatency in"

                       sources="Built-In Mic,Wired Headset Mic,USB EXTDevice In"/>

                <route type="mix" sink="mmap in"

                       sources="Built-In Mic,Wired Headset Mic,USB EXTDevice In"/>

            </routes>

 

        </module>

 

        <!-- A2dp In Audio HAL -->

        <!-- <xi:include href="/vendor/etc/a2dp_in_audio_policy_configuration.xml"/> -->

 

        <!-- Usb Audio HAL -->

        <xi:include href="/vendor/etc/usb_audio_policy_configuration.xml"/>

 

        <!-- Remote Submix Audio HAL -->

        <xi:include href="/vendor/etc/r_submix_audio_policy_configuration.xml"/>

 

        <!-- Dp Audio HAL -->

        <xi:include href="/vendor/etc/dp_audio_policy_configuration.xml"/>

 

        <!-- Bluetooth Audio HAL -->

        <xi:include href="/vendor/etc/bluetooth_audio_policy_configuration.xml"/>

 

        <!-- Hearing aid Audio HAL -->

        <!-- <xi:include href="hearing_aid_audio_policy_configuration.xml"/> -->

 

        <!-- Remote Virtual Audio HAL -->

        <xi:include href="/vendor/etc/r_virtual_audio_policy_configuration.xml"/>

 

    </modules>

    <!-- End of Modules section -->

 

    <!-- Volume section -->

 

    <xi:include href="/odm/etc/audio/volume/audio_policy_volumes.xml">

        <xi:fallback>

            <xi:include href="/vendor/etc/audio_policy_volumes.xml"/>

        </xi:fallback>

    </xi:include>

    <xi:include href="/odm/etc/audio/volume/default_volume_tables.xml">

        <xi:fallback>

            <xi:include href="/vendor/etc/default_volume_tables.xml"/>

        </xi:fallback>

    </xi:include>

    <!-- End of Volume section -->

 

</audioPolicyConfiguration>

@Olympusandy while Poweramp may read some config file, on recent Android decision regarding hi-res is done by a separate logic, which looks more for firmware/chipset/OEM etc. Particularly for Huaweis it's almost always enabled. If it doesn't work for you, please see here: 

Also, there are no known issues with Huawei Hi-Res, except DVC support for hi-res, which is normal for recent Androids (only number of devices/OEMs properly support Hi-Res + DVC).

A couple of minor scanning issues still present in 953. After a Full Rescan (using SAF not Legacy File Mode, Android 11 on Samsung Galaxy A70):

  • With 'Ignore Video Files' set, although PA correctly ignores my test folder's .MP4 and .MKV files, it includes a .MPG file in the library.
  • The two sample .MKA files which I still had in my test folder (for checking the previous MKA UTF-8 tagging issue) now don't show up in the library at all. They did scan previously because I was testing with them recently.

Andre

On 2/7/2023 at 1:19 PM, Chris Sorum said:

Is there still an issue with latest build of not being able to search for, or download Album Art?  Searching for, and downloading Artist Images works just fine.  Seems to be an issue only for Album Art.

Now fixed in build 953.

Andre

23 minutes ago, GeilerHeinz said:

In build 953 PA crashes if starting 3rd party app (Genius) via open lyrics app on the new lyrics window.

Doesn't happen for me with MusixMatch, so could be something directly related to Genuis. Does it happen with other lyric apps for you?

Andre

@Mandolo5758 Two things which seem odd.

The Madonna one starts with:

[ti:I'll remember]
[ar:Unknown]
[al:Unknown]

Those 'unknown' items for artist and album may be causing mismatches when Poweramp tries to validate the file against a particular song. You could try removing them in a text editor and see if that helps? It's also UTF-16 LE text encoded, but I doubt that's the problem.

The second one seems to be Unicode encoded too, but without any header info to indicate the details. It starts in 8-bit ASCII for the offset line, then changes. Some text editors (e.g. Notepad++ and possibly Poweramp too?) may not read it properly. Try saving it as a regular UTF-8 text file and see if that helps.

I'm sure Max will be able to diagnose further anyway.

Andre

54 minutes ago, andrewilley said:

@Mandolo5758 Two things which seem odd.

The Madonna one starts with:

[ti:I'll remember]
[ar:Unknown]
[al:Unknown]

Those 'unknown' items for artist and album may be causing mismatches when Poweramp tries to validate the file against a particular song. You could try removing them in a text editor and see if that helps? It's also UTF-16 LE text encoded, but I doubt that's the problem.

The second one seems to be Unicode encoded too, but without any header info to indicate the details. It starts in 8-bit ASCII for the offset line, then changes. Some text editors (e.g. Notepad++ and possibly Poweramp too?) may not read it properly. Try saving it as a regular UTF-8 text file and see if that helps.

I'm sure Max will be able to diagnose further anyway.

Andre

I only add 0 at the third minute of the timestamps.

If only one 0 , it doesn't display on the Poweramp lyric , but after I add one 0 , it becomes broken (unreadable ) by Poweramp lyric.

IMG-20230210-WA0000.jpg

IMG-20230210-WA0001.jpg

Edited by Mandolo5758

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now
×
×
  • Create New...