LinuxTV

CVS log for libsoftmpeg/src/video.c

[BACK] Up to [DVB] / libsoftmpeg / src

Request diff between arbitrary revisions


Keyword substitution: kv
Default branch: MAIN


Revision 1.35: download - view: text, markup, annotated - select for diffs
Mon Jul 12 16:48:05 2004 UTC (19 years, 11 months ago) by hunold
Branches: MAIN
CVS tags: HEAD
Diff to: previous 1.34: preferred, colored
Changes since revision 1.34: +0 -18 lines
- remove individual xxx_handle_ts_packet() functions for audio and video
- handle ts packet filtering in softmpeg.c, do some sanity checks against payload_len
=> enhances stability on very broken reception

Revision 1.34: download - view: text, markup, annotated - select for diffs
Tue Mar 23 11:20:51 2004 UTC (20 years, 2 months ago) by hunold
Branches: MAIN
Diff to: previous 1.33: preferred, colored
Changes since revision 1.33: +27 -18 lines
- include SOFTMPEG_DEBUG_AVSYNC if build with "--enable-debug"
- make some debug messages more verbose
- simplify / fix calculation of additional wait cycles to compensate non-50Hz timings
- adjust high watermark down to 50% (66% before)
- simplify handling in audio_playout

Revision 1.33: download - view: text, markup, annotated - select for diffs
Wed Mar 17 19:42:26 2004 UTC (20 years, 2 months ago) by hunold
Branches: MAIN
Diff to: previous 1.32: preferred, colored
Changes since revision 1.32: +10 -46 lines
- remove all avcodec stuff from video.c, put relevant stuff into new file d_avcodec.c

Revision 1.32: download - view: text, markup, annotated - select for diffs
Wed Mar 17 19:14:01 2004 UTC (20 years, 2 months ago) by hunold
Branches: MAIN
Diff to: previous 1.31: preferred, colored
Changes since revision 1.31: +45 -34 lines
- remove all references to av_frame, put data into new video_frame structure
- remove software image conversion stuff, no hw support, no libsoftmpeg 8-)
- clean up video_prepare() function, remove libavcodec specific stuff

Revision 1.31: download - view: text, markup, annotated - select for diffs
Wed Mar 17 14:26:46 2004 UTC (20 years, 2 months ago) by hunold
Branches: MAIN
Diff to: previous 1.30: preferred, colored
Changes since revision 1.30: +0 -2 lines
- only clear the screen on a decoder_stop() not on a skip

Revision 1.30: download - view: text, markup, annotated - select for diffs
Wed Mar 17 09:45:32 2004 UTC (20 years, 2 months ago) by hunold
Branches: MAIN
Diff to: previous 1.29: preferred, colored
Changes since revision 1.29: +11 -0 lines
- add big fat warning and 5 sec delay if vertical refresh rate is set != 50Hz

Revision 1.29: download - view: text, markup, annotated - select for diffs
Wed Mar 17 09:38:16 2004 UTC (20 years, 2 months ago) by hunold
Branches: MAIN
Diff to: previous 1.28: preferred, colored
Changes since revision 1.28: +44 -13 lines
- add calculation for vertical refresh rate (should be done in DirectFB though)
- use knowledge about vertical refresh rate when calculation the sync correction
- accumulate the differences between vertical refresh rate and video frame rate after each frame flip, so we can double a field every now and then
=> a/v sync works now for refresh rates != 50Hz

Revision 1.28: download - view: text, markup, annotated - select for diffs
Tue Mar 16 14:40:04 2004 UTC (20 years, 2 months ago) by hunold
Branches: MAIN
Diff to: previous 1.27: preferred, colored
Changes since revision 1.27: +29 -336 lines
- rip out all DirectFB functionality from video.c and put it into a separate file v_directfb.c

Revision 1.27: download - view: text, markup, annotated - select for diffs
Mon Mar 15 15:48:48 2004 UTC (20 years, 2 months ago) by hunold
Branches: MAIN
Diff to: previous 1.26: preferred, colored
Changes since revision 1.26: +5 -0 lines
- fix libsoftmpeg for usage with CVS version of ffmpeg

Revision 1.26: download - view: text, markup, annotated - select for diffs
Thu Mar 11 15:18:58 2004 UTC (20 years, 3 months ago) by hunold
Branches: MAIN
Diff to: previous 1.25: preferred, colored
Changes since revision 1.25: +1 -1 lines
- replace ..._pause() function with a more generic softmpeg_decoder_set_mode() function
- follow these changes in demo application

Revision 1.25: download - view: text, markup, annotated - select for diffs
Thu Mar 11 13:40:15 2004 UTC (20 years, 3 months ago) by hunold
Branches: MAIN
Diff to: previous 1.24: preferred, colored
Changes since revision 1.24: +35 -1 lines
- added a simple pause function. basically works, but won't work this way with rewind/fast forward

Revision 1.24: download - view: text, markup, annotated - select for diffs
Tue Mar 9 11:28:39 2004 UTC (20 years, 3 months ago) by hunold
Branches: MAIN
Diff to: previous 1.23: preferred, colored
Changes since revision 1.23: +27 -7 lines
- implement audio_set_volume() for easier and safer muting/unmuting
- add structure init to video_create()/audio_create()
- move inital_sync handling to function

Revision 1.23: download - view: text, markup, annotated - select for diffs
Thu Mar 4 11:22:40 2004 UTC (20 years, 3 months ago) by hunold
Branches: MAIN
Diff to: previous 1.22: preferred, colored
Changes since revision 1.22: +2 -0 lines
- add directfb and fusionsound to the "required" list of the package config file
- small debug message fix in audio.c
- explicitely call softmpeg_decoder_stop() in softmpeg_decoder_set_pids(),
otherwise the decoder core gets messed up seriously due to changed pids et. al.
- call DirectFBInit() if we are called before any other programs has
initialized DirectFB, so that we can give out a proper error message

Revision 1.22: download - view: text, markup, annotated - select for diffs
Tue Mar 2 13:47:26 2004 UTC (20 years, 3 months ago) by hunold
Branches: MAIN
Diff to: previous 1.21: preferred, colored
Changes since revision 1.21: +14 -6 lines
- shuffle around some debug messages:
  - replace AUDIO_PES with AUDIO_DEBUG and VIDEO_PES with VIDEO_DEBUG
    to make debugging a/v desyncing easier
  - add debug messages that the pts of every video frame and the pts
    of every audio chunk
  - disable VIDEO_PES and AUDIO_PES messages by default, the produce too
    much noise when debugging
- if the audio buffer has not enough data, make sure that we insert enough
  silence, make sure that our ->len information is accurate, otherwise
  audio underflow occurs when enough data is lost

Revision 1.21: download - view: text, markup, annotated - select for diffs
Thu Feb 26 17:09:19 2004 UTC (20 years, 3 months ago) by hunold
Branches: MAIN
Diff to: previous 1.20: preferred, colored
Changes since revision 1.20: +1 -3 lines
- enable audio when audio prebuffering has finished, this makes audio-only channels/radio work again
- because of this, audio will be played a few 100ms before the corresponding pictures is visible
(before, audio and video were unmuted/made visible exactly at the same time). this has probably to
be discussed
----------------------------------------------------------------------

Revision 1.20: download - view: text, markup, annotated - select for diffs
Wed Feb 25 15:14:38 2004 UTC (20 years, 3 months ago) by hunold
Branches: MAIN
Diff to: previous 1.19: preferred, colored
Changes since revision 1.19: +20 -4 lines
- create one global softmpeg singleton object, prevent applications from creating more than one softmpeg decoder instance
- add softmpeg_get_current_softmpeg_context(): useful for applications where the
softmpeg decoder has been opened by another context, but you don't want to pass
around pointers to that context (dirty)
-  add softmpeg_decoder_set_av_sync(): useful for playback, video is simply played out, only synced to the vertical blank, needs testing
- VIDEO_THRESHOLD is used at various places when avsync is turned off, needs
testing

Revision 1.19: download - view: text, markup, annotated - select for diffs
Wed Feb 18 22:20:50 2004 UTC (20 years, 3 months ago) by hunold
Branches: MAIN
Diff to: previous 1.18: preferred, colored
Changes since revision 1.18: +2 -1 lines
- accidently turned on audio debugging again
- remove some debugging stuff
- make sure to query the playback interface only when it's available

Revision 1.18: download - view: text, markup, annotated - select for diffs
Wed Feb 18 15:20:30 2004 UTC (20 years, 3 months ago) by hunold
Branches: MAIN
Diff to: previous 1.17: preferred, colored
Changes since revision 1.17: +2 -2 lines
- use DLSCL_ADMINISTRATIVE instead of DLSCL_EXCLUSIVE for all layers being
used. this makes sure that other contexts can modify the layers as well.

Revision 1.17: download - view: text, markup, annotated - select for diffs
Tue Feb 17 17:34:28 2004 UTC (20 years, 3 months ago) by hunold
Branches: MAIN
Diff to: previous 1.16: preferred, colored
Changes since revision 1.16: +16 -2 lines
- use pthread_cond_timedwait() instead of pthread_cond_wait() and check
for d->cancel_threads every 80ms. this prevents hanging upon softmpeg exit

Revision 1.16: download - view: text, markup, annotated - select for diffs
Tue Feb 17 12:02:16 2004 UTC (20 years, 3 months ago) by hunold
Branches: MAIN
Diff to: previous 1.15: preferred, colored
Changes since revision 1.15: +31 -11 lines
- disable SOFMPEG_AUDIO_DEBUG by default again
- enhance the audio experience while zapping: mute the FusionSound stream before zapping, unmute it when a/v sync is achieved
- enhance the video experience while zapping: blank the video before zapping
- lock access to the audio setting with video mutex
- add a couple of sanity checks to check_and_write_audio_pes() to make the code more robust
- check for multiple creation of the feed thread, wait for init using sched_yield()
- upon softmpec_decoder_stop(), set alls pids to 0x1fff, so nothing is decoded anymore
- fix debug output if VIDEO_AVSYNC() is used

Revision 1.15: download - view: text, markup, annotated - select for diffs
Fri Feb 13 19:01:06 2004 UTC (20 years, 3 months ago) by hunold
Branches: MAIN
Diff to: previous 1.14: preferred, colored
Changes since revision 1.14: +16 -0 lines
- don't erase the buffer ptr when resetting the audio decoder
- remove some dead code
- make ERRORs about decoding failures only WARNings
- keep the video threads from catching any signals

Revision 1.14: download - view: text, markup, annotated - select for diffs
Fri Feb 13 18:19:53 2004 UTC (20 years, 3 months ago) by hunold
Branches: MAIN
Diff to: previous 1.13: preferred, colored
Changes since revision 1.13: +37 -41 lines
- disable MPEG_PES_TO_FRAME debugging by default
- skip pes headers for all pes packets, not only for the ones conatining a pts
- add new VIDEO_PES_TO_FRAME_DEBUG, use VIDEO_PES() for debugging messages
- add define MAX_VIDEO_MPEG_FRAME_SIZE, currently 128kB (hints are welcome)
- actually implement video_handle_pes_data()

Revision 1.13: download - view: text, markup, annotated - select for diffs
Fri Feb 13 13:29:42 2004 UTC (20 years, 3 months ago) by hunold
Branches: MAIN
Diff to: previous 1.12: preferred, colored
Changes since revision 1.12: +6 -1 lines
- remove some obsolete debug messages from demo application
- add c++ foo to external softmpeg header file
- split packet handling into ts handling and pes packet handling for both audio and video (pes handling isn't working yet)
- remove some commonly used pes header parsing stuff to internal.h

Revision 1.12: download - view: text, markup, annotated - select for diffs
Fri Feb 13 10:56:03 2004 UTC (20 years, 4 months ago) by hunold
Branches: MAIN
Diff to: previous 1.11: preferred, colored
Changes since revision 1.11: +112 -141 lines
- forgot to change 2 fprintf()s in audio.c
- add VIDEO_DEBUG(), VIDEO_AVSYNC() and VIDEO_PES_TO_FRAME_DEBUG() and change all usages of unconditional fprintf()s
- use softmpeg_get_millis() instead of dfb_get_millis()
- remove obsolete comments
- remove bogus double creation of DirectFB master interface
- emit a SOFTMPEG_WARN() upon usage of non-tested video output configuration
- remove obsolte stc display in display_thread()

Revision 1.11: download - view: text, markup, annotated - select for diffs
Fri Feb 13 09:58:38 2004 UTC (20 years, 4 months ago) by hunold
Branches: MAIN
Diff to: previous 1.10: preferred, colored
Changes since revision 1.10: +12 -18 lines
... DOKs changes:
- replace nanosleep()s with softmpeg_sleep()s
- change correction threshold from 40ms to 30ms to avoid alias effects

Revision 1.10: download - view: text, markup, annotated - select for diffs
Fri Feb 13 09:53:14 2004 UTC (20 years, 4 months ago) by hunold
Branches: MAIN
Diff to: previous 1.9: preferred, colored
Changes since revision 1.9: +1 -0 lines
some more of DOKs changes:
- add SOFTMPEG_DEBUG(), SOFTMPEG_ERROR() and SOFTMPEG_WARN() macros inspired from DirectFB
- replace audio printf()s with SOFTMPEG_DEBUG_AUDIO macro (maps to SOFTMPEG_DEBUG())
- replace fixed prebuffering delay with low/mid/high watermarks (should be in 16.16 percent though) change code accordingly
- remove bogus "manual prebuffering" hack (fixed in FusionSound)
- add "DFBBoolean playing;" to audio_decocer, keep track of current playback status
- add softmpeg_sleep() replacement for dozens of nanosleep() calls
- add softmpeg_get_millis() replacement for gettimeofday() calls
- compile fix for missing variable in video.c caused by last checking

Revision 1.9: download - view: text, markup, annotated - select for diffs
Fri Feb 13 09:27:45 2004 UTC (20 years, 4 months ago) by hunold
Branches: MAIN
Diff to: previous 1.8: preferred, colored
Changes since revision 1.8: +27 -27 lines
- apply DOKs cosmetic changes

Revision 1.8: download - view: text, markup, annotated - select for diffs
Tue Feb 10 18:41:56 2004 UTC (20 years, 4 months ago) by hunold
Branches: MAIN
Diff to: previous 1.7: preferred, colored
Changes since revision 1.7: +10 -3 lines
- if audio sync is lost, set begin_pts=end_pts=last_pts; this fixes problems
when begin_pts and end_pts drift too far apart when sync is lost. otherwise
memset()s with wrong sizes were done
- if av_sync is not present, discard the frame, but wait 40ms -- don't do a
busy while() loop -- on channel switches, the system would hang otherwise

Revision 1.7: download - view: text, markup, annotated - select for diffs
Tue Feb 10 12:46:49 2004 UTC (20 years, 4 months ago) by dok
Branches: MAIN
Diff to: previous 1.6: preferred, colored
Changes since revision 1.6: +2 -1 lines
Avoid endless loop in feed thread.

Added myself to the copyright headers.

Revision 1.6: download - view: text, markup, annotated - select for diffs
Tue Feb 10 12:32:56 2004 UTC (20 years, 4 months ago) by dok
Branches: MAIN
Diff to: previous 1.5: preferred, colored
Changes since revision 1.5: +94 -43 lines
Stabilized A/V sync and decoding by using correct arrangements
of Flip(), WaitForSync(), SetField() and fine tuned timings.

Automatically use deinterlacing if supported.

Increased audio prebuffering from 25% to 50%.

Use SCHED_RR for feed thread.

Use dfb_memcpy() by adding a hackish extern declaration for it.

Enhanced debugging output.

Cleaned up demo application code.

Revision 1.5: download - view: text, markup, annotated - select for diffs
Mon Feb 9 19:59:18 2004 UTC (20 years, 4 months ago) by hunold
Branches: MAIN
Diff to: previous 1.4: preferred, colored
Changes since revision 1.4: +5 -3 lines
- C99 fix

Revision 1.4: download - view: text, markup, annotated - select for diffs
Mon Feb 9 16:49:53 2004 UTC (20 years, 4 months ago) by hunold
Branches: MAIN
Diff to: previous 1.3: preferred, colored
Changes since revision 1.3: +55 -42 lines
- add some deinterlacing code, but disable it by default
- measure AUDIO_BUFFER_FULLNESS in percent
- lower AUDIO_BUFFER_FULLNESS to 25% => faster switching
- code cleanup in decode thread
- don't display bogus frame after resync

Revision 1.3: download - view: text, markup, annotated - select for diffs
Mon Feb 9 13:58:36 2004 UTC (20 years, 4 months ago) by hunold
Branches: MAIN
Diff to: previous 1.2: preferred, colored
Changes since revision 1.2: +0 -5 lines
- simplify list handling in audio_manage()
- set "audio pts" to "end pts" not "begin pts". this has caused a
constant audio offset of the size of the audio chunk
- remove AUDIO_OFFSET define

Revision 1.2: download - view: text, markup, annotated - select for diffs
Fri Feb 6 12:04:54 2004 UTC (20 years, 4 months ago) by hunold
Branches: MAIN
Diff to: previous 1.1: preferred, colored
Changes since revision 1.1: +5 -0 lines
- reformat docs
- add constant offset and a note that we need to fix it
- add fusionsound realtimepriority patch and a note to the docs

Revision 1.1: download - view: text, markup, annotated - select for diffs
Fri Feb 6 10:56:16 2004 UTC (20 years, 4 months ago) by hunold
Branches: MAIN
Initial release. It's done.

Diff request

This form allows you to request diffs between any two revisions of a file. You may select a symbolic revision name using the selection box or you may type in a numeric name using the type-in text box.

Log view options

LinuxTV legacy CVS <linuxtv.org/cvs>