Vorheriges Thema anzeigen :: Nächstes Thema anzeigen |
Autor |
Nachricht |
The_Varto
Anmeldungsdatum: 19.09.2005 Beiträge: 4
|
Verfasst am: 26.09.2005, 00:46 Titel: MP3 oder Wav , vielleicht Midi |
|
|
Hallo liebe Basic freunde , ich wollte mal wissen wie man in Freebasic sound datein abspielen kann . Ausser mit shell , den dann öffnet sich leider immer wieder der Media Player _________________ <--- Von den Sachen die mir Verloren gegangen habe ich am meisten an meinen Verstand gehangen --> |
|
Nach oben |
|
|
d.j.peters Gast
|
Verfasst am: 26.09.2005, 04:15 Titel: |
|
|
Hallo The_Varto,
also unter WINDOWS verwende z.B. fmod dann laufen Deine Programme auch unter Linux.
Im Ordner /FreeBASIC/Examples/Sound findest Du auch Beispiele.
FMOD Homepage Homepage der Entwickler in englisch.
FMOD Homepage in deutsch.
FMOD Download aktuelle Version.
FMOD Forum in deutsch.
Grüsse Joshy |
|
Nach oben |
|
|
jb
Anmeldungsdatum: 14.01.2005 Beiträge: 2010
|
Verfasst am: 26.09.2005, 13:30 Titel: |
|
|
Schau mal hier im Forum.
Dazu gibt's nunmal die Suchfunktion
jb |
|
Nach oben |
|
|
Sebastian Administrator
Anmeldungsdatum: 10.09.2004 Beiträge: 5969 Wohnort: Deutschland
|
|
Nach oben |
|
|
jb
Anmeldungsdatum: 14.01.2005 Beiträge: 2010
|
Verfasst am: 26.09.2005, 15:51 Titel: |
|
|
Ähm Sebastian...
Darauf hab ich doch verlinkt
jb |
|
Nach oben |
|
|
Sebastian Administrator
Anmeldungsdatum: 10.09.2004 Beiträge: 5969 Wohnort: Deutschland
|
|
Nach oben |
|
|
The_Varto
Anmeldungsdatum: 19.09.2005 Beiträge: 4
|
Verfasst am: 26.09.2005, 20:28 Titel: Danke |
|
|
Vielen Dank werd ich gleich mal ausprobieren
Special Thx _________________ <--- Von den Sachen die mir Verloren gegangen habe ich am meisten an meinen Verstand gehangen --> |
|
Nach oben |
|
|
d.j.peters Gast
|
Verfasst am: 27.09.2005, 09:02 Titel: |
|
|
Sebastian hat Folgendes geschrieben: | ...Das geht auch ohne zusätzliche Module wie FMOD usw ... |
Hi Sebastian,
ist ja schön das Du mit dem WINDOWS API umgehen kannst aber man kann auch
das plattformübergreifende Programmieren unterstützen.
Ich schreibe Beispiele so das es für Lin und Win Ok ist.
Grüsse Joshy |
|
Nach oben |
|
|
Sebastian Administrator
Anmeldungsdatum: 10.09.2004 Beiträge: 5969 Wohnort: Deutschland
|
Verfasst am: 27.09.2005, 13:43 Titel: |
|
|
Naja, ich finde es schon sinnvoll, für Windows zu programmieren und auch die WinAPI zu verwenden, da de facto die meisten Anwender Windows benutzen, während Linuxprivatanwender, die irgendwelche Spielchen nutzen würden, eine kleine Minderheit sind. Zudem benutzt hier im Forum auch kaum (ich sage 'kaum' und nicht 'keiner') jemand Linux und auch die wenigsten haben (Programmier-)erfahrung damit. Warum also nicht die WinAPI? Geläufig, praktisch, gut. _________________
Die gefährlichsten Familienclans | Opas Leistung muss sich wieder lohnen - für 6 bis 10 Generationen! |
|
Nach oben |
|
|
MisterD
Anmeldungsdatum: 10.09.2004 Beiträge: 3071 Wohnort: bei Darmstadt
|
Verfasst am: 27.09.2005, 15:36 Titel: |
|
|
WinAPI ist gut? xD Wo lebst denn du?
Ich wette, es gäbe zwei millionen varianten die besser wären um soetwas zu lösen.. _________________ "It is practically impossible to teach good programming to students that have had a prior exposure to BASIC: as potential programmers they are mentally mutilated beyond hope of regeneration."
Edsger W. Dijkstra |
|
Nach oben |
|
|
Sebastian Administrator
Anmeldungsdatum: 10.09.2004 Beiträge: 5969 Wohnort: Deutschland
|
Verfasst am: 27.09.2005, 16:56 Titel: |
|
|
Zitat: | WinAPI ist gut? xD Wo lebst denn du? |
Das, was sie kann, das kann sie. Sie ist nicht so ganz anfängerfreundlich, aber absolut kompatibel und enthält viele wertvolle Funktionen.
Zitat: | Ich wette, es gäbe zwei millionen varianten die besser wären um soetwas zu lösen.. |
Na dann zähl auf.
Folgende Bedingungen für die Lösungen:
- keine zusätzlichen Dateien oder gar Software mitzuliefern
- alle gängigen Formate müssen unterstützt werden
- Funktionen zum Stoppen, Pausieren usw. müssen implementiert sein
Da bin ich jetzt gespannt. Selbst programmieren (binär öffnen usw.) ist ja wohl unzumutbar.
Jede Windowssoftware nutzt die WinAPI, sogar wenn die Programmierer selbst keine DLLs einbinden, was dann der Compiler tut. Ein einfachstes Programm in FB verwendet weit mehr als diese API-Funktionen:
Code: | CsrAllocateCaptureBuffer
CsrAllocateMessagePointer
CsrCaptureMessageBuffer
CsrCaptureMessageString
CsrClientCallServer
CsrClientConnectToServer
CsrFreeCaptureBuffer
CsrIdentifyAlertableThread
CsrNewThread
DbgBreakPoint
DbgPrint
DbgUiConnectToDbg
DbgUiContinue
DbgUiWaitStateChange
LdrAccessResource
LdrDisableThreadCalloutsForDll
LdrFindResourceDirectory_U
LdrFindResource_U
LdrGetDllHandle
LdrGetProcedureAddress
LdrLoadAlternateResourceModule
LdrLoadDll
LdrQueryImageFileExecutionOptions
LdrShutdownProcess
LdrShutdownThread
LdrUnloadAlternateResourceModule
LdrUnloadDll
NlsMbCodePageTag
NlsMbOemCodePageTag
NtAddAtom
NtAdjustPrivilegesToken
NtAllocateUserPhysicalPages
NtAllocateVirtualMemory
NtAssignProcessToJobObject
NtCancelDeviceWakeupRequest
NtCancelIoFile
NtCancelTimer
NtClearEvent
NtClose
NtContinue
NtCreateDirectoryObject
NtCreateEvent
NtCreateFile
NtCreateIoCompletion
NtCreateJobObject
NtCreateKey
NtCreateMailslotFile
NtCreateMutant
NtCreateNamedPipeFile
NtCreateProcess
NtCreateSection
NtCreateSemaphore
NtCreateThread
NtCreateTimer
NtDelayExecution
NtDeleteAtom
NtDeleteValueKey
NtDeviceIoControlFile
NtDuplicateObject
NtEnumerateKey
NtEnumerateValueKey
NtFindAtom
NtFlushBuffersFile
NtFlushInstructionCache
NtFlushKey
NtFlushVirtualMemory
NtFreeUserPhysicalPages
NtFreeVirtualMemory
NtFsControlFile
NtGetContextThread
NtGetDevicePowerState
NtGetWriteWatch
NtInitiatePowerAction
NtIsSystemResumeAutomatic
NtLockFile
NtLockVirtualMemory
NtMapUserPhysicalPages
NtMapUserPhysicalPagesScatter
NtMapViewOfSection
NtNotifyChangeDirectoryFile
NtOpenDirectoryObject
NtOpenEvent
NtOpenFile
NtOpenJobObject
NtOpenKey
NtOpenMutant
NtOpenProcess
NtOpenProcessToken
NtOpenSection
NtOpenSemaphore
NtOpenSymbolicLinkObject
NtOpenThread
NtOpenThreadToken
NtOpenTimer
NtPowerInformation
NtProtectVirtualMemory
NtPulseEvent
NtQueryAttributesFile
NtQueryDefaultLocale
NtQueryDefaultUILanguage
NtQueryDirectoryFile
NtQueryDirectoryObject
NtQueryEaFile
NtQueryEvent
NtQueryFullAttributesFile
NtQueryInformationAtom
NtQueryInformationFile
NtQueryInformationJobObject
NtQueryInformationProcess
NtQueryInformationThread
NtQueryInformationToken
NtQueryInstallUILanguage
NtQueryKey
NtQueryObject
NtQueryPerformanceCounter
NtQuerySection
NtQuerySecurityObject
NtQuerySymbolicLinkObject
NtQuerySystemInformation
NtQueryValueKey
NtQueryVirtualMemory
NtQueryVolumeInformationFile
NtQueueApcThread
NtRaiseHardError
NtReadFile
NtReadFileScatter
NtReadVirtualMemory
NtReleaseMutant
NtReleaseSemaphore
NtRemoveIoCompletion
NtRequestDeviceWakeup
NtRequestWakeupLatency
NtResetWriteWatch
NtResumeThread
NtSetContextThread
NtSetEaFile
NtSetEvent
NtSetInformationFile
NtSetInformationJobObject
NtSetInformationObject
NtSetInformationProcess
NtSetInformationThread
NtSetIoCompletion
NtSetSecurityObject
NtSetSystemInformation
NtSetSystemTime
NtSetThreadExecutionState
NtSetTimer
NtSetValueKey
NtSetVolumeInformationFile
NtSignalAndWaitForSingleObject
NtSuspendThread
NtTerminateJobObject
NtTerminateProcess
NtTerminateThread
NtUnlockFile
NtUnlockVirtualMemory
NtUnmapViewOfSection
NtWaitForMultipleObjects
NtWaitForSingleObject
NtWriteFile
NtWriteFileGather
NtWriteVirtualMemory
NtYieldExecution
RtlAcquirePebLock
RtlAddAccessAllowedAce
RtlAddAtomToAtomTable
RtlAllocateAndInitializeSid
RtlAllocateHandle
RtlAllocateHeap
RtlAnsiCharToUnicodeChar
RtlAnsiStringToUnicodeString
RtlAppendUnicodeStringToString
RtlAppendUnicodeToString
RtlAreBitsSet
RtlCharToInteger
RtlClearBits
RtlCompactHeap
RtlCompareMemory
RtlCompareUnicodeString
RtlCopyLuid
RtlCopyUnicodeString
RtlCreateAcl
RtlCreateAtomTable
RtlCreateEnvironment
RtlCreateHeap
RtlCreateProcessParameters
RtlCreateQueryDebugBuffer
RtlCreateSecurityDescriptor
RtlCreateTagHeap
RtlCreateTimer
RtlCreateTimerQueue
RtlCreateUnicodeString
RtlCreateUnicodeStringFromAsciiz
RtlCutoverTimeToSystemTime
RtlDefaultNpAcl
RtlDeleteAtomFromAtomTable
RtlDeleteCriticalSection
RtlDeleteTimer
RtlDeleteTimerQueueEx
RtlDeregisterWait
RtlDeregisterWaitEx
RtlDestroyEnvironment
RtlDestroyHeap
RtlDestroyProcessParameters
RtlDestroyQueryDebugBuffer
RtlDetermineDosPathNameType_U
RtlDnsHostNameToComputerName
RtlDoesFileExists_U
RtlDosPathNameToNtPathName_U
RtlEnterCriticalSection
RtlEqualString
RtlEqualUnicodeString
RtlExpandEnvironmentStrings_U
RtlExtendHeap
RtlExtendedLargeIntegerDivide
RtlFindClearBitsAndSet
RtlFindMessage
RtlFormatCurrentUserKeyPath
RtlFormatMessage
RtlFreeAnsiString
RtlFreeHandle
RtlFreeHeap
RtlFreeOemString
RtlFreeSid
RtlFreeUnicodeString
RtlGetCurrentDirectory_U
RtlGetDaclSecurityDescriptor
RtlGetFullPathName_U
RtlGetLongestNtPathLength
RtlGetNtProductType
RtlGetProcessHeaps
RtlGetUserInfoHeap
RtlGetVersion
RtlImageDirectoryEntryToData
RtlImageNtHeader
RtlInitAnsiString
RtlInitString
RtlInitUnicodeString
RtlInitializeCriticalSection
RtlInitializeCriticalSectionAndSpinCount
RtlInitializeHandleTable
RtlInitializeSid
RtlIntegerToChar
RtlIntegerToUnicodeString
RtlIsDosDeviceName_U
RtlIsTextUnicode
RtlIsValidHandle
RtlLeaveCriticalSection
RtlLengthRequiredSid
RtlLengthSecurityDescriptor
RtlLengthSid
RtlLockHeap
RtlLookupAtomInAtomTable
RtlMultiByteToUnicodeN
RtlMultiByteToUnicodeSize
RtlNtStatusToDosError
RtlOemStringToUnicodeString
RtlOpenCurrentUser
RtlPrefixString
RtlPrefixUnicodeString
RtlQueryAtomInAtomTable
RtlQueryEnvironmentVariable_U
RtlQueryProcessDebugInformation
RtlQueryRegistryValues
RtlQueryTagHeap
RtlQueueWorkItem
RtlRaiseException
RtlRaiseStatus
RtlReAllocateHeap
RtlRegisterWait
RtlReleasePebLock
RtlSetCurrentDirectory_U
RtlSetDaclSecurityDescriptor
RtlSetEnvironmentVariable
RtlSetIoCompletionCallback
RtlSetThreadPoolStartFunc
RtlSetTimeZoneInformation
RtlSetUserValueHeap
RtlSizeHeap
RtlSubAuthoritySid
RtlTimeFieldsToTime
RtlTimeToTimeFields
RtlUnicodeStringToAnsiString
RtlUnicodeStringToInteger
RtlUnicodeStringToOemString
RtlUnicodeToMultiByteN
RtlUnicodeToMultiByteSize
RtlUnlockHeap
RtlUnwind
RtlUpcaseUnicodeChar
RtlUpcaseUnicodeString
RtlUpdateTimer
RtlUsageHeap
RtlValidateHeap
RtlVerifyVersionInfo
RtlWalkHeap
RtlxAnsiStringToUnicodeSize
RtlxOemStringToUnicodeSize
RtlxUnicodeStringToAnsiSize
RtlxUnicodeStringToOemSize
_allmul
_chkstk
_strcmpi
_stricmp
_strlwr
_wcsicmp
_wcsnicmp
atol
isdigit
memmove
sprintf
strchr
strncpy
strrchr
strstr
swprintf
tolower
toupper
wcscat
wcschr
wcscmp
wcscpy
wcscspn
wcslen
wcsncmp
wcsncpy
wcspbrk
wcsrchr
wcsstr |
Die WinAPI ist quasi die Runtime für Windowsprogramme. Warum sollten Windowsprogramme sie also nicht verwenden? _________________
Die gefährlichsten Familienclans | Opas Leistung muss sich wieder lohnen - für 6 bis 10 Generationen! |
|
Nach oben |
|
|
MisterD
Anmeldungsdatum: 10.09.2004 Beiträge: 3071 Wohnort: bei Darmstadt
|
Verfasst am: 27.09.2005, 17:18 Titel: |
|
|
Was ich meine ist, man hätte die sicherlich auch irgendwie einfacher machen können.. Das System an sich ist ja sinnvoll, das man eine Funktion hat die am Anfang aufgerufen wird und eine, die bei Aktionen aufgerufen wird etc. Dagegen hab ich nix. Aber so manche Sachen wie einfach nen normalen Font auszuwählen, die Farben richtig einzustellen und das dann auf den Bildschirm zu schreiben an einer wählbaren Position, ich habs gestern nicht hinbekommen und muss jetzt vorerst bei dem schwarz-auf-weiß-monospace-font bleiben der bei den funktionen aus dem FB-Tut standatmäßig benutzt wird. Ich hab ne andere Funktion in der mdsn-datenbank gefunden mit beispiel, das war aber nicht übertragbar weil die dort verwendeten funktionen und datentypen (in FB) leider (noch?) nicht deklariert waren und ich nicht weiß wo ich die herbekommen kann. Warum braucht man aber auch schon wieder zB 2 verschieden Textausgaberoutinen die ja eigentlich das gleiche machen? _________________ "It is practically impossible to teach good programming to students that have had a prior exposure to BASIC: as potential programmers they are mentally mutilated beyond hope of regeneration."
Edsger W. Dijkstra |
|
Nach oben |
|
|
|