Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Kidou Senshi Gundam - Shin Gihren no Yabou hangup when video finished. #5178

Closed
daniel229 opened this issue Jan 22, 2014 · 14 comments · Fixed by #5338
Closed

Kidou Senshi Gundam - Shin Gihren no Yabou hangup when video finished. #5178

daniel229 opened this issue Jan 22, 2014 · 14 comments · Fixed by #5338

Comments

@daniel229
Copy link
Collaborator

Press start to skip video before It finished should avoid that hangup.

48:19:899 bdx_main_thr I[SCEGE]: GLES\Framebuffer.cpp:793 Creating FBO for 00088000 : 480 x 272 x 3
48:19:900 bdx_main_thr W[ME]: HLE\scePsmf.cpp:840 scePsmfPlayerCreate(096ac0e0, 09fff4b0)
48:19:900 bdx_main_thr W[ME]: HLE\scePsmf.cpp:997 scePsmfPlayerGetAudioOutSize(096ac0e0)
48:19:900 bdx_main_thr W[ME]: HLE\scePsmf.cpp:997 scePsmfPlayerGetAudioOutSize(096ac0e0)
48:19:900 bdx_main_thr I[KERNEL]: HLE\sceKernelThread.cpp:2129 521=sceKernelCreateThread(name=BDXV CONTROL THREAD, entry=0880d7d0, prio=1e, stacksize=
2048)
48:19:900 bdx_main_thr I[KERNEL]: HLE\sceKernelThread.cpp:2129 522=sceKernelCreateThread(name=BDXV AUDIO THREAD, entry=0880d964, prio=1f, stacksize=20
48)
48:19:900 bdx_main_thr I[ME]: HLE\scePsmf.cpp:1330 scePsmfPlayerConfigPlayer(096ac0e0, pixelType, 3)
48:19:900 bdx_main_thr I[ME]: HLE\scePsmf.cpp:1327 scePsmfPlayerConfigPlayer(096ac0e0, loop, 1)
48:19:900 bdx_main_thr I[ME]: HLE\scePsmf.cpp:948 scePsmfPlayerSetPsmfCB(096ac0e0, disc0:/PSP_GAME/USRDIR/movie/MOV00038.PMF)
48:19:903 bdx_main_thr I[ME]: HW\MediaEngine.cpp:84 FF: No accelerated colorspace conversion found from yuv420p to rgba.
48:19:904 bdx_main_thr I[KERNEL]: HLE\sceKernelThread.cpp:2180 sceKernelStartThread(thread=522, argSize=4, argPtr=09fff4c0)
48:19:904 bdx_main_thr I[KERNEL]: HLE\sceKernelThread.cpp:2180 sceKernelStartThread(thread=521, argSize=4, argPtr=09fff4c0)
48:19:904 BDXV CONTROL W[ME]: HLE\scePsmf.cpp:1003 UNIMPL scePsmfPlayerStart(096ac0e0, 09fb0260, 00000000)
48:19:908 bdx_main_thr I[G3D]: GLES\ShaderManager.cpp:146 Linked shader: vs 18 fs 30
48:19:911 idle0 I[SCEGE]: GLES\Framebuffer.cpp:1589 Decimating FBO for 00044000 (480 x 272 x 1), age 6
48:48:402 bdx_main_thr I[ME]: HLE\scePsmf.cpp:1065 video end reached
48:48:419 BDXV CONTROL I[ME]: HLE\scePsmf.cpp:861 scePsmfPlayerStop(096ac0e0)
48:48:419 BDXV CONTROL I[KERNEL]: HLE\sceKernelThread.cpp:2273 sceKernelExitThread(0)
48:48:419 bdx_main_thr I[ME]: HLE\scePsmf.cpp:1065 video end reached
48:48:436 BDXV AUDIO T I[KERNEL]: HLE\sceKernelThread.cpp:2273 sceKernelExitThread(0)
48:48:436 bdx_main_thr I[ME]: HLE\scePsmf.cpp:1065 video end reached
48:48:452 bdx_main_thr I[ME]: HLE\scePsmf.cpp:1065 video end reached
48:48:469 bdx_main_thr I[ME]: HLE\scePsmf.cpp:1065 video end reached
48:48:486 bdx_main_thr I[ME]: HLE\scePsmf.cpp:1065 video end reached
48:48:503 bdx_main_thr I[ME]: HLE\scePsmf.cpp:1065 video end reached
48:48:519 bdx_main_thr I[ME]: HLE\scePsmf.cpp:1065 video end reached

@sum2012
Copy link
Collaborator

sum2012 commented Jan 22, 2014

You can also try this work or not
#5179

@daniel229
Copy link
Collaborator Author

@sum2012 That does not fix the issue.

@dbz400
Copy link
Contributor

dbz400 commented Jan 24, 2014

Humm looks like it can be in-game now ?

screen00394

@daniel229
Copy link
Collaborator Author

Yes,but video still have a problem.

@dbz400
Copy link
Contributor

dbz400 commented Jan 24, 2014

I see.

@neosilentchaos
Copy link

Just adding a gameplay related comment. The biggest problem that this fmv issue makes during gameplay are lockups when using MAP attacks that use fmvs. Current workaround is to not view them during your attack phase or skip them by pressing start before they finish.

@daniel229
Copy link
Collaborator Author

If jpcsp using following function to avoid the hanging,comment out

 throw new SceKernelErrorException(ERROR_PSMFPLAYER_NOT_INITIALIZED);
,then would hang like ppsspp.

public int checkPlayerPlaying(int psmfPlayer) {
        psmfPlayer = checkPlayerInitialized(psmfPlayer);
        if (psmfPlayerStatus != PSMF_PLAYER_STATUS_PLAYING && psmfPlayerStatus != PSMF_PLAYER_STATUS_PLAYING_FINISHED && psmfPlayerStatus != PSMF_PLAYER_STATUS_ERROR) {
                if (log.isDebugEnabled()) {
                        log.debug(String.format("checkPlayerInitialized player not playing (status=0x%X)", psmfPlayerStatus));
                }
                throw new SceKernelErrorException(ERROR_PSMFPLAYER_NOT_INITIALIZED);
        }
        return psmfPlayer;
    }

In PPSSPP Add

psmfplayer->psmfPlayerAvcAu.pts = 0;
in
 if (psmfplayer->mediaengine->IsVideoEnd()){}
,then it would not hang.

@unknownbrackets
Copy link
Collaborator

Well, the JPCSP thing sounds like we're allowing some func to be called without checking the psmfPlayerStatus.

-[Unknown]

@dbz400
Copy link
Contributor

dbz400 commented Feb 5, 2014

@sum2012 , could u mind helping to get jpcsptrace for this scepsmfplayerupdate()? So we can know if it indeed return not init error message here

@sum2012
Copy link
Collaborator

sum2012 commented Feb 5, 2014

@raven02 I don't have this game on hand
I think @daniel229 also have psp.

@daniel229
Copy link
Collaborator Author

@dbz400
Copy link
Contributor

dbz400 commented Feb 6, 2014

Humm just wonder is it generated during the video playback ?

@daniel229
Copy link
Collaborator Author

I think yes,the time match the video duration,about 1 minute 30 seconds.

@dbz400
Copy link
Contributor

dbz400 commented Feb 7, 2014

I see. thanks .

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging a pull request may close this issue.

5 participants