Displaying 20 results from an estimated 34 matches for "swfdeccontent".
2007 Apr 22
0
libswfdec/swfdec_tag.c
...;sequence->end > frame)
+static guint
+swfdec_button_remove_duplicates (SwfdecButton *button, int depth, guint states)
+{
+ GList *walk;
+ guint taken = 0;
+ guint i;
+
+ /* 1) find out which states are already taken */
+ for (walk = button->records; walk; walk = walk->next) {
+ SwfdecContent *cur = walk->data;
+ if (cur->depth != depth)
+ continue;
+ for (i = 0; i < 4; i++) {
+ if (CONTENT_IN_FRAME (cur, i))
+ taken |= (1 << i);
+ }
+ }
+ /* 2) mark states that overlap */
+ taken &= states;
+ /* 3) remove the overlapping states */
+ if (taken)...
2007 Jun 13
0
Branch 'as' - 6 commits - libswfdec/swfdec_as_array.c libswfdec/swfdec_button_movie.c libswfdec/swfdec_morph_movie.c libswfdec/swfdec_movie_asprops.c libswfdec/swfdec_movie.c libswfdec/swfdec_movie.h libswfdec/swfdec_player.c libswfdec/swfdec_sprite.c
...d Jun 13 15:38:50 2007 +0200
Merge branch 'as' of ssh://company at git.freedesktop.org/git/swfdec into as
diff --cc libswfdec/swfdec_sprite_movie_as.c
index cf35c13,c5a3c4c..c2e9a42
@@@ -281,12 -298,13 +295,12 @@@
SwfdecMovie *ret;
const char *name, *export;
int depth;
- SwfdecContent *content;
SwfdecGraphic *sprite;
- export = swfdec_as_value_to_string (obj->context, &argv[0]);
- name = swfdec_as_value_to_string (obj->context, &argv[1]);
+ export = swfdec_as_value_to_string (cx, &argv[0]);
+ name = swfdec_as_value_to_string (cx, &argv[1]);...
2007 Mar 07
0
11 commits - libswfdec/swfdec_event.c libswfdec/swfdec_event.h libswfdec/swfdec_js_movie.c libswfdec/swfdec_movie.c libswfdec/swfdec_scriptable.c libswfdec/swfdec_scriptable.h libswfdec/swfdec_script.c libswfdec/swfdec_sprite.c libswfdec/swfdec_sprite.h
...content) {
+ g_hash_table_destroy (sprite->live_content);
+ sprite->live_content = NULL;
+ }
if (sprite->frames) {
for (i = 0; i < sprite->n_frames; i++) {
g_free (sprite->frames[i].label);
@@ -123,39 +127,7 @@ swfdec_sprite_add_sound_chunk (SwfdecSpr
static SwfdecContent *
swfdec_content_find (SwfdecSprite *sprite, int depth)
{
- guint i, j;
- SwfdecContent *content;
- static unsigned long long int count = 0;
-
- if (++count % 10000 == 0)
- g_print ("%llu\n", count);
-
- for (i = sprite->parse_frame; i <= sprite->parse_frame /* wait for...
2007 Jun 14
0
Branch 'as' - 4 commits - libswfdec/swfdec_edittext_movie.c libswfdec/swfdec_movie.c libswfdec/swfdec_movie.h libswfdec/swfdec_sprite.c libswfdec/swfdec_sprite_movie.c player/swfdec_debug_movies.c
...ec_matrix_get_yscale (&movie->original_transform);
diff-tree e19bb05ecfe5bd2c134f1f1a21fb846179721d65 (from 76e741342c4dab3f7f40715b8018c1f5f8394ef9)
Author: Benjamin Otte <otte at gnome.org>
Date: Thu Jun 14 09:55:42 2007 +0200
add has_color_transform and has_transform field to SwfdecContent
SwfdecContent needs to die, but that's another big reorg patch I'm scared of atm.
As far as I see it, a SwfdecSprite should just save all displaylist tags (the
stuff that's called actions right now) verbatim in a long list of buffers and
whenever we execute these ta...
2007 Jun 09
0
Branch 'as' - libswfdec/swfdec_flv_decoder.c libswfdec/swfdec_movie.c libswfdec/swfdec_movie.h libswfdec/swfdec_sprite_movie_as.c
...e_movie_as.c | 4 ++--
4 files changed, 13 insertions(+), 8 deletions(-)
New commits:
diff-tree d3ff93817f2931e6f6e9bb8400fe807c92e8f414 (from a84be08c2e1e412e3f1d7d485458dafc661411d1)
Author: Benjamin Otte <otte at gnome.org>
Date: Sun Jun 10 00:19:15 2007 +0200
add a free flag to SwfdecContent
diff --git a/libswfdec/swfdec_flv_decoder.c b/libswfdec/swfdec_flv_decoder.c
index d9fc7f9..2352471 100644
--- a/libswfdec/swfdec_flv_decoder.c
+++ b/libswfdec/swfdec_flv_decoder.c
@@ -653,8 +653,8 @@ swfdec_flv_decoder_add_movie (SwfdecFlvD
video->width = G_MAXUINT;
video->height = G_...
2007 Jun 18
0
Branch 'as' - 8 commits - libswfdec/swfdec_movie.c libswfdec/swfdec_sprite.c libswfdec/swfdec_sprite.h libswfdec/swfdec_sprite_movie.c libswfdec/swfdec_sprite_movie.h libswfdec/swfdec_swf_decoder.c libswfdec/swfdec_swf_decoder.h
...ves/swfdec/2007-June/000315.html for a rationale.
Most of the lines in this diff is moving the parsers (in particular the
PlaceObject parser) from swfdec_sprite.c to swfdec_sprite_movie.c.
This patch achieves the following:
- DisplayList tags are no longer parsed and put into a SwfdecContent structure,
and then added to a sprites SwfdecFrame structure, but instead queued in
sprite->actions, which is a list of tag/buffer tuples.
- swfdec_sprite_movie_perform_one_action() is now given one tag/buffer tuple,
parses it and executes it.
- ShowFrame tags are now h...
2007 Mar 07
0
13 commits - libswfdec/Makefile.am libswfdec/swfdec_js_global.c libswfdec/swfdec_js_movie.c libswfdec/swfdec_root_movie.c libswfdec/swfdec_root_movie.h libswfdec/swfdec_script.c libswfdec/swfdec_sprite.h libswfdec/swfdec_sprite_movie.c
...ovie.c
+++ b/libswfdec/swfdec_js_movie.c
@@ -382,6 +382,57 @@ swfdec_js_copy_props (SwfdecMovie *targe
}
static JSBool
+swfdec_js_movie_attachMovie (JSContext *cx, JSObject *obj, uintN argc, jsval *argv, jsval *rval)
+{
+ SwfdecMovie *movie, *ret;
+ const char *name, *export;
+ int depth;
+ SwfdecContent *content;
+ SwfdecGraphic *sprite;
+
+ movie = JS_GetPrivate (cx, obj);
+ g_assert (movie);
+
+ export = swfdec_js_to_string (cx, argv[0]);
+ name = swfdec_js_to_string (cx, argv[1]);
+ if (export == NULL || name == NULL)
+ return JS_FALSE;
+ sprite = swfdec_root_movie_get_export (SWFDEC_...
2007 Jun 19
0
Branch 'as' - test/dump.c
...PT:
- g_print (" %4u script\n", i);
- break;
- case SWFDEC_SPRITE_ACTION_REMOVE:
- g_print (" %4u %4d remove\n", i, GPOINTER_TO_INT (action->data) + 16384);
- break;
- case SWFDEC_SPRITE_ACTION_ADD:
- case SWFDEC_SPRITE_ACTION_UPDATE:
- {
- SwfdecContent *content = action->data;
- g_print (" %4u %4u %s", i, content->depth + 16384,
- action->type == SWFDEC_SPRITE_ACTION_ADD ? "add " : "update");
- if (content->clip_depth)
- g_print ("%4d", content->clip_depth + 16384);
-...
2007 Nov 28
0
59 commits - libswfdec-gtk/swfdec_gtk_widget.c libswfdec/swfdec_as_object.c libswfdec/swfdec_as_object.h libswfdec/swfdec_button.c libswfdec/swfdec_button.h libswfdec/swfdec_button_movie.c libswfdec/swfdec_button_movie.h libswfdec/swfdec_event.c
...e_mouse_in (SwfdecMovie *movie, double x, double y)
+static gboolean
+swfdec_button_movie_hit_test (SwfdecButtonMovie *button, double x, double y)
{
- GList *walk;
+ SwfdecSwfDecoder *dec;
+ GSList *walk;
double tmpx, tmpy;
- SwfdecButton *button = SWFDEC_BUTTON_MOVIE (movie)->button;
- SwfdecContent *content;
- for (walk = button->records; walk; walk = walk->next) {
- cairo_matrix_t inverse;
- content = walk->data;
- if (content->end <= SWFDEC_BUTTON_HIT)
+ dec = SWFDEC_SWF_DECODER (SWFDEC_MOVIE (button)->resource->decoder);
+ for (walk = button->button-&g...
2007 Jan 14
0
Changes to 'refs/tags/0.4.1'
...s/SwfdecCodec/SwfdecAudioCodec/ and introduce SwfdecVideoCodec
add swfdec_bits_get_bu16
Make the z_stream part of the SwfdecDecoder struct
rate == 0 is allowed now
fix wrong type in macros
remove \n from debugging messages
fix RGB555 images
append the right SwfdecContent to the list
get the next_event time before comparing
Fix includes
add jpeg_rgb_decoder_get_image_size
rework cache handling
The key should be static const, we don't want it on the stack
Merge branch 'master' of ssh://company@git.freedesktop.org/git/sw...
2007 Apr 13
0
5 commits - libswfdec/Makefile.am libswfdec/swfdec_color.c libswfdec/swfdec_color.h libswfdec/swfdec_font.c libswfdec/swfdec_loadertarget.c libswfdec/swfdec_movie.h libswfdec/swfdec_pattern.c libswfdec/swfdec_pattern.h libswfdec/swfdec_player.c
...+0200
Add initial support PlaceObject3
the code only reads the tag and aborts when parsing filters.
diff --git a/libswfdec/swfdec_movie.h b/libswfdec/swfdec_movie.h
index f1db624..5b56656 100644
--- a/libswfdec/swfdec_movie.h
+++ b/libswfdec/swfdec_movie.h
@@ -45,11 +45,12 @@ struct _SwfdecContent {
SwfdecGraphic * graphic; /* object to display or NULL */
int depth; /* at which depth to display */
int clip_depth; /* clip depth of object */
- guint ratio;
+ guint ratio;
cairo_matrix_t transform;
SwfdecColorTransform color_transform;
char * name;
SwfdecE...
2007 Jun 15
0
Branch 'as' - 5 commits - libswfdec/swfdec_as_native_function.c libswfdec/swfdec_edittext.c libswfdec/swfdec_edittext.h libswfdec/swfdec_font.c libswfdec/swfdec_font.h libswfdec/swfdec_image.c libswfdec/swfdec_image.h libswfdec/swfdec_morphshape.h
...Decoder * s, guint tag);
void swfdec_sprite_add_sound_chunk (SwfdecSprite * sprite, guint frame,
SwfdecBuffer * chunk, int skip, guint n_samples);
void swfdec_sprite_set_n_frames (SwfdecSprite *sprite, guint n_frames, guint rate);
@@ -98,12 +98,11 @@ int swfdec_sprite_get_frame (SwfdecSpr
SwfdecContent *swfdec_content_new (int depth);
void swfdec_content_free (SwfdecContent *content);
-int tag_show_frame (SwfdecSwfDecoder * s);
-int tag_func_set_background_color (SwfdecSwfDecoder * s);
-int swfdec_spriteseg_place_object_2 (SwfdecSwfDecoder * s);
-int swfdec_spriteseg_place_object_3 (SwfdecSwfD...
2007 Aug 13
0
2 commits - libswfdec/swfdec_sprite_movie.c libswfdec/swfdec_tag.c libswfdec/swfdec_tag.h
...bits, &s->b, length > 2 ? length - 2 : 0);
+ else
+ swfdec_bits_init_bits (&bits, &s->b, swfdec_bits_left (&s->b) / 8);
+ while (swfdec_bits_peek_u8 (&bits)) {
guint character;
guint depth;
guint states;
+ gboolean blend_mode, has_filters;
SwfdecContent *content;
- swfdec_bits_syncbits (bits);
- reserved = swfdec_bits_getbits (bits, 4);
- states = swfdec_bits_getbits (bits, 4);
- character = swfdec_bits_get_u16 (bits);
- depth = swfdec_bits_get_u16 (bits);
+ if (s->version >= 8) {
+ reserved = swfdec_bits_getbits (&a...
2007 Mar 22
0
7 commits - configure.ac doc/swfdec-docs.sgml libswfdec/js libswfdec/swfdec_buffer.c libswfdec/swfdec_buffer.h libswfdec/swfdec_js_movie.c test/trace
...bj, SWFDEC_TYPE_MOVIE);
+ if (movie == NULL) {
+ SWFDEC_WARNING ("not a movie");
+ return JS_TRUE;
+ }
if (JSVAL_IS_OBJECT (argv[0])) {
other = swfdec_scriptable_from_jsval (cx, argv[0], SWFDEC_TYPE_MOVIE);
@@ -462,8 +507,11 @@ swfdec_js_movie_attachMovie (JSContext *
SwfdecContent *content;
SwfdecGraphic *sprite;
- movie = JS_GetPrivate (cx, obj);
- g_assert (movie);
+ movie = swfdec_scriptable_from_object (cx, obj, SWFDEC_TYPE_MOVIE);
+ if (movie == NULL) {
+ SWFDEC_WARNING ("not a movie");
+ return JS_TRUE;
+ }
export = swfdec_js_to_string (c...
2007 Jun 06
0
Branch 'as' - libswfdec/Makefile.am libswfdec/swfdec_root_movie.c libswfdec/swfdec_root_sprite.c libswfdec/swfdec_root_sprite.h libswfdec/swfdec_swf_decoder.c libswfdec/swfdec_swf_decoder.h libswfdec/swfdec_tag.c
...fdec_swf_decoder_get_tag_name (int tag);
int swfdec_swf_decoder_get_tag_flag (int tag);
diff --git a/libswfdec/swfdec_tag.c b/libswfdec/swfdec_tag.c
index 10a33b6..9fc60f5 100644
--- a/libswfdec/swfdec_tag.c
+++ b/libswfdec/swfdec_tag.c
@@ -39,7 +39,6 @@
#include "swfdec_movie.h" /* for SwfdecContent */
#include "swfdec_pattern.h"
#include "swfdec_player_internal.h"
-#include "swfdec_root_sprite.h"
#include "swfdec_script.h"
#include "swfdec_shape.h"
#include "swfdec_sound.h"
@@ -532,6 +531,70 @@ tag_func_file_attributes (SwfdecSw...
2007 Jun 12
0
Branch 'as' - 3 commits - libswfdec/swfdec_as_array.c libswfdec/swfdec_as_context.c libswfdec/swfdec_as_math.c libswfdec/swfdec_as_native_function.c libswfdec/swfdec_as_number.c libswfdec/swfdec_as_object.c libswfdec/swfdec_as_string.c
...ue *argv, SwfdecAsValue *rval)
+swfdec_sprite_movie_attachMovie (SwfdecAsContext *cx, SwfdecAsObject *obj,
+ guint argc, SwfdecAsValue *argv, SwfdecAsValue *rval)
{
SwfdecMovie *movie = SWFDEC_MOVIE (obj);
SwfdecMovie *ret;
@@ -287,10 +301,10 @@ swfdec_sprite_movie_attachMovie (SwfdecA
SwfdecContent *content;
SwfdecGraphic *sprite;
- export = swfdec_as_value_to_string (obj->context, &argv[0]);
- name = swfdec_as_value_to_string (obj->context, &argv[1]);
+ export = swfdec_as_value_to_string (cx, &argv[0]);
+ name = swfdec_as_value_to_string (cx, &argv[1]);
if (...
2007 Nov 07
0
7 commits - doc/swfdec-sections.txt libswfdec-gtk/swfdec_gtk_widget.c libswfdec/swfdec_as_strings.c libswfdec/swfdec_decoder.c libswfdec/swfdec_flv_decoder.c libswfdec/swfdec_movie_asprops.c libswfdec/swfdec_net_stream.c libswfdec/swfdec_player.c
...ecoder_is_eof (SwfdecFlvDecoder *flv)
{
@@ -631,39 +610,3 @@ swfdec_flv_decoder_eof (SwfdecFlvDecoder *flv)
flv->state = SWFDEC_STATE_EOF;
}
-SwfdecMovie *
-swfdec_flv_decoder_add_movie (SwfdecFlvDecoder *flv, SwfdecMovie *parent)
-{
- //g_assert_not_reached ();
- return NULL;
-#if 0
- SwfdecContent *content = swfdec_content_new (0);
- SwfdecMovie *movie;
- SwfdecVideo *video;
- SwfdecConnection *conn;
- SwfdecNetStream *stream;
-
- /* set up the video movie */
- video = g_object_new (SWFDEC_TYPE_VIDEO, NULL);
- video->width = G_MAXUINT;
- video->height = G_MAXUINT;
- content-&g...
2007 Mar 29
0
libswfdec-gtk/swfdec_playback_alsa.c libswfdec/swfdec_audio_event.h libswfdec/swfdec_audio_flv.h libswfdec/swfdec_audio_stream.h libswfdec/swfdec_bits.c libswfdec/swfdec_bits.h libswfdec/swfdec_buffer.c libswfdec/swfdec_buffer.h libswfdec/swfdec_cache.c
...;
- unsigned int n_line_bits;
+ guint n_fill_bits;
+ guint n_line_bits;
};
struct _SwfdecMorphShapeClass {
diff --git a/libswfdec/swfdec_movie.h b/libswfdec/swfdec_movie.h
index 2890f9c..f1db624 100644
--- a/libswfdec/swfdec_movie.h
+++ b/libswfdec/swfdec_movie.h
@@ -45,7 +45,7 @@ struct _SwfdecContent {
SwfdecGraphic * graphic; /* object to display or NULL */
int depth; /* at which depth to display */
int clip_depth; /* clip depth of object */
- unsigned int ratio;
+ guint ratio;
cairo_matrix_t transform;
SwfdecColorTransform color_transform;
char * name;
diff...
2007 Jan 16
0
9 commits - libswfdec/js libswfdec/Makefile.am libswfdec/swfdec_audio_stream.c libswfdec/swfdec_audio_stream.h libswfdec/swfdec_cache.c libswfdec/swfdec_cached.c libswfdec/swfdec_cached.h libswfdec/swfdec_edittext_movie.c libswfdec/swfdec_image.c
...Swfdec
- * Copyright (C) 2006 Benjamin Otte <otte@gnome.org>
+ * Copyright (C) 2006-2007 Benjamin Otte <otte@gnome.org>
*
* This library is free software; you can redistribute it and/or
* modify it under the terms of the GNU Lesser General Public
@@ -38,7 +38,7 @@
static const SwfdecContent default_content = SWFDEC_CONTENT_DEFAULT;
-G_DEFINE_ABSTRACT_TYPE (SwfdecMovie, swfdec_movie, G_TYPE_OBJECT)
+G_DEFINE_ABSTRACT_TYPE (SwfdecMovie, swfdec_movie, SWFDEC_TYPE_SCRIPTABLE)
static void
swfdec_movie_init (SwfdecMovie * movie)
@@ -308,7 +308,7 @@ swfdec_movie_destroy (SwfdecMovie *m...
2007 Aug 29
0
15 commits - libswfdec/swfdec_as_strings.c libswfdec/swfdec_initialize.as libswfdec/swfdec_initialize.h libswfdec/swfdec_movie.c libswfdec/swfdec_movie.h libswfdec/swfdec_sprite.c libswfdec/swfdec_sprite_movie.c libswfdec/swfdec_system_as.c
...{
g_queue_push_tail (player->init_queue, movie);
g_queue_push_tail (player->construct_queue, movie);
diff --git a/libswfdec/swfdec_movie.h b/libswfdec/swfdec_movie.h
index 41e99fa..d383c98 100644
--- a/libswfdec/swfdec_movie.h
+++ b/libswfdec/swfdec_movie.h
@@ -58,7 +58,7 @@ struct _SwfdecContent {
gboolean has_color_transform : 1;
char * name;
SwfdecEventList * events;
- cairo_operator_t operator; /* operator to use when painting (aka blend mode) */
+ guint blend_mode; /* operator to use when painting (aka blend mode) */
/* only used by buttons */
SwfdecContent...