Recherche avancée

Médias (1)

Mot : - Tags -/remix

Autres articles (50)

  • L’agrémenter visuellement

    10 avril 2011

    MediaSPIP est basé sur un système de thèmes et de squelettes. Les squelettes définissent le placement des informations dans la page, définissant un usage spécifique de la plateforme, et les thèmes l’habillage graphique général.
    Chacun peut proposer un nouveau thème graphique ou un squelette et le mettre à disposition de la communauté.

  • Les autorisations surchargées par les plugins

    27 avril 2010, par

    Mediaspip core
    autoriser_auteur_modifier() afin que les visiteurs soient capables de modifier leurs informations sur la page d’auteurs

  • ANNEXE : Les plugins utilisés spécifiquement pour la ferme

    5 mars 2010, par

    Le site central/maître de la ferme a besoin d’utiliser plusieurs plugins supplémentaires vis à vis des canaux pour son bon fonctionnement. le plugin Gestion de la mutualisation ; le plugin inscription3 pour gérer les inscriptions et les demandes de création d’instance de mutualisation dès l’inscription des utilisateurs ; le plugin verifier qui fournit une API de vérification des champs (utilisé par inscription3) ; le plugin champs extras v2 nécessité par inscription3 (...)

Sur d’autres sites (6890)

  • I tried to play the audio on Alexa skill from my S3 Bucket, from the test tab, **it show but in fact, I can't hear any sound

    19 avril 2022, par Siti Mayna

    So I tried to play the audio on Alexa skill from my S3 Bucket, from the test tab, it show but in fact, I can't hear any sound. Another fact is, that I tried to use the sample audio from https://developer.amazon.com/en-US/docs/alexa/custom-skills/ask-soundlibrary.html and it is worked, but why it won't work when it comes from my own S3 Bucket ?

    


    Notes :

    


    I've tried to test the skill using my mobile phone also.

    


    I've tried to encode the audio using FFmpeg.

    


    I've tried to use Jovo to convert the audio. https://v3.jovo.tech/audio-converter

    


    I don't know how to fix this error.

    


    There is no error message on cloud watch.

    


    Assumptions :
There is some problem related to the audio resources or there is more set to play audio from S3 Bucket since the sample audio is working.

    


    Steps to reproduce :

    


    


    Build the interaction model

    


    


    


    Encode the audio to make it Alexa skill friendly (fulfill the requirements, like sample rate, etc), I used and tried all of these :

    


    


    A :

    


    ffmpeg -i  -ac 2 -codec:a libmp3lame -b:a 48k -ar 16000 -write_xing 0 


    


    B :

    


    ffmpeg -i  -ac 2 -codec:a libmp3lame -b:a 48k -ar 24000 -write_xing 0 


    


    C :

    


    ffmpeg -y -i input.mp3 -ar 16000 -ab 48k -codec:a libmp3lame -ac 1 output.mp3


    


    


    Upload the audio resources on S3Bucket
Audio sample on s3 storage but none of them are produce any sounds

    


    


    


    Use the link and insert it to APLA.json

    


    


    
    {
      "type": "APLA",
      "version": "0.91",
      "description": "Simple document that generates speech",
      "mainTemplate": {
        "parameters": [
          "payload"
        ],
        "type": "Sequencer",
        "items": [
          {
            "type": "Audio",
            "source": "https://72578561-d9d8-47b4-811c-cafbcbc5ddb9-us-east-1.s3.amazonaws.com/Media/one-small-step-alexa-24.mp3"
          }
        ]
      }
    }



    


    notes : I change the link sources based on audio that I tried.

    


    


    the intent on lambda_function.py :

    


    


    def _load_apl_document(file_path):
    # type: (str) -> Dict[str, Any]
    """Load the apl json document at the path into a dict object."""
    with open(file_path) as f:
        return json.load(f)

class LaunchRequestHandler(AbstractRequestHandler):
    """Handler for Skill Launch."""
    def can_handle(self, handler_input):
        # type: (HandlerInput) -> bool

        return ask_utils.is_request_type("LaunchRequest")(handler_input)

    def handle(self, handler_input):
        # type: (HandlerInput) -> Response
        logger.info("In LaunchRequestHandler")

        # type: (HandlerInput) -> Response
        speak_output = "Hello World!"
        # .ask("add a reprompt if you want to keep the session open for the user to respond")

        return (
            handler_input.response_builder
                #.speak(speak_output)
                .add_directive(
                        RenderDocumentDirective(
                            token="pagerToken",
                            document=_load_apl_document("APLA.json"),
                            datasources={}
                        )
                    )
                .response
        )


    


    


    Deploy

    


    


    


    Test it

    


    


    


    The result of the test on my end :

The response for testing

    


    


    the JSON response :

    


    {
    "body": {
        "version": "1.0",
        "response": {
            "directives": [
                {
                    "type": "Alexa.Presentation.APLA.RenderDocument",
                    "token": "pagerToken",
                    "document": {
                        "type": "APLA",
                        "version": "0.91",
                        "description": "Simple document that generates speech",
                        "mainTemplate": {
                            "parameters": [
                                "payload"
                            ],
                            "type": "Sequencer",
                            "items": [
                                {
                                    "type": "Audio",
                                    "source": "https://72578561-d9d8-47b4-811c-cafbcbc5ddb9-us-east-1.s3.amazonaws.com/Media/one-small-step-alexa-24.mp3"
                                }
                            ]
                        }
                    },
                    "datasources": {}
                }
            ],
            "type": "_DEFAULT_RESPONSE"
        },
        "sessionAttributes": {},
        "userAgent": "ask-python/1.16.1 Python/3.7.12"
    }
}


    


    


    On my cloud Watch :
Cloud Watch

    


    


  • Why do you need analytics for your WordPress ?

    7 avril 2020, par Joselyn Khor — Analytics Tips, Plugins

    Not many people know this, but having a WordPress analytics tool gives you a competitive advantage. It’s also essential to the growth of your website. For many businesses, websites are the main driver of revenue and sales. In the case of blogs, it’s your first chance to make a lasting impression.

    Now, maybe you’ve heard of Google Analytics or even the privacy-friendly alternative, Matomo Analytics, but have never tried them ? These are analytics platforms that help you understand your website traffic and visitors. (You can find these platforms as plugins in the WordPress directory !)

    They’re important because the insights you get help you determine what changes to make to improve your website. Without them you could face a tougher time figuring out what’s working, what the issues are (and solving them before they get out of hand), and making sure you’re taking your website in the right direction. 

    WordPress analytics gives you an understanding of what’s actually going on.

    How does a WordPress analytics plugin benefit your website ?

    What this means for you is getting a toolkit to learn how to get more sales or followers and subscribers (aka conversions in analytics terms). 

    By getting insights into user behaviour, content performance, and how you can optimise your website, you can reach more of your goals, like increasing sales or growing your audience.

    A WordPress analytics tool helps you get more traffic to your site

    You get a range of features which tell you which acquisition channels are working for you like – social media, search engines, and other websites mentioning you. This helps you make an informed decision on where to focus energies (or spend) to get more of the ideal people coming through to your website. 

    Increase traffic with wordpress analytics

    Example : Looking through your acquisition channels and seeing that Reddit drives a lot of traffic through to your website. Since this channel seems to be working for you, you could then spend more time on Reddit posts to increase traffic.

    But getting more traffic isn’t all there is to it. Once they land on your site, you want them to stay for a little longer so they are intrigued by what you’re offering. Be it a product, or awesome content.

    Which leads us to …

    Increasing engagement by learning about visitor behaviour

    When you get a solid number of visitors on your website, it’s good to then learn about how they behave on your site. A WordPress analytics tool helps with engagement since you’re seeing what’s appealing to them, and what isn’t.

     Increasing engagement is good for a few reasons. 

    • You end up speaking the language of your readers. 
    • You can make a difference with the information you’re putting out. 
    • You get loyal customers and believers in your organisation. 

    With more engaged visitors, you can build trust with them and eventually be able to convince them that your product, service, or blog is needed in their lives.

    WordPress analytics entry pages

    Example : Looking through entry and exit pages to see what first impression is making them stay, and what impression is making them leave. This helps you redirect efforts to give your website a better chance of getting visitors to stay longer.

    Improving your content and engagement can lead to more conversions

    After you get visitors engaged, it’s time to convert. 

    Whether you have an ecommerce site or freelance blog, you’ll need to know how to boost conversions. This simply means getting people to achieve more of the actions you’re wanting them to take on your site. Like subscribing to your newsletter or adding items to a cart.

    With conversion optimization features, you’re finding out how well your website is designed to get buyers through a journey to conversion. 

    Funnels for WordPress analytics

    Example : Say you’ve created a newsletter sign up page, but you’re not getting as many sign ups as you’d like. With a web analytics tool, you can look into it further. A funnels feature could tell you how they’re getting to that page. If people can’t find your page, that could be reason for low conversion rates. Or, maybe you are getting people landing on this page, but you can’t tell why they’re not signing up. Try setting up a heatmap to see how far they’re scrolling down your page to the sign up section. Through these conversion optimization features, you can make tweaks that significantly improve conversions.

    So, how does the Matomo Analytics for WordPress plugin help with all of this ?

    Matomo Analytics for WordPress is a free web analytics plugin that gives you access to all the features mentioned above, right in your own WordPress dashboard. It’s completely free to use and is handy for users of all skill levels. From beginners right through to advanced analysts. 

    You get to move through all the stages to increase traffic, increase engagement, and convert. By using Matomo for WordPress, you put yourself in a better position to track all the needed data from your WordPress website. 

    You have this toolkit to improve your website for free, with a few clicks ! 

    By getting useful insights like visitors, acquisitions, bounce rates etc. you gain a new perspective on how to improve your website so it’s better at doing what you created it to do. Getting these insights also means giving yourself the confidence to do what’s best for your website in a data-driven way. 

    With all this knowledge, you can be competitive, or grow enough that you’re leaving your competitors in the dust. 

  • use ffmpeg in java ubuntu

    3 juin 2014, par Roylisto Putra Pradana

    i try to convert video using ffmpeg in ubuntu.

    ffmpeg -i inputfile.flv -sameq outputfile.mpeg

    this works if change directory to inputfile directory.

    is that posible to use this command ?

    ffmpeg -i "home/Documents/inputfile.flv" -sameq "home/Documents/outputfile.mpeg"

    i don’t want to change directory when i use that command, because that command is using for my java code.
    so my input file and output file is variable in my code .

    here’s my full code

    package Converter;

    import Controller.ConvertedButtonListener;
    import java.io.BufferedReader;
    import java.io.IOException;
    import java.io.InputStream;
    import java.io.InputStreamReader;
    import java.net.URL;
    import java.util.Arrays;

    /**
    *
    * @author roylisto
    */
    public class VideoConverter {
       private String defaultFile;
       private String convertedFile;  
       private ConverterThread myThread;
       private ConvertedButtonListener butListener;
       public VideoConverter(String fileDir,String convertOutput,ConvertedButtonListener buttonListener){
           this.defaultFile=fileDir;
           this.convertedFile=convertOutput;
           this.butListener=buttonListener;        
       }
       public void convertToMjpeg(){                            
           String[] listCommands={"ffmpeg","-i","\""+defaultFile+"\"","-qscale","0","\""+convertedFile+"\""};
           myThread=new ConverterThread(listCommands,this);
           myThread.start();                
       }    
       public void setCommandStream(String stream){
           butListener.setCommandOutput(stream);
       }
       class ConverterThread extends Thread{
           VideoConverter vc;
           String[] command;
           ConverterThread(String[] command,VideoConverter vc){        
               this.command=command;            
               this.vc=vc;
           }        
           public void run(){      
               synchronized(vc){
                   try{          
                       String s = null;
                       Process process = new ProcessBuilder(command).start();                
                       BufferedReader stdInput = new BufferedReader(new InputStreamReader(process.getInputStream()));
                       BufferedReader stdError = new BufferedReader(new InputStreamReader(process.getErrorStream()));
                       StringBuffer start= new StringBuffer();
                       // read the output from the command                    
                           while ((s = stdInput.readLine()) != null)
                           {
                               start.append(s);
                               vc.setCommandStream(s);
                           }
                           stdInput.close();
                           // read any errors from the attempted command                
                           while ((s = stdError.readLine()) != null)
                           {
                               start.append(s);    
                               vc.setCommandStream(s);
                           }
                   }catch(Exception ex){
                       System.out.println(ex.toString());
                   }
               }
           }
       }
    }

    until now my code works well in windows with some modification like change ffmpeg to ffmpeg.exe because ffmpeg isn’t native in my windows. but when i use my code in ubuntu
    it show this error

    "/home/roylisto/Documents/Tugas Akhir/Video Master/3a.avi": No such file or directory

    UPDATE
    solve problem, here’s my code :)

    package Converter;

    import Controller.ConvertedButtonListener;
    import java.io.BufferedReader;
    import java.io.IOException;
    import java.io.InputStream;
    import java.io.InputStreamReader;
    import java.net.URL;
    import java.util.Arrays;

    /**
    *
    * @author roylisto
    */
    public class VideoConverter {
       private String defaultFile;
       private String convertedFile;  
       private ConverterThread myThread;
       private ConvertedButtonListener butListener;
       public VideoConverter(String fileDir,String convertOutput,ConvertedButtonListener buttonListener){
           this.defaultFile=fileDir;
           this.convertedFile=convertOutput;
           this.butListener=buttonListener;        
       }
       public void convertToMjpeg(){                            
           String[] listCommands={"ffmpeg","-i",defaultFile,"-qscale","0",convertedFile};
           myThread=new ConverterThread(listCommands,this);
           myThread.start();                
       }    
       public void setCommandStream(String stream){
           butListener.setCommandOutput(stream);
       }
       class ConverterThread extends Thread{
           VideoConverter vc;
           String[] command;
           ConverterThread(String[] command,VideoConverter vc){        
               this.command=command;            
               this.vc=vc;
           }        
           public void run(){      
               synchronized(vc){
                   try{          
                       String s = null;
                       Process process = new ProcessBuilder(command).start();                
                       BufferedReader stdInput = new BufferedReader(new InputStreamReader(process.getInputStream()));
                       BufferedReader stdError = new BufferedReader(new InputStreamReader(process.getErrorStream()));
                       StringBuffer start= new StringBuffer();
                       // read the output from the command                    
                           while ((s = stdInput.readLine()) != null)
                           {
                               start.append(s);
                               vc.setCommandStream(s);
                           }
                           stdInput.close();
                           // read any errors from the attempted command                
                           while ((s = stdError.readLine()) != null)
                           {
                               start.append(s);    
                               vc.setCommandStream(s);
                           }
                   }catch(Exception ex){
                       System.out.println(ex.toString());
                   }
               }
           }
       }
    }