Todo List

Class gnash::BufferedAudioStreamer::CursoredBuffer
Make private, have push take a simpler form (Buffer?)

Member gnash::BufferedAudioStreamer::push (CursoredBuffer *audio)
: take something simpler (SimpleBuffer?)

Namespace gnash::media
fix http://wiki.gnashdev.org/wiki/index.php/Libmedia, is obsoleted

Member gnash::media::AudioDecoder::decode (const EncodedAudioFrame &input, boost::uint32_t &outputSize)
return a SimpleBuffer by auto_ptr

Member gnash::media::AudioDecoder::decode (const boost::uint8_t *input, boost::uint32_t inputSize, boost::uint32_t &outputSize, boost::uint32_t &decodedData, bool parse)
return a SimpleBuffer by auto_ptr

Member gnash::media::AudioInfo::AudioInfo (int codeci, boost::uint16_t sampleRatei, boost::uint16_t sampleSizei, bool stereoi, boost::uint64_t durationi, codecType typei)

document units.

document if and how intepretation of sampleSizei changes

Member gnash::media::ExtraAudioInfoFlv::ExtraAudioInfoFlv (boost::uint8_t *extradata, size_t datasize)
take a SimpleBuffer by auto_ptr

Member gnash::media::ExtraVideoInfoFlv::ExtraVideoInfoFlv (boost::uint8_t *extradata, size_t datasize)
take a SimpleBuffer by auto_ptr

Member gnash::media::VideoInfo::VideoInfo (int codeci, boost::uint16_t widthi, boost::uint16_t heighti, boost::uint16_t frameRatei, boost::uint64_t durationi, codecType typei)

check if still needed.

check if still needed.

document units.

check if still needed, if so document units!

Member gnash::NetStream_as::seek (boost::uint32_t pos)
take milliseconds !!

Class gnash::RunResources
Check the lifetime and update documentation if it changes.

Member gnash::sound::EmbedSound::_soundInstances
make private

Member gnash::sound::EmbedSound::_soundInstancesMutex
make private

Member gnash::sound::EmbedSound::append (boost::uint8_t *data, unsigned int size)
, rather then copying the data over, keep it in its original form (multi-buffer) This way we avoid memory copies and we'd have no need for the additional m_frames_sizes map..

Member gnash::sound::EmbedSound::createInstance (media::MediaHandler &mh, unsigned long blockOffset, unsigned int inPoint, unsigned int outPoint, const SoundEnvelopes *envelopes, unsigned int loopCount)

document if every loop starts at secsOffset !

split this in createEventSoundInstance and createStreamingSoundInstance

Member gnash::sound::EmbedSound::eraseActiveSound (EmbedSoundInst *inst)
make private and mark EmbedSoundInst as friend ?

Class gnash::sound::NullSoundHandler
start a thread to fetch samples ?

Class gnash::sound::sound_handler
rename to gnash::sound::Mixer ?

Member gnash::sound::sound_handler::attach_aux_streamer (aux_streamer_ptr ptr, void *udata)
change to plugInputStream(InputStream* str), implement in base class

Member gnash::sound::sound_handler::mix (boost::int16_t *outSamples, boost::int16_t *inSamples, unsigned int nSamples, float volume)
implement a better mixer !

Class gnash::sound_sample
move definition to sound_handler.h and possibly nest inside sound_handler itself ?

Member gnash::URL::parse_querystring (const std::string &query_string, std::map< std::string, std::string > &target_map)

url-unescape names and values

supports duplicated keys (var=value1&var=value2)

Page Wall clock time
review this page, some bits seem obsoleted