Recherche avancée

Médias (0)

Mot : - Tags -/protocoles

Aucun média correspondant à vos critères n’est disponible sur le site.

Autres articles (13)

  • Submit bugs and patches

    13 avril 2011

    Unfortunately a software is never perfect.
    If you think you have found a bug, report it using our ticket system. Please to help us to fix it by providing the following information : the browser you are using, including the exact version as precise an explanation as possible of the problem if possible, the steps taken resulting in the problem a link to the site / page in question
    If you think you have solved the bug, fill in a ticket and attach to it a corrective patch.
    You may also (...)

  • Qualité du média après traitement

    21 juin 2013, par

    Le bon réglage du logiciel qui traite les média est important pour un équilibre entre les partis ( bande passante de l’hébergeur, qualité du média pour le rédacteur et le visiteur, accessibilité pour le visiteur ). Comment régler la qualité de son média ?
    Plus la qualité du média est importante, plus la bande passante sera utilisée. Le visiteur avec une connexion internet à petit débit devra attendre plus longtemps. Inversement plus, la qualité du média est pauvre et donc le média devient dégradé voire (...)

  • Qu’est ce qu’un masque de formulaire

    13 juin 2013, par

    Un masque de formulaire consiste en la personnalisation du formulaire de mise en ligne des médias, rubriques, actualités, éditoriaux et liens vers des sites.
    Chaque formulaire de publication d’objet peut donc être personnalisé.
    Pour accéder à la personnalisation des champs de formulaires, il est nécessaire d’aller dans l’administration de votre MediaSPIP puis de sélectionner "Configuration des masques de formulaires".
    Sélectionnez ensuite le formulaire à modifier en cliquant sur sont type d’objet. (...)

Sur d’autres sites (4741)

  • What's the most desireable way to capture system display and audio in the form of individual encoded audio and video packets in go (language) ? [closed]

    11 janvier 2023, par Tiger Yang

    Question (read the context below first) :

    


    For those of you familiar with the capabilities of go, Is there a better way to go about all this ? Since ffmpeg is so ubiquitous, I'm sure it's been optomized to perfection, but what's the best way to capture system display and audio in the form of individual encoded audio and video packets in go (language), so that they can be then sent via webtransport-go ? I wish for it to prioritize efficiency and low latency, and ideally capture and encode the framebuffer directly like ffmpeg does.

    


    Thanks ! I have many other questions about this, but I think it's best to ask as I go.

    


    Context and what I've done so far :

    


    I'm writing a remote desktop software for my personal use because of grievances with current solutions out there. At the moment, it consists of a web app that uses the webtransport API to send input datagrams and receive AV packets on two dedicated unidirectional streams, and the webcodecs API to decode these packets. On the serverside, I originally planned to use python with the aioquic library as a webtransport server. Upon connection and authentication, the server would start ffmpeg as a subprocess with this command :

    


    ffmpeg -init_hw_device d3d11va -filter_complex ddagrab=video_size=1920x1080:framerate=60 -vcodec hevc_nvenc -tune ll -preset p7 -spatial_aq 1 -temporal_aq 1 -forced-idr 1 -rc cbr -b:v 400K -no-scenecut 1 -g 216000 -f hevc -

    


    What I really appreciate about this is that it uses windows' desktop duplication API to copy the framebuffer of my GPU and hand that directly to the on-die hardware encoder with zero round trips to the CPU. I think it's about as efficient and elegant a solution as I can manage. It then outputs the encoded stream to the stdout, which python can read and send to the client.

    


    As for the audio, there is another ffmpeg instance :

    


    ffmpeg -f dshow -channels 2 -sample_rate 48000 -sample_size 16 -audio_buffer_size 15 -i audio="RD Audio (High Definition Audio Device)" -acodec libopus -vbr on -application audio -mapping_family 0 -apply_phase_inv true -b:a 25K -fec false -packet_loss 0 -map 0 -f data -

    


    which listens to a physical loopback interface, which is literally just a short wire bridging the front panel headphone and microphone jacks (I'm aware of the quality loss of converting to analog and back, but the audio is then crushed down to 25kbps so it's fine) ()

    


    Unfortunately, aioquic was not easy to work with IMO, and I found webtransport-go https://github.com/adriancable/webtransport-go, which was a hell of a lot better in both simplicity and documentation. However, now I'm dealing with a whole new language, and I wanna ask : (above)

    


    EDIT : Here's the code for my server so far :

    


    

    

    package main

import (
    "bytes"
    "context"
    "fmt"
    "log"
    "net/http"
    "os/exec"
    "time"

    "github.com/adriancable/webtransport-go"
)

func warn(str string) {
    fmt.Printf("\n===== WARNING ===================================================================================================\n   %s\n=================================================================================================================\n", str)
}

func main() {

    password := []byte("abc")

    videoString := []string{
        "ffmpeg",
        "-init_hw_device", "d3d11va",
        "-filter_complex", "ddagrab=video_size=1920x1080:framerate=60",
        "-vcodec", "hevc_nvenc",
        "-tune", "ll",
        "-preset", "p7",
        "-spatial_aq", "1",
        "-temporal_aq", "1",
        "-forced-idr", "1",
        "-rc", "cbr",
        "-b:v", "500K",
        "-no-scenecut", "1",
        "-g", "216000",
        "-f", "hevc", "-",
    }

    audioString := []string{
        "ffmpeg",
        "-f", "dshow",
        "-channels", "2",
        "-sample_rate", "48000",
        "-sample_size", "16",
        "-audio_buffer_size", "15",
        "-i", "audio=RD Audio (High Definition Audio Device)",
        "-acodec", "libopus",
        "-mapping_family", "0",
        "-b:a", "25K",
        "-map", "0",
        "-f", "data", "-",
    }

    connected := false

    http.HandleFunc("/", func(writer http.ResponseWriter, request *http.Request) {
        session := request.Body.(*webtransport.Session)

        session.AcceptSession()
        fmt.Println("\nAccepted incoming WebTransport connection.")
        fmt.Println("Awaiting authentication...")

        authData, err := session.ReceiveMessage(session.Context()) // Waits here till first datagram
        if err != nil {                                            // if client closes connection before sending anything
            fmt.Println("\nConnection closed:", err)
            return
        }

        if len(authData) >= 2 && bytes.Equal(authData[2:], password) {
            if connected {
                session.CloseSession()
                warn("Client has authenticated, but a session is already taking place! Connection closed.")
                return
            } else {
                connected = true
                fmt.Println("Client has authenticated!\n")
            }
        } else {
            session.CloseSession()
            warn("Client has failed authentication! Connection closed. (" + string(authData[2:]) + ")")
            return
        }

        videoStream, _ := session.OpenUniStreamSync(session.Context())

        videoCmd := exec.Command(videoString[0], videoString[1:]...)
        go func() {
            videoOut, _ := videoCmd.StdoutPipe()
            videoCmd.Start()

            buffer := make([]byte, 15000)
            for {
                len, err := videoOut.Read(buffer)
                if err != nil {
                    break
                }
                if len > 0 {
                    videoStream.Write(buffer[:len])
                }
            }
        }()

        time.Sleep(50 * time.Millisecond)

        audioStream, err := session.OpenUniStreamSync(session.Context())

        audioCmd := exec.Command(audioString[0], audioString[1:]...)
        go func() {
            audioOut, _ := audioCmd.StdoutPipe()
            audioCmd.Start()

            buffer := make([]byte, 15000)
            for {
                len, err := audioOut.Read(buffer)
                if err != nil {
                    break
                }
                if len > 0 {
                    audioStream.Write(buffer[:len])
                }
            }
        }()

        for {
            data, err := session.ReceiveMessage(session.Context())
            if err != nil {
                videoCmd.Process.Kill()
                audioCmd.Process.Kill()

                connected = false

                fmt.Println("\nConnection closed:", err)
                break
            }

            if len(data) == 0 {

            } else if data[0] == byte(0) {
                fmt.Printf("Received mouse datagram: %s\n", data)
            }
        }

    })

    server := &webtransport.Server{
        ListenAddr: ":1024",
        TLSCert:    webtransport.CertFile{Path: "SSL/fullchain.pem"},
        TLSKey:     webtransport.CertFile{Path: "SSL/privkey.pem"},
        QuicConfig: &webtransport.QuicConfig{
            KeepAlive:      false,
            MaxIdleTimeout: 3 * time.Second,
        },
    }

    fmt.Println("Launching WebTransport server at", server.ListenAddr)
    ctx, cancel := context.WithCancel(context.Background())
    if err := server.Run(ctx); err != nil {
        log.Fatal(err)
        cancel()
    }

}

    


    


    



  • Announcing our latest open source project : DeviceDetector

    30 juillet 2014, par Stefan Giehl — Community, Development, Meta, DeviceDetector

    This blog post is an announcement for our latest open source project release : DeviceDetector ! The Universal Device Detection library will parse any User Agent and detect the browser, operating system, device used (desktop, tablet, mobile, tv, cars, console, etc.), brand and model.

    Read on to learn more about this exciting release.

    Why did we create DeviceDetector ?

    Our previous library UserAgentParser only had the possibility to detect operating systems and browsers. But as more and more traffic is coming from mobile devices like smartphones and tablets it is getting more and more important to know which devices are used by the websites visitors.

    To ensure that the device detection within Piwik will gain the required attention, so it will be as accurate as possible, we decided to move that part of Piwik into a separate project, that we will maintain separately. As an own project we hope the DeviceDetector will gain a better visibility as well as a better support by and for the community !

    DeviceDetector is hosted on GitHub at piwik/device-detector. It is also available as composer package through Packagist.

    How DeviceDetector works

    Every client requesting data from a webserver identifies itself by sending a so-called User-Agent within the request to the server. Those User Agents might contain several information such as :

    • client name and version (clients can be browsers or other software like feed readers, media players, apps,…)
    • operating system name and version
    • device identifier, which can be used to detect the brand and model.

    For Example :

    Mozilla/5.0 (Linux; Android 4.4.2; Nexus 5 Build/KOT49H) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/32.0.1700.99 Mobile Safari/537.36

    This User Agent contains following information :

    Operating system is Android 4.4.2, client uses the browser Chrome Mobile 32.0.1700.99 and the device is a Google Nexus 5 smartphone.

    What DeviceDetector currently detects

    DeviceDetector is able to detect bots, like search engines, feed fetchers, site monitors and so on, five different client types, including around 100 browsers, 15 feed readers, some media players, personal information managers (like mail clients) and mobile apps using the AFNetworking framework, around 80 operating systems and nine different device types (smartphones, tablets, feature phones, consoles, tvs, car browsers, cameras, smart displays and desktop devices) from over 180 brands.

    Note : Piwik itself currently does not use the full feature set of DeviceDetector. Client detection is currently not implemented in Piwik (only detected browsers are reported, other clients are marked as Unknown). Client detection will be implemented into Piwik in the future, follow #5413 to stay updated.

    Performance of DeviceDetector

    Our detections are currently handled by an enormous number of regexes, that are defined in several .YML Files. As parsing these .YML files is a bit slow, DeviceDetector is able to cache the parsed .YML Files. By default DeviceDetector uses a static cache, which means that everything is cached in static variables. As that only improves speed for many detections within one process, there are also adapters to cache in files or memcache for speeding up detections across requests.

    How can users help contribute to DeviceDetector ?

    Submit your devices that are not detected yet

    If you own a device, that is currently not correctly detected by the DeviceDetector, please create a issue on GitHub
    In order to check if your device is detected correctly by the DeviceDetector go to your Piwik server, click on ‘Settings’ link, then click on ‘Device Detection’ under the Diagnostic menu. If the data does not match, please copy the displayed User Agent and use that and your device data to create a ticket.

    Submit a list of your User Agents

    In order to create new detections or improve the existing ones, it is necessary for us to have lists of User Agents. If you have a website used by mostly non desktop devices it would be useful if you send a list of the User Agents that visited your website. To do so you need access to your access logs. The following command will extract the User Agents :

    zcat ~/path/to/access/logs* | awk -F'"' '{print $6}' | sort | uniq -c | sort -rn | head -n20000 > /home/piwik/top-user-agents.txt

    If you want to help us with those data, please get in touch at devicedetector@piwik.org

    Submit improvements on GitHub

    As DeviceDetector is free/libre library, we invite you to help us improving the detections as well as the code. Please feel free to create tickets and pull requests on Github.

    What’s the next big thing for DeviceDetector ?

    Please check out the list of issues in device-detector issue tracker.

    We hope the community will answer our call for help. Together, we can build DeviceDetector as the most powerful device detection library !

    Happy Device Detection,

  • How to Check Website Traffic As Accurately As Possible

    18 août 2023, par Erin — Analytics Tips

    If you want to learn about the health of your website and the success of your digital marketing initiatives, there are few better ways than checking your website traffic. 

    It’s a great way to get a quick dopamine hit when things are up, but you can also use traffic levels to identify issues, learn more about your users or benchmark your performance. That means you need a reliable and easy way to check your website traffic over time — as well as a way to check out your competitors’ traffic levels, too. 

    In this article, we’ll show you how to do just that. You’ll learn how to check website traffic for both your and your competitor’s sites and discover why some methods of checking website traffic are better than others. 

    Why check website traffic ? 

    Dopamine hits aside, it’s important to constantly monitor your website’s traffic for several reasons.

    There are five reasons to check website traffic

    Benchmark site performance

    Keeping regular tabs on your traffic levels is a great way to track your website’s performance over time. It can help you plan for the future or identify problems. 

    For instance, growing traffic levels may mean expanding your business’s offering or investing in more inventory. On the flip side, decreasing traffic levels may suggest it’s time to revamp your marketing strategies or look into issues impacting your SEO. 

    Analyse user behaviour

    Checking website traffic and user behaviour lets marketing managers understand how users interact with your website. Which pages are they visiting ? Which CTAs do they click on ? What can you do to encourage users to take the actions you want ? You can also identify issues that lead to high bounce rates and other problems. 

    The better you understand user behaviour, the easier it will be to give them what they want. For example, you may find that users spend more time on your landing pages than they do your blog pages. You could use that information to revise how you create blog posts or focus on creating more landing pages. 

    Improve the user experience

    Once you understand how users behave on your website, you can use that information to fix errors, update your content and improve the user experience for the site. 

    You can even personalise the experience for customers, leading to significant growth. Research shows companies that grow faster derive 40% more of their revenue from personalisation. 

    That could come in the form of sweeping personalisations — like rearranging your website’s navigation bar based on user behaviour — or individual personalisation that uses analytics to transform sections or entire pages of your site based on user behaviour. 

    Optimise marketing strategies

    You can use website traffic reports to understand where users are coming from and optimise your marketing plan accordingly. You may want to double down on organic traffic, for instance, or invest more in PPC advertising. Knowing current traffic estimates and how these traffic levels have trended over time can help you benchmark your campaigns and prioritise your efforts. 

    Increasing traffic levels from other countries can also help you identify new marketing opportunities. If you start seeing significant traffic levels from a neighbouring country or a large market, it could be time to take your business international and launch a cross-border campaign. 

    Filter unwanted traffic

    A not-insignificant portion of your site’s traffic may be coming from bots and other unwanted sources. These can compromise the quality of your analytics and make it harder to draw insights. You may not be able to get rid of this traffic, but you can use analytics tools to remove it from your stats. 

    How to check website traffic on Matomo

    If you want to check your website’s traffic, you’d be forgiven for heading to Google Analytics first. It’s the most popular analytics tool on the market, after all. But if you want a more reliable assessment of your website’s traffic, then we recommend using Matomo alongside Google Analytics. 

    The Matomo web analytics platform is an open-source solution that helps you collect accurate data about your website’s traffic and make more informed decisions as a result — all while enhancing the customer experience and ensuring GDPR compliance and user privacy. 

    Matomo also offers multiple ways to check website traffic :

    Let’s look at all of them one by one. 

    The visits log report is a unique rundown of all of the individual visitors to your site. This offers a much more granular view than other tools that just show the total number of visitors for a given period. 

    The Visits log report is a unique rundown of your site's visitors

    You can access the visits log report by clicking on the reporting menu, then clicking Visitor and Visits Log. From there, you’ll be able to scroll through every user session and see the following information :

    • The location of the user
    • The total number of actions they took
    • The length of time on site
    • How they arrived at your site
    • And the device they used to access your site 

    This may be overwhelming if your site receives thousands of visitors at a time. But it’s a great way to understand users at an individual level and appreciate the lifetime activity of specific users. 

    The Real-time visitor map is a visual display of users’ location for a given timeframe. If you have an international website, it’s a fantastic way to see exactly where in the world your traffic comes from.

    Use the Real-time Map to see the location of users over a given timeframe

    You can access the Real-time Visitor Map by clicking Visitor in the main navigation menu and then Real-time Map. The map itself is colour-coded. Larger orange bubbles represent recent visits, and smaller dark orange and grey bubbles represent older visits. The map will refresh every five seconds, and new users appear with a flashing effect. 

    If you run TV or radio adverts, Matomo’s Real-time Map provides an immediate read on the effectiveness of your campaign. If your map lights up in the minutes following your ad, you know it’s been effective. It can also help you identify the source of bot attacks, too. 

    Finally, the Visits in Real-time report provides a snapshot of who is browsing your website. You can access this report under Visitors > Real-time and add it to your custom dashboards as a widget. 

    Open the report, and you’ll see the real-time flow of your site’s users and counters for visits and pageviews over the last 30 minutes and 24 hours. The report refreshes every five seconds with new users added to the top of the report with a fade-in effect.

    Use the Visits in Real-Time report to get a snapshot of your site's most recent visitors

    The report provides a snapshot of each visitor, including :

    • Whether they are new or a returning 
    • Their country
    • Their browser
    • Their operating system
    • The number of actions they took
    • The time they spent on the site
    • The channel they came in from
    • Whether the visitor converted a goal

    3 other ways to check website traffic

    You don’t need to use Matomo to check your website traffic. Here are three other tools you can use instead. 

    How to check website traffic on Google Analytics

    Google Analytics is usually the first starting point for anyone looking to check their website traffic. It’s free to use, incredibly popular and offers a wide range of traffic reports. 

    Google Analytics lets you break down historical traffic data almost any way you wish. You can split traffic by acquisition channel (organic, social media, direct, etc.) by country, device or demographic.

    Google Analytics can split website traffic by channel

    It also provides real-time traffic reports that give you a snapshot of users on your site right now and over the last 30 minutes. 

    Google Analytics 4 shows the number of users over the last 30 minutes

    Google Analytics may be one of the most popular ways to check website traffic, but it could be better. Google Analytics 4 is difficult to use compared to its predecessor, and it also limits the amount of data you can track in accordance with privacy laws. If users refuse your cookie consent, Google Analytics won’t record these visits. In other words, you aren’t getting a complete view of your traffic by using Google Analytics alone. 

    That’s why it’s important to use Google Analytics alongside other web analytics tools (like Matomo) that don’t suffer from the same privacy issues. That way, you can make sure you track every single user who visits your site. 

    How to check website traffic on Google Search Console

    Google Search Console is a free tool from Google that lets you analyse the search traffic that your site gets from Google. 

    The top-line report shows you how many times your website has appeared in Google Search, how many clicks it has received, the average clickthrough rate and the average position of your website in the search results. 

    Google Search Console is a great way to understand what you rank for and how much traffic your organic rankings generate. It will also show you which pages are indexed in Google and whether there are any crawling errors. 

    Unfortunately, Google Search Console is limited if you want to get a complete view of your traffic. While you can analyse search traffic in a huge amount of detail, it will not tell you how users who access your website directly or via social media behave. 

    How to check website traffic on Similarweb

    Similarweb is a website analysis tool that estimates the total traffic of any site on the internet. It is one of the best tools for estimating how much traffic your competitors receive. 

    What’s great about Similarweb is that it estimates total traffic, not just traffic from search engines like many SEO tools. It even breaks down traffic by different channels, allowing you to see how your website compares against your competitors. 

    As you can see from the image above, Similarweb provides an estimate of total visits, bounce rate, the average number of pages users view per visit and the average duration on the site. The company also has a free browser extension that lets you check website traffic estimates as you browse the web. 

    You can use Similarweb for free to a point. But to really get the most out of this tool, you’ll need to upgrade to a premium plan which starts at $125 per user per month. 

    The price isn’t the only downside of using Similarweb to check the traffic of your own and your competitor’s websites. Ultimately, Similarweb is only an estimate — even if it’s a reasonably accurate one — and it’s no match for a comprehensive analytics tool. 

    7 website traffic metrics to track

    Now that you know how to check your website’s traffic, you can start to analyse it. You can use plenty of metrics to assess the quality of your website traffic, but here are some of the most important metrics to track. 

    • New visitors : These are users who have never visited your website before. They are a great sign that your marketing efforts are working and your site is reaching more people. But it’s also important to track how they behave on the website to ensure your site caters effectively to new visitors. 
    • Returning visitors : Returning visitors are coming back to your site for a reason : either they like the content you’re creating or they want to make a purchase. Both instances are great. The more returning visitors, the better. 
    • Bounce rate : This is a measure of how many users leave your website without taking action. Different analytics tools measure this metric differently.
    • Session duration : This is the length of time users spend on your website, and it can be a great gauge of whether they find your site engaging. Especially when combined with the metric below. 
    • Pages per session : This measures how many different pages users visit on average. The more pages they visit and the longer users spend on your website, the more engaging it is. 
    • Traffic source : Traffic can come from a variety of sources (organic, direct, social media, referral, etc.) Tracking which sources generate the most traffic can help you analyse and prioritise your marketing efforts. 
    • User demographics : This broad metric tells you more about who the users are that visit your website, what device they use, what country they come from, etc. While the bulk of your website traffic will come from the countries you target, an influx of new users from other countries can open the door to new opportunities.

    Why do my traffic reports differ ?

    If you use more than one of the methods above to check your website traffic, you’ll quickly realise that every traffic report differs. In some cases, the reasons are obvious. Any tool that estimates your traffic without adding code to your website is just that : an estimate. Tools like Similarweb will never offer the accuracy of analytics platforms like Matomo and Google Analytics. 

    But what about the differences between these analytics platforms themselves ? While each platform has a different way of recording user behaviour, significant differences in website traffic reports between analytics platforms are usually a result of how each platform handles user privacy. 

    A platform like Google Analytics requires users to accept a cookie consent banner to track them. If they accept, great. Google collects all of the data that any other analytics platform does. It may even collect more. If users reject cookie consent banners, however, then Google Analytics can’t track these visitors at all. They simply won’t show up in your traffic reports. 

    That doesn’t happen with all analytics platforms, however. A privacy-focused alternative like Matomo doesn’t require cookie consent banners (apart from in the United Kingdom and Germany) and can therefore continue to track visitors even after they have rejected a cookie consent screen from Google Analytics. This means that virtually all of your website traffic will be tracked regardless of whether users accept a cookie consent banner or not. And it’s why traffic reports in Matomo are often much higher than they are in Google Analytics.

    Matomo doesn't need cookie consent, so you see a complete view of your traffic

    Given that around half (47.32%) of adults in the European Union refuse to allow the use of personal data tracking for advertising purposes and that 95% of people will reject additional cookies when it is easy to do so, this means you could have vastly different traffic reports — and be missing out on a significant amount of user data. 

    If you’re serious about using web analytics to improve your website and optimise your marketing campaigns, then it is essential to use another analytics platform alongside Google Analytics. 

    Get more accurate traffic reports with Matomo

    There are several methods to check website traffic. Some, like Similarweb, can provide estimates on your competitors’ traffic levels. Others, like Google Analytics, are free. But data doesn’t lie. Only privacy-focused analytics solutions like Matomo can provide accurate reports that account for every visitor. 

    Join over one million organisations using Matomo to accurately check their website traffic. Try it for free alongside GA today. No credit card required.