Video Streamen und PB

Anfängerfragen zum Programmieren mit PureBasic.
Distarb
Beiträge: 36
Registriert: 30.03.2005 16:32

Beitrag von Distarb »

Nein es handelt sich um ein Kommerzielles Projekt,deswegen auch die 100 Euro damit ich die rechte dann an den Procedure Source bekomme,und ähhm ja andere libs könnte ich da ja dann nicht benutzen,wäre ja betrug!
Also jetzt auf Fmod bezogen ^^
Oliver1994
Beiträge: 321
Registriert: 15.06.2008 21:52

Beitrag von Oliver1994 »

Wenn du hier schon 100 Euro anbietest dann kannste dir gleich nen V-Server kaufen da die Entsprechende Software daufknallen und fertig is!
Kaeru Gaman
Beiträge: 17389
Registriert: 10.11.2004 03:22

Beitrag von Kaeru Gaman »

das wäre nicht Betrug.
das hängt einzig davon ab, welche Rechte der Ersteller dem Benutzer einräumt.
also, wenn eine Lib unter der GPL veröffentlicht wäre, dürftes du die nicht benutzen, ohne dein Projekt ebenfalls unter die GPL zu stellen.

Weiterhin gibt es bei unterschiedlichen Werkzeugen unterschiedliche Lizenzen für den Gebrauch.
mit manchen darf man nur Private Projekte entwickeln, bei manchen gibt es kommerzielle Versionen nur gegen Aufpreis.

es gibt bestimmt einige Libs, die du in einem kommerziellen Projekt verwenden kannst.

auf der anderen Seite "gehört" dir ein Source nicht automatisch,
nur weil du nen Hunni für seine erstellung bezahlt hast,
dass er ausschließlich dir zugänglich gemacht wird muss ebenso Vertragsgegenstand sein,
und ich vermute mal sehr stark, dass der Ersteller dann trotzdem auf die gleiche Art und Weise andere Routinen schreiben darf.
Der Narr denkt er sei ein weiser Mann.
Der Weise weiß, dass er ein Narr ist.
Distarb
Beiträge: 36
Registriert: 30.03.2005 16:32

Beitrag von Distarb »

Ach mir is das latte ich mach das so...
jeder der den hunni haben will,soll sich hinsitten,das durcharbeiten,und dann gibts den auch von mir.Könnte ihr auch zugänglich für andere machen,kein thema ;)
Kaeru Gaman
Beiträge: 17389
Registriert: 10.11.2004 03:22

Beitrag von Kaeru Gaman »

na, das ist doch ein Wort. :D
Der Narr denkt er sei ein weiser Mann.
Der Weise weiß, dass er ein Narr ist.
Distarb
Beiträge: 36
Registriert: 30.03.2005 16:32

Beitrag von Distarb »

Ich will damit in die allgemein entwicklung von PB investieren,wir können das auch igrendwie von mir aus vertraglich festlegen.

Ich brauche den Code,habe unzählige male versucht mich selbst dran zu setzen und nie ist es so geworden wie ich es wollte...

Naja Thx wenn leute sich melden würden ;)
Benutzeravatar
dige
Beiträge: 1235
Registriert: 08.09.2004 08:53

Beitrag von dige »

Ich habe leider keine Zeit, würde es aber so machen:

Das Video mit den PB Netzwerkbefehlen Paketweise in den RAM schaufeln. Im englischen Forum gibt es ein Beispiel zum abspielen
eines Videos aus dem RAM, was ggf. leicht anzupassen ist:

Code: Alles auswählen

; http://www.purebasic.fr/english/viewtopic.php?t=23992
; Playing AVI/Wave files from memory:
; http://support.microsoft.com/kb/q155360/en
;
; PureBASIC conversion of the above example from Tomio:
; http://www.purebasic.fr/english/viewtopic.php?t=6674
;
; Use of rc compiler:
; http://www.vbaccelerator.com/codelib/article/usingrc.htm

Global *VideoBuffer
Global *FourCCCode
Global FileSize.L

Procedure AVICallback(*MMIOINFO.MMIOINFO, Msg.L, Parameter1.L, Parameter2.L)
  Static VideoIsOpened.L
 
  Select Msg
    Case #MMIOM_OPEN
      If VideoIsOpened = #True
        ProcedureReturn 0
      EndIf

      VideoIsOpened = #True
      *MMIOINFO\lDiskOffset = 0

      ProcedureReturn 0
    Case #MMIOM_CLOSE
      ProcedureReturn 0
    Case #MMIOM_READ
      CopyMemory(*VideoBuffer + *MMIOINFO\lDiskOffset, Parameter1, Parameter2)

      *MMIOINFO\lDiskOffset + Parameter2

      ProcedureReturn Parameter2
    Case #MMIOM_SEEK
      Select lParam2
        Case #SEEK_SET
          *MMIOINFO\lDiskOffset = Parameter1
        Case #SEEK_CUR
          *MMIOINFO\lDiskOffset + Parameter1
        Case #SEEK_END
          *MMIOINFO\lDiskOffset = FileSize - 1 - Parameter1
      EndSelect

      ProcedureReturn *MMIOINFO\lDiskOffset
    Default
      ProcedureReturn -1
  EndSelect
EndProcedure


#WindowHeight = 320
#WindowWidth = 320

AnimationAreaHandle.L
EventID.L
MemBlockHandle.L
ResourceHandle.L

Import "C:\Temp\Video.Res" : EndImport

If OpenWindow(1, 0, 0, #WindowWidth, #WindowHeight, "Video played from Memory", #PB_Window_ScreenCentered | #PB_Window_SystemMenu | #PB_Window_MinimizeGadget | #PB_Window_MaximizeGadget) = #False
  MessageRequester("Error", "Window could not be opened!", #MB_ICONERROR)
  End
EndIf

ResourceHandle = FindResource_(0, "#1", "VIDEO")

If ResourceHandle = 0
  MessageRequester("Error", "Video could not be found in resource file!", #MB_ICONERROR)
  End
EndIf

MemBlockHandle = LoadResource_(0, ResourceHandle)

If MemBlockHandle = 0
  MessageRequester("Error", "Video could not be loaded from resource file!", #MB_ICONERROR)
  End
EndIf

FileSize = SizeofResource_(0, ResourceHandle)

*VideoBuffer = LockResource_(MemBlockHandle)

If *VideoBuffer = 0
  MessageRequester("Error", "Locking of video buffer failed!", #MB_ICONERROR)
  End
EndIf

*FourCCCode = mmioStringToFOURCC_("AVI", #MMIO_TOUPPER)
mmioInstallIOProc_(*FourCCCode, @AVICallback(), #MMIO_INSTALLPROC)

AnimationAreaHandle = CreateWindowEx_(0, "SysAnimate32", "", #ACS_AUTOPLAY | #ACS_CENTER | #ACS_TRANSPARENT | #WS_CHILD | #WS_VISIBLE | #WS_CLIPCHILDREN | #WS_CLIPSIBLINGS, 10, 10, #WindowWidth, #WindowHeight, WindowID(1), 0, GetModuleHandle_(0), 0)

Result = mciSendString_("Open Animation.AVI+ Type AVIVideo Alias Animation", 0, 0, 0)

If Result <> 0
  MessageRequester("Error", "Video could not be opened!", #MB_ICONERROR)
  DestroyWindow_(AnimationAreaHandle)
  End
EndIf

mciSendString_("Window Animation Handle " + Str(WindowID(1)), 0, 0, 0)
mciSendString_("Play Animation repeat", 0, 0, 0)

Repeat
  EventID = WaitWindowEvent()

  If EventID = #PB_Event_CloseWindow
    DestroyWindow_(AnimationAreaHandle)
    mciSendString_("Close Animation", 0, 0, 0)
    mmioInstallIOProc_(*FourCCCode, #Null, #MMIO_REMOVEPROC)
  EndIf
Until EventID = #PB_Event_CloseWindow

End 
"Papa, ich laufe schneller - dann ist es nicht so weit."
Benutzeravatar
Joel
Beiträge: 851
Registriert: 21.04.2006 19:22

Beitrag von Joel »

Hat schon jemand einen funktionierenden Code
----------------------------------------------------------

PB 5.20 Beta 10 | Windows 7
Benutzeravatar
PMV
Beiträge: 2765
Registriert: 29.08.2004 13:59
Wohnort: Baden-Württemberg

Beitrag von PMV »

Joel hat geschrieben:Hat schon jemand einen funktionierenden Code
Das ist hoffentlich keine Frage ... weil ... äh ... ne ... also ... wie wärs
mit selber machen? Oder Geld verdienen und dann kannst dir den Code
tatsächlich kaufen ohne es selbst zu machen :wink:

MFG PMV
alte Projekte:
TSE, CWL, Chatsystem, GameMaker, AI-Game DLL, Fileparser, usw. -.-
kiki
Beiträge: 155
Registriert: 06.05.2006 17:54

Beitrag von kiki »

Ich wäre auch unter Videostreaming unter PB Interessiert.

Gibt es schon eine Lösung bzw. Code ansätze?
Antworten