View Issue Details

IDProjectCategoryView StatusLast Update
0002623gnunet-gtkgnunet-fs-gtkpublic2017-06-17 07:59
ReporterLRN Assigned ToDue Date
PrioritylowSeverityfeatureReproducibilityN/A
Status confirmedResolutionopen 
Product VersionGit master 
Summary0002623: Audio previews in KBlocks
DescriptionBratao proposes to use Opus to encode small bits (up to 10 seconds?) of audio at extremely low bitrate, and embed these as previews in KBlocks.
TagsNo tags attached.

Activities

LRN

2012-11-06 19:28

reporter   ~0006534

Things to consider:

1) How to choose which piece of audio to encode? The simplest way is to take the audio, trim silence at the beginning, encode first N seconds. More complex technique - analyze the audio, find the juiciest piece of it (what's the definition of "juicy", and which metric should be used?) and encode N seconds of that.

2) How to choose N? Size restriction on KBlocks is somewhat floating, and it is metadata serializer that eventually gets to keep a piece of metadata or throw it away. The most optimal way would be, IMO, to first serialize all metadata normally, then see how much space is left and encode just enough audio to fill it, and then either serialize everything again (with a preview), or maybe just concatenate audio to the metadata?

3) Who will do all that? Metadata is normally extracted by LE, but logic described above doesn't look like it's suitable for LE (i.e. metadata serializer interaction). Can Opus-encoded file be cut at arbitrary position without distorting audio? I think it should be, since it has ultra-low delay...

bratao

2012-11-06 19:40

reporter   ~0006535

Last edited: 2012-11-06 19:40

What if we use a "Fixed" size. Something like 30K ? This could simplify the "silence" detector as like you said, silence compress well.

LRN

2012-11-06 20:00

reporter   ~0006536

I don't see how that simplifies silence detector.

I expect silence to compress well, but how well - that remains to be measured.

Christian Grothoff

2012-11-06 20:04

manager   ~0006537

Before this can be implemented in gnunet-fs-gtk, we need a plugin doing the actual opus work in GNU libextractor.

Issue History

Date ModifiedUsernameFieldChange
2012-11-06 19:21LRNNew Issue
2012-11-06 19:28LRNNote Added: 0006534
2012-11-06 19:40brataoNote Added: 0006535
2012-11-06 19:40brataoNote Edited: 0006535
2012-11-06 20:00LRNNote Added: 0006536
2012-11-06 20:03Christian GrothoffProjectGNUnet => gnunet-gtk
2012-11-06 20:03Christian GrothoffCategoryfile-sharing service => General
2012-11-06 20:03Christian GrothoffCategoryGeneral => gnunet-fs-gtk
2012-11-06 20:04Christian GrothoffNote Added: 0006537
2013-09-15 19:48Christian GrothoffStatusnew => confirmed
2013-09-15 19:48Christian GrothoffProduct Version => Git master
2013-09-15 19:48Christian GrothoffTarget Version => 0.11.0pre66
2014-04-11 13:18Christian GrothoffTarget Version0.11.0pre66 => 0.11.0
2015-03-20 23:41Christian GrothoffTarget Version0.11.0 =>