Du bist nicht angemeldet.

Stilllegung des Forums
Das Forum wurde am 05.06.2023 nach über 20 Jahren stillgelegt (weitere Informationen und ein kleiner Rückblick).
Registrierungen, Anmeldungen und Postings sind nicht mehr möglich. Öffentliche Inhalte sind weiterhin zugänglich.
Das Team von spieleprogrammierer.de bedankt sich bei der Community für die vielen schönen Jahre.
Wenn du eine deutschsprachige Spieleentwickler-Community suchst, schau doch mal im Discord und auf ZFX vorbei!

Werbeanzeige

jube

Frischling

  • »jube« ist der Autor dieses Themas

Beiträge: 36

Beruf: Schüler

  • Private Nachricht senden

1

23.02.2005, 22:14

Problem mit Videos

Hallo ;) ,
ich mach für die Schule grad ein Projekt bei dem ich ein Programm erstelle, dass es mir wie bei virtuellen CD-Roms ermöglicht verschiedene Medientypen darzustellen, darunter auch Videos. Ich hab mich entschieden, das mit der TriBase Engine zu machen. Doch beim abspielen der Vides gibt es ein Problem. Hier die wichtigsten Codeaussschnitte:

C-/C++-Quelltext

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
//Laden des Videos in die CMedium Klasse

else if(m_iType == TYPE_VIDEO)
    {
        // Video laden

        m_pVideo = new tbVideo();
        if(m_pVideo->Init(acFilename) != TB_OK)
        {
            TB_ERROR("Fehler beim Laden eines  
                                                   Videos",TB_ERROR);
        }
                         }
                               // Alles Ok!!

                               TB_INFO("Video geladen!")
        
        m_bInitialized = true;
        return TB_OK;
    }


// Rendern des Videos


else if(m_iType == TYPE_VIDEO)
    {
        //Warten bis Textur freigegeben wird

        while(m_pVideo->GetRenderer()->IsTextureLocked 
                                                ()) {}
        tbDirect3D::BeginScene();
 
                   tbDirect3D::SetFVF(TITEL_FVF);
                   tbDirect3D::SetRS(D3DRS_ZENABLE,D3DZB_FALSE);
/*Hier schlägt es fehl*/tbDirect3D::SetTexture(0,m_pVideo->GetRenderer
                                              ()->GetTexture());
                   .....
//Hier noch der WinMain Aufruf


InitAll();
    //Test

    Test = new CMedium();
    Test->acFilename = "Videos\\DerProfi.avi";
    Test->m_iType = TYPE_VIDEO;
    Test->Load();
    Test->m_pVideo->Play();
    //Test

Beim Debuggen hab ich festgestellt, dass die render-Methode immer beim
GetRenderer->GetTexture() beendet wird. Daraufhin schlägt dann auch die Present() (oben nicht aufgeführt) Methode fehl. Das kann ja nur an einem Texture NullPointer liegen, aber warum tritt dieser auf ??? ??? Die Init Methode schlägt nämlich nicht fehl(Man hört den sound während das Bild schwarz bleibt). Ich hoffe ihr könnt mir helfen. Danke schon mal im voraus!!
Gruß Julian

jube

Frischling

  • »jube« ist der Autor dieses Themas

Beiträge: 36

Beruf: Schüler

  • Private Nachricht senden

2

26.02.2005, 16:51

Hallo,
hat denn keiner eine Idee, wie man das Problem lösen könnte? Noch ein Nachtrag: Das Video das ich lade funktioniert mit dem Beispielprogramm von David Scherfgen schon.
gruß Julian

Anonymous

unregistriert

3

08.03.2005, 20:01

Hallo,
da ihr jetzt mein Problem kennt mir aber leider kiener helfen kann, würde ich gern wissen wie man denn sonst noch Videos auf einer Textur abspielen kann. Gibts da vieleicht irgendwo eine library oder so was? ??? Danke schon mal.
Julian

Werbeanzeige