Searched +hist:9 +hist:bedd42c (Results 1 - 10 of 10) sorted by relevance

/haiku/src/kits/media/
H A DSharedBufferList.cppdiff 9c9a810c Fri Feb 14 14:03:32 MST 2020 Jérôme Duval <jerome.duval@gmail.com> Media Kit: BBufferCache: if not reclaimed, only mark the buffer for deletion

hrev53379 clears the buffer cache for disconnected clients, and also delete buffers.
This is too early (see #15263, media_addon_server crash), and should only happen
after the buffer is recycled. This can be resolved by abusing the fFlags field of
BBuffer to mark the buffer for deletion, and mark the buffer to be reclaimed.
Some BBuffers don't reside in the SharedBufferList, so we have to mark them as to
be reclaimed. For those in the SharedBufferList, call a new RemoveBuffer(), which
can check whether the buffer is still to be reclaimed. For reclaimed BBuffers,
delete them right away, others can be marked for deletion.
fixes #15606 #15263, possibly #15433

Change-Id: I66e94138e7e10a40d4c48e2ac042f816c79f5aab
Reviewed-on: https://review.haiku-os.org/c/haiku/+/2245
Reviewed-by: Adrien Destugues <pulkomandy@gmail.com>
Reviewed-by: X512 <danger_mail@list.ru>
Reviewed-by: Ryan Leavengood <leavengood@gmail.com>
diff 9dec2310 Sat Dec 05 04:11:28 MST 2009 Axel Dörfler <axeld@pinc-software.de> Sorry for this large commit in advance; it's not really possible to divide this
into smaller parts:

media_addon_server:
* Removed (broken) use of (broken and inefficient) home-brewn Map, and List
classes. This also fixes a crash on shutdown when used with the malloc_debug
implementation. It's using stl::vector, and stl::map now instead.

_shared_buffer_list:
* Renamed _shared_buffer_list to SharedBufferList, and put it into the BPrivate
namespace. Also, made a class out of it.
* Separated shared buffer list creation from cloning.
* Enlarged maximum number of buffers to something that is not that evil, but
actually uses the space it has (ie. is a useful multiple of
shared_buffer_info that fills a multiple of B_PAGE_SIZE as much as possible).
* No longer drops into the debugger if the
* The list that is currently used is very inefficient for the features it
provides though (no change there).

_buffer_id_cache:
* Renamed to BufferCache, and put it into the private namespace
* It now deletes its buffers on deletion; since the BBufferConsumer will be
gone, too, at this point, there is little chance that there are still buffers
in use.
* Also, it's now using std::map instead of the (see above) Map class.

BBuffer:
* Got rid of the fBufferID member.

Misc.:
* Got rid of the global "team" variable; the media kit is now using the
private app kit's current_team() now.
* Added a lot of missing error checks (mostly memory allocations).
* Renamed fields like "flavorid" to flavor_id, renamed "dfi_*" fields to
something more detailed.
* Moved ServerInterface.h from src/servers/media/ to headers/private/media.
* Notifications.h was not self contained.
* Added missing licenses.
* Lots of cleanups, and coding style fixes.

What this doesn't fix:
* Bug #4954 which started all this (this comes next, though)
* Deinitialization is broken, as the PortPool is uninitialized too early, and
still used afterwards.
* The strange add-on monitoring code in the media_addon_server


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@34500 a95241bf-73f2-0310-859d-f6bbb57e9c96
diff 9bedd42c Thu May 29 11:28:11 MDT 2003 beveloper <beveloper@nowhere.fake> many fixes to improve timing


git-svn-id: file:///srv/svn/repos/haiku/trunk/current@3386 a95241bf-73f2-0310-859d-f6bbb57e9c96
diff 9bedd42c Thu May 29 11:28:11 MDT 2003 beveloper <beveloper@nowhere.fake> many fixes to improve timing


git-svn-id: file:///srv/svn/repos/haiku/trunk/current@3386 a95241bf-73f2-0310-859d-f6bbb57e9c96
diff 9dec23104287e2fd592cc14148b43fb28a6e1d8e Sat Dec 05 04:11:28 MST 2009 Axel Dörfler <axeld@pinc-software.de> Sorry for this large commit in advance; it's not really possible to divide this
into smaller parts:

media_addon_server:
* Removed (broken) use of (broken and inefficient) home-brewn Map, and List
classes. This also fixes a crash on shutdown when used with the malloc_debug
implementation. It's using stl::vector, and stl::map now instead.

_shared_buffer_list:
* Renamed _shared_buffer_list to SharedBufferList, and put it into the BPrivate
namespace. Also, made a class out of it.
* Separated shared buffer list creation from cloning.
* Enlarged maximum number of buffers to something that is not that evil, but
actually uses the space it has (ie. is a useful multiple of
shared_buffer_info that fills a multiple of B_PAGE_SIZE as much as possible).
* No longer drops into the debugger if the
* The list that is currently used is very inefficient for the features it
provides though (no change there).

_buffer_id_cache:
* Renamed to BufferCache, and put it into the private namespace
* It now deletes its buffers on deletion; since the BBufferConsumer will be
gone, too, at this point, there is little chance that there are still buffers
in use.
* Also, it's now using std::map instead of the (see above) Map class.

BBuffer:
* Got rid of the fBufferID member.

Misc.:
* Got rid of the global "team" variable; the media kit is now using the
private app kit's current_team() now.
* Added a lot of missing error checks (mostly memory allocations).
* Renamed fields like "flavorid" to flavor_id, renamed "dfi_*" fields to
something more detailed.
* Moved ServerInterface.h from src/servers/media/ to headers/private/media.
* Notifications.h was not self contained.
* Added missing licenses.
* Lots of cleanups, and coding style fixes.

What this doesn't fix:
* Bug #4954 which started all this (this comes next, though)
* Deinitialization is broken, as the PortPool is uninitialized too early, and
still used afterwards.
* The strange add-on monitoring code in the media_addon_server


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@34500 a95241bf-73f2-0310-859d-f6bbb57e9c96
diff 9bedd42cd1e0fdb44e39be7ef4f3c76786d59b50 Thu May 29 11:28:11 MDT 2003 beveloper <beveloper@nowhere.fake> many fixes to improve timing


git-svn-id: file:///srv/svn/repos/haiku/trunk/current@3386 a95241bf-73f2-0310-859d-f6bbb57e9c96
H A DTimedEventQueuePrivate.cppdiff 9bedd42c Thu May 29 11:28:11 MDT 2003 beveloper <beveloper@nowhere.fake> many fixes to improve timing


git-svn-id: file:///srv/svn/repos/haiku/trunk/current@3386 a95241bf-73f2-0310-859d-f6bbb57e9c96
diff 9bedd42c Thu May 29 11:28:11 MDT 2003 beveloper <beveloper@nowhere.fake> many fixes to improve timing


git-svn-id: file:///srv/svn/repos/haiku/trunk/current@3386 a95241bf-73f2-0310-859d-f6bbb57e9c96
diff 9bedd42cd1e0fdb44e39be7ef4f3c76786d59b50 Thu May 29 11:28:11 MDT 2003 beveloper <beveloper@nowhere.fake> many fixes to improve timing


git-svn-id: file:///srv/svn/repos/haiku/trunk/current@3386 a95241bf-73f2-0310-859d-f6bbb57e9c96
H A DSoundPlayer.cppdiff 9b9aa75a Sun Mar 01 16:22:30 MST 2009 Michael Lotz <mmlr@mlotz.ch> * 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
diff 9bedd42c Thu May 29 11:28:11 MDT 2003 beveloper <beveloper@nowhere.fake> many fixes to improve timing


git-svn-id: file:///srv/svn/repos/haiku/trunk/current@3386 a95241bf-73f2-0310-859d-f6bbb57e9c96
diff 9bedd42c Thu May 29 11:28:11 MDT 2003 beveloper <beveloper@nowhere.fake> many fixes to improve timing


git-svn-id: file:///srv/svn/repos/haiku/trunk/current@3386 a95241bf-73f2-0310-859d-f6bbb57e9c96
diff 9b9aa75aac888949b014e97e054ed9d76483fb64 Sun Mar 01 16:22:30 MST 2009 Michael Lotz <mmlr@mlotz.ch> * 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
diff 9bedd42cd1e0fdb44e39be7ef4f3c76786d59b50 Thu May 29 11:28:11 MDT 2003 beveloper <beveloper@nowhere.fake> many fixes to improve timing


git-svn-id: file:///srv/svn/repos/haiku/trunk/current@3386 a95241bf-73f2-0310-859d-f6bbb57e9c96
H A DMediaEventLooper.cppdiff 9bedd42c Thu May 29 11:28:11 MDT 2003 beveloper <beveloper@nowhere.fake> many fixes to improve timing


git-svn-id: file:///srv/svn/repos/haiku/trunk/current@3386 a95241bf-73f2-0310-859d-f6bbb57e9c96
diff 9bedd42c Thu May 29 11:28:11 MDT 2003 beveloper <beveloper@nowhere.fake> many fixes to improve timing


git-svn-id: file:///srv/svn/repos/haiku/trunk/current@3386 a95241bf-73f2-0310-859d-f6bbb57e9c96
diff 9bedd42cd1e0fdb44e39be7ef4f3c76786d59b50 Thu May 29 11:28:11 MDT 2003 beveloper <beveloper@nowhere.fake> many fixes to improve timing


git-svn-id: file:///srv/svn/repos/haiku/trunk/current@3386 a95241bf-73f2-0310-859d-f6bbb57e9c96
H A DSoundPlayNode.cppdiff 9bedd42c Thu May 29 11:28:11 MDT 2003 beveloper <beveloper@nowhere.fake> many fixes to improve timing


git-svn-id: file:///srv/svn/repos/haiku/trunk/current@3386 a95241bf-73f2-0310-859d-f6bbb57e9c96
diff 9bedd42c Thu May 29 11:28:11 MDT 2003 beveloper <beveloper@nowhere.fake> many fixes to improve timing


git-svn-id: file:///srv/svn/repos/haiku/trunk/current@3386 a95241bf-73f2-0310-859d-f6bbb57e9c96
diff 9bedd42cd1e0fdb44e39be7ef4f3c76786d59b50 Thu May 29 11:28:11 MDT 2003 beveloper <beveloper@nowhere.fake> many fixes to improve timing


git-svn-id: file:///srv/svn/repos/haiku/trunk/current@3386 a95241bf-73f2-0310-859d-f6bbb57e9c96
H A DMediaDefs.cppdiff 9bedd42c Thu May 29 11:28:11 MDT 2003 beveloper <beveloper@nowhere.fake> many fixes to improve timing


git-svn-id: file:///srv/svn/repos/haiku/trunk/current@3386 a95241bf-73f2-0310-859d-f6bbb57e9c96
diff 9bedd42c Thu May 29 11:28:11 MDT 2003 beveloper <beveloper@nowhere.fake> many fixes to improve timing


git-svn-id: file:///srv/svn/repos/haiku/trunk/current@3386 a95241bf-73f2-0310-859d-f6bbb57e9c96
diff 9bedd42cd1e0fdb44e39be7ef4f3c76786d59b50 Thu May 29 11:28:11 MDT 2003 beveloper <beveloper@nowhere.fake> many fixes to improve timing


git-svn-id: file:///srv/svn/repos/haiku/trunk/current@3386 a95241bf-73f2-0310-859d-f6bbb57e9c96
H A DMediaRoster.cppdiff 9c3b4706 Wed Dec 09 09:22:24 MST 2009 Axel Dörfler <axeld@pinc-software.de> * Cleaned up the node manager, got rid of its use of Map, and List.
* Fixed at least two reference counting problems, but nodes from killed teams
still remain alive (will look into this at a later point).
* GetLiveNodes() is now using transfer_area() as well.
* Made all sizes in the SendTo*() and Query*() functions size_t.
* Replaced reinterpret_casts with static_casts when casting void pointers.
* Ordered the request/reply structures by target.
* Tried to consolidate the use of add_on vs. addon.
* More cleanup.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@34591 a95241bf-73f2-0310-859d-f6bbb57e9c96
diff 9dec2310 Sat Dec 05 04:11:28 MST 2009 Axel Dörfler <axeld@pinc-software.de> Sorry for this large commit in advance; it's not really possible to divide this
into smaller parts:

media_addon_server:
* Removed (broken) use of (broken and inefficient) home-brewn Map, and List
classes. This also fixes a crash on shutdown when used with the malloc_debug
implementation. It's using stl::vector, and stl::map now instead.

_shared_buffer_list:
* Renamed _shared_buffer_list to SharedBufferList, and put it into the BPrivate
namespace. Also, made a class out of it.
* Separated shared buffer list creation from cloning.
* Enlarged maximum number of buffers to something that is not that evil, but
actually uses the space it has (ie. is a useful multiple of
shared_buffer_info that fills a multiple of B_PAGE_SIZE as much as possible).
* No longer drops into the debugger if the
* The list that is currently used is very inefficient for the features it
provides though (no change there).

_buffer_id_cache:
* Renamed to BufferCache, and put it into the private namespace
* It now deletes its buffers on deletion; since the BBufferConsumer will be
gone, too, at this point, there is little chance that there are still buffers
in use.
* Also, it's now using std::map instead of the (see above) Map class.

BBuffer:
* Got rid of the fBufferID member.

Misc.:
* Got rid of the global "team" variable; the media kit is now using the
private app kit's current_team() now.
* Added a lot of missing error checks (mostly memory allocations).
* Renamed fields like "flavorid" to flavor_id, renamed "dfi_*" fields to
something more detailed.
* Moved ServerInterface.h from src/servers/media/ to headers/private/media.
* Notifications.h was not self contained.
* Added missing licenses.
* Lots of cleanups, and coding style fixes.

What this doesn't fix:
* Bug #4954 which started all this (this comes next, though)
* Deinitialization is broken, as the PortPool is uninitialized too early, and
still used afterwards.
* The strange add-on monitoring code in the media_addon_server


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@34500 a95241bf-73f2-0310-859d-f6bbb57e9c96
diff 9def3bf7 Mon Mar 24 09:42:58 MDT 2008 Stephan Aßmus <superstippi@gmx.de> * 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
diff 9bedd42c Thu May 29 11:28:11 MDT 2003 beveloper <beveloper@nowhere.fake> many fixes to improve timing


git-svn-id: file:///srv/svn/repos/haiku/trunk/current@3386 a95241bf-73f2-0310-859d-f6bbb57e9c96
diff 9bedd42c Thu May 29 11:28:11 MDT 2003 beveloper <beveloper@nowhere.fake> many fixes to improve timing


git-svn-id: file:///srv/svn/repos/haiku/trunk/current@3386 a95241bf-73f2-0310-859d-f6bbb57e9c96
diff 9e9417d2 Sat Oct 05 07:02:26 MDT 2002 beveloper <beveloper@nowhere.fake> more BMediaRoster functionality


git-svn-id: file:///srv/svn/repos/haiku/trunk/current@1381 a95241bf-73f2-0310-859d-f6bbb57e9c96
diff 9c3b4706dd3ed8f9896031973852735223be485c Wed Dec 09 09:22:24 MST 2009 Axel Dörfler <axeld@pinc-software.de> * Cleaned up the node manager, got rid of its use of Map, and List.
* Fixed at least two reference counting problems, but nodes from killed teams
still remain alive (will look into this at a later point).
* GetLiveNodes() is now using transfer_area() as well.
* Made all sizes in the SendTo*() and Query*() functions size_t.
* Replaced reinterpret_casts with static_casts when casting void pointers.
* Ordered the request/reply structures by target.
* Tried to consolidate the use of add_on vs. addon.
* More cleanup.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@34591 a95241bf-73f2-0310-859d-f6bbb57e9c96
diff 9dec23104287e2fd592cc14148b43fb28a6e1d8e Sat Dec 05 04:11:28 MST 2009 Axel Dörfler <axeld@pinc-software.de> Sorry for this large commit in advance; it's not really possible to divide this
into smaller parts:

media_addon_server:
* Removed (broken) use of (broken and inefficient) home-brewn Map, and List
classes. This also fixes a crash on shutdown when used with the malloc_debug
implementation. It's using stl::vector, and stl::map now instead.

_shared_buffer_list:
* Renamed _shared_buffer_list to SharedBufferList, and put it into the BPrivate
namespace. Also, made a class out of it.
* Separated shared buffer list creation from cloning.
* Enlarged maximum number of buffers to something that is not that evil, but
actually uses the space it has (ie. is a useful multiple of
shared_buffer_info that fills a multiple of B_PAGE_SIZE as much as possible).
* No longer drops into the debugger if the
* The list that is currently used is very inefficient for the features it
provides though (no change there).

_buffer_id_cache:
* Renamed to BufferCache, and put it into the private namespace
* It now deletes its buffers on deletion; since the BBufferConsumer will be
gone, too, at this point, there is little chance that there are still buffers
in use.
* Also, it's now using std::map instead of the (see above) Map class.

BBuffer:
* Got rid of the fBufferID member.

Misc.:
* Got rid of the global "team" variable; the media kit is now using the
private app kit's current_team() now.
* Added a lot of missing error checks (mostly memory allocations).
* Renamed fields like "flavorid" to flavor_id, renamed "dfi_*" fields to
something more detailed.
* Moved ServerInterface.h from src/servers/media/ to headers/private/media.
* Notifications.h was not self contained.
* Added missing licenses.
* Lots of cleanups, and coding style fixes.

What this doesn't fix:
* Bug #4954 which started all this (this comes next, though)
* Deinitialization is broken, as the PortPool is uninitialized too early, and
still used afterwards.
* The strange add-on monitoring code in the media_addon_server


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@34500 a95241bf-73f2-0310-859d-f6bbb57e9c96
diff 9def3bf783b77ea0cf7507b5069f2ad80d0f33f7 Mon Mar 24 09:42:58 MDT 2008 Stephan Aßmus <superstippi@gmx.de> * 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
diff 9bedd42cd1e0fdb44e39be7ef4f3c76786d59b50 Thu May 29 11:28:11 MDT 2003 beveloper <beveloper@nowhere.fake> many fixes to improve timing


git-svn-id: file:///srv/svn/repos/haiku/trunk/current@3386 a95241bf-73f2-0310-859d-f6bbb57e9c96
/haiku/src/servers/media/
H A DDefaultManager.cppdiff 9c3b4706 Wed Dec 09 09:22:24 MST 2009 Axel Dörfler <axeld@pinc-software.de> * Cleaned up the node manager, got rid of its use of Map, and List.
* Fixed at least two reference counting problems, but nodes from killed teams
still remain alive (will look into this at a later point).
* GetLiveNodes() is now using transfer_area() as well.
* Made all sizes in the SendTo*() and Query*() functions size_t.
* Replaced reinterpret_casts with static_casts when casting void pointers.
* Ordered the request/reply structures by target.
* Tried to consolidate the use of add_on vs. addon.
* More cleanup.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@34591 a95241bf-73f2-0310-859d-f6bbb57e9c96
diff 9dec2310 Sat Dec 05 04:11:28 MST 2009 Axel Dörfler <axeld@pinc-software.de> Sorry for this large commit in advance; it's not really possible to divide this
into smaller parts:

media_addon_server:
* Removed (broken) use of (broken and inefficient) home-brewn Map, and List
classes. This also fixes a crash on shutdown when used with the malloc_debug
implementation. It's using stl::vector, and stl::map now instead.

_shared_buffer_list:
* Renamed _shared_buffer_list to SharedBufferList, and put it into the BPrivate
namespace. Also, made a class out of it.
* Separated shared buffer list creation from cloning.
* Enlarged maximum number of buffers to something that is not that evil, but
actually uses the space it has (ie. is a useful multiple of
shared_buffer_info that fills a multiple of B_PAGE_SIZE as much as possible).
* No longer drops into the debugger if the
* The list that is currently used is very inefficient for the features it
provides though (no change there).

_buffer_id_cache:
* Renamed to BufferCache, and put it into the private namespace
* It now deletes its buffers on deletion; since the BBufferConsumer will be
gone, too, at this point, there is little chance that there are still buffers
in use.
* Also, it's now using std::map instead of the (see above) Map class.

BBuffer:
* Got rid of the fBufferID member.

Misc.:
* Got rid of the global "team" variable; the media kit is now using the
private app kit's current_team() now.
* Added a lot of missing error checks (mostly memory allocations).
* Renamed fields like "flavorid" to flavor_id, renamed "dfi_*" fields to
something more detailed.
* Moved ServerInterface.h from src/servers/media/ to headers/private/media.
* Notifications.h was not self contained.
* Added missing licenses.
* Lots of cleanups, and coding style fixes.

What this doesn't fix:
* Bug #4954 which started all this (this comes next, though)
* Deinitialization is broken, as the PortPool is uninitialized too early, and
still used afterwards.
* The strange add-on monitoring code in the media_addon_server


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@34500 a95241bf-73f2-0310-859d-f6bbb57e9c96
diff 9bedd42c Thu May 29 11:28:11 MDT 2003 beveloper <beveloper@nowhere.fake> many fixes to improve timing


git-svn-id: file:///srv/svn/repos/haiku/trunk/current@3386 a95241bf-73f2-0310-859d-f6bbb57e9c96
diff 9bedd42c Thu May 29 11:28:11 MDT 2003 beveloper <beveloper@nowhere.fake> many fixes to improve timing


git-svn-id: file:///srv/svn/repos/haiku/trunk/current@3386 a95241bf-73f2-0310-859d-f6bbb57e9c96
diff 9c3b4706dd3ed8f9896031973852735223be485c Wed Dec 09 09:22:24 MST 2009 Axel Dörfler <axeld@pinc-software.de> * Cleaned up the node manager, got rid of its use of Map, and List.
* Fixed at least two reference counting problems, but nodes from killed teams
still remain alive (will look into this at a later point).
* GetLiveNodes() is now using transfer_area() as well.
* Made all sizes in the SendTo*() and Query*() functions size_t.
* Replaced reinterpret_casts with static_casts when casting void pointers.
* Ordered the request/reply structures by target.
* Tried to consolidate the use of add_on vs. addon.
* More cleanup.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@34591 a95241bf-73f2-0310-859d-f6bbb57e9c96
diff 9dec23104287e2fd592cc14148b43fb28a6e1d8e Sat Dec 05 04:11:28 MST 2009 Axel Dörfler <axeld@pinc-software.de> Sorry for this large commit in advance; it's not really possible to divide this
into smaller parts:

media_addon_server:
* Removed (broken) use of (broken and inefficient) home-brewn Map, and List
classes. This also fixes a crash on shutdown when used with the malloc_debug
implementation. It's using stl::vector, and stl::map now instead.

_shared_buffer_list:
* Renamed _shared_buffer_list to SharedBufferList, and put it into the BPrivate
namespace. Also, made a class out of it.
* Separated shared buffer list creation from cloning.
* Enlarged maximum number of buffers to something that is not that evil, but
actually uses the space it has (ie. is a useful multiple of
shared_buffer_info that fills a multiple of B_PAGE_SIZE as much as possible).
* No longer drops into the debugger if the
* The list that is currently used is very inefficient for the features it
provides though (no change there).

_buffer_id_cache:
* Renamed to BufferCache, and put it into the private namespace
* It now deletes its buffers on deletion; since the BBufferConsumer will be
gone, too, at this point, there is little chance that there are still buffers
in use.
* Also, it's now using std::map instead of the (see above) Map class.

BBuffer:
* Got rid of the fBufferID member.

Misc.:
* Got rid of the global "team" variable; the media kit is now using the
private app kit's current_team() now.
* Added a lot of missing error checks (mostly memory allocations).
* Renamed fields like "flavorid" to flavor_id, renamed "dfi_*" fields to
something more detailed.
* Moved ServerInterface.h from src/servers/media/ to headers/private/media.
* Notifications.h was not self contained.
* Added missing licenses.
* Lots of cleanups, and coding style fixes.

What this doesn't fix:
* Bug #4954 which started all this (this comes next, though)
* Deinitialization is broken, as the PortPool is uninitialized too early, and
still used afterwards.
* The strange add-on monitoring code in the media_addon_server


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@34500 a95241bf-73f2-0310-859d-f6bbb57e9c96
diff 9bedd42cd1e0fdb44e39be7ef4f3c76786d59b50 Thu May 29 11:28:11 MDT 2003 beveloper <beveloper@nowhere.fake> many fixes to improve timing


git-svn-id: file:///srv/svn/repos/haiku/trunk/current@3386 a95241bf-73f2-0310-859d-f6bbb57e9c96
/haiku/src/add-ons/media/media-add-ons/multi_audio/
H A DMultiAudioNode.cppdiff 9c3ad4fb Wed Dec 16 13:13:14 MST 2009 Ingo Weinhold <ingo_weinhold@gmx.de> * Use TimeComputer to get smoother performance times.
* SetParameterValue(): Don't do anything, if the new output frequency value
is the same as before. This avoids hickups when switching between the pages
in the Media preflet.
* _FillNextBuffer(): Compare BBuffer and stream buffer size. They might
differ directly after setting another output frequency, which could cause
a crash.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@34683 a95241bf-73f2-0310-859d-f6bbb57e9c96
diff 9bedd42c Thu May 29 11:28:11 MDT 2003 beveloper <beveloper@nowhere.fake> many fixes to improve timing


git-svn-id: file:///srv/svn/repos/haiku/trunk/current@3386 a95241bf-73f2-0310-859d-f6bbb57e9c96
diff 9bedd42c Thu May 29 11:28:11 MDT 2003 beveloper <beveloper@nowhere.fake> many fixes to improve timing


git-svn-id: file:///srv/svn/repos/haiku/trunk/current@3386 a95241bf-73f2-0310-859d-f6bbb57e9c96
diff 9c3ad4fbb0ec72806265552b200305f851aff5d3 Wed Dec 16 13:13:14 MST 2009 Ingo Weinhold <ingo_weinhold@gmx.de> * Use TimeComputer to get smoother performance times.
* SetParameterValue(): Don't do anything, if the new output frequency value
is the same as before. This avoids hickups when switching between the pages
in the Media preflet.
* _FillNextBuffer(): Compare BBuffer and stream buffer size. They might
differ directly after setting another output frequency, which could cause
a crash.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@34683 a95241bf-73f2-0310-859d-f6bbb57e9c96
diff 9bedd42cd1e0fdb44e39be7ef4f3c76786d59b50 Thu May 29 11:28:11 MDT 2003 beveloper <beveloper@nowhere.fake> many fixes to improve timing


git-svn-id: file:///srv/svn/repos/haiku/trunk/current@3386 a95241bf-73f2-0310-859d-f6bbb57e9c96
/haiku/src/add-ons/media/media-add-ons/mixer/
H A DAudioMixer.cppdiff 9c5b691f Sun May 30 14:09:07 MDT 2004 shatty <shatty@nowhere.fake> workaround for crashing bug in RealPlayer. specialize the frame_rate when Connected gets called with a frame rate of 0.


git-svn-id: file:///srv/svn/repos/haiku/trunk/current@7690 a95241bf-73f2-0310-859d-f6bbb57e9c96
diff 9a32a037 Thu Jul 03 18:09:20 MDT 2003 beveloper <beveloper@nowhere.fake> this is really annoying


git-svn-id: file:///srv/svn/repos/haiku/trunk/current@3824 a95241bf-73f2-0310-859d-f6bbb57e9c96
diff 9c3be6a5 Thu Jul 03 16:01:27 MDT 2003 beveloper <beveloper@nowhere.fake> Fixed some debug macros.
Cleanup of MixerInput class.
Implemented output destination mapping controls.


git-svn-id: file:///srv/svn/repos/haiku/trunk/current@3819 a95241bf-73f2-0310-859d-f6bbb57e9c96
diff 9bedd42c Thu May 29 11:28:11 MDT 2003 beveloper <beveloper@nowhere.fake> many fixes to improve timing


git-svn-id: file:///srv/svn/repos/haiku/trunk/current@3386 a95241bf-73f2-0310-859d-f6bbb57e9c96
diff 9bedd42c Thu May 29 11:28:11 MDT 2003 beveloper <beveloper@nowhere.fake> many fixes to improve timing


git-svn-id: file:///srv/svn/repos/haiku/trunk/current@3386 a95241bf-73f2-0310-859d-f6bbb57e9c96
diff 9c5b691f2296016a77224c4a6cab2eb4fefd7baf Sun May 30 14:09:07 MDT 2004 shatty <shatty@nowhere.fake> workaround for crashing bug in RealPlayer. specialize the frame_rate when Connected gets called with a frame rate of 0.


git-svn-id: file:///srv/svn/repos/haiku/trunk/current@7690 a95241bf-73f2-0310-859d-f6bbb57e9c96
diff 9a32a037e5b3394b3176dc7abd8fb633a9e3141d Thu Jul 03 18:09:20 MDT 2003 beveloper <beveloper@nowhere.fake> this is really annoying


git-svn-id: file:///srv/svn/repos/haiku/trunk/current@3824 a95241bf-73f2-0310-859d-f6bbb57e9c96
diff 9c3be6a55723d8024dc868f2e7119496f26295c5 Thu Jul 03 16:01:27 MDT 2003 beveloper <beveloper@nowhere.fake> Fixed some debug macros.
Cleanup of MixerInput class.
Implemented output destination mapping controls.


git-svn-id: file:///srv/svn/repos/haiku/trunk/current@3819 a95241bf-73f2-0310-859d-f6bbb57e9c96
diff 9bedd42cd1e0fdb44e39be7ef4f3c76786d59b50 Thu May 29 11:28:11 MDT 2003 beveloper <beveloper@nowhere.fake> many fixes to improve timing


git-svn-id: file:///srv/svn/repos/haiku/trunk/current@3386 a95241bf-73f2-0310-859d-f6bbb57e9c96

Completed in 297 milliseconds