Commit graph

5699 commits

Author SHA1 Message Date
Sebastian Dröge
707136fe5d Keep track of essence track position when playing source packages
This ensures that the correct essence elements are played and
that we seek to the correct essence elements.
2009-01-31 11:02:26 +01:00
Sebastian Dröge
dfa0e43848 Compensate for timestamp/duration rounding errors 2009-01-31 11:02:25 +01:00
Sebastian Dröge
a930b36adc Improve EOS logic to check all pads when pulling a packet returned EOS
This makes sure that we finish all pads that are at EOS now instead of
just finishing one and returning to this point over and over again.
2009-01-31 11:02:25 +01:00
Sebastian Dröge
2dbe706330 Only push buffers for pads that are not more than 500ms before other pads 2009-01-31 11:02:25 +01:00
Sebastian Dröge
91ed2ef166 Improve EOS logic to only go into EOS after all tracks are finished 2009-01-31 11:02:25 +01:00
Sebastian Dröge
b783f38813 Update TODO list 2009-01-31 11:02:25 +01:00
Sebastian Dröge
20c92a4db3 Try to keep the timestamp difference between tracks lower than 500ms 2009-01-31 11:02:25 +01:00
Sebastian Dröge
742fc4e80d Fix playback of atom files 2009-01-31 11:02:25 +01:00
Sebastian Dröge
f404262adf Keep track of current playback position 2009-01-31 11:02:25 +01:00
Sebastian Dröge
556e3c46e4 Set essence track positions to 0 if we're at the start partition 2009-01-31 11:02:24 +01:00
Sebastian Dröge
91b35975b5 Generate an index table for essence streams
Generate an index table for essence streams during playback
and make sure that only the correct essence elements are
used for played tracks.

Make it possible to have one essence stream used in multiple
playback tracks.

Fix some minor bugs.
2009-01-31 11:02:24 +01:00
Sebastian Dröge
dc42074fa9 Don't complain if the preface has no primary package set 2009-01-31 11:02:24 +01:00
Sebastian Dröge
afbec8ab9b Allow index table segments without primer pack
When parsing an index table segment without a valid
primer pack in this partition only parse the static
local tags and ignore all dynamic ones.

This allows us to use index table segments in some
broken files.
2009-01-31 11:02:24 +01:00
Sebastian Dröge
4162c36f17 Add essence track abstraction
Add an abstraction to represent essence tracks and
use this everywhere. This will later be used to keep
track of positions and to generate/handle seek tables.

Some random cleanup and renaming.
2009-01-31 11:02:24 +01:00
Sebastian Dröge
914b108db9 Fix parsing of index table segments
Allocate memory for the pos tables and slice offsets
of the index entries separately to a) fix alignment in
weird cases and b) to actually have something to free()
in the index table segment reset function.
2009-01-31 11:02:24 +01:00
Sebastian Dröge
264e30abb9 Improve detection of the end of the header metadata
Header metadata is finished after partition.header_byte_count
bytes after the first byte of the primer pack are handled.
After this there can only be index table segments, filler packets,
essence or the start of the next partition.

This fixes playback of some files that have non-standard metadata
packets in the header metadata.
2009-01-31 11:02:24 +01:00
Michael Smith
6a0a9fc01e Unref event if we don't forward it, unref pads when done with them. 2009-01-30 18:29:01 -08:00
Stefan Kost
f1f3dae7d9 Add releaseinfo with online url. 2009-01-30 22:28:35 +02:00
Jan Schmidt
db73bcfac6 Fix compilation on Forte.
Dereference the pointer to the passed socket to check the actual fd
when closing them.
Cast an assignment to kill a warning.
2009-01-30 18:20:17 +00:00
Jan Schmidt
4ccbb0309f Fix the return value of the default parse_frame function.
Fix the return value of the default parse_frame function in both
copies of GstBaseParse
2009-01-30 18:18:10 +00:00
Jan Schmidt
9688ba1a11 Bump common 2009-01-30 17:31:33 +00:00
Edward Hervey
681e1c8a03 Use a symbolic link for the pre-commit client-side hook 2009-01-30 08:54:59 +01:00
Thiago Sousa Santos
648e37aeeb qtwrapper: Fixes build at case sensitive systems. 2009-01-29 17:59:35 -02:00
Josep Torra
3b7f1bc988 mpegdemux: do not skip pes packets that we think are encrypted
pes packets that claim to be encrypted may not be so, so treat as normal.
Just log the flags.
2009-01-28 12:49:39 +00:00
Mark Nauwelaerts
6bbce931bc Additional media type support in qtmux (and friends).
Support AMR and H263 for both qtmux and gppmux,
and add extensions in sample table description.
2009-01-28 13:34:44 +01:00
Zaheer Merali
b34204a54b Revert "mpegdemux: do not skip pes packets that we think are encrypted"
This reverts commit d3e4e5598f.
2009-01-28 12:27:42 +00:00
Josep Torra
d3e4e5598f mpegdemux: do not skip pes packets that we think are encrypted
pes packets that claim to be encrypted may not be so, so treat as normal.
Just log the flags.
2009-01-28 12:19:09 +00:00
Hans de Goede
bf7ccbe0f8 Build the modplug plugin against the modplug library and remove our copy
Always build the modplug plugin against the system modplug library
and remove our own copy. Using the system version has advantages
if security issues or other critical bugs are found in libmodplug
and our own copy wasn't really maintained anyway.

Also our copy only contained some patches to use GLib types and functions.
Fixes bug #568837.
2009-01-24 18:13:39 +01:00
Jan Schmidt
83ca36e07f Add more to the gitignores 2009-01-23 23:42:28 +00:00
Jan Schmidt
2014b7f498 Make RGB masks unsigned in rawvideoparse
Allow the full range of 32 bit masks for RGBA/RGB data by making sure
the mask properties are unsigned.
2009-01-23 14:33:51 +00:00
Stefan Kost
a094c58eed Add README with midi related links. 2009-01-23 16:09:51 +02:00
Stefan Kost
2af1d512c4 Log aac details found in codec_data. 2009-01-23 16:00:10 +02:00
Stefan Kost
93df7379e4 Configure byte order for EXIF. Fixes #568704
Exif blocks can be in differnt byte orders. Add an element property to select wich one should be written.
2009-01-23 15:14:24 +02:00
Sebastian Dröge
e4e3b44e04 Rename audioresample files and types to legacyresample
Finish the move/rename of audioresample to legacyresample
to prevent any confusion.
2009-01-23 12:47:19 +01:00
Sebastian Dröge
6fec8619b5 Remove speexresample from -bad, it's in -base 2009-01-23 12:47:19 +01:00
Wim Taymans
0cda7294ab Send BYE packets immediatly for small sessions
When the number of participants is less than 50, the RFC allows for sending the
BYE packet immediatly instead of using the regular BYE timeout.
Fixes #567828.
2009-01-23 12:18:45 +01:00
Hans de Goede
20b715ac79 Add seeking support to mmssrc. Fixes bug #469930.
Add proper seeking support to mmssrc and clean
up some code. This requires libmms >= 0.4.
2009-01-23 11:50:29 +01:00
Brian Cameron
eac03fc77e Link modplug plugin with -lm. Fixes bug #568483. 2009-01-23 10:44:20 +01:00
Brian Cameron
486d76b454 Fix build on Solaris. Fixes bug #568480.
Fix linking on Solaris by checking for the nsl and socket
libraries which are needed for socket() and gethostbyname().

Don't initialize some fields of struct mh to NULL/0, they're
already set to NULL/0 by a memset(). Also this fields don't
exist on Solaris.
2009-01-23 10:11:52 +01:00
Sebastian Dröge
7ce5b5a2d6 Store all partitions & primer packs in memory for faster access
Store all partitions & primer packs in memory for faster access.
This is later needed for fast seeking.

Pre-fill the list of partitions with the content of the random
index pack.

Don't parse metadata of an partition twice.
2009-01-23 10:09:01 +01:00
Stefan Kost
158f24c786 Update common snapshot. 2009-01-22 18:20:03 +02:00
Wim Taymans
b791d38ee8 Update config.h for development. 2009-01-22 14:00:57 +01:00
Sebastian Dröge
6e525250bc Fix pre-commit hook 2009-01-22 13:46:44 +01:00
Jan Urbanski
a3b61dce0d Add support for ECMA arrays in script tags. Fixes bug #567965.
Add support for ECMA arrays in script tags. This fixes
seeking on some files that have the seek table stored
inside an ECMA array instead of the normal array.
2009-01-22 13:41:32 +01:00
Wim Taymans
f8f5b55ddd Unlock the jitterbuffer before pushing out the packet-lost events.
Move some code before we do the unlock to make the jitterbuffer state
consistent while we are unlocked.
2009-01-22 13:36:08 +01:00
Sebastian Dröge
054167100d Fix UL for DTS and MPEG2 layer 1 2009-01-22 13:13:00 +01:00
Sebastian Dröge
6b5f04100a Add support for AAC audio 2009-01-22 13:13:00 +01:00
Sebastian Dröge
716ce72e46 Store MXF metadata in a hash table, keyed by UID
Store the MXF metadata in a hash table, keyed by the
instance UID. This simplifies resolval of the metadata
and makes looping over all metadata sets unnecessary
in most cases.

Additionally parse metadata always. If we already have
a metadata set with the same UID replace it only if
the new metadata set is from a later offset. This
fixes metadata parsing of files where following partitions
don't have a complete copy of the previous metadata.
2009-01-22 13:13:00 +01:00
Sebastian Dröge
52028f2e11 Build the random index pack while parsing
If the file contains no random index pack or just
an invalid one build the random index pack while
parsing.
2009-01-22 13:13:00 +01:00
Sebastian Dröge
fc4be0acca Update copyrights for 2009 2009-01-22 13:13:00 +01:00