Wykres commitów

48 Commity (657f94b36359da30c6c40af17a51d5dbe92aff9f)

Autor SHA1 Wiadomość Data
tibs 657f94b363 Update to use segment 11 of the Elephant's Dream (HD) data as test data.
Improve the reporting of ES unit data slightly.

--HG--
extra : convert_revision : svn%3Aeff31bef-be4a-0410-a8fe-e47997df2690/trunk%4048
2008-09-02 12:18:15 +00:00
tibs 8be8e9acf8 Added a data directory. Nothing in it as yet, except a README pointing to some
useful sources of data. This *may* help solve the issue of what test data to
use.

--HG--
extra : convert_revision : svn%3Aeff31bef-be4a-0410-a8fe-e47997df2690/trunk%4047
2008-08-29 19:44:28 +00:00
tibs c89d69b15e It looks like seeking does work.
Use of ESOffset sorted out a bit more -- I think it now makes sense.

And since I can't find any way for doctest to "see" C stdout/stderr,
just make rundoctest.py output an explanatory message (and the RED/GREEN
thing just makes it a bit quicker to ignore worrying texts).

--HG--
extra : convert_revision : svn%3Aeff31bef-be4a-0410-a8fe-e47997df2690/trunk%4046
2008-08-28 20:33:47 +00:00
tibs a5313c03ec The basics of seek now written -- yet to test it actuall goes to the right
place, though...

--HG--
extra : convert_revision : svn%3Aeff31bef-be4a-0410-a8fe-e47997df2690/trunk%4045
2008-08-27 22:16:02 +00:00
tibs 179171dcfc Add alias -i to the -mcastif switch, because the latter really is
a pain to type, and I got lazy.

--HG--
extra : convert_revision : svn%3Aeff31bef-be4a-0410-a8fe-e47997df2690/trunk%4044
2008-08-27 12:57:17 +00:00
tibs fb998f5655 Start towarards seeking -- properly support ES offsets.
--HG--
extra : convert_revision : svn%3Aeff31bef-be4a-0410-a8fe-e47997df2690/trunk%4043
2008-08-26 21:44:05 +00:00
tibs 2f63aad957 A little bit further -- now able to create arbitrary ES units
--HG--
extra : convert_revision : svn%3Aeff31bef-be4a-0410-a8fe-e47997df2690/trunk%4042
2008-08-26 20:37:15 +00:00
tibs da39d46655 Some ES attributes added.
--HG--
extra : convert_revision : svn%3Aeff31bef-be4a-0410-a8fe-e47997df2690/trunk%4041
2008-08-25 18:22:01 +00:00
tibs cabde235d0 Gradually iterating towards the obvious -- of course I didn't need to
involve Python files.

--HG--
extra : convert_revision : svn%3Aeff31bef-be4a-0410-a8fe-e47997df2690/trunk%4040
2008-08-24 18:48:40 +00:00
tibs 02f72c180d (a) learn how to do comparisons, (b) make ES units comparable
--HG--
extra : convert_revision : svn%3Aeff31bef-be4a-0410-a8fe-e47997df2690/trunk%4039
2008-08-23 21:15:29 +00:00
tibs 1750c74d44 Tidy up a bit, by moving the Python binding stuff (i.e., the Pyrex related
stuff) into a separate directory.

--HG--
rename : test.txt => python/test.txt
rename : tstools.pyx => python/tstools.pyx
extra : convert_revision : svn%3Aeff31bef-be4a-0410-a8fe-e47997df2690/trunk%4038
2008-08-22 23:08:38 +00:00
tibs e809155798 Make an ESStream more file-like, including initial support for opening for
read *or* write. Thus change the way it is actually opened for read.

--HG--
extra : convert_revision : svn%3Aeff31bef-be4a-0410-a8fe-e47997df2690/trunk%4037
2008-08-22 22:58:15 +00:00
tibs c6fd86b273 NOt much change...
--HG--
extra : convert_revision : svn%3Aeff31bef-be4a-0410-a8fe-e47997df2690/trunk%4036
2008-08-20 22:11:27 +00:00
tibs 33f2feef01 Support an alternative location of test data, and also lose (notional) Python
2.2 support in the rundoctest script.

--HG--
extra : convert_revision : svn%3Aeff31bef-be4a-0410-a8fe-e47997df2690/trunk%4035
2008-08-19 14:49:00 +00:00
loreg d036b098e6 Add documentation in tools.txt for the -fr switch for esdots.
--HG--
extra : convert_revision : svn%3Aeff31bef-be4a-0410-a8fe-e47997df2690/trunk%4034
2008-08-19 10:49:16 +00:00
loreg 7fa75f036a The frame rate can be given in input using the -fr switch.
Default value is 25.00, so if no value is given the code computes everything exacly as before.
The value of the frame rate is used to compute the gop duration.

--HG--
extra : convert_revision : svn%3Aeff31bef-be4a-0410-a8fe-e47997df2690/trunk%4033
2008-08-19 10:46:56 +00:00
tibs 7aa5d73219 With a little bit of internal data.
--HG--
extra : convert_revision : svn%3Aeff31bef-be4a-0410-a8fe-e47997df2690/trunk%4032
2008-08-18 22:52:39 +00:00
tibs 6eb70d4409 A bit more progress -- iterating over ES units (but can't do anything with them).
--HG--
extra : convert_revision : svn%3Aeff31bef-be4a-0410-a8fe-e47997df2690/trunk%4031
2008-08-18 21:43:53 +00:00
rrw 354d0d09b9 1. Add an option to allow periodic retransmission of PAT and PMT in
esmerge

2. Do not output spurious packets if in tsdirect mode in tsserve.

--HG--
extra : convert_revision : svn%3Aeff31bef-be4a-0410-a8fe-e47997df2690/trunk%4030
2008-08-11 22:30:47 +00:00
tibs eebcb3e33d Add some initial doctesting for the Pyrex bindings.
--HG--
extra : convert_revision : svn%3Aeff31bef-be4a-0410-a8fe-e47997df2690/trunk%4029
2008-08-10 17:43:24 +00:00
tibs 83cb113b8c Add license blocks to the Pyrex files (should have remembered earlier).
--HG--
extra : convert_revision : svn%3Aeff31bef-be4a-0410-a8fe-e47997df2690/trunk%4028
2008-07-31 10:09:59 +00:00
tibs 262f4b0c19 Add new program contributed by Gareth Bailey of Kynesim.
--HG--
extra : convert_revision : svn%3Aeff31bef-be4a-0410-a8fe-e47997df2690/trunk%4027
2008-07-31 10:06:33 +00:00
tibs 75653b3cae Prevent a segmentation fault when the __dealloc__ method is called, by
using the (correct) close_elementary_stream. This is tolerant of a NULL
argument (because it's designed to pair with open_elementary_stream,
which can fail).

--HG--
extra : convert_revision : svn%3Aeff31bef-be4a-0410-a8fe-e47997df2690/trunk%4026
2008-07-31 09:28:23 +00:00
tibs 4541c87b0c Rename es.pyx as tstools.pyx -- mainly because pyrex assumes that the final
Python package will have the same name as the pyx file (or nasty things
happen when you try to import it), and I ultimately want the Python module
to be called "tstools".

Add a (probably) temporary Makefile for pyrex, and the Setup.py that does
the actual work.

On my Mac, this how builds something I can import into Python, and then
discover errors in... so fix the 'filename' attribute of ESStream, both
to exist (!) and secondly to be visible to Python.

--HG--
rename : es.pyx => tstools.pyx
extra : convert_revision : svn%3Aeff31bef-be4a-0410-a8fe-e47997df2690/trunk%4025
2008-07-30 22:07:47 +00:00
tibs 499e7a6223 Correct stupid comment.
--HG--
extra : convert_revision : svn%3Aeff31bef-be4a-0410-a8fe-e47997df2690/trunk%4024
2008-07-29 21:41:43 +00:00
tibs a1984c6e71 Definitely a bug to leave this out, since it will cause problems
when starting a new file or, presumably, rewinding.

--HG--
extra : convert_revision : svn%3Aeff31bef-be4a-0410-a8fe-e47997df2690/trunk%4023
2008-07-29 21:36:10 +00:00
tibs 0a3b3284ae It doesn't do anything yet, except compile to Pyrex C code...
--HG--
extra : convert_revision : svn%3Aeff31bef-be4a-0410-a8fe-e47997df2690/trunk%4022
2008-07-28 22:20:43 +00:00
tibs c8e31f28d2 Increased the size of the TS PCR read-ahead buffer, to cope with a particular
file which has caused problems. No, that's not a proper solution.

Added some XXX comments discussing that.

Also, added some code to allow for reading beyond the last PCR, and using
the last-determined rate. This isn't really tested yet.

--HG--
extra : convert_revision : svn%3Aeff31bef-be4a-0410-a8fe-e47997df2690/trunk%4021
2008-07-23 22:11:03 +00:00
tibs f421d3cb4d Report the two new audio stream types correctly.
--HG--
extra : convert_revision : svn%3Aeff31bef-be4a-0410-a8fe-e47997df2690/trunk%4020
2008-07-21 21:47:34 +00:00
tibs 633ef0ed27 (Version of) patch from Richard Watts: allow forcing of MPEG2 or MPEG4 ADTS in
esmerge.

--HG--
extra : convert_revision : svn%3Aeff31bef-be4a-0410-a8fe-e47997df2690/trunk%4019
2008-07-21 21:33:14 +00:00
tibs 3c0dac2bb5 Fix an incorrect call (how did that slip past?) in esreverse, and
stop inappropriate writing of (extra, possibly wrong) program data
when we are mirroring TS packets directly.

--HG--
extra : convert_revision : svn%3Aeff31bef-be4a-0410-a8fe-e47997df2690/trunk%4018
2008-06-26 09:21:05 +00:00
tibs 7a02df44f7 Changes to allow tsserve to serve all the original TS data to
a client, rather than just the PES for video/audio.

--HG--
extra : convert_revision : svn%3Aeff31bef-be4a-0410-a8fe-e47997df2690/trunk%4017
2008-06-25 21:24:17 +00:00
tibs 18acac0c76 Experimentally suggest that the private types used for Dolby/AC-3 might
be being used for such (otherwise, it can be very unobvious that this
is so).

--HG--
extra : convert_revision : svn%3Aeff31bef-be4a-0410-a8fe-e47997df2690/trunk%4016
2008-06-14 17:02:14 +00:00
tibs f6a69db24e Amend the build script to work on other people's systems, and correct
some minor issues in tools.txt.

--HG--
extra : convert_revision : svn%3Aeff31bef-be4a-0410-a8fe-e47997df2690/trunk%4015
2008-06-14 16:53:59 +00:00
tibs 0737957cd1 Add Vim line (at end) to select mode rst (this is the restructuredtext
mode distributed with Vim -- I actualy prefer rest.vim, but that's an
extra one has to download onself).

The appropriate [X]Emacs line is left for the moment, since I don't
currently use [X]Emacs for editing these files.

--HG--
extra : convert_revision : svn%3Aeff31bef-be4a-0410-a8fe-e47997df2690/trunk%4014
2008-06-14 16:42:19 +00:00
tibs dd2f63f0b9 Some minor tidying up, mostly to make the code conform to two space
indentation, and other minor style considerations.

--HG--
extra : convert_revision : svn%3Aeff31bef-be4a-0410-a8fe-e47997df2690/trunk%4013
2008-06-14 16:36:09 +00:00
tibs 4ce892d04c All C and H files annotated to tell Vim or [X]Emacs to use 2-space indentation
and not to use tabs within indentation.

--HG--
extra : convert_revision : svn%3Aeff31bef-be4a-0410-a8fe-e47997df2690/trunk%4012
2008-06-14 16:05:00 +00:00
tibs 0e5185163e What was the OS X Makefile now works on Linux as well (it makes a simple
attempt to autodetect whether it is running on Mac OS X). Thus it replaces
the original Linux Makefile (and we're back to a GNU make file plus an
nmake make file for Windows).

--HG--
rename : Makefile.osx => Makefile
extra : convert_revision : svn%3Aeff31bef-be4a-0410-a8fe-e47997df2690/trunk%4011
2008-06-11 12:35:05 +00:00
tibs 3d1ec70f5b Previously, doing::
make
    make clean

did not delete all the binaries. Now, target objclean does what clean
used to do, and clean/distclean act more conventionally.

Also, Makefile.osx *should* now be a suitable makefile for Linux/BSD
as well -- but wait until I can test it at work (on Linux) before
making it the "main" Makefile.

--HG--
extra : convert_revision : svn%3Aeff31bef-be4a-0410-a8fe-e47997df2690/trunk%4010
2008-06-04 21:26:20 +00:00
loreg 24485ea59f Esdots now finds random access points in H.264 streams. These are defined as : IDR pic OR I pic with SEI unit with recovery_point.
In choose_nal_type in esdotc.c there is a boolean value rec_point_required. It you set it to FALSE any I pic is considered a random access point.
The field recovery_frame_cnt is not used (as if it was 0). If it is != 0 a warning message is printed.
The fields broken_link_flag, exact_match_flag and changing_slice_group_idc are not considered (as 0).

In the final message the max, min and mean duration of a GOP are shown. For H.264 streams this is defined as the distance between 2 random access points. If no full GOP is found this info is not displayed.

The -gop switch works as before.

In esdots a function choose_nal_type has been added.
In nalunit.c a function read_SEI_recovery_point has been added.
The structure nal_SEI_recovery_data has been added, in order to cope with the recovery_point message. It's added to nal_innards too. See nalunit_defns.h

--HG--
extra : convert_revision : svn%3Aeff31bef-be4a-0410-a8fe-e47997df2690/trunk%409
2008-05-22 14:19:02 +00:00
loreg b029421ff0 + esdots has been modified as follow:
- For MPEG-2 streams it outputs informations about the size of a Gropu Of Pictures (GOP): min, max and average duration in sec. Video is supposed to be @25fps.
- For AVC streams, where the GOP is not formally defined, it computes the same date looking at the interval between two I or IDR frames (whichever comes first).

Using the switch -gop display the duration of each GOP (or pseudo-GOP fir AVC)

NOTE that a new function hab been added:
static char choose_nal_type(access_unit_p access_unit, int verbose);

Called by dots_by_access_unit, it returns a single character which specifies the type of the access unit.

+ tools.txt has been modified describing this new functionality and switch.

--HG--
extra : convert_revision : svn%3Aeff31bef-be4a-0410-a8fe-e47997df2690/trunk%408
2008-05-09 15:25:18 +00:00
loreg aeb2f6a963 removed html generated files
--HG--
extra : convert_revision : svn%3Aeff31bef-be4a-0410-a8fe-e47997df2690/trunk%407
2008-05-06 15:40:18 +00:00
loreg 022a29b64b documentation added for esreport
--HG--
extra : convert_revision : svn%3Aeff31bef-be4a-0410-a8fe-e47997df2690/trunk%406
2008-05-02 10:47:48 +00:00
loreg c6ebcc4fe1 Output of esreport for the nal units has been modified. Now it says if the nal_slice_types means that all the slices are of that type or only the first one.
Also the non-reference nal_ref_idc is explicit.

--HG--
extra : convert_revision : svn%3Aeff31bef-be4a-0410-a8fe-e47997df2690/trunk%405
2008-04-29 12:26:17 +00:00
tibs 001f5d39d6 An initial attempt to mend the (previously broken) esdots for H.264 -- the documentation
(with -v) didn't match the code, and the whole thing was rather wrong.

--HG--
extra : convert_revision : svn%3Aeff31bef-be4a-0410-a8fe-e47997df2690/trunk%404
2008-04-29 11:41:23 +00:00
tibs 3be4811a0f Make the Windows compiler happy by being explicit.
--HG--
extra : convert_revision : svn%3Aeff31bef-be4a-0410-a8fe-e47997df2690/trunk%403
2008-04-18 13:00:18 +00:00
tibs b66579b5d8 Remove some spurious debugging.
--HG--
extra : convert_revision : svn%3Aeff31bef-be4a-0410-a8fe-e47997df2690/trunk%402
2008-04-14 07:24:06 +00:00
tibs 70e9b431a7 Initial import to berlios.de
--HG--
extra : convert_revision : svn%3Aeff31bef-be4a-0410-a8fe-e47997df2690/trunk%401
2008-04-14 04:09:29 +00:00