Ecosyste.ms: OpenCollective

An open API service for software projects hosted on Open Collective.

github.com/gtk-rs/gobject-subclass

Rust GObject subclassing infrastructure
https://github.com/gtk-rs/gobject-subclass

Implement ValueRef and TypedValueRef for wrapping around a unowned GValue pointer without copying

Also rename new_from*() functions to from*() for consistency.

1bf20bfea475d833440ecef81c1b0d254b888f51 authored over 7 years ago by Sebastian Dröge <[email protected]>
Rewrite GValue bindings

2d97baaf96bea03d862aa4bf84cc5cef897888a0 authored over 7 years ago by Sebastian Dröge <[email protected]>
Use g_strndup() instead of creating a CString and then g_strdup() it

Creating a CString involves potentially some additional allocations.

a808c34794d396ed202768ea7b9c00c4677ba0a2 authored over 7 years ago by Sebastian Dröge <[email protected]>
Run everything through new rustfmt

9864413be225578857a7971aa5987ace9d820561 authored over 7 years ago by Sebastian Dröge <[email protected]>
Update to slog 2.0

021de8af1f43cd3e381203a5b86c8b231b051936 authored over 7 years ago by Sebastian Dröge <[email protected]>
Fix some clippy warnings

0cf169aa20c95a761b14badb11645cfd1ae841bb authored over 7 years ago by Sebastian Dröge <[email protected]>
Port sink C code to Rust

71395517739edf3721b9e1602d6e611dc23da037 authored over 7 years ago by Sebastian Dröge <[email protected]>
Port C code for the source to pure Rust

d72f1f716b630bc31973fc559c5f5d82255965a1 authored over 7 years ago by Sebastian Dröge <[email protected]>
Store GWeakRef in a Box

Its memory location is important, and having it stored directly inside
the struct allows it to p...

50829bdec9a668e217c547273e19f3d8e253526f authored over 7 years ago by Sebastian Dröge <[email protected]>
Port everything else over to glib/gobject/gstreamer-sys

24a10bb6148284be2e2987f3f448c8f3fa1f2a15 authored over 7 years ago by Sebastian Dröge <[email protected]>
Switch to gstreamer-sys crate and port buffer bindings to it

e4ababa98f8f0091ec2b526eacdc61ec940bf05c authored over 7 years ago by Sebastian Dröge <[email protected]>
Switch back to Geal's flavors repository after all my changes are merged

98d2175ef552da3f679bc9f9dc26319cebcef964 authored over 7 years ago by Sebastian Dröge <[email protected]>
Update to reqwest 0.5

1a5fede4a75b8f897950930a71a1649c83ef90a8 authored over 7 years ago by Sebastian Dröge <[email protected]>
Move MiniObject::is_writable() from the trait to the reference containers

1dda357b86e832b7d94d0835f124a891e7031244 authored over 7 years ago by Sebastian Dröge <[email protected]>
Update to bitflags 0.8

2b799910fc1295e1861030e7ca8cf1db5b1280f8 authored almost 8 years ago by Sebastian Dröge <[email protected]>
Remove FlowError::NotLinked

This will never appear in Rust code as all forwarding of buffers will
happen at the C/Rust bindi...

b3e01add5c80d8c6207c239414ab6a16ddc34aa5 authored almost 8 years ago by Sebastian Dröge <[email protected]>
Change license from LGPLv2.1+ to Apache2/MIT

https://github.com/sdroege/rsplugin/issues/7

e64facc25485e334d01c1e4246ea0ca90816edff authored almost 8 years ago by Sebastian Dröge <[email protected]>
Add unit test for buffers that checks the miniobject writability wrapping

6b7e6d8e6c9ea51721a56786e33c6ca2d757de70 authored almost 8 years ago by Sebastian Dröge <[email protected]>
Implement GstRc/GstRef wrapper for GstMiniObject

Keeps the miniobject specific code local and provides a more similar API
to Rc/Arc. Also makes i...

7b5764e759245eed94ac7b628ec3da45b412c1ef authored almost 8 years ago by Sebastian Dröge <[email protected]>
Fix some clippy warnings

9e59eff9732f7dea0a07febe66dbd2a7d1e1b5e8 authored almost 8 years ago by Sebastian Dröge <[email protected]>
Update to reqwest 0.4

99a9b7fedc37b64d1bd5227d8d814e480c162c39 authored almost 8 years ago by Sebastian Dröge <[email protected]>
Do LTO for release builds

19936e4eaea28c22f12d99ed4292a4296f46b8cf authored almost 8 years ago by Sebastian Dröge <[email protected]>
Keep amount of unsafe code a bit smaller for the GstStream* stream IDs

974a689fd77f93e0a484e027eed0d4a1c5b7cccd authored almost 8 years ago by Sebastian Dröge <[email protected]>
Add Eq/PartialEq instances for TagList and Caps

2ec438e5b8e199f5ffdc0bf373bfb88f09198bbb authored almost 8 years ago by Sebastian Dröge <[email protected]>
Return stream IDs directly instead of creating an owned String

1ee7c8b9e3aabd88302f3a434b7eafd865a55ed6 authored almost 8 years ago by Sebastian Dröge <[email protected]>
Improve C string handling a bit

These are always going to be valid UTF-8 or things are very wrong.

7a33a4177f506e00205840b267b3ef42f8780a04 authored almost 8 years ago by Sebastian Dröge <[email protected]>
Add bindings for GstStream and GstStreamCollection

To be used in the demuxer for tracking streams and their related
information.

e2b18a91e08c3984d3e25ede1646565065ec9cb1 authored almost 8 years ago by Sebastian Dröge <[email protected]>
Add tags support

509810e87a937f8c7c808fd2b8e712cb9a8f7de4 authored almost 8 years ago by Sebastian Dröge <[email protected]>
Use num_rational instead of home-baked (u32, u32) fractions

aa54f1a4e62624d7f5b53875bb085a10e6dccca5 authored almost 8 years ago by Sebastian Dröge <[email protected]>
Minor cleanup

620cf7c5f7958460eb424428d02f74e1e322f2de authored almost 8 years ago by Sebastian Dröge <[email protected]>
Add API to create a Buffer from a Vec<u8> with memory reuse and use it for the Speex headers

3e17102166b8cf98729c03f08e2bd3cca38db48f authored almost 8 years ago by Sebastian Dröge <[email protected]>
Implement From<_> for Value to simplify code a lot

745a6a3c175f52585ef275eb27a861df97bcac63 authored almost 8 years ago by Sebastian Dröge <[email protected]>
Move Value code into its own module

ac9ba47403a9f0e54e1e919d9c7bf0b1af399c70 authored almost 8 years ago by Sebastian Dröge <[email protected]>
Add support for Speex to FLV demuxer

... and arrays of values in caps while at the same time refactoring the
Value code a bit.

93f09c8a4a5d86de295b3008d202191fa6b4ef04 authored almost 8 years ago by Sebastian Dröge <[email protected]>
Update to reqwest 0.3 (hyper 0.10)

2ce9aa7b58e758a96d88e274a0e90ee99fe9234e authored almost 8 years ago by Sebastian Dröge <[email protected]>
Simplify caps a bit by using slices instead of IntoIterator

IntoIterator did not work as expected anyway and would require usage of
AsRef, which then breaks...

3b299f3fb6513418ed58f5babf4e51f240b4f622 authored almost 8 years ago by Sebastian Dröge <[email protected]>
Fix for flavors API fixups related to strict arrays

fc7116c4e12792c4bbd39fe8b47937e70f8721ea authored almost 8 years ago by Sebastian Dröge <[email protected]>
Add support for AAC and AVC/H264 in FLV

e9cf54d43b4de0366cc544d0a4742023fe875566 authored almost 8 years ago by Sebastian Dröge <[email protected]>
Add caps from string binding

0fabdf377424c638c1c2293cba82e6bb42429d30 authored almost 8 years ago by Sebastian Dröge <[email protected]>
Use caps also for the demuxer sink/src pad templates instead of strings

80ba9a8b8fef8b30378000d85b1ab60821c0ded6 authored almost 8 years ago by Sebastian Dröge <[email protected]>
Implement a minimal GstCaps binding and use it in the demuxer

e26cdc91874ac221fd2046baceb26c0707bafde2 authored almost 8 years ago by Sebastian Dröge <[email protected]>
Add logging to FLV demuxer

ec0539de0ac901685be377a280188341650e6c24 authored almost 8 years ago by Sebastian Dröge <[email protected]>
Add debug logging everywhere

137a14360fe5cedc398ee7dd476340c606fdde5e authored almost 8 years ago by Sebastian Dröge <[email protected]>
Only format strings, etc in debug log handler if the configured threshold is higher than the level

c9aad84898692906509e2f853869325f6776bf08 authored almost 8 years ago by Sebastian Dröge <[email protected]>
Add simple Makefile to build all subprojects

fb21d62868b234e91477c3f67b16e27e8930725f authored almost 8 years ago by Sebastian Dröge <[email protected]>
Fix some clippy warnings

fa6712e5aa4bee32982872476470baac99192c97 authored almost 8 years ago by Sebastian Dröge <[email protected]>
Ignore stop failures

stop should only really fail if everything is broken, but we can always
recover somehow here.

bccf3805a1c9c454ef8ac698d514edfd5de47e84 authored almost 8 years ago by Sebastian Dröge <[email protected]>
Add .gitignore

961d6ce11528bde6972cae9e53028a70c0bd20e7 authored almost 8 years ago by Sebastian Dröge <[email protected]>
Add support for logging via slog

8ee1f72184ecb663aab8f4d9a31ff23ccdef5716 authored almost 8 years ago by Sebastian Dröge <[email protected]>
Build each component into its own GStreamer plugin

89b0220e26c41e56b4194bcd13b0f913a8643a36 authored almost 8 years ago by Sebastian Dröge <[email protected]>
Refactor plugin registration

e25f644f309f77d49ff3aa09771c0943ccf39f2d authored almost 8 years ago by Sebastian Dröge <[email protected]>
Implement metadata handling

7ef2679cb55304ceae4493f670e961b764934df6 authored almost 8 years ago by Sebastian Dröge <[email protected]>
Further cleanup and refactoring of the FLV demuxer

d804590106e4405c48886037e5920161dc077eff authored almost 8 years ago by Sebastian Dröge <[email protected]>
Simplify state handling

This is not too nice now as we have None values to unwrap, but the code
is at least less convolu...

9e53c0a926002f702550e63bdad7aa75b298ae04 authored almost 8 years ago by Sebastian Dröge <[email protected]>
Properly convert the f64 framerate to a fraction

cc183ea92ef22fefe17dbfa5564d3c6bee4e2d26 authored almost 8 years ago by Sebastian Dröge <[email protected]>
Create GStreamer plugin from Rust and have the plugin entry point written in Rust

78450a035d89dd8a8781741757def425c00e26e3 authored almost 8 years ago by Sebastian Dröge <[email protected]>
Add support for more codecs

Only Speex, AAC and H264 are missing now, which require a little bit
more work.

f9cd9e128d06d5b65cfab36b6a6e381c52104cd1 authored almost 8 years ago by Sebastian Dröge <[email protected]>
Minor cleanup

19c8caee1e05a2429effcf74bf05f05a54bbc7a4 authored almost 8 years ago by Sebastian Dröge <[email protected]>
WIP demuxer

62d24efc0405c879a29f247e215e06f423cd4ad3 authored almost 8 years ago by Sebastian Dröge <[email protected]>
Use reqwest 0.2 release

It has the needed changes now

ed2bcf875afd2d4765f87c373654257b0058df85 authored almost 8 years ago by Sebastian Dröge <[email protected]>
Simplify some more code

9e2c25653f792bb330a0bda0ce4db86bb09d3c56 authored about 8 years ago by Sebastian Dröge <[email protected]>
Some minor buffer changes

cef8d2897462d2cdf7fe010d98da6ce39d424fdc authored about 8 years ago by Sebastian Dröge <[email protected]>
Improve readability of the code a little

1751b5c400ad0a99b2cf8a5d57c7dbb64bcf97b6 authored about 8 years ago by Сухарик <[email protected]>
Move duplicated code into a function

eac466040ecae69aec474a06c67c5ff423fd74a0 authored about 8 years ago by Sebastian Dröge <[email protected]>
Refactor code a bit to keep amount of unsafe code to a minimum

20a2c7bd334b074e9687cbd18a27689b31559d94 authored about 8 years ago by Sebastian Dröge <[email protected]>
Port HTTP source from hyper to reqwest

f7148bd9107babd058222b02a9153c0f3a59b8de authored about 8 years ago by Sebastian Dröge <[email protected]>
Add some more Buffer API and use explicit bitflags instead of magic numbers

b23385e88fc67c9391554fef49cc6a4e46746484 authored over 8 years ago by Sebastian Dröge <[email protected]>
Add initial implementation of a buffer adapter

2408edf1bf334a63cc7506139c41189d11b3c944 authored over 8 years ago by Sebastian Dröge <[email protected]>
Make ScopedBuffer a bit safer and explicit

1ef938b6ec1e729d6e83b23c025d2142ba154089 authored over 8 years ago by Sebastian Dröge <[email protected]>
Add wrapper around GstBuffer and use it in the source/sink

61b54201023f4d0d91cd2a7b5cb3ae4ebb6968ef authored over 8 years ago by Sebastian Dröge <[email protected]>
Update README.md with the follow-up blogpost

a2ff32d0bef8b0c23498ce16d264b42517f7c408 authored over 8 years ago by Sebastian Dröge <[email protected]>
Never let panics propagate to C and instead convert them to error messages

f9adac5f7ecc3ae942d90362c037a64e95eadc06 authored over 8 years ago by Sebastian Dröge <[email protected]>
Make more pointers const

95dd469fbf784606c5aad8ae9eccada8845e539a authored over 8 years ago by Sebastian Dröge <[email protected]>
Don't lock the URI mutex all the time while {Sink,Source}::{start,stop} is called but only when needed

245d576159eec50399fcd82f7a0bb84eef52289e authored over 8 years ago by Sebastian Dröge <[email protected]>
Move sink_render() to a more logical place

fa855ec2b280bc5175b64144b179f4cdb73d06af authored over 8 years ago by Sebastian Dröge <[email protected]>
Use None instead of u64::MAX for unknown/unspecified size/stop

eee2653b769d36bcf549ba9f6e5b16b68deb1955 authored over 8 years ago by Sebastian Dröge <[email protected]>
Move thread-handling out of the actual Source/Sink implementation

4afdd2c985a7c9859f721e61acc1ec798b8ec961 authored over 8 years ago by Sebastian Dröge <[email protected]>
Remove local macro definition

af6d6f80b4f65b8447c43d34f7d93f9d739ff5a4 authored over 8 years ago by Sebastian Dröge <[email protected]>
Move some extern C functions into the place where they're used

b47d7df7767449802824e9cb4f432094c3912bdc authored over 8 years ago by Sebastian Dröge <[email protected]>
Properly report error / error messages and make the trait APIs more Rust-like

742515aac1f7963f5ae11e6686415da25f25a8d1 authored over 8 years ago by Sebastian Dröge <[email protected]>
Derive some more traits for enums

f7fd92750c72fb93edc30162a3f36cd75fcf8d49 authored over 8 years ago by Sebastian Dröge <[email protected]>
Make the UriError a bit nicer

9ae934e48ad983fbc31d5efde2559129b113f79b authored over 8 years ago by Sebastian Dröge <[email protected]>
Add trait functions for getting back the controller

df50617c87f262ad0fec580d3017deacf2c07b5d authored over 8 years ago by Sebastian Dröge <[email protected]>
Properly report errors when setting the URI fails

82c29d369d66c7d890b3ad16588d7fadb3dbdda0 authored over 8 years ago by Sebastian Dröge <[email protected]>
Switch to cdylib crate type

3d83de761f746ec59569d19bd62a53214cfd2ee7 authored over 8 years ago by Sebastian Dröge <[email protected]>
Various further cleanups

6f6e56a5e3ab066d04f18143c3bdc30b9818591c authored over 8 years ago by Sebastian Dröge <[email protected]>
Various cleanups

bb8072c4d85fd25c1dbe97bfc32646861bf42b50 authored over 8 years ago by Sebastian Dröge <[email protected]>
Fix up mutability

Rust assumes that there can only be a single mutable reference at any time, as
such make use of ...

086ec5b68d45604067b29f63df79a5a7771450e1 authored over 8 years ago by Sebastian Dröge <[email protected]>
WIP

c7c2676e67700934240a409dcd52386bf248f518 authored over 8 years ago by Sebastian Dröge <[email protected]>
Fix typo in function name between C and Rust

53cb35f9919682c0e3499fd45e6207977e9a4688 authored over 8 years ago by Sebastian Dröge <[email protected]>
Move FFI usage out of actual Sink/Source implementations

4eb3d879debe5ba4676f5e3f6a36613eeea1ff87 authored over 8 years ago by Sebastian Dröge <[email protected]>
Pass native GStreamer element pointer to functions

This will later be used to catch panics, convert them to GStreamer errors and
invalidate the nat...

e1d2751fc202a9a31aea3349389016fcef91dcfa authored over 8 years ago by Sebastian Dröge <[email protected]>
Add new controller objects to Source/Sink

These store a pointer to the native GstElement and will allow calling back
into it later.

4e053cd6bc059147814909ec8e0474ae65c0834e authored over 8 years ago by Sebastian Dröge <[email protected]>
Run C code through gst-indent

8b313a752a4a03bd5f4d2db51bcf8cc6c9a7deb4 authored over 8 years ago by Sebastian Dröge <[email protected]>
Run everything through rustfmt

31fd26b98262130731b8226a4095224d0852e33d authored over 8 years ago by Sebastian Dröge <[email protected]>
Pass Urls directly to the Source/Sink implementations instead of having them handle strings

3db8882ce8d99996516a0955be169d8275bf206d authored over 8 years ago by Sebastian Dröge <[email protected]>
Use an AtomicBool for the seekable variable as is_seekable() can be called at any time from any thread

84c0d4c74ceaf662158f6b38f1fccb5220109419 authored over 8 years ago by Sebastian Dröge <[email protected]>
Add comments about which Source/Sink methods are called from which threads

Source::get_size() / ::is_seekable() implementations need to be made
thread-safe still.

5cc890cc043ee64a42c5288989627724a7891495 authored over 8 years ago by Sebastian Dröge <[email protected]>
Use a Mutex to protect the URI storage

get_uri()/set_uri() can be called at any time from any thread, only
all other methods of Source/...

8514d46092256ad35207f6842a57975b1765c1bb authored over 8 years ago by Sebastian Dröge <[email protected]>
README.md: Add minimal info and links

2d4dd7a218742b87a4da85efb711551ea09fe461 authored over 8 years ago by Jon Nordby <[email protected]>