Displaying 20 results from an estimated 33 matches for "swfdec_buffer_queue_get_depth".
2007 Apr 20
0
8 commits - libswfdec/swfdec_buffer.c libswfdec/swfdec_buffer.h libswfdec/swfdec_root_sprite.c libswfdec/swfdec_swf_decoder.c libswfdec/swfdec_tag.c NEWS test/parse.c
...buffer_queue_new:
+ *
+ * Creates a new empty buffer queue.
+ *
+ * Returns: a new buffer queue. Use swfdec_buffer_queue_unref () to free it.
+ **/
SwfdecBufferQueue *
swfdec_buffer_queue_new (void)
{
@@ -332,26 +341,65 @@ swfdec_buffer_queue_new (void)
return buffer_queue;
}
-int
+/**
+ * swfdec_buffer_queue_get_depth:
+ * @queue: a #SwfdecBufferQueue
+ *
+ * Returns the number of bytes currently in @queue.
+ *
+ * Returns: amount of bytes in @queue.
+ **/
+guint
swfdec_buffer_queue_get_depth (SwfdecBufferQueue * queue)
{
+ g_return_val_if_fail (queue != NULL, 0);
+
return queue->depth;
}
-int
+/**
+...
2007 Nov 10
0
7 commits - libswfdec/swfdec_movie.c libswfdec/swfdec_resource.c libswfdec/swfdec_resource.h libswfdec/swfdec_sprite_movie_as.c test/trace
...source_loader_target_parse (SwfdecLoaderTarget *target, SwfdecLoader *l
SwfdecStatus status;
guint parsed;
- if (dec == NULL && swfdec_buffer_queue_get_offset (loader->queue == 0)) {
+ if (dec == NULL && swfdec_buffer_queue_get_offset (loader->queue) == 0) {
if (swfdec_buffer_queue_get_depth (loader->queue) < SWFDEC_DECODER_DETECT_LENGTH)
return;
buffer = swfdec_buffer_queue_peek (loader->queue, 4);
commit ca60b5b27a2c9d9b0a83d14b46a5250cfdac4272
Author: Benjamin Otte <otte at gnome.org>
Date: Sat Nov 10 18:57:04 2007 +0100
add a test for the recent SE...
2007 Mar 20
0
5 commits - configure.ac doc/Makefile.am doc/swfdec-sections.txt libswfdec/swfdec_js_net_stream.c libswfdec/swfdec_loader.c libswfdec/swfdec_loader.h libswfdec/swfdec_net_stream.c
...;
+ g_object_notify (G_OBJECT (loader), "loaded");
swfdec_loader_parse (loader);
}
@@ -437,8 +445,7 @@ swfdec_loader_eof (SwfdecLoader *loader)
loader->eof = TRUE;
if (loader->size == 0) {
- gulong bytes = swfdec_buffer_queue_get_offset (loader->queue) +
- swfdec_buffer_queue_get_depth (loader->queue);
+ gulong bytes = swfdec_loader_get_loaded (loader);
if (bytes)
swfdec_loader_set_size (loader, bytes);
}
@@ -568,6 +575,24 @@ swfdec_loader_get_size (SwfdecLoader *lo
}
/**
+ * swfdec_loader_get_loaded:
+ * @loader: a #SwfdecLoader
+ *
+ * Gets the amount o...
2007 Mar 29
0
Branch 'as' - 9 commits - configure.ac doc/swfdec-sections.txt libswfdec/Makefile.am libswfdec/swfdec_as_context.c libswfdec/swfdec_as_context.h libswfdec/swfdec_as_frame.c libswfdec/swfdec_as_frame.h libswfdec/swfdec_as_stack.c
...Queue
+SWFDEC_TYPE_BUFFER_QUEUE
swfdec_buffer_new
swfdec_buffer_new_and_alloc
swfdec_buffer_new_and_alloc0
@@ -84,13 +86,17 @@ swfdec_buffer_ref
swfdec_buffer_unref
swfdec_buffer_queue_new
swfdec_buffer_queue_clear
-swfdec_buffer_queue_free
+swfdec_buffer_queue_ref
+swfdec_buffer_queue_unref
swfdec_buffer_queue_get_depth
swfdec_buffer_queue_get_offset
swfdec_buffer_queue_push
swfdec_buffer_queue_pull
swfdec_buffer_queue_pull_buffer
swfdec_buffer_queue_peek
+<SUBSECTION Standard>
+swfdec_buffer_get_type
+swfdec_buffer_queue_get_type
</SECTION>
<SECTION>
diff --git a/libswfdec/swfdec_buffer...
2007 Aug 01
0
9 commits - doc/swfdec-sections.txt libswfdec/swfdec_as_frame.c libswfdec/swfdec_loader.c libswfdec/swfdec_loader.h libswfdec/swfdec_loader_internal.h libswfdec/swfdec_loadertarget.c libswfdec/swfdec_loadertarget.h libswfdec/swfdec_movie.c
...lass;
gboolean recheck = FALSE;
- if (loader->error) {
- if (stream->flvdecoder == NULL)
- swfdec_net_stream_onstatus (stream, SWFDEC_AS_STR_NetStream_Play_StreamNotFound,
- SWFDEC_AS_STR_error);
- return;
- }
if (loader->state != SWFDEC_LOADER_STATE_EOF && swfdec_buffer_queue_get_depth (loader->queue) == 0) {
SWFDEC_INFO ("nothing to do");
return;
@@ -246,45 +271,37 @@ swfdec_net_stream_loader_target_parse (S
}
}
out:
- if (loader->state == SWFDEC_LOADER_STATE_EOF) {
- guint first, last;
- swfdec_flv_decoder_eof (stream->flvdecoder);
-...
2007 Oct 14
0
4 commits - libswfdec/swfdec_as_interpret.c libswfdec/swfdec_sound.c test/trace
...C_IS_SOUND (sound), NULL);
g_return_val_if_fail (format != NULL, NULL);
@@ -199,7 +200,12 @@ swfdec_sound_get_decoded (SwfdecSound *sound, SwfdecAudioFormat *format)
swfdec_buffer_queue_push (queue, tmp);
}
swfdec_audio_decoder_free (decoder);
- tmp = swfdec_buffer_queue_pull (queue, swfdec_buffer_queue_get_depth (queue));
+ depth = swfdec_buffer_queue_get_depth (queue);
+ if (depth == 0) {
+ SWFDEC_ERROR ("decoding didn't produce any data, bailing");
+ return NULL;
+ }
+ tmp = swfdec_buffer_queue_pull (queue, depth);
swfdec_buffer_queue_unref (queue);
SWFDEC_LOG ("after...
2007 Nov 12
0
13 commits - libswfdec/Makefile.am libswfdec/swfdec_decoder.c libswfdec/swfdec_decoder.h libswfdec/swfdec_flv_decoder.c libswfdec/swfdec_flv_decoder.h libswfdec/swfdec_image.c libswfdec/swfdec_image_decoder.c libswfdec/swfdec_image_decoder.h
...SwfdecLoader *l
if (dec == NULL) {
SWFDEC_ERROR ("no decoder found for format");
} else {
+ glong total;
resource->decoder = dec;
+ total = swfdec_loader_get_size (loader);
+ if (total >= 0)
+ dec->bytes_total = total;
}
}
while (swfdec_buffer_queue_get_depth (loader->queue)) {
commit d53a117dd399129bc205b3c1d60f2519433eba96
Author: Benjamin Otte <otte at gnome.org>
Date: Mon Nov 12 14:16:41 2007 +0100
make the movie display the loaded image
diff --git a/libswfdec/swfdec_resource.c b/libswfdec/swfdec_resource.c
index e24c512..e6ed60d 10...
2007 Apr 08
0
6 commits - libswfdec/Makefile.am libswfdec/swfdec_audio_flv.c libswfdec/swfdec_audio_flv.h libswfdec/swfdec_audio_stream.c libswfdec/swfdec_audio_stream.h libswfdec/swfdec_buffer.c libswfdec/swfdec_codec_adpcm.c libswfdec/swfdec_codec_audio.c
...size */
while (swfdec_bits_left (&bits) >= 22) {
- buffer = swfdec_codec_adpcm_decode_chunk (&bits, n_bits, channels);
+ buffer = swfdec_audio_decoder_adpcm_decode_chunk (&bits, n_bits, channels);
if (buffer)
- swfdec_buffer_queue_push (queue, buffer);
- }
- if (swfdec_buffer_queue_get_depth (queue)) {
- buffer = swfdec_buffer_queue_pull (queue,
- swfdec_buffer_queue_get_depth (queue));
- } else {
- buffer = NULL;
+ swfdec_buffer_queue_push (adpcm->queue, buffer);
}
- swfdec_buffer_queue_unref (queue);
- return buffer;
}
static SwfdecBuffer *
-swfdec_codec_adpcm...
2007 Oct 28
0
9 commits - configure.ac libswfdec/swfdec_as_context.c libswfdec/swfdec_audio_internal.h libswfdec/swfdec_codec_audio.c libswfdec/swfdec_codec_gst.c libswfdec/swfdec_sound.c
...dec_sound_get_decoded (SwfdecSound *sound, SwfdecAudioFormat *format)
while ((tmp = swfdec_audio_decoder_pull (decoder))) {
swfdec_buffer_queue_push (queue, tmp);
}
+ sound->decoded_format = swfdec_audio_decoder_get_format (decoder);
swfdec_audio_decoder_free (decoder);
depth = swfdec_buffer_queue_get_depth (queue);
if (depth == 0) {
@@ -204,7 +205,6 @@ swfdec_sound_get_decoded (SwfdecSound *sound, SwfdecAudioFormat *format)
tmp = swfdec_buffer_queue_pull (queue, depth);
swfdec_buffer_queue_unref (queue);
- sound->decoded_format = swfdec_audio_decoder_get_format (decoder);
sample_byt...
2007 Nov 28
0
libswfdec/swfdec_loader.c
...files
diff --git a/libswfdec/swfdec_loader.c b/libswfdec/swfdec_loader.c
index 02c25f1..50d9122 100644
--- a/libswfdec/swfdec_loader.c
+++ b/libswfdec/swfdec_loader.c
@@ -611,6 +611,10 @@ swfdec_loader_get_text (SwfdecLoader *loader, guint version)
/* get the text from the loader */
size = swfdec_buffer_queue_get_depth (loader->queue);
+ if (size == 0) {
+ SWFDEC_LOG ("empty loader, returning empty string");
+ return g_strdup ("");
+ }
raw = g_try_malloc (size + 1);
if (!raw) {
SWFDEC_ERROR ("not enough memory to copy %u bytes", size);
2007 Mar 16
0
libswfdec/swfdec_loader.c libswfdec/swfdec_loader.h libswfdec/swfdec_loader_internal.h libswfdec/swfdec_net_stream.c libswfdec/swfdec_root_movie.c libswfdec/swfdec_xml.c
...wfdec_xml.c
index 675e532..366bf60 100644
--- a/libswfdec/swfdec_xml.c
+++ b/libswfdec/swfdec_xml.c
@@ -80,6 +80,7 @@ swfdec_xml_loader_target_parse (SwfdecLo
} else {
guint size;
g_assert (loader->eof);
+ swfdec_loader_set_data_type (loader, SWFDEC_LOADER_DATA_TEXT);
size = swfdec_buffer_queue_get_depth (loader->queue);
xml->text = g_try_malloc (size + 1);
if (xml->text) {
@@ -184,10 +185,6 @@ swfdec_xml_load (SwfdecXml *xml, const c
swfdec_xml_reset (xml);
xml->loader = swfdec_player_load (xml->player, url);
- if (xml->loader == NULL) {
- swfdec_xml_ondata...
2007 Oct 14
0
4 commits - libswfdec/swfdec_codec_audio.c libswfdec/swfdec_codec_gst.c libswfdec/swfdec_codec_video.c libswfdec/swfdec_sound.c
...ree the reserved cache space on error
diff --git a/libswfdec/swfdec_sound.c b/libswfdec/swfdec_sound.c
index e4e9086..f086849 100644
--- a/libswfdec/swfdec_sound.c
+++ b/libswfdec/swfdec_sound.c
@@ -203,6 +203,7 @@ swfdec_sound_get_decoded (SwfdecSound *sound, SwfdecAudioFormat *format)
depth = swfdec_buffer_queue_get_depth (queue);
if (depth == 0) {
SWFDEC_ERROR ("decoding didn't produce any data, bailing");
+ swfdec_cached_unload (SWFDEC_CACHED (sound));
return NULL;
}
tmp = swfdec_buffer_queue_pull (queue, depth);
commit b083f36d612e43ae936073772857075c959079ad
Author: Benjamin O...
2007 Dec 10
0
6 commits - libswfdec/Makefile.am libswfdec/swfdec_as_interpret.c libswfdec/swfdec_color_as.c libswfdec/swfdec_graphic_movie.c libswfdec/swfdec_image_decoder.c libswfdec/swfdec_morph_movie.c libswfdec/swfdec_movie_as_drawing.c
...c
+++ b/libswfdec/swfdec_image_decoder.c
@@ -82,10 +82,16 @@ swfdec_image_decoder_eof (SwfdecDecoder *dec)
{
SwfdecImageDecoder *image = SWFDEC_IMAGE_DECODER (dec);
SwfdecBuffer *buffer;
+ guint depth;
if (image->queue == NULL)
return 0;
- /* FIXME: size checking */
+ depth = swfdec_buffer_queue_get_depth (image->queue);
+ if (depth == 0) {
+ swfdec_buffer_queue_unref (image->queue);
+ image->queue = NULL;
+ return SWFDEC_STATUS_ERROR;
+ }
buffer = swfdec_buffer_queue_pull (image->queue,
swfdec_buffer_queue_get_depth (image->queue));
swfdec_buffer_queue_unref (...
2007 Apr 03
0
11 commits - libswfdec-gtk/swfdec_gtk_loader.c libswfdec-gtk/swfdec_playback_alsa.c libswfdec-gtk/swfdec_source.c libswfdec/swfdec_cached.c libswfdec/swfdec_font.c libswfdec/swfdec_morphshape.c libswfdec/swfdec_net_stream.c libswfdec/swfdec_script.c
...mportant
diff --git a/libswfdec/swfdec_net_stream.c b/libswfdec/swfdec_net_stream.c
index 99363f9..681e401 100644
--- a/libswfdec/swfdec_net_stream.c
+++ b/libswfdec/swfdec_net_stream.c
@@ -225,7 +225,7 @@ swfdec_net_stream_loader_target_parse (S
return;
}
if (!loader->eof && swfdec_buffer_queue_get_depth (loader->queue) == 0) {
- SWFDEC_WARNING ("nothing to parse?!");
+ SWFDEC_INFO ("nothing to do");
return;
}
if (stream->flvdecoder == NULL) {
2007 Aug 18
0
8 commits - libswfdec/Makefile.am libswfdec/swfdec_as_strings.c libswfdec/swfdec_load_object_as.c libswfdec/swfdec_load_object_as.h libswfdec/swfdec_load_object.c libswfdec/swfdec_load_object.h libswfdec/swfdec_player.c libswfdec/swfdec_player_internal.h
...* emit onData */
+ swfdec_load_object_ondata (load_object);
+}
+
+static void
+swfdec_load_object_loader_target_eof (SwfdecLoaderTarget *target, SwfdecLoader *loader)
+{
+ SwfdecLoadObject *load_object = SWFDEC_LOAD_OBJECT (target);
+ guint size;
+
+ /* get the text from the loader */
+ size = swfdec_buffer_queue_get_depth (loader->queue);
+ load_object->text = g_try_malloc (size + 1);
+ if (load_object->text) {
+ SwfdecBuffer *buffer;
+ guint i = 0;
+ while ((buffer = swfdec_buffer_queue_pull_buffer (loader->queue))) {
+ memcpy (load_object->text + i, buffer->data, buffer->length...
2007 Nov 08
0
libswfdec/swfdec_load_object.c libswfdec/swfdec_movie.c libswfdec/swfdec_player.c libswfdec/swfdec_player_internal.h libswfdec/swfdec_resource.c libswfdec/swfdec_resource.h
...wfdecPlayer *player = SWFDEC_PLAYER (SWFDEC_AS_OBJECT (instance->movie)->context);
SwfdecBuffer *buffer;
SwfdecDecoder *dec = instance->decoder;
SwfdecDecoderClass *klass;
@@ -192,7 +236,7 @@ swfdec_resource_loader_target_parse (SwfdecLoaderTarget *target, SwfdecLoader *l
if (swfdec_buffer_queue_get_depth (loader->queue) < SWFDEC_DECODER_DETECT_LENGTH)
return;
buffer = swfdec_buffer_queue_peek (loader->queue, 4);
- dec = swfdec_decoder_new (player, buffer);
+ dec = swfdec_decoder_new (instance->player, buffer);
swfdec_buffer_unref (buffer);
if (dec == NULL) {...
2007 Feb 13
0
9 commits - libswfdec/js libswfdec/swfdec_bits.c libswfdec/swfdec_bits.h libswfdec/swfdec_codec_screen.c libswfdec/swfdec_image.c libswfdec/swfdec_script.c test/Makefile.am test/swfdec_out.c test/swfdec_out.h test/swfedit.c test/swfedit_file.c
..., bits, "frames", SWFEDIT_TOKEN_UINT16, NULL);
}
static gboolean
@@ -254,7 +254,6 @@ swfedit_file_write (SwfeditFile *file)
swfdec_out_put_u8 (out, 'W');
swfdec_out_put_u8 (out, 'S');
swfedit_tag_write_token (token, out, 0);
- g_print ("length: %u", swfdec_buffer_queue_get_depth (queue));
swfdec_out_put_u32 (out, swfdec_buffer_queue_get_depth (queue) + 8);
swfdec_out_prepare_bytes (out, swfdec_buffer_queue_get_depth (queue));
while ((buffer = swfdec_buffer_queue_pull_buffer (queue))) {
diff --git a/test/swfedit_list.c b/test/swfedit_list.c
new file mode 100644
ind...
2007 Jan 25
0
Branch 'interpreter' - 28 commits - configure.ac libswfdec/js libswfdec/swfdec_buffer.c libswfdec/swfdec_edittext_movie.c libswfdec/swfdec_js.c libswfdec/swfdec_js_global.c libswfdec/swfdec_js.h libswfdec/swfdec_js_movie.c libswfdec/swfdec_player.c
...queue_push (queue, buffer);
+
+ /* FIXME: implement compression */
+ out = swfdec_out_open ();
+ swfdec_out_put_u8 (out, 'F');
+ swfdec_out_put_u8 (out, 'W');
+ swfdec_out_put_u8 (out, 'S');
+ swfedit_tag_write_token (token, out, 0);
+ g_print ("length: %u", swfdec_buffer_queue_get_depth (queue));
+ swfdec_out_put_u32 (out, swfdec_buffer_queue_get_depth (queue) + 8);
+ swfdec_out_prepare_bytes (out, swfdec_buffer_queue_get_depth (queue));
+ while ((buffer = swfdec_buffer_queue_pull_buffer (queue))) {
+ swfdec_out_put_buffer (out, buffer);
+ swfdec_buffer_unref (buffer);
+...
2007 Jul 26
0
17 commits - doc/swfdec-sections.txt libswfdec/compiler.c libswfdec/.gitignore libswfdec/Makefile.am libswfdec/swfdec_asbroadcaster.c libswfdec/swfdec_as_context.c libswfdec/swfdec_as_object.c libswfdec/swfdec_as_object.h libswfdec/swfdec_as_strings.c
...f --git a/libswfdec/swfdec_swf_decoder.c b/libswfdec/swfdec_swf_decoder.c
index 1bd5ff5..1521e6f 100644
--- a/libswfdec/swfdec_swf_decoder.c
+++ b/libswfdec/swfdec_swf_decoder.c
@@ -365,6 +365,10 @@ swfdec_swf_decoder_parse (SwfdecDecoder
}
break;
case SWFDEC_STATE_EOF:
+ if (swfdec_buffer_queue_get_depth (s->input_queue) > 0) {
+ SWFDEC_WARNING ("%u bytes after EOF", swfdec_buffer_queue_get_depth (s->input_queue));
+ swfdec_buffer_queue_clear (s->input_queue);
+ }
return SWFDEC_STATUS_EOF;
}
diff-tree 865fbab009d84a3c36216d9a56ba5ffa399c96b2 (from bc30a8fb8c5e...
2007 Mar 14
0
10 commits - libswfdec/swfdec_flv_decoder.c libswfdec/swfdec_flv_decoder.h libswfdec/swfdec_js_global.c libswfdec/swfdec_js_movie.c libswfdec/swfdec_js_net_stream.c libswfdec/swfdec_loader.c libswfdec/swfdec_loader.h libswfdec/swfdec_loadertarget.c
...M (target);
+ SwfdecDecoderClass *klass;
+ gboolean recheck = FALSE;
+
+ if (loader->error) {
+ if (stream->flvdecoder == NULL)
+ swfdec_net_stream_onstatus (stream, "NetStream.Play.StreamNotFound", "error");
+ return;
+ }
+ if (!loader->eof && swfdec_buffer_queue_get_depth (loader->queue) == 0) {
+ SWFDEC_WARNING ("nothing to parse?!");
+ return;
+ }
+ if (stream->flvdecoder == NULL) {
+ /* FIXME: add mp3 support */
+ stream->flvdecoder = g_object_new (SWFDEC_TYPE_FLV_DECODER, NULL);
+ SWFDEC_DECODER (stream->flvdecoder)->pla...