Commit Graph

63 Commits

Author SHA1 Message Date
Stephan Aßmus
048d05a613 Small cleanups.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@32123 a95241bf-73f2-0310-859d-f6bbb57e9c96
2009-08-05 10:11:06 +00:00
Stephan Aßmus
fa770e4c84 * Writer::WriteChunk() takes media_encode_info* instead of flags.
* Improved Encoder API towards what we need for the get_next_encoder() variants
  and the BMediaTrack API.
* Implemented the rest of MediaWriter. Still undecided what to make of
  AddTrackInfo(). BMediaEncoder has that as well, which hints that this is
  something the Encoder needs to support. But it could also be that this is
  only possible to support in Writer.
* Wired a lot of previously unimplemented methods in BMediaFile and BMediaTrack
  needed for write support. If I have not overlooked anything, only the
  parameter stuff is still unimplemented now.

This is all untested, since the FFMpeg Encoder and Writer are still only stubs.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@32013 a95241bf-73f2-0310-859d-f6bbb57e9c96
2009-07-31 10:46:58 +00:00
Stephan Aßmus
377e95304a * This header couldn't actually be used from C code, since C doesn't support
overloading functions.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@32000 a95241bf-73f2-0310-859d-f6bbb57e9c96
2009-07-30 22:10:11 +00:00
Stephan Aßmus
b8316d9f93 Cleanup and preparations for BPrivate::media::MediaWriter, which will soon
exist.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@31983 a95241bf-73f2-0310-859d-f6bbb57e9c96
2009-07-30 17:47:54 +00:00
Stephan Aßmus
ee9408a18d Re-wrote MediaFormats.h header.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@31978 a95241bf-73f2-0310-859d-f6bbb57e9c96
2009-07-30 16:34:06 +00:00
Axel Dörfler
eab2783a36 * Fixed license header to look like our others.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@30990 a95241bf-73f2-0310-859d-f6bbb57e9c96
2009-06-07 21:18:32 +00:00
Stephan Aßmus
b7cf537e50 Added BMediaFile::_UnInit() and implemented the two SetTo() methods.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@30987 a95241bf-73f2-0310-859d-f6bbb57e9c96
2009-06-07 19:43:26 +00:00
Stephan Aßmus
b5ec3e5669 * Coding style clean-up.
* Use std::nothrow and check allocations.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@30986 a95241bf-73f2-0310-859d-f6bbb57e9c96
2009-06-07 19:35:14 +00:00
Axel Dörfler
2ff47e1785 * Fixed bug I introduced when deleting parameters (no more crashing).
* Removed the BParameterWeb::{Start|Stop}Watching() methods again, as the same
  thing can be achieved using the BMediaRoster already (even though it doesn't
  seem to work yet).


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@30058 a95241bf-73f2-0310-859d-f6bbb57e9c96
2009-04-09 09:39:58 +00:00
Axel Dörfler
db15cbbee1 * Added Dano-compatible BParameterWeb::StartWatching()/StopWatching() method
stubs.
* However, without a working Dano at hand, I can't really implement something
  compatible, so I'll postpone this to some later point.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@30030 a95241bf-73f2-0310-859d-f6bbb57e9c96
2009-04-08 14:21:29 +00:00
Axel Dörfler
eced4ba5a3 * Rewrote ParameterWeb.h.
* Adapted and cleaned up ParameterWeb.cpp.
* Fixed some copy&paste bugs in the BTextParameter.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@30029 a95241bf-73f2-0310-859d-f6bbb57e9c96
2009-04-08 14:13:33 +00:00
Michael Lotz
9b9aa75aac * Implement basic support for the BSound parts of BSoundPlayer. Only one sound
at a time is supported and volume as well as start time are not taken into
  account. For reasons I don't feel like investigating right now all the
  BMediaTrack calls in the BTrackReader end up as pure virtual function calls
  though, so it's unusable for now.
* Fix leaking the temporary buffer in BSound.
* Whitespace cleanup.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@29374 a95241bf-73f2-0310-859d-f6bbb57e9c96
2009-03-01 23:22:30 +00:00
Michael Lotz
1b921108a7 Rewrote Sound.h and implemented most of BSound. Completely untested yet as the
BSoundPlayer functionality is yet missing.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@29372 a95241bf-73f2-0310-859d-f6bbb57e9c96
2009-03-01 20:56:19 +00:00
François Revol
3a7f25d039 Add identifier for 64 bit float raw audio format, really just to show we can support it without hacking the API :)
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@26450 a95241bf-73f2-0310-859d-f6bbb57e9c96
2008-07-16 19:06:39 +00:00
Stephan Aßmus
9def3bf783 * Rewrote MediaRoster.h
* Removed appearantly unused satic variables. Hope this does not break
  binary compatibility, going to test.
* There are three more private methods, which could probably be removed
  as well.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@24558 a95241bf-73f2-0310-859d-f6bbb57e9c96
2008-03-24 15:42:58 +00:00
Jérôme Duval
f2e230ca88 fix a bit of gcc4 build
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@22578 a95241bf-73f2-0310-859d-f6bbb57e9c96
2007-10-15 22:35:52 +00:00
Axel Dörfler
f6e4cbb952 * Rewrote BeBuild.h which had "a few" consequences (got rid of all those class
definitions).
* Minor cleanup here and there.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@22577 a95241bf-73f2-0310-859d-f6bbb57e9c96
2007-10-15 20:13:55 +00:00
Marcus Overhagen
1d18292953 Moved creating and destroying of Reader and Decoder plugins into the PluginManager class.
Removed deferred initialization from BMediaDecoder. 


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@21296 a95241bf-73f2-0310-859d-f6bbb57e9c96
2007-06-02 20:00:48 +00:00
François Revol
0ba2462a6d Added a stub BTextParameter as in Dano, I'd need that for ESDSink at least.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@20146 a95241bf-73f2-0310-859d-f6bbb57e9c96
2007-02-16 23:40:49 +00:00
Axel Dörfler
9d00b1d56d * The "no theme available" string is now resized as needed.
* Rewrote header, cleanup.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@19170 a95241bf-73f2-0310-859d-f6bbb57e9c96
2006-11-02 12:54:33 +00:00
Marcus Overhagen
0a00d23f2e Reworked media_format meta data handling.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@17458 a95241bf-73f2-0310-859d-f6bbb57e9c96
2006-05-14 22:51:14 +00:00
Marcus Overhagen
65b73ae4f2 Added a Disconnect() method with simpler parameter list.
Added more error checking to Connect() and Input/Output publishing.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@16625 a95241bf-73f2-0310-859d-f6bbb57e9c96
2006-03-07 12:52:19 +00:00
Ingo Weinhold
2fee50849c GCC 4 fix.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@15490 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-12-11 13:53:26 +00:00
Ingo Weinhold
758b1d0e05 Fixes that make Haiku build with gcc 4. Mainly out of the following
categories:
* Missing includes (like <stdlib.h> and <string.h>).
* Linking against $(TARGET_LIBSTDC++) instead of libstdc++.r4.so.
* Local variables shadowing parameters.
* Default parameters in function definitions (as opposed to function
  declarations).
* All C++ stuff (nothrow, map, set, vector, min, max,...) must be imported
  explicitly from the std:: namespace now.
* "new (sometype)[...]" must read "new sometype[...]", even if sometype is
  something like "const char *".
* __FUNCTION__ is no longer a string literal (but a string expression), i.e.
  'printf(__FUNCTION__ ": ...\n")' is invalid code.
* A type cast results in a non-lvalue. E.g. "(char *)buffer += bytes"
  is an invalid expression.
* "friend class SomeClass" only works when SomeClass is known before.
  Otherwise the an inner class with that name is considered as friend.
  gcc 4 is much pickier about scopes.
* gcc 4 is generally stricter with respect to type conversions in C.



git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@14878 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-11-12 23:27:14 +00:00
Marcus Overhagen
23f34657e1 This fix should prevent TimeSource control thread from using random semaphores,
by no longer using an uninitialized Blocker object.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@13465 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-07-05 21:35:38 +00:00
beveloper
df42a7b539 Massive BSoundPlayer rewrite. Format negotiation and node registering/unregistering fixed.
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@9470 a95241bf-73f2-0310-859d-f6bbb57e9c96
2004-10-24 00:16:27 +00:00
beveloper
d6105cedfa Some BSoundPlayer style changes and bugfixes
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@9461 a95241bf-73f2-0310-859d-f6bbb57e9c96
2004-10-23 17:05:56 +00:00
beveloper
e4d07a3e71 Added some new functions which seem to be required for Xentronics SampleStudio Pro.
Added missing license to implementation files.


git-svn-id: file:///srv/svn/repos/haiku/trunk/current@8590 a95241bf-73f2-0310-859d-f6bbb57e9c96
2004-08-16 12:44:00 +00:00
beveloper
7562d5508a Two additional functions to support gain selection for media files (sound events).
Allows better compatibility with Zeta's preference application.


git-svn-id: file:///srv/svn/repos/haiku/trunk/current@8571 a95241bf-73f2-0310-859d-f6bbb57e9c96
2004-08-15 11:54:17 +00:00
shatty
08ebf37bc6 add AudioFrameSize convenience function to media_format
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@6826 a95241bf-73f2-0310-859d-f6bbb57e9c96
2004-02-29 22:52:22 +00:00
beveloper
bac2b3f15c When the decoder doesn't support the requested format, the raw decoder is utilized
to provide a format conversion to the requested raw format.
Added a few workarounds for applications that don't requst the required format
but instead assume to get a specific one.


git-svn-id: file:///srv/svn/repos/haiku/trunk/current@6815 a95241bf-73f2-0310-859d-f6bbb57e9c96
2004-02-29 18:53:57 +00:00
shatty
faca9355a7 fixed GetNextChunk not connected bug
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@6671 a95241bf-73f2-0310-859d-f6bbb57e9c96
2004-02-22 06:12:45 +00:00
beveloper
546c34ca7b removed OGG family and meta format description
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@6306 a95241bf-73f2-0310-859d-f6bbb57e9c96
2004-01-25 22:28:19 +00:00
shatty
bacf4b5e20 meta_data back to void *.. "Be knows best"
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@6258 a95241bf-73f2-0310-859d-f6bbb57e9c96
2004-01-24 22:17:21 +00:00
Axel Dörfler
2a93bc9819 We don't need no BLocker anymore, updated _reserved[] to not change the size
of the class. Renamed fIndex to fIteratorIndex.
Some minor style changes.


git-svn-id: file:///srv/svn/repos/haiku/trunk/current@6242 a95241bf-73f2-0310-859d-f6bbb57e9c96
2004-01-23 07:30:51 +00:00
beveloper
b1cf2fd441 cache info from constructor and do init later
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@6151 a95241bf-73f2-0310-859d-f6bbb57e9c96
2004-01-19 21:32:19 +00:00
shatty
46e6b9b766 change private meta_data field to const void * to agree with SetMetaData and MetaData member functions.
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@6145 a95241bf-73f2-0310-859d-f6bbb57e9c96
2004-01-19 19:09:07 +00:00
shatty
e701972356 use private member function for AttachToDecoder, discard unused private static
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@6144 a95241bf-73f2-0310-859d-f6bbb57e9c96
2004-01-19 19:08:25 +00:00
shatty
b4057dc9eb implement MediaDecoder using added ChunkProvider
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@6136 a95241bf-73f2-0310-859d-f6bbb57e9c96
2004-01-18 07:37:21 +00:00
shatty
ae0ab690bd add two pointers, remove 2 reserved uint32s
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@5796 a95241bf-73f2-0310-859d-f6bbb57e9c96
2003-12-29 08:57:10 +00:00
beveloper
b1a94814dd fixed a couple of issues with id3attr
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@5737 a95241bf-73f2-0310-859d-f6bbb57e9c96
2003-12-23 00:56:35 +00:00
beveloper
046f31f91f update to the codec api, docoder assignment is now handled in the server
multiple reader add-ons are probed to recognize a media file
FormatManager does the translation from media_format to media_description


git-svn-id: file:///srv/svn/repos/haiku/trunk/current@5667 a95241bf-73f2-0310-859d-f6bbb57e9c96
2003-12-14 19:23:16 +00:00
beveloper
2530523976 codec output format negotiation has been moved into NegotiateOutputFormat,
Setup is now only called once


git-svn-id: file:///srv/svn/repos/haiku/trunk/current@5596 a95241bf-73f2-0310-859d-f6bbb57e9c96
2003-12-06 23:21:23 +00:00
beveloper
572e60a481 some more changes, no longer using BMediaFormats
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@5522 a95241bf-73f2-0310-859d-f6bbb57e9c96
2003-12-01 22:20:59 +00:00
beveloper
da87cefeb1 added the new media_meta_description and changed codec API to use it
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@5494 a95241bf-73f2-0310-859d-f6bbb57e9c96
2003-11-28 22:34:14 +00:00
beveloper
d859148201 integration of codec API into BMediaFile and BMediaTrack
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@5468 a95241bf-73f2-0310-859d-f6bbb57e9c96
2003-11-23 22:19:21 +00:00
beveloper
5ccadc29e6 added some more MPEG descriptions
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@5425 a95241bf-73f2-0310-859d-f6bbb57e9c96
2003-11-21 15:27:20 +00:00
beveloper
d41287a6da Added BMediaRosterEx as friend class
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@4533 a95241bf-73f2-0310-859d-f6bbb57e9c96
2003-09-07 22:24:50 +00:00
beveloper
d96a1bd846 removed non-needed map include file
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@3849 a95241bf-73f2-0310-859d-f6bbb57e9c96
2003-07-04 23:27:26 +00:00
beveloper
5657491aac changed format into ioFormat to indicate that this is a input and output parameter
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@3576 a95241bf-73f2-0310-859d-f6bbb57e9c96
2003-06-19 14:48:52 +00:00