menu
 

在 Audiokinetic 社区问答论坛上,用户可对 Wwise 和 Strata 相关问题进行提问和解答。如需从 Audiokinetic 技术支持团队获取答复,请务必使用技术支持申请单页面。

0 投票

I am trying to convince my team to use wwise for a future project. They asked if they could get the time of a currently playing song from wwise. Is this possible? How?

 

I found this in the documentation but he pointed out the optimized/release configuration returning 0:

Get the time stamp shown in the capture log along with monitoring messages.

Returns

Time stamp in milliseconds. In optimized/release configuration, this function returns 0.

AkTimeMs __cdecl AK::Monitor::GetTimeStamp( ) 
分类:General Discussion | 用户: Buck (110 分)

1个回答

0 投票

Hi Buck,
As I know,Wwise provides an IntegrationDemo with rich example code in the SDK.
It seems that the feature you want to know about happens to have a page dedicated to it.
I've taken one of the codes and put it below.

The main API for your goal is AK::SoundEngine::GetSourcePlayPosition( m_iPlayingID, &uPosition );
You can run the already compiled IntegrationDemo in the SDK and look at the code to see how to implement it.
Code Address... \Wwise2019.2.6.7381\SDK\samples\IntegrationDemo\DemoPages\...

void DemoMusicCallbacks::Draw()

{

    DemoMusicCallbacksBase::Draw();

 

    if ( m_bIsPlaying )

    {

        char strBuf[50];

        int iPosX = m_pParentMenu->GetWidth() / 4;

        int iPosY = m_pParentMenu->GetHeight() / 3;

 

        AkTimeMs uPosition;

 

        // Get the current play position and store it in a string buffer

        AK::SoundEngine::GetSourcePlayPosition( m_iPlayingID, &uPosition );

        snprintf( strBuf, 50"Bar: %d\nBeat: %d\nPosition=%d", (int)m_uiBarCount, (int)m_uiBeatCount, (int)uPosition );

 

        // Draw the play position and subtitles

        DrawTextOnScreen( strBuf, iPosX, iPosY, DrawStyle_Text );

    }

}

It was written in C++ so there should be not many difference,

Hope this helps :)

用户: Hou Chenzhong (Audiokinetic) (6.0k 分)
...