[Plugin] Audio recorder

0 favourites
From the Asset Store
Multistroke Gesture Recognizer and Recorder for Construct 3
  • Record sound from microphone, play with the same and convert to base64 code.

    Plugin + example:

    V3: https://www.dropbox.com/s/n9r17dplp00dzrp/Grabadorav3.rar?dl=0

    V2: https://www.dropbox.com/s/5w2716iln9oyfil/Grabadora.rar?dl=0

    V1: https://www.dropbox.com/s/e4zc939brmw7867/GrabadoraPlugin.rar?dl=0

    V2:

    V1:

    A good appreciation is not make fun of my English.

  • no one can help me with that expression?

  • What expression?

  • By calling the action "base64" and then put the expressions "base64 value" in a container, it gives me error "undefined". But I have "base64" in a url good. Some explanation for newbie?

    --------------------

    In runtime is a variable (url), which exported to Fr.Voice. That variable the way to another global call (base). And the variable (base) step by the expression "base64value".

    Var base;

    &

    base = (url);

    &

    ret.set_string(base);

    One example is worth more than my English. <img src="{SMILIES_PATH}/icon_e_biggrin.gif" alt=":D" title="Very Happy">

    Example Capx: https://www.dropbox.com/s/3zjfhwdci7dlg ... .capx?dl=0

  • Line 143:

    Fr.voice.export(function(url){
        base = (url)
        alert("Check the web console for the URL");
    }, "base64");[/code:18x5chvf]
    
    It seems that base is assigned in a asynchronous callback, therefor the result of [code:18x5chvf]base == (url)[/code:18x5chvf] is not correct.
  • V2: Problem solved (convert base64, icon, url native play)

    With bad solution to the problems.

  • A problem:

    ---------------------------
    Construct 2 Check failure
    ---------------------------
    Check failure!  This is probably a bug:
    
    ACE table: Action ID duplicated in ACE table
    
    Condition: act_ids.find(id) == act_ids.end()
    File: c:\c2\source\exporters\html5\..\..\common\ERAHelpers.h
    Line: 238
    Function: void __cdecl era::ACETable::AddAction(int,int,const class std::basic_string<wchar_t,struct std::char_traits<wchar_t>,class std::allocator<wchar_t> > &,const class std::basic_string<wchar_t,struct std::char_traits<wchar_t>,class std::allocator<wchar_t> > &,const class std::basic_string<wchar_t,struct std::char_traits<wchar_t>,class std::allocator<wchar_t> > &,const class std::basic_string<wchar_t,struct std::char_traits<wchar_t>,class std::allocator<wchar_t> > &,const class std::basic_string<wchar_t,struct std::char_traits<wchar_t>,class std::allocator<wchar_t> > &,void (__cdecl *)(const class era::StaticResult **,int,class era::StaticEvaluation *))
    Build: release 240 (64-bit) checked
    Component: HTML5 exporter
    (Last Win32 error: 0)
    
    You are using a 'checked' release of Construct 2, intended for testing, which causes certain errors to be reported this way.  Hit Ctrl+C to copy this messagebox - it's useful information for the developers, so please include it with any bug reports!  Click 'Abort' to quit (unsaved data will be lost!),'Retry' to turn off messages for this session and continue, or 'Ignore' to continue normally.
    ---------------------------
    Abort   Retry   Ignore   
    ---------------------------
    [/code:2mwquwn7]
  • -corrected

    -Simplified code

    V3: https://www.dropbox.com/s/i7o4zeo9d6dqs ... 3.rar?dl=0

  • What about being able to analyze what is being played over the microphone live? Is that possible with your plugin?

  • Sorry dude (is it just me..?!), but I have a new set of bugs now. Thanks for trying to fix this plugin!!

    Plugin of non-world type specified 'rotatable'
    
    Condition: !(plugin_type == era::pt_objecttype && rotatable)
    File: Projects\ObjectType.cpp
    Line: 37
    Function: __cdecl ObjectType::ObjectType(class Project &,class ObjectFolder &,class Plugin *,const class std::basic_string<wchar_t,struct std::char_traits<wchar_t>,class std::allocator<wchar_t> > &,unsigned __int64)
    Build: release 240 (64-bit) checked
    Component: Construct 2 IDE
    (Last Win32 error: 0)
    [/code:34jfl13w]
    
    [code:34jfl13w]Creating a world instance from a plugin that is not of a world type
    
    Condition: object_type->GetPluginType() == era::pt_worldtype
    File: Projects\WorldInstance.cpp
    Line: 790
    Function: class std::unique_ptr<class WorldInstance,struct std::default_delete<class WorldInstance> > __cdecl WorldInstance::CreateFromXmlElement(class Layer &,const class xml::element &)
    Build: release 240 (64-bit) checked
    Component: Construct 2 IDE
    (Last Win32 error: 0)
    [/code:34jfl13w]
    
    [code:34jfl13w]Creating WorldInstance for non-world type
    
    Condition: object_type.GetPluginType() == era::pt_worldtype
    File: Projects\WorldInstance.cpp
    Line: 32
    Function: __cdecl WorldInstance::WorldInstance(class Layer &,class ObjectType &,unsigned __int64)
    Build: release 240 (64-bit) checked
    Component: Construct 2 IDE
    (Last Win32 error: 0)
    [/code:34jfl13w]
  • Try Construct 3

    Develop games in your browser. Powerful, performant & highly capable.

    Try Now Construct 3 users don't see these ads
  • same error message popup here as Colludium with the new Gv3, but thanks for sharing jackblord,

    it seem to work in chrome, i can generate base64 audio after pressing start recording.

  • No, it cannot work in real time

    --

    Try the demo again

    https://www.dropbox.com/s/i7o4zeo9d6dqs ... 3.rar?dl=0

  • Hi jackblord

    Thanks for sharing!

    Where is the upload.php file you mentioned in v1?

  • Attachments, Files> Icons>upload.php

  • jackblord

    Yes, I found! But please help me because I do not know how to use it! I want to save the audio files I grab, in a directory of the server of my site. before your plugin I used a external .js script to grab the audio and the following .php file to upload then

    if( $_FILES){ //verificando se existe o envio de arquivos
    
    	if( $_FILES['audio_file']){ //verificando se o campo não está vazio
    
    		$dir = './media/audio/'; //diretório que vai receber o arquivo
    		$tmpName = $_FILES['audio_file']['tmp_name']; //recebe o arquivo temporario
    		$name = $_FILES['audio_file']['name']; //recebe o nome do arquivo
    
    		move_uploaded_file($tmpName,$dir . $name); //envia o arquivo[/code:1yp6bk1c]
    
    Is this .php file compatible with your plugin?
Jump to:
Active Users
There are 1 visitors browsing this topic (0 users and 1 guests)