Commit Graph

32 Commits

Author SHA1 Message Date
David McPaul
ac847fc895 Don't call Reader methods with invalid cookies
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@26986 a95241bf-73f2-0310-859d-f6bbb57e9c96
2008-08-16 02:24:19 +00:00
Rene Gollent
642695c2fe Build fix.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@25827 a95241bf-73f2-0310-859d-f6bbb57e9c96
2008-06-06 15:27:28 +00:00
Stephan Aßmus
ae4ebbcca6 * Use NULL instead of 0 for some pointer initializations.
* Slightly more debug output for failed atempts to create a decoder.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@25825 a95241bf-73f2-0310-859d-f6bbb57e9c96
2008-06-06 13:07:02 +00:00
Maurice Kalinowski
8b1e3b1af8 - Implemented MediaExtractor::Copyright, which just calls the instantiated reader
- Implemented BMediaFile::Copyright, which just calls Copyright() of the extractor. So this is just a simple pass through.
- Style cleanup (mostly whitespaces)

Problem is that our readers currently return the copyright of the source code, not the copyright of the MediaFile itself, like the BeBook documents. Thus, we might need to change all readers to return appropiate data or behave differently for Haiku readers.



git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@25356 a95241bf-73f2-0310-859d-f6bbb57e9c96
2008-05-07 21:09:56 +00:00
Stephan Aßmus
d830aa92ce * Added FindKeyFrame() method to MediaExtractor, it is similar to Seek(),
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
2008-03-20 23:36:14 +00:00
Stephan Aßmus
4a46d818c9 * Implemented ERROR as fprintf(stderr, ...) with tracing turned off as well.
* 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
2008-03-19 19:39:07 +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
Marcus Overhagen
0d1adad317 Media Codec API just got a visit from the coding style police.
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
2005-06-30 00:24:06 +00:00
David McPaul
5f8e88545e Turned chunk cache back on
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@13208 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-06-19 06:01:31 +00:00
David McPaul
215c91dfb1 Added mov_reader to media kit - Very Alpha
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@13046 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-06-10 15:52:49 +00:00
beveloper
1a1da94839 removed ChunkCache.h from shared private include files
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@10072 a95241bf-73f2-0310-859d-f6bbb57e9c96
2004-11-21 00:11:39 +00:00
beveloper
f944d8fb3f avoid reading tracks which are not supported by the reader
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@9829 a95241bf-73f2-0310-859d-f6bbb57e9c96
2004-11-07 17:04:53 +00:00
beveloper
bf0aa2f9bb added support to disable the chunk cache for debugging
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@9487 a95241bf-73f2-0310-859d-f6bbb57e9c96
2004-10-24 18:46:07 +00:00
beveloper
f14dfaa7b9 Completed implementation of chunk caching. Playback from harddisk is now much better, crackling should be gone.
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@9485 a95241bf-73f2-0310-859d-f6bbb57e9c96
2004-10-24 17:15:50 +00:00
beveloper
26dc029a11 Added an extra thread for chunk extraction. Using the ChunkCache, the ReadFrames call no longer needs to wait for the extractor, but can read it from a cache.
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@9481 a95241bf-73f2-0310-859d-f6bbb57e9c96
2004-10-24 14:20:01 +00:00
beveloper
0a7ddfb5ee Style changes. I obviously didn't save the caching changes done at Begeistert 13 :-(
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@9466 a95241bf-73f2-0310-859d-f6bbb57e9c96
2004-10-23 18:04:50 +00:00
beveloper
c8f5115b32 call FreeCookie() on 0 cookies, too
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@6813 a95241bf-73f2-0310-859d-f6bbb57e9c96
2004-02-29 18:50:23 +00:00
beveloper
ec276f43a0 bugfix
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@6609 a95241bf-73f2-0310-859d-f6bbb57e9c96
2004-02-16 20:54:35 +00:00
beveloper
0f2976ab26 small api changes
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@6439 a95241bf-73f2-0310-859d-f6bbb57e9c96
2004-01-31 01:00:11 +00:00
Axel Dörfler
68b80bbdb9 Slightly improved error reporting for CreateDecoder (now with error code).
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@6238 a95241bf-73f2-0310-859d-f6bbb57e9c96
2004-01-23 07:11:15 +00:00
shatty
bc3a0b6ccd implement MediaDecoder, MediaExtractor using added ChunkProvider
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@6137 a95241bf-73f2-0310-859d-f6bbb57e9c96
2004-01-18 07:37:52 +00:00
beveloper
8d52474bc7 a couple of fixes to the error handling code
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@5631 a95241bf-73f2-0310-859d-f6bbb57e9c96
2003-12-08 22:16:03 +00:00
beveloper
2d923d67f0 fixed playback of small files by properly returning errors
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@5617 a95241bf-73f2-0310-859d-f6bbb57e9c96
2003-12-07 21:50:36 +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
4cbbc5a9ec small cleanup, format type and encoding depends on the description
and is set by the media kit, not by the reader


git-svn-id: file:///srv/svn/repos/haiku/trunk/current@5584 a95241bf-73f2-0310-859d-f6bbb57e9c96
2003-12-05 23:46:53 +00:00
beveloper
c90d275292 fixed crash in BMediaFile destructor
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@5582 a95241bf-73f2-0310-859d-f6bbb57e9c96
2003-12-05 22:27:17 +00:00
beveloper
d0b86c0f31 mp3 decoding and seeking works now
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@5581 a95241bf-73f2-0310-859d-f6bbb57e9c96
2003-12-05 22:11:52 +00:00
beveloper
1210ab70ac Huge hack to load the mp3 reader and decoder.
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
2003-12-05 01:18:51 +00:00
beveloper
0f741a83c1 more codec api enhancements
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@5523 a95241bf-73f2-0310-859d-f6bbb57e9c96
2003-12-01 23:33:35 +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
7a115dc75d integrating codec API, added some MediaExtractor functionality
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@5470 a95241bf-73f2-0310-859d-f6bbb57e9c96
2003-11-23 23:50:27 +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