* 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
the DefaultDeleter is not the only situation in which the instance might
be deleted, a client app can also call Quit() on the BMediaRoster instance.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@24556 a95241bf-73f2-0310-859d-f6bbb57e9c96
it just means the port has been deleted while the node was waiting, like
when a program quits.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@24502 a95241bf-73f2-0310-859d-f6bbb57e9c96
according to coding style guide.
* Print the error string for read_port_etc() instead of the error code.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@24501 a95241bf-73f2-0310-859d-f6bbb57e9c96
node was instantiated by an application, therefor it is not an error.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@24500 a95241bf-73f2-0310-859d-f6bbb57e9c96
but operates "read-only".
* Added FindKeyFrame() method to ReaderPlugin, see above.
* Reformated ReaderPlugin header. Added const qualifier to Source() method.
* Small cleanups in BMediaTrack::SeekToTime() and SeekToFrame(). Added TODOs
with regards to "seeking" in decoders, wich should IMHO be revised. (Codecs
cannot seek in the stream, they only get fed chunk data. The only thing they
can do is reset themselves in preparation for a discontinuity of the chunk
data...)
* Implemented BMediaTrack::FindKeyframeByXX() methods via the new
MediaExtractor::FindKeyFrame() method.
* Implemented Seek() and FindKeyFrame() methods in the Reader base class,
returning B_NOT_SUPPORTED. I think this makes sense and also I don't have
to adapt all existing Reader plugins for the new FindKeyFrame() call. :-)
* Implemeneted FindKeyFrame() in the avi_reader. The OpenDMLFile class
gets Seek() extended for a "read-only" mode. Currently the implementation
is broken (as before) with regards to keyframes. These were ignored before
and I have not changed them to actually support the seek flags with regards
to keyframes. That's the interesting TODO...
* Some reformatting here and there in avi_reader code, sorry for the mixup.
The only actual change is the support for the read-only flag to Seek().
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@24495 a95241bf-73f2-0310-859d-f6bbb57e9c96
modules, I left the one from MediaExtractor::CreateDecoder, since it also
mentions the stream index.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@24491 a95241bf-73f2-0310-859d-f6bbb57e9c96
* Fixed all but one compiler warnings in libmedia.so.
* Truncated lines to 80 char width where I looked at code.
* Turned printf()s into TRACE/ERROR calls in MediaExtractor.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@24478 a95241bf-73f2-0310-859d-f6bbb57e9c96
is 0, in which case it is almost save to assume it is a keyframe. Added
TODO though.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@24474 a95241bf-73f2-0310-859d-f6bbb57e9c96
* Turn off tracing in the Media Kit.
* Notify of unimplemented functions regardless of tracing.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@24473 a95241bf-73f2-0310-859d-f6bbb57e9c96
* fTrackList was deleted with delete, but needed delete[].
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@24472 a95241bf-73f2-0310-859d-f6bbb57e9c96
Check for memory allocation errors.
Added limit to maximum flavor format count (300).
No longer crashes when out_format_count is invalid for B_BUFFER_CONSUMER,
or in_format_count is invalid for B_BUFFER_PRODUCER.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@24366 a95241bf-73f2-0310-859d-f6bbb57e9c96
* The BMediaTheme now uses B_WIDTH_FROM_LABEL for tabs in tabviews,
this makes tabs as wide as they need to be.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@23868 a95241bf-73f2-0310-859d-f6bbb57e9c96
* BTimeSource now checks if it is about to add itself as a slave node
and refuses to.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@23867 a95241bf-73f2-0310-859d-f6bbb57e9c96
* fixes the content inside the tabview in the Media preflet spanning over
the wrong area (wrong insets)
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@23338 a95241bf-73f2-0310-859d-f6bbb57e9c96
HaikuBuildCompatibily.h exposes INT64_MAX based on limits.h
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@18900 a95241bf-73f2-0310-859d-f6bbb57e9c96
I don't know why this never happened on R5. Haiku close_port()
works as documented in BeBook, but might possibly different in R5.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@16629 a95241bf-73f2-0310-859d-f6bbb57e9c96
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
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
We now use "const" for the chunk buffer pointer returned by GetNextChunk,
because the buffer is not supposed to be modified by the codec.
size_t is used for the size where applicable. This matches BMediaDecoder.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@13361 a95241bf-73f2-0310-859d-f6bbb57e9c96
Using the unmodified BSD license without advertising clause.
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@9817 a95241bf-73f2-0310-859d-f6bbb57e9c96
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
views - that makes all sliders accessible again.
Thanks to Marcus for reporting that bug.
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@6703 a95241bf-73f2-0310-859d-f6bbb57e9c96
Some BeOS classes really are very stupid or just inferior:
- added DynamicScrollView class that adds and removes scroll bars as needed
and automatically takes care of the correct scroller range and proportions.
- added TabView class that is smart enough to resize its container view
and the tab views as well.
Both classes could be used in other environments, too. DynamicScrollView
would be a nice addition to BScrollView R2 - might be put into a shared
source directory for now (or into libbe's BPrivate namespace?).
The TabView additions could almost be moved to BTabView without breaking
compatibility, just the resizing mode of the tab views have to be respected.
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@6612 a95241bf-73f2-0310-859d-f6bbb57e9c96
to give its existance a bit more sense.
update_media_formats() no longer ASSERTS if the lock is held, but fails
if it's not locked.
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@6300 a95241bf-73f2-0310-859d-f6bbb57e9c96
Implemented BMediaDecoder::GetDecoderInfo().
Changed the documentation style to something doxygen can read.
Added some ToDo comments.
Some minor style changes.
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@6249 a95241bf-73f2-0310-859d-f6bbb57e9c96
DestroyReader/Decoder() functions - they erroneously don't put the
plugin back.
Added license.
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@6240 a95241bf-73f2-0310-859d-f6bbb57e9c96
implementation and the now unused old meta_description stuff.
Also fixed the == and < operator for media_format_description.
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@6237 a95241bf-73f2-0310-859d-f6bbb57e9c96
uses - it does crash anyway, when we export them (and return NULL).
Asked Marco about it, we'll see what comes back :-)
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@6205 a95241bf-73f2-0310-859d-f6bbb57e9c96
has been added to the file readers, you can now play 24 bit integer
or 64 bit floating point files
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@5770 a95241bf-73f2-0310-859d-f6bbb57e9c96
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
Soundplay loads it and can play a crackling mp3, but MediaPlayer doesn't
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@5572 a95241bf-73f2-0310-859d-f6bbb57e9c96
It is now a real node.
Shadow timesources finally have the correct control port id.
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@4604 a95241bf-73f2-0310-859d-f6bbb57e9c96
this should avoud deadlocks during execution of RegisterNode()
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@4544 a95241bf-73f2-0310-859d-f6bbb57e9c96
of its members correctly, but will also add scroll bars as needed.
Implemented basic message filters for discrete/continuous parameter views.
The views are now set to the correct parameter value and vice versa.
BContinuousParameter::{Get|Set}Response() is not yet supported, though.
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@3874 a95241bf-73f2-0310-859d-f6bbb57e9c96
BParameterGroup::Unflatten() did not set the mWeb member of BParameter.
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@3873 a95241bf-73f2-0310-859d-f6bbb57e9c96
added to the group. That way, a title view can be identified and always
placed at the top of the view.
Fixed minor related bugs.
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@3804 a95241bf-73f2-0310-859d-f6bbb57e9c96
Media preferences application alone).
Replaced the BBox with a simple BView for the container of a BParameterGroup.
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@3801 a95241bf-73f2-0310-859d-f6bbb57e9c96
Added heuristica to only show those BNullParameters which the original media
kit shows.
Removed flickering in the SeparatorView drawing code.
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@3800 a95241bf-73f2-0310-859d-f6bbb57e9c96
properly - it obviously needs the correct size at creation time...).
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@3799 a95241bf-73f2-0310-859d-f6bbb57e9c96
Some special parameter types are still missing, actually changing anything
is missing, some needed work-arounds for broken Be code, etc.
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@3798 a95241bf-73f2-0310-859d-f6bbb57e9c96
AddInput()/AddOutput() instead of just adding the unflattened (unfixed)
pointer to the appropriate lists.
Added a comment that it's valid to add the pointers at this time since
they will be fixed later on.
BParameterGroup::MakeControl() unnecessarily initialized the newly created
parameters with some default values.
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@3785 a95241bf-73f2-0310-859d-f6bbb57e9c96
FATAL is now replaced by ERROR and active at DEBUG=1 or above
TRACE is active at 2 or above
PRINT(level, ...) can be used for DEBUG= level or abode
INFO is removed
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@3578 a95241bf-73f2-0310-859d-f6bbb57e9c96
Implemented all needed functionality in BMediaTheme to use this default
theme - it's currently disabled, though (or should be).
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@3491 a95241bf-73f2-0310-859d-f6bbb57e9c96
changed, sorry.
Fixed many bugs in the old implementation, this one is now also endian-aware,
is faster on many things, works with stampTV, ...
Cleaned up a lot, most of it now complies with our style guide. Added a bunch
of helper functions that makes the code much better (to read), and easier to
maintain.
It's not yet completed though - will do that soon.
Also still missing is any documentation about those classes - I will also
work on this.
The changes have to downsides, though:
- I broke compatibility with the R5 flattened format. It shouldn't be a big
issue, since it was never thought to be put on disk - I will look into
that, though.
- the previous implementation had a strange policy when the Unflatten()
methods had reason to fail - it tried to read as much as possible instead
of just failing and leaving an invalid object behind. The new implementation
will just fail - the object you called Unflatten() from might not contain
useful information after this, though.
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@3470 a95241bf-73f2-0310-859d-f6bbb57e9c96