
Recherche avancée
Autres articles (23)
-
Supporting all media types
13 avril 2011, parUnlike most software and media-sharing platforms, MediaSPIP aims to manage as many different media types as possible. The following are just a few examples from an ever-expanding list of supported formats : images : png, gif, jpg, bmp and more audio : MP3, Ogg, Wav and more video : AVI, MP4, OGV, mpg, mov, wmv and more text, code and other data : OpenOffice, Microsoft Office (Word, PowerPoint, Excel), web (html, CSS), LaTeX, Google Earth and (...)
-
Contribute to a better visual interface
13 avril 2011MediaSPIP is based on a system of themes and templates. Templates define the placement of information on the page, and can be adapted to a wide range of uses. Themes define the overall graphic appearance of the site.
Anyone can submit a new graphic theme or template and make it available to the MediaSPIP community. -
Organiser par catégorie
17 mai 2013, parDans MédiaSPIP, une rubrique a 2 noms : catégorie et rubrique.
Les différents documents stockés dans MédiaSPIP peuvent être rangés dans différentes catégories. On peut créer une catégorie en cliquant sur "publier une catégorie" dans le menu publier en haut à droite ( après authentification ). Une catégorie peut être rangée dans une autre catégorie aussi ce qui fait qu’on peut construire une arborescence de catégories.
Lors de la publication prochaine d’un document, la nouvelle catégorie créée sera proposée (...)
Sur d’autres sites (5376)
-
How to Check Website Traffic : A Complete Guide
26 février, par Daniel Crough — Analytics Tips, MarketingIf 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.
Checking website traffic is a great way to get a dopamine hit when things are up. And it’s a great way to troubleshoot problems when things go down. It’s also a critical data source for marketing and web teams. But to get the most out of it, you need reliable data sources, the ability to track them over time and a way to monitor the competition.
This article explains how to check website traffic (for your site and your competitors), explores nine tools that can help and discusses why some methods are better than others.
Why check website traffic ?
Dopamine hits aside, monitoring website traffic is crucial to a business — even for a primarily brick-and-mortar operation. In this internet age, customers and prospects are far more likely to research a company online before buying anything.
SOCi’s 2024 Consumer Behavior Index found that 8 in 10 US consumers use the internet to search for local businesses at least once a week. And Statista found that 55% of UK shoppers always do some online research before making a major purchase.
And trend lines suggest these numbers are likely to continue climbing. Businesses need to know what’s happening on their sites, and that’s difficult to achieve without traffic data.
Indeed, website data allows companies to better understand their target audiences, measure the effectiveness of marketing efforts and channels, and identify areas of the website that need work.
Let’s dig into those ideas in a little more detail.
Benchmark site performance
Keeping regular tabs on traffic levels is a great way to track a website’s performance over time. It can help with planning for the future and identifying current problems.
For instance, rising traffic levels may mean expanding the business’s offering or investing in more inventory. On the flip side, decreasing traffic levels may suggest it’s time to revamp marketing strategies or look into issues impacting SEO.
Analyse user behaviour
Checking website traffic, user behaviour, and other metrics shows marketing managers how users interact with the website. These traffic stats can help answer questions like :
- Which pages are users visiting ?
- Which CTAs are they clicking on ?
- Which page elements encourage users to take the desired actions ?
It can also identify issues contributing to high bounce rates or declines in search rankings.
The better user behaviour is understood, the easier it is to give visitors what they want. For example, the data could reveal that users spend more time on landing pages than blogs. These valuable insights can be used to optimise blog content and improve performance.
Improve the user experience
Once user behaviour is well understood, it’s easier to make adjustments, update content and improve the overall user experience. This also allows companies to create more personalised customer experiences, which can lead to growth. Research shows companies that get personalisation right generate 40% more revenue from those activities than average players.
That could take the form of sweeping changes like rearranging a website’s navigation bar based on user behaviour. It could also be personalisation that uses analytics to transform sections or entire pages based on individual user behaviour.
Optimise digital marketing strategies
Knowing current traffic levels and how they trend over time helps teams set benchmarks and prioritise marketing efforts.
Monthly traffic reports can inform SEO efforts and benefit marketing attribution. For example, they could indicate when the time is right to double down on organic traffic or when the better strategy would be to invest more in PPC advertising.
Increasing organic traffic levels from other countries can help businesses identify new marketing opportunities. If traffic levels from a neighbouring country or a growing market increase significantly, it could be time for a cross-border campaign.
Filter unwanted traffic
A significant chunk of every website’s traffic comes from bots and other unwanted sources. This can compromise the quality of website data and make it harder to draw useful insights. While it’s nearly impossible to get rid of this traffic completely, many analytics tools have features to filter it out of the stats.
Why check competitors’ website traffic
Websites are windows into businesses and their strategies. That’s why monitoring traffic and other metrics drawn from competitors is essential.
There’s a lot to learn from the competition, both good and bad. What competitors do well can be replicated, and learning from the elements they get wrong can help you avoid making the same mistakes.
- Strategic planning : Looking at traffic on specific pages can offer insight into potential marketing campaigns and highlight gaps in the market that may be worth attacking. Looking at their organic, paid, social and referral traffic levels can highlight opportunities for growth or pinpoint the reasons for success in a particular area.
- Benchmarking : Looking at website traffic in isolation can lack context. Monitoring other sites’ engagement metrics, like bounce rate and average session duration, can give you an inside look at the competition, which can help you set realistic performance goals and benchmarks.
- Product Development : Significant traffic volume on certain pages can indicate shifts in demand and market trends, which may inform the development of new products or services. For example, if a competitive dog food supplier ranks well for the term “organic dog food”, that might be something to consider when formulating new products.
- Audience demographics : Comparing audience demographics between competitors can highlight opportunities and help a business narrow down its target audience. This guides messaging and campaign strategies to capture specific audience segments.
- Keyword opportunities : Examining the keywords driving the most traffic to a competitor’s website can help you uncover untapped SEO potential for your website. Analysing top-performing content on competing sites can help identify content improvement strategies to pull traffic away from competitors.
- Partnerships : Referrals are an often overlooked traffic metric. High volumes of such traffic indicate successful partnerships between competitors and third parties, which is a model worth emulating.
7 key website traffic metrics to track
Traffic metrics are not a case of one-size-fits-all. Those that are important today may not be tomorrow. It all depends on the priorities and goals at any one moment. That said, there are a few traffic metrics that always matter to some degree.
- New visitors : These are users who have never visited the website before. They are a great sign that marketing efforts are working and the website is reaching more people. But it’s also important to track how they behave on the website to ensure the site caters effectively to the needs of new visitors.
- Returning visitors : Returning visitors are coming back to the website for a reason : either they like the content they find or want to buy something. Either way, it’s excellent news. The more returning visitors, the better.
- Bounce rate : This measures how many users leave the website without taking action. Different analytics tools measure this metric differently.
- Session duration : This is the time users spend on the website, which can reveal whether they find the site engaging. And when considered alongside the next metric, it can be especially insightful.
- Pages per session : This measures the average number of pages users visit on a website. The more pages they visit and the longer users spend on the website, the more engaging it is.
- Traffic source : Traffic can come from various sources (organic, direct, social media, referral, etc.). Knowing the highest sources of referral traffic can help analyse and prioritise marketing efforts.
- User demographics : This shows who visits a website, what device they use, what country they come from, etc. While most website traffic will come from the countries targeted by marketing, an influx of new users from other countries can open the door to new opportunities.
9 tools to check website traffic
There are thousands of different web analytics tools that can provide decent website traffic analysis and functionality checks. They all use a similar combination of sophisticated algorithms, data collection techniques, statistical analysis and machine learning to deliver insights into visitor behaviour and site performance.
Most web analytics tools work by embedding bits of JavaScript or other tracking codes into a website. When users land on a website, it gathers data such as page views, session duration, and specific interactions. Many also use cookies to identify returning visitors, which lets them monitor user behaviour over time.
Many tools offer advanced event-tracking functionality. This captures specific actions, like clicks or form submissions, and provides a more granular view of engagement. The data is then statistically analysed to spot trends and calculate key metrics like bounce rates and conversion rates.
Some web analytics tools use machine learning to predict future user behaviour based on historical patterns. Others aggregate data to provide insights via charts comparing website performance with selected competitors’ websites.
This section explores nine popular tools for checking website traffic and highlights their unique features and benefits.
1. Checking website traffic with Google Analytics
Google Analytics is usually the first place to start for anyone looking to check their website traffic. It’s free to use, incredibly popular and offers a wide range of traffic reports.
It breaks down historical traffic data in many different ways. It can split traffic by acquisition channel (organic, social media, direct, etc.), by country, device or demographic. It also provides real-time traffic reports that offer a snapshot of users on the site right now and over the last 30 minutes.
GA4’s Traffic acquisition report helps to understand where website and app visitors are coming from. Image source Google Analytics may be one of the most popular ways to check website traffic, but it could be better. Google Analytics 4 (GA4) is difficult to use compared to its predecessor, and it also imposes data tracking limits in accordance with privacy laws. If users refuse cookie consent, Google Analytics won’t record those visits. In other words, using Google Analytics alone doesn’t provide a complete view of the traffic.
GA4 can also help to pinpoint the pages and screens that receive the most traffic. Image source Also, GA4 relies on sampling when processing large datasets or complex queries. When the volume of data exceeds certain thresholds, it only considers a subset of the data to generate reports instead of processing every single data point.
There are pros and cons to this approach. While it speeds up analysis and reduces the load on the system, it can also lead to inaccuracies in insights delivered. When analysing traffic patterns over a busy period, GA4 may only use a portion of the data to calculate and then extrapolate metrics.
As a result, trends or anomalies might be overlooked or misconstrued, which could mean missed opportunities or poor decisions. 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, it’s possible to track every single user who visits the website.
2. Checking website traffic with Google Search Console
Google Search Console is a free tool that analyses a website’s Google search traffic. The top-line report shows how many times the website has appeared in Google Search, how many clicks it has received, the average clickthrough rate and its average position in the search results.
Google Search Console can reveal keyword patterns and spikes in interest Image source It’s a great way to understand what the website ranks for and how much traffic organic rankings generate. It will also show which pages are indexed in Google and whether there are any crawling errors.
Unfortunately, Google Search Console is limited if a complete view of traffic is needed. While the search traffic can be analysed in great detail, it will not report how users who access the website behave on it.
3. Checking website traffic with Similarweb
Similarweb is a website analysis tool that estimates the total traffic of any site on the internet. It is one of the best traffic checker tools for estimating how much web traffic 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 for easy comparison.
Similarweb’s dashboard reveals how traffic levels increase or decrease month-over-month. Image source 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 continues checking website traffic estimates while the user is browsing the web.
Similarweb is free to use, up to a point. However, to get the most out of this tool, you must upgrade to the premium plan, which starts at $125 per user per month.
The price isn’t Similarweb’s only downside. Ultimately, it provides reasonably accurate estimates but is no match for a comprehensive traffic analytics tool.
4. Checking website traffic with Semrush
Semrush is a collection of marketing solutions for online businesses. Its Traffic Analytics tool checks the website traffic of up to 100 sites and compares that data side-by-side. For each site, it reveals the top pages, the regions from which most of the traffic comes, and the locations from which the most referrals come.
Semrush also gathers insights into competitors’ audiences and their activity, especially activity that overlaps between the sites being checked. It extracts and analyses comprehensive data on organic and paid search, social media, and backlinks.
Semrush’s traffic analytics monitors traffic stats for competitor websites. Image source However, there are notable downsides. Semrush can be pricey, with plans starting at about $119.95 per month or $1,199.40 annually. This cost may be prohibitive for smaller businesses or freelancers. Still, a free version offers most of the functionality but with a limited number of daily reports.
5. Checking website traffic with Ahrefs
Ahrefs‘s biggest strength is its organic traffic estimation capabilities. It estimates monthly visits from Google worldwide, Google keywords in the top 100 that a website ranks for, and traffic value via equivalence to PPC.
Ahrefs’ SEO dashboard uses trend graphs to show how projects are performing. Image source Ahrefs bases its estimates on ranking data from a database of 12 billion keywords, which is why it is so powerful. It generates a detailed report that includes organic traffic estimates, backlink data, and top-performing keywords.
However, the numbers produced by Ahrefs are estimates based on the available data and won’t always be 100% accurate. This is particularly true for smaller or newer websites that lack the data volumes needed for accuracy.
It’s a great SEO marketing tool that’s free to use within certain limits, but there is some value in registering for a paid plan. There are several options, beginning with the $129 per month Lite plan and extending to the Enterprise Plan for $1,499 monthly.
6. Checking website traffic with Serpstat
Serpstat is an SEO solution that grew from a simple keyword research tool. It offers more comprehensive features to help businesses understand their website’s performance. It helps improve a site’s visibility through tools for rank tracking, keyword research, traffic checking, backlink analysis, and site auditing.
Serpstat’s Domain Analytics dashboard shows trends over a 12-month period. Image source It provides metrics like estimated monthly visits, traffic sources (organic, paid, and referral), and insights into top-performing pages. Serpstat also offers competitor analysis features that help to identify market trends and refine growth strategies. However, like Ahrefs, the numbers provided are estimates, which are only as good as the depth of data from which they are derived.
The free version is fine for basic analysis, but signing up for one of the paid plans is advisable for commercial use. Pricing ranges from $59 per month to a monthly fee of $479 for the Agency plan. There is an option to pay annually at a discount.
7. Checking website traffic with SEO PowerSuite
SEO PowerSuite also goes some distance beyond just website traffic checking. As the name implies, it’s a suite of tools to improve website rankings.
Rank Tracker’s SEO dashboard reveals organic session growth over time. Image source. There are four tools in the suite :
- Rank Tracker enables tracking a website’s search engine rankings across multiple keywords and search engines.
- WebSite Auditor offers SEO analysis of website pages and recommends actions to boost performance.
- SEO SpyGlass analyses a website’s backlink profile to highlight link-building possibilities that’d help improve performance.
- LinkAssistant helps identify websites suitable for link-building and recommends viable outreach opportunities.
SEO PowerSuite has a free plan and two premium plans with varying functionality. The monthly cost could be as much as $139.67, depending on the features needed. Annual pricing options are also available.
8. Checking website traffic with Ubersuggest
Ubersuggest is also an SEO-focused tool. It offers website traffic analysis, keyword rankings, backlink profiles, and competitor insights. These are packaged in reports that provide an overview of website traffic, including monthly organic traffic totals and the number of organic keywords the site ranks for. Ubersuggest also offers content suggestions.
Ubersuggest’s Domain Overview Dashboard provides an overview of a website’s traffic. Image source Like other tools in this category, Ubersuggest doesn’t collect comprehensive data, so its numbers are estimates. This means the accuracy can vary. However, it remains a solid choice for providing great insights and enhancing a website’s online presence.
Like many tools in this category, there is a free version to give potential customers a taste, which is restricted by volume more than features. The paid plans range from around $29 per month for one website on the individual plan to about $99 per month for 8-15 websites on the Enterprise plan. Discounted annual pricing is also an option.
9. Checking website traffic with MonsterInsights
MonsterInsights is a tool worth considering for websites built on WordPress because it’s not a website checking tool in the usual sense. It’s a WordPress plugin that simplifies the task by integrating Google Analytics directly into a website.
MonsterInsights then uses the raw data provided by GA4 to extract actionable insights based on audience preferences and activity. This makes it easier to focus on the relevant metrics for different types of websites. For example, the metrics used to measure a blog site would not be the same as those for an ecommerce site.
But there are some downsides, too. While the basic version is free, it has limited features, and the most potent functionality requires a premium subscription. Those start at $249 per year for a single site, or the Pro plan at $499 for up to five sites. Agencies looking to work with up to 25 sites are in for $999.
MonsterInsights’ Analytics Overview offers a snapshot of a website’s traffic volumes. Image source There’s another option
Although many of these tools have free versions, those tend to be heavily restricted, and premium plans can be expensive. A website has to generate serious revenue to deliver a decent return on investment (ROI) to justify the costs.
As more countries adopt GDPR-like privacy regulations, brands must ensure they’re using compliant, privacy-centric analytics tools.
Matomo Analytics is one such tool. It’s an ethical, open-source solution that helps you collect accurate data about your website’s traffic and make more informed decisions. This enhances the customer experience and ensures GDPR compliance and user privacy.
It’s completely free to install as an on-premise solution. Alternatively, there’s the subscription-based Matomo Cloud version.
How to check website traffic on Matomo
Apart from a better ROI picture, Matomo offers a more reliable assessment of your website’s traffic than Google Analytics 4. It also provides multiple ways to check organic search traffic :
- Visits log report
- Real-time visitor map
- Visits in real-time report
Let’s look at all of them one by one.
The visits log report is a unique rundown of your site’s visitors. It offers a much more granular view than other traffic checker tools, which only show the total number of visitors for a given period.
Matomo’s Visits Log Report provides a detailed breakdown of all website visitors. You can access the visits log report by clicking on the reporting menu and 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
- The device they used to access your site
It 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 shows site visitors’ location for a given timeframe. If you have an international website, it’s a fantastic way to see exactly where your traffic comes from.
Matomo’s Geo-Location dashboard reveals where website visitors are located. Image source 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.
Matomo’s Visits in Real-time report displays new visits or current visitors viewing a new page. Image source The report provides a snapshot of each visitor, including :
- Whether they are new or 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
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 many of those mentioned here 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 records user behaviour differently, significant differences in website traffic reports between analytics platforms are usually due to 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. However, if users reject cookie consent banners, Google Analytics can’t track them. 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). Therefore, it can continue to track visitors even after they have rejected a cookie consent screen from Google Analytics. This means virtually all website traffic will be tracked regardless of whether users accept a cookie consent banner. And it’s why traffic reports in Matomo are often much higher than in Google Analytics.
Many adults in the EU refuse to allow tracking for advertising purposes, and most reject cookies when they can. This means different analytics tools can offer vastly different traffic stats. Around half (47.32%) of adults in the European Union refuse to allow personal data tracking for advertising purposes, and 95% of people will reject additional cookies when it is easy to do so. So relying on cookies limits your results — and causes you to miss out on valuable 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.
What to do if website traffic levels drop
Experiencing a drop in website traffic can be frustrating, but it happens to everyone at some point. Here’s how to address it :
- Analyse traffic sources : Use analytics tools to pinpoint where the decline is coming from—organic search, referrals, or social media.
- Check for technical issues : Look for broken links or slow loading times, which can deter visitors. Tools like Google Search Console can help identify errors.
- Review recent changes : Consider any recent updates to the website. If something coincided with the drop, it might be worth reverting.
- Evaluate content quality : Ensure the content is engaging and relevant. Update or improve underperforming posts.
- Reassess the marketing strategy : The only constant in marketing is change. It’s wise to periodically revisit the balance between paid ads, social media and other vectors to evaluate their effectiveness and adjust the approach.
It’s perfectly normal for website traffic volumes to fluctuate. Expect it and work with the available tools. Persistence will likely see the traffic volumes rebound.
Get more accurate traffic reports with Matomo
There are several methods to check website traffic. Some 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 check their website traffic accurately and ethically.
Try Matomo for Free
Start your 21-day free trial — no credit card required.
-
ffmpeg produces duplicate pts with "wallclock_as_timestamps 1" option on MKV
15 avril 2024, par Jax2171I need to get real time reference of every keyframe captured by an IP camera. The
-wallclock_as_timestamps 1
option seems to do the trick for us, however we are forced to replace the TS output container with MKV to get a correct PTS epoch value1712996356.833000
.

Here is the ffmpeg command used :


ffmpeg -report -use_wallclock_as_timestamps 1 -rtsp_transport tcp -i rtsp://user:password1@192.168.5.21/cam/realmonitor?channel=1channel1[1]=1subtype=0 -c:v copy -c:a aac -copyts -f matroska -y rec.mkv



The capture process runs without any relevant worning or error messages.


However, playing the captured video with any player shows very short and evident but very annoying lags. Upon investigation I discovered that many frame PTSs have the same value. The command I used to show duplicate PTSs is as follows :


ffprobe -v error -show_entries frame=pkt_pts_time -select_streams v -of csv=p=0 rec.mkv | sort | uniq -d



On a recording of about 10 minutes the result of the duplicate PTS is the following :


1713086493.367000
1713086493.368000
1713086493.370000
1713086493.372000
1713086543.714000
1713086558.793000
1713086558.817000
1713086558.872000
1713086561.780000
1713086564.642000
1713086564.657000
1713086564.778000
1713086565.794000
...



I'm not sure if the lag problem is caused by this, however the problem does not occur with the TS container, which however I cannot use due to the PTS values being roundly 33 bit.


The
-vsync 0
or-vsync 2
options on input or output didn't help.

This is the log using the
-report
option :

ffmpeg started on 2024-04-15 at 09:04:38
Report written to "ffmpeg-20240415-090438.log"
Log level: 48
Command line:
ffmpeg -report -stats -hide_banner -use_wallclock_as_timestamps 1 -rtsp_transport tcp -i "rtsp://user:password1@192.168.5.21/cam/realmonitor?channel=1channel1[1]=1subtype=0" -c:v copy -c:a aac -copyts -f matroska -y rec.mkv
Splitting the commandline.
Reading option '-report' ... matched as option 'report' (generate a report) with argument '1'.
Reading option '-stats' ... matched as option 'stats' (print progress report during encoding) with argument '1'.
Reading option '-hide_banner' ... matched as option 'hide_banner' (do not show program banner) with argument '1'.
Reading option '-use_wallclock_as_timestamps' ... matched as AVOption 'use_wallclock_as_timestamps' with argument '1'.
Reading option '-rtsp_transport' ... matched as AVOption 'rtsp_transport' with argument 'tcp'.
Reading option '-i' ... matched as input url with argument 'rtsp://user:password1@192.168.5.21/cam/realmonitor?channel=1channel1[1]=1subtype=0'.
Reading option '-c:v' ... matched as option 'c' (codec name) with argument 'copy'.
Reading option '-c:a' ... matched as option 'c' (codec name) with argument 'aac'.
Reading option '-copyts' ... matched as option 'copyts' (copy timestamps) with argument '1'.
Reading option '-f' ... matched as option 'f' (force format) with argument 'matroska'.
Reading option '-y' ... matched as option 'y' (overwrite output files) with argument '1'.
Reading option 'rec.mkv' ... matched as output url.
Finished splitting the commandline.
Parsing a group of options: global .
Applying option report (generate a report) with argument 1.
Applying option stats (print progress report during encoding) with argument 1.
Applying option hide_banner (do not show program banner) with argument 1.
Applying option copyts (copy timestamps) with argument 1.
Applying option y (overwrite output files) with argument 1.
Successfully parsed a group of options.
Parsing a group of options: input url rtsp://user:password1@192.168.5.21/cam/realmonitor?channel=1channel1[1]=1subtype=0.
Successfully parsed a group of options.
Opening an input file: rtsp://user:password1@192.168.5.21/cam/realmonitor?channel=1channel1[1]=1subtype=0.
[tcp @ 0x1646660] No default whitelist set
[tcp @ 0x1646660] Original list of addresses:
[tcp @ 0x1646660] Address 192.168.5.21 port 554
[tcp @ 0x1646660] Interleaved list of addresses:
[tcp @ 0x1646660] Address 192.168.5.21 port 554
[tcp @ 0x1646660] Starting connection attempt to 192.168.5.21 port 554
[tcp @ 0x1646660] Successfully connected to 192.168.5.21 port 554
[rtsp @ 0x1645e70] SDP:
v=0
o=- 2251950012 2251950012 IN IP4 0.0.0.0
s=Media Server
c=IN IP4 0.0.0.0
t=0 0
a=control:*
a=packetization-supported:DH
a=rtppayload-supported:DH
a=range:npt=now-
a=x-packetization-supported:IV
a=x-rtppayload-supported:IV
m=video 0 RTP/AVP 96
a=control:trackID=0
a=framerate:25.000000
a=rtpmap:96 H264/90000
a=fmtp:96 packetization-mode=1;profile-level-id=4D4028;sprop-parameter-sets=Z01AKKaAeAIn5ZuAgICgAAADACAAAAZQgAA=,aO48gAA=
a=recvonly
m=audio 0 RTP/AVP 97
a=control:trackID=1
a=rtpmap:97 MPEG4-GENERIC/16000
a=fmtp:97 streamtype=5;profile-level-id=1;mode=AAC-hbr;sizelength=13;indexlength=3;indexdeltalength=3;config=1408
a=recvonly

[rtsp @ 0x1645e70] video codec set to: h264
[rtsp @ 0x1645e70] RTP Packetization Mode: 1
[rtsp @ 0x1645e70] RTP Profile IDC: 4d Profile IOP: 40 Level: 28
[rtsp @ 0x1645e70] Extradata set to 0x164af98 (size: 39)
[rtsp @ 0x1645e70] audio codec set to: aac
[rtsp @ 0x1645e70] audio samplerate set to: 16000
[rtsp @ 0x1645e70] audio channels set to: 1
[rtsp @ 0x1645e70] setting jitter buffer size to 0
[rtsp @ 0x1645e70] setting jitter buffer size to 0
[rtsp @ 0x1645e70] hello state=0
Failed to parse interval end specification ''
[h264 @ 0x164ab30] nal_unit_type: 7(SPS), nal_ref_idc: 3
[h264 @ 0x164ab30] nal_unit_type: 8(PPS), nal_ref_idc: 3
[h264 @ 0x164ab30] nal_unit_type: 7(SPS), nal_ref_idc: 3
[h264 @ 0x164ab30] nal_unit_type: 8(PPS), nal_ref_idc: 3
[h264 @ 0x164ab30] nal_unit_type: 7(SPS), nal_ref_idc: 3
[h264 @ 0x164ab30] nal_unit_type: 8(PPS), nal_ref_idc: 3
[h264 @ 0x164ab30] nal_unit_type: 5(IDR), nal_ref_idc: 3
[h264 @ 0x164ab30] Format yuvj420p chosen by get_format().
[h264 @ 0x164ab30] Reinit context to 1920x1088, pix_fmt: yuvj420p
[h264 @ 0x164ab30] nal_unit_type: 1(Coded slice of a non-IDR picture), nal_ref_idc: 3
[h264 @ 0x164ab30] nal_unit_type: 1(Coded slice of a non-IDR picture), nal_ref_idc: 3
[h264 @ 0x164ab30] nal_unit_type: 1(Coded slice of a non-IDR picture), nal_ref_idc: 3
[h264 @ 0x164ab30] nal_unit_type: 1(Coded slice of a non-IDR picture), nal_ref_idc: 3
[h264 @ 0x164ab30] nal_unit_type: 1(Coded slice of a non-IDR picture), nal_ref_idc: 3
[h264 @ 0x164ab30] nal_unit_type: 1(Coded slice of a non-IDR picture), nal_ref_idc: 3
[rtsp @ 0x1645e70] All info found
Input #0, rtsp, from 'rtsp://user:password1@192.168.5.21/cam/realmonitor?channel=1channel1[1]=1subtype=0':
 Metadata:
 title : Media Server
 Duration: N/A, start: 1713164678.794625, bitrate: N/A
 Stream #0:0, 22, 1/90000: Video: h264 (Main), yuvj420p(pc, bt709, progressive), 1920x1080, 25 fps, 25 tbr, 90k tbn, 50 tbc
 Stream #0:1, 15, 1/16000: Audio: aac (LC), 16000 Hz, mono, fltp
Successfully opened the file.
Parsing a group of options: output url rec.mkv.
Applying option c:v (codec name) with argument copy.
Applying option c:a (codec name) with argument aac.
Applying option f (force format) with argument matroska.
Successfully parsed a group of options.
Opening an output file: rec.mkv.
[file @ 0x1699f30] Setting default whitelist 'file,crypto,data'
Successfully opened the file.
Stream mapping:
 Stream #0:0 -> #0:0 (copy)
 Stream #0:1 -> #0:1 (aac (native) -> aac (native))
Press [q] to stop, [?] for help
cur_dts is invalid st:0 (0) [init:1 i_done:0 finish:0] (this is harmless if it occurs once at the start per stream)
cur_dts is invalid st:1 (0) [init:0 i_done:0 finish:0] (this is harmless if it occurs once at the start per stream)
detected 4 logical cores
[graph_0_in_0_1 @ 0x1682bb0] Setting 'time_base' to value '1/16000'
[graph_0_in_0_1 @ 0x1682bb0] Setting 'sample_rate' to value '16000'
[graph_0_in_0_1 @ 0x1682bb0] Setting 'sample_fmt' to value 'fltp'
[graph_0_in_0_1 @ 0x1682bb0] Setting 'channel_layout' to value '0x4'
[graph_0_in_0_1 @ 0x1682bb0] tb:1/16000 samplefmt:fltp samplerate:16000 chlayout:0x4
[format_out_0_1 @ 0x187f2e0] Setting 'sample_fmts' to value 'fltp'
[format_out_0_1 @ 0x187f2e0] Setting 'sample_rates' to value '96000|88200|64000|48000|44100|32000|24000|22050|16000|12000|11025|8000|7350'
[AVFilterGraph @ 0x164fd70] query_formats: 4 queried, 9 merged, 0 already done, 0 delayed
[matroska @ 0x169c330] get_metadata_duration returned: 0
Output #0, matroska, to 'rec.mkv':
 Metadata:
 title : Media Server
 encoder : Lavf58.45.100
 Stream #0:0, 0, 1/1000: Video: h264 (Main) (H264 / 0x34363248), yuvj420p(pc, bt709, progressive), 1920x1080, q=2-31, 25 fps, 25 tbr, 1k tbn, 90k tbc
 Stream #0:1, 0, 1/1000: Audio: aac (LC) ([255][0][0][0] / 0x00FF), 16000 Hz, mono, fltp, 69 kb/s
 Metadata:
 encoder : Lavc58.91.100 aac
cur_dts is invalid st:0 (0) [init:1 i_done:0 finish:0] (this is harmless if it occurs once at the start per stream)
cur_dts is invalid st:1 (0) [init:1 i_done:0 finish:0] (this is harmless if it occurs once at the start per stream)
cur_dts is invalid st:0 (0) [init:1 i_done:0 finish:0] (this is harmless if it occurs once at the start per stream)
[matroska @ 0x169c330] Starting new cluster with timestamp 1713164678731 at offset 770 bytes
[matroska @ 0x169c330] Writing block of size 581 with pts 1713164678731, dts 1713164678731, duration 64 at relative offset 14 in cluster at offset 770. TrackNumber 2, keyframe 1
[matroska @ 0x169c330] Writing block of size 517 with pts 1713164678795, dts 1713164678795, duration 64 at relative offset 602 in cluster at offset 770. TrackNumber 2, keyframe 1
[matroska @ 0x169c330] Writing block of size 376900 with pts 1713164678872, dts 1713164678872, duration 40 at relative offset 1126 in cluster at offset 770. TrackNumber 1, keyframe 1
[matroska @ 0x169c330] Writing block of size 8172 with pts 1713164678912, dts 1713164678912, duration 40 at relative offset 378034 in cluster at offset 770. TrackNumber 1, keyframe 0
[matroska @ 0x169c330] Writing block of size 672 with pts 1713164678912, dts 1713164678912, duration 64 at relative offset 386213 in cluster at offset 770. TrackNumber 2, keyframe 1
[matroska @ 0x169c330] Writing block of size 550 with pts 1713164679177, dts 1713164679177, duration 64 at relative offset 386892 in cluster at offset 770. TrackNumber 2, keyframe 1
[matroska @ 0x169c330] Writing block of size 7654 with pts 1713164679178, dts 1713164679178, duration 40 at relative offset 387449 in cluster at offset 770. TrackNumber 1, keyframe 0
[matroska @ 0x169c330] Writing block of size 7483 with pts 1713164679213, dts 1713164679213, duration 40 at relative offset 395110 in cluster at offset 770. TrackNumber 1, keyframe 0
[matroska @ 0x169c330] Writing block of size 7703 with pts 1713164679242, dts 1713164679242, duration 40 at relative offset 402600 in cluster at offset 770. TrackNumber 1, keyframe 0
[matroska @ 0x169c330] Writing block of size 565 with pts 1713164679242, dts 1713164679242, duration 64 at relative offset 410310 in cluster at offset 770. TrackNumber 2, keyframe 1
[matroska @ 0x169c330] Writing block of size 7650 with pts 1713164679271, dts 1713164679271, duration 40 at relative offset 410882 in cluster at offset 770. TrackNumber 1, keyframe 0
[matroska @ 0x169c330] Writing block of size 585 with pts 1713164679271, dts 1713164679271, duration 64 at relative offset 418539 in cluster at offset 770. TrackNumber 2, keyframe 1
[matroska @ 0x169c330] Writing block of size 8682 with pts 1713164679301, dts 1713164679301, duration 40 at relative offset 419131 in cluster at offset 770. TrackNumber 1, keyframe 0
[matroska @ 0x169c330] Writing block of size 8888 with pts 1713164679330, dts 1713164679330, duration 40 at relative offset 427820 in cluster at offset 770. TrackNumber 1, keyframe 0
[matroska @ 0x169c330] Writing block of size 506 with pts 1713164679330, dts 1713164679330, duration 64 at relative offset 436715 in cluster at offset 770. TrackNumber 2, keyframe 1
[matroska @ 0x169c330] Writing block of size 8019 with pts 1713164679360, dts 1713164679360, duration 40 at relative offset 437228 in cluster at offset 770. TrackNumber 1, keyframe 0
[matroska @ 0x169c330] Writing block of size 7919 with pts 1713164679361, dts 1713164679361, duration 40 at relative offset 445254 in cluster at offset 770. TrackNumber 1, keyframe 0
[matroska @ 0x169c330] Writing block of size 7822 with pts 1713164679361, dts 1713164679361, duration 40 at relative offset 453180 in cluster at offset 770. TrackNumber 1, keyframe 0
[matroska @ 0x169c330] Writing block of size 699 with pts 1713164679361, dts 1713164679361, duration 64 at relative offset 461009 in cluster at offset 770. TrackNumber 2, keyframe 1
[matroska @ 0x169c330] Writing block of size 619 with pts 1713164679361, dts 1713164679361, duration 64 at relative offset 461715 in cluster at offset 770. TrackNumber 2, keyframe 1
[matroska @ 0x169c330] Writing block of size 7768 with pts 1713164679362, dts 1713164679362, duration 40 at relative offset 462341 in cluster at offset 770. TrackNumber 1, keyframe 0
[matroska @ 0x169c330] Writing block of size 8469 with pts 1713164679362, dts 1713164679362, duration 40 at relative offset 470116 in cluster at offset 770. TrackNumber 1, keyframe 0
[matroska @ 0x169c330] Writing block of size 601 with pts 1713164679362, dts 1713164679362, duration 64 at relative offset 478592 in cluster at offset 770. TrackNumber 2, keyframe 1
[matroska @ 0x169c330] Writing block of size 559 with pts 1713164679363, dts 1713164679363, duration 64 at relative offset 479200 in cluster at offset 770. TrackNumber 2, keyframe 1
[matroska @ 0x169c330] Writing block of size 8265 with pts 1713164679366, dts 1713164679366, duration 40 at relative offset 479766 in cluster at offset 770. TrackNumber 1, keyframe 0
[matroska @ 0x169c330] Writing block of size 7766 with pts 1713164679406, dts 1713164679406, duration 40 at relative offset 488038 in cluster at offset 770. TrackNumber 1, keyframe 0
[matroska @ 0x169c330] Writing block of size 531 with pts 1713164679415, dts 1713164679415, duration 64 at relative offset 495811 in cluster at offset 770. TrackNumber 2, keyframe 1
[matroska @ 0x169c330] Writing block of size 7753 with pts 1713164679446, dts 1713164679446, duration 40 at relative offset 496349 in cluster at offset 770. TrackNumber 1, keyframe 0
[matroska @ 0x169c330] Writing block of size 8274 with pts 1713164679486, dts 1713164679486, duration 40 at relative offset 504109 in cluster at offset 770. TrackNumber 1, keyframe 0
[matroska @ 0x169c330] Writing block of size 569 with pts 1713164679496, dts 1713164679496, duration 64 at relative offset 512390 in cluster at offset 770. TrackNumber 2, keyframe 1
[matroska @ 0x169c330] Writing block of size 8445 with pts 1713164679526, dts 1713164679526, duration 40 at relative offset 512966 in cluster at offset 770. TrackNumber 1, keyframe 0
[matroska @ 0x169c330] Writing block of size 522 with pts 1713164679535, dts 1713164679535, duration 64 at relative offset 521418 in cluster at offset 770. TrackNumber 2, keyframe 1
[matroska @ 0x169c330] Writing block of size 7922 with pts 1713164679566, dts 1713164679566, duration 40 at relative offset 521947 in cluster at offset 770. TrackNumber 1, keyframe 0
[matroska @ 0x169c330] Writing block of size 7954 with pts 1713164679606, dts 1713164679606, duration 40 at relative offset 529876 in cluster at offset 770. TrackNumber 1, keyframe 0
[matroska @ 0x169c330] Writing block of size 503 with pts 1713164679615, dts 1713164679615, duration 64 at relative offset 537837 in cluster at offset 770. TrackNumber 2, keyframe 1
[matroska @ 0x169c330] Writing block of size 11167 with pts 1713164679646, dts 1713164679646, duration 40 at relative offset 538347 in cluster at offset 770. TrackNumber 1, keyframe 0
[matroska @ 0x169c330] Writing block of size 503 with pts 1713164679655, dts 1713164679655, duration 64 at relative offset 549521 in cluster at offset 770. TrackNumber 2, keyframe 1
[matroska @ 0x169c330] Writing block of size 10534 with pts 1713164679686, dts 1713164679686, duration 40 at relative offset 550031 in cluster at offset 770. TrackNumber 1, keyframe 0
[matroska @ 0x169c330] Writing block of size 7607 with pts 1713164679726, dts 1713164679726, duration 40 at relative offset 560572 in cluster at offset 770. TrackNumber 1, keyframe 0
[matroska @ 0x169c330] Writing block of size 478 with pts 1713164679772, dts 1713164679772, duration 64 at relative offset 568186 in cluster at offset 770. TrackNumber 2, keyframe 1
[matroska @ 0x169c330] Writing block of size 7842 with pts 1713164679774, dts 1713164679774, duration 40 at relative offset 568671 in cluster at offset 770. TrackNumber 1, keyframe 0
[matroska @ 0x169c330] Writing block of size 9862 with pts 1713164679806, dts 1713164679806, duration 40 at relative offset 576520 in cluster at offset 770. TrackNumber 1, keyframe 0
[matroska @ 0x169c330] Starting new cluster with timestamp 1713164679815 at offset 587166 bytes
[matroska @ 0x169c330] Writing block of size 449 with pts 1713164679815, dts 1713164679815, duration 64 at relative offset 14 in cluster at offset 587166. TrackNumber 2, keyframe 1
[matroska @ 0x169c330] Writing block of size 379456 with pts 1713164679870, dts 1713164679870, duration 40 at relative offset 470 in cluster at offset 587166. TrackNumber 1, keyframe 1
[matroska @ 0x169c330] Writing block of size 415 with pts 1713164679903, dts 1713164679903, duration 64 at relative offset 379934 in cluster at offset 587166. TrackNumber 2, keyframe 1
[matroska @ 0x169c330] Writing block of size 7008 with pts 1713164679905, dts 1713164679905, duration 40 at relative offset 380356 in cluster at offset 587166. TrackNumber 1, keyframe 0
[matroska @ 0x169c330] Writing block of size 6917 with pts 1713164679925, dts 1713164679925, duration 40 at relative offset 387371 in cluster at offset 587166. TrackNumber 1, keyframe 0
[matroska @ 0x169c330] Writing block of size 513 with pts 1713164679935, dts 1713164679935, duration 64 at relative offset 394295 in cluster at offset 587166. TrackNumber 2, keyframe 1
[matroska @ 0x169c330] Writing block of size 7111 with pts 1713164679966, dts 1713164679966, duration 40 at relative offset 394815 in cluster at offset 587166. TrackNumber 1, keyframe 0
[matroska @ 0x169c330] Writing block of size 753 with pts 1713164679975, dts 1713164679975, duration 64 at relative offset 401933 in cluster at offset 587166. TrackNumber 2, keyframe 1
[matroska @ 0x169c330] Writing block of size 7091 with pts 1713164680006, dts 1713164680006, duration 40 at relative offset 402693 in cluster at offset 587166. TrackNumber 1, keyframe 0
[matroska @ 0x169c330] Writing block of size 7045 with pts 1713164680045, dts 1713164680045, duration 40 at relative offset 409791 in cluster at offset 587166. TrackNumber 1, keyframe 0
[matroska @ 0x169c330] Writing block of size 659 with pts 1713164680055, dts 1713164680055, duration 64 at relative offset 416843 in cluster at offset 587166. TrackNumber 2, keyframe 1
[matroska @ 0x169c330] Writing block of size 6983 with pts 1713164680086, dts 1713164680086, duration 40 at relative offset 417509 in cluster at offset 587166. TrackNumber 1, keyframe 0
[matroska @ 0x169c330] Writing block of size 6932 with pts 1713164680127, dts 1713164680127, duration 40 at relative offset 424499 in cluster at offset 587166. TrackNumber 1, keyframe 0
frame= 35 fps=0.0 q=-1.0 size= 512kB time=475879:04:40.20 bitrate= 0.0kbits/s speed=3.35e+09x 
[matroska @ 0x169c330] Writing block of size 691 with pts 1713164680135, dts 1713164680135, duration 64 at relative offset 431438 in cluster at offset 587166. TrackNumber 2, keyframe 1
[matroska @ 0x169c330] Writing block of size 6990 with pts 1713164680166, dts 1713164680166, duration 40 at relative offset 432136 in cluster at offset 587166. TrackNumber 1, keyframe 0
[matroska @ 0x169c330] Writing block of size 651 with pts 1713164680176, dts 1713164680176, duration 64 at relative offset 439133 in cluster at offset 587166. TrackNumber 2, keyframe 1
[matroska @ 0x169c330] Writing block of size 7046 with pts 1713164680206, dts 1713164680206, duration 40 at relative offset 439791 in cluster at offset 587166. TrackNumber 1, keyframe 0
[matroska @ 0x169c330] Writing block of size 7130 with pts 1713164680246, dts 1713164680246, duration 40 at relative offset 446844 in cluster at offset 587166. TrackNumber 1, keyframe 0
[matroska @ 0x169c330] Writing block of size 601 with pts 1713164680255, dts 1713164680255, duration 64 at relative offset 453981 in cluster at offset 587166. TrackNumber 2, keyframe 1
[matroska @ 0x169c330] Writing block of size 7205 with pts 1713164680286, dts 1713164680286, duration 40 at relative offset 454589 in cluster at offset 587166. TrackNumber 1, keyframe 0
[matroska @ 0x169c330] Writing block of size 561 with pts 1713164680295, dts 1713164680295, duration 64 at relative offset 461801 in cluster at offset 587166. TrackNumber 2, keyframe 1
[matroska @ 0x169c330] Writing block of size 6936 with pts 1713164680326, dts 1713164680326, duration 40 at relative offset 462369 in cluster at offset 587166. TrackNumber 1, keyframe 0
[matroska @ 0x169c330] Writing block of size 6822 with pts 1713164680366, dts 1713164680366, duration 40 at relative offset 469312 in cluster at offset 587166. TrackNumber 1, keyframe 0
[matroska @ 0x169c330] Writing block of size 621 with pts 1713164680375, dts 1713164680375, duration 64 at relative offset 476141 in cluster at offset 587166. TrackNumber 2, keyframe 1
[matroska @ 0x169c330] Writing block of size 6845 with pts 1713164680405, dts 1713164680405, duration 40 at relative offset 476769 in cluster at offset 587166. TrackNumber 1, keyframe 0
[matroska @ 0x169c330] Writing block of size 6848 with pts 1713164680445, dts 1713164680445, duration 40 at relative offset 483621 in cluster at offset 587166. TrackNumber 1, keyframe 0
[matroska @ 0x169c330] Writing block of size 588 with pts 1713164680455, dts 1713164680455, duration 64 at relative offset 490476 in cluster at offset 587166. TrackNumber 2, keyframe 1
[matroska @ 0x169c330] Writing block of size 6828 with pts 1713164680486, dts 1713164680486, duration 40 at relative offset 491071 in cluster at offset 587166. TrackNumber 1, keyframe 0
[matroska @ 0x169c330] Writing block of size 546 with pts 1713164680495, dts 1713164680495, duration 64 at relative offset 497906 in cluster at offset 587166. TrackNumber 2, keyframe 1
[matroska @ 0x169c330] Writing block of size 6845 with pts 1713164680526, dts 1713164680526, duration 40 at relative offset 498459 in cluster at offset 587166. TrackNumber 1, keyframe 0
[matroska @ 0x169c330] Writing block of size 6924 with pts 1713164680566, dts 1713164680566, duration 40 at relative offset 505311 in cluster at offset 587166. TrackNumber 1, keyframe 0
[matroska @ 0x169c330] Writing block of size 508 with pts 1713164680576, dts 1713164680576, duration 64 at relative offset 512242 in cluster at offset 587166. TrackNumber 2, keyframe 1
[matroska @ 0x169c330] Writing block of size 6844 with pts 1713164680606, dts 1713164680606, duration 40 at relative offset 512757 in cluster at offset 587166. TrackNumber 1, keyframe 0
frame= 48 fps= 47 q=-1.0 size= 512kB time=475879:04:40.72 bitrate= 0.0kbits/s speed=1.66e+09x 
[matroska @ 0x169c330] Writing block of size 587 with pts 1713164680615, dts 1713164680615, duration 64 at relative offset 519608 in cluster at offset 587166. TrackNumber 2, keyframe 1
[matroska @ 0x169c330] Writing block of size 6859 with pts 1713164680645, dts 1713164680645, duration 40 at relative offset 520202 in cluster at offset 587166. TrackNumber 1, keyframe 0
[matroska @ 0x169c330] Writing block of size 6855 with pts 1713164680686, dts 1713164680686, duration 40 at relative offset 527068 in cluster at offset 587166. TrackNumber 1, keyframe 0
[matroska @ 0x169c330] Writing block of size 573 with pts 1713164680695, dts 1713164680695, duration 64 at relative offset 533930 in cluster at offset 587166. TrackNumber 2, keyframe 1
[matroska @ 0x169c330] Writing block of size 6881 with pts 1713164680726, dts 1713164680726, duration 40 at relative offset 534510 in cluster at offset 587166. TrackNumber 1, keyframe 0
[matroska @ 0x169c330] Writing block of size 10773 with pts 1713164680766, dts 1713164680766, duration 40 at relative offset 541398 in cluster at offset 587166. TrackNumber 1, keyframe 0
[matroska @ 0x169c330] Writing block of size 520 with pts 1713164680775, dts 1713164680775, duration 64 at relative offset 552178 in cluster at offset 587166. TrackNumber 2, keyframe 1
[matroska @ 0x169c330] Writing block of size 6923 with pts 1713164680805, dts 1713164680805, duration 40 at relative offset 552705 in cluster at offset 587166. TrackNumber 1, keyframe 0
[matroska @ 0x169c330] Starting new cluster with timestamp 1713164680815 at offset 1146808 bytes
[matroska @ 0x169c330] Writing block of size 580 with pts 1713164680815, dts 1713164680815, duration 64 at relative offset 14 in cluster at offset 1146808. TrackNumber 2, keyframe 1
[matroska @ 0x169c330] Writing block of size 380085 with pts 1713164680864, dts 1713164680864, duration 40 at relative offset 601 in cluster at offset 1146808. TrackNumber 1, keyframe 1
[matroska @ 0x169c330] Writing block of size 9916 with pts 1713164680896, dts 1713164680896, duration 40 at relative offset 380694 in cluster at offset 1146808. TrackNumber 1, keyframe 0
[matroska @ 0x169c330] Writing block of size 541 with pts 1713164680901, dts 1713164680901, duration 64 at relative offset 390617 in cluster at offset 1146808. TrackNumber 2, keyframe 1
[matroska @ 0x169c330] Writing block of size 5877 with pts 1713164680925, dts 1713164680925, duration 40 at relative offset 391165 in cluster at offset 1146808. TrackNumber 1, keyframe 0
[matroska @ 0x169c330] Writing block of size 529 with pts 1713164680935, dts 1713164680935, duration 64 at relative offset 397049 in cluster at offset 1146808. TrackNumber 2, keyframe 1
[matroska @ 0x169c330] Writing block of size 6661 with pts 1713164680966, dts 1713164680966, duration 40 at relative offset 397585 in cluster at offset 1146808. TrackNumber 1, keyframe 0
[matroska @ 0x169c330] end duration = 1713164681006
[matroska @ 0x169c330] stream 0 end duration = 1713164681006
[matroska @ 0x169c330] stream 1 end duration = 1713164680999
frame= 54 fps= 42 q=-1.0 Lsize= 1515kB time=475879:04:40.99 bitrate= 0.0kbits/s speed=1.33e+09x 
video:1493kB audio:20kB subtitle:0kB other streams:0kB global headers:0kB muxing overhead: 0.099897%
Input file #0 (rtsp://user:password1@192.168.5.21/cam/realmonitor?channel=1channel1[1]=1subtype=0):
 Input stream #0:0 (video): 54 packets read (1529156 bytes); 
 Input stream #0:1 (audio): 35 packets read (9268 bytes); 35 frames decoded (35840 samples); 
 Total: 89 packets (1538424 bytes) demuxed
Output file #0 (rec.mkv):
 Output stream #0:0 (video): 54 packets muxed (1529156 bytes); 
 Output stream #0:1 (audio): 35 frames encoded (35840 samples); 36 packets muxed (20446 bytes); 
 Total: 90 packets (1549602 bytes) muxed
35 frames successfully decoded, 0 decoding errors
[AVIOContext @ 0x1667620] Statistics: 2 seeks, 7 writeouts
[aac @ 0x1673880] Qavg: 142.738
Exiting normally, received signal 15.



In this short 3 second capture the duplicate timestamps are
1713164679.361000
and1713164679.362000
.

How can I solve this problem ? What different approach could I use to achieve this goal ?


Thanks in advance.


-
Choosing the best self-hosted open-source analytics platform
16 juillet, par JoeGoogle Analytics (GA) is the most widely used analytics platform, with 50.3% of the top 1 million active websites using it today. You’re probably using it right now.
But despite being a free tool, Google Analytics is proprietary software, which means you’re handing over your browsing data, metadata and search history to a third party.
Do you trust them ? We sure don’t.
This lack of control can lead to potential privacy risks and compliance issues. These issues have so far resulted in fines under the EU’s General Data Protection Regulation (GDPR) of an average of €2.5 million each, for a total of almost €6.6 billion since 2018.
Open-source analytics platforms offer a solution. They’re a safer and more transparent alternative that lets you retain full control over how you collect and store your customers’ data. But what are these tools ? Where do you find them ? And, most importantly, how do you choose the best one for your needs ?
This guide explores the benefits and features of open-source analytics platforms and compares popular options, including Matomo, a leading self-hosted, open-source Google Analytics alternative.
What is an open-source analytics platform ?
An analytics platform is software that collects, processes and analyses data to gain insights, identify trends, and make informed decisions. It helps users understand past performance, monitor current activities and predict future outcomes.
An open-source analytics platform is a type of analytics suite in which anyone can view, modify and distribute the underlying source code.
In contrast to proprietary analytics platforms, where a single entity owns and controls the code, open-source analytics platforms adhere to the principles of free and open-source software (FOSS). This allows everyone to use, study, share, and customise the software to meet their needs, fostering collaboration and transparency.
Open-source analytics and the Free Software Foundation
The concept of FOSS is rooted in the idea of software freedom. According to the Free Software Foundation (FSF), this idea is defined by four fundamental freedoms granted to the user the freedom to :
- Use or run the program as they wish, for any purpose.
- Study how the program works and change it as they wish.
- Redistribute copies to help others.
- Improve the code and distribute copies of their improved versions to others.
Open access to the source code is a precondition for guaranteeing these freedoms.
The importance of FOSS licensing
The FSF has been instrumental in the free software movement, which serves as the foundation for open-source analytics platforms. Among other things, it created the GNU General Public Licence (GPL), which guarantees that all software distributions include the source code and are distributed under the same licence.
However, other licences, including several copyleft and permissive licences, have been developed to address certain legal issues and loopholes in the GPL. Analytics platforms distributed under any of these licences are considered open-source since they are FSF-compliant.
Benefits and drawbacks of open-source analytics platforms
Open-source analytics platforms offer a compelling alternative to their proprietary counterparts, but they also have a few challenges.
Benefits of open-source analytics
- Full data ownership : Many open-source solutions let you host the analytics platform yourself. This gives you complete control over your customers’ data, ensuring privacy and security.
- Customisable solution : With access to the source code, you can tailor the platform to your specific needs.
- Full transparency : You can inspect the code to see exactly how data is collected, processed and stored, helping you ensure compliance with privacy regulations.
- Community-driven development : Open-source projects benefit from the contributions of a global community of developers. This leads to faster innovation, quicker bug fixes and, in some cases, a wider range of features.
- No predefined limits : Self-hosted open-source analytics platforms don’t impose arbitrary limits on data storage or processing. You’re only limited by your own server resources.
Cons of open-source analytics
- Technical expertise required : Setting up and maintaining a self-hosted open-source platform often requires technical knowledge.
- No live/dedicated support team : While many projects have active communities, dedicated support might be limited compared to commercial offerings.
- Integration challenges : Integrating with other tools in your stack might require custom development, especially if pre-built integrations aren’t available.
- Feature gaps : Depending on the specific platform, there might be gaps in functionality compared to mature proprietary solutions.
Why open-source is better than proprietary analytics
Proprietary analytics platforms, like Google Analytics, have long been the go-to choice for many businesses. However, growing concerns around data privacy, vendor lock-in and limited customisation are driving a shift towards open-source alternatives.
No vendor lock-in
Proprietary platforms lock you into their ecosystem, controlling terms, pricing and future development. Migrating data can be costly, and you’re dependent on the vendor for updates.
Open-source platforms allow users to switch providers, modify software and contribute to development. Contributors can also create dedicated migration tools to import data from GA and other proprietary platforms.
Data privacy concerns
Proprietary analytics platforms can heighten the risk of data privacy violations and subsequent fines under regulations like the GDPR and the California Consumer Privacy Act (CCPA). This is because their opaque ‘black box’ design often obscures how they collect, process and use data.
Businesses often have limited visibility and even less control over a vendor’s data handling. They don’t know whether these vendors are using it for their own benefit or sharing it more widely, which can lead to privacy breaches and other data protection violations.
These fines can reach into the millions and even billions. For example, Zoom was fined $85 million in 2021 for CCPA violations, while the largest fine in history has been the €1.2 billion fine imposed on Meta by the Irish Data Protection Act (DPA) under the EU GDPR.
Customisation
Proprietary platforms often offer a one-size-fits-all approach. While they might have some customisation options, you’re ultimately limited by what the vendor provides. Open-source platforms, on the other hand, offer unparalleled flexibility.
Unlimited data processing
Proprietary analytics platforms often restrict the amount of data you can collect and process, especially on free plans. Going over these limits usually requires upgrading to a paid plan, which can be a problem for high-traffic websites or businesses with large datasets.
Self-hosted tools only limit data processing based on your server resources, allowing you to collect and analyse as much data as you need at no extra cost.
No black box effect
Since proprietary tools are closed-source, they often lack transparency in their data processing methods. It’s difficult to understand and validate how their algorithms work or how they calculate specific metrics. This “black box” effect can lead to trust issues and make it challenging to validate your data’s accuracy.
11 Key features to look for in an open-source analytics platform
Choosing the right open-source analytics platform is crucial for unlocking actionable insights from your customers’ data. Here are 11 key features to consider :
#1. Extensive support documentation and resource libraries
Even with technical expertise, you might encounter challenges or have questions about the platform. A strong support system is essential. Look for platforms with comprehensive documentation, active community forums and the option for professional support for mission-critical deployments.
#2. Live analytics
Having access to live data and reports is crucial for making timely and informed decisions. A live analytics feature allows you to :
- Monitor website traffic as it happens.
- Optimise campaign performance tracking.
- Identify and respond to issues like traffic spikes, drops or errors quickly, allowing for rapid troubleshooting.
For example, Matomo updates tracking data every 10 seconds, which is more than enough to give you a live view of your website performance.
#3. Personal data tracking
Understanding user behaviour is at the heart of effective analytics. Look for a platform that allows you to track personal data while respecting privacy. This might include features like :
- Creating detailed profiles of individual users and tracking their interactions across multiple sessions.
- Track user-specific attributes like demographics, interests or purchase history.
- Track user ID across different devices and platforms to understand user experience.
#4. Conversion tracking
Ultimately, you want to measure how effective your website is in achieving your business goals. Conversion tracking allows you to :
- Define and track key performance indicators (KPIs) like purchases, sign-ups or downloads.
- Identify bottlenecks in the user journey that prevent conversions.
- Measure the ROI of your marketing campaigns.
#5. Session recordings
Session recordings give your development team a qualitative understanding of user behaviour by letting you watch replays of individual user sessions. This can help you :
- Identify usability issues.
- Understand how users navigate your site and interact with different elements.
- Uncover bugs or errors.
#6. A/B testing
Experimentation is key to optimising your website and improving conversion rates. Look for an integrated A/B testing feature that allows you to :
- Test different variations of your website in terms of headlines, images, calls to action or page layouts.
- Measure the impact on key metrics.
- Implement changes based on statistically significant differences in user behaviour patterns, rather than guesswork.
#7. Custom reporting and dashboards
Every business has unique reporting needs. Look for a flexible platform that allows you to :
- Build custom reports that focus on the metrics that matter most to you.
- Create personalised dashboards that provide a quick overview of those KPIs.
- Automate report generation to save your team valuable time.
#8. No data sampling
Data sampling can save time and processing power, but it can also lead to inaccurate insights if the sample isn’t representative of the entire dataset. The solution is to avoid data sampling entirely.
Processing 100% of your customers’ data ensures that your reports are accurate and unbiased, providing a true picture of customer behaviour.
#9. Google Analytics migration tools
If you’re migrating from Google Analytics, a data export/import tool can save you time and effort. Some open-source analytics projects offer dedicated data importers to transfer historical data from GA into the new platform, preserving valuable insights. These tools help maintain data continuity and simplify the transition, reducing the manual effort involved in setting up a new analytics platform.
#10 A broad customer base
The breadth and diversity of an analytics platform’s customer base can be a strong indicator of its trustworthiness and capabilities. Consider the following :
- Verticals served
- The size of the companies that use it
- Whether it’s trusted in highly-regulated industries
If a platform is trusted by a large entity with stringent security and privacy requirements, such as governments or military branches, it speaks volumes about its security and data protection capabilities.
#11 Self-hosting
Self-hosting offers unparalleled control over your customers’ data and infrastructure.
Unlike cloud-based solutions, where your customers’ data resides on third-party servers, self-hosting means you manage your own servers and databases. This approach ensures that your customers’ data remains within your own infrastructure, enhancing privacy and security.
There are other features, like analytics for mobile apps, but these 11 will help shortlist your options to find the ideal tool.
Choosing your self-hosted open-source analytics platform : A step-by-step guide
The right self-hosted open-source analytics platform can significantly impact your data strategy. Follow these steps to make the best choice :
Step #1. Define your needs and objectives
Begin by clearly outlining what you want to achieve with your analytics platform :
- Identify relevant KPIs.
- Determine what type of reports to generate, their frequency and distribution.
- Consider your privacy and compliance needs, like GDPR and CCPA.
Step #2. Define your budget
While self-hosted open-source platforms are usually free to use, there are still costs associated with self-hosting, including :
- Server hardware and infrastructure.
- Ongoing maintenance, updates and potential support fees.
- Development resources if you plan to customise the platform.
Step #3. Consider scalability and performance
Scaling your analytics can be an issue with self-hosted platforms since it means scaling your server infrastructure as well. Before choosing a platform, you must think about :
- Current traffic volume and projected growth.
- Your current capacity to handle traffic.
- The platform’s scalability options.
Step #4. Research and evaluate potential solutions
Shortlist a few different open-source analytics platforms that align with your requirements. In addition to the features outlined above, also consider factors like :
- Ease of use.
- Community and support.
- Comprehensive documentation.
- The platform’s security track record.
Step #5. Sign up for a free trial and conduct thorough testing
Many platforms offer free trials or demos. Take advantage of these opportunities to test the platform’s features, evaluate the user interface and more.
You can embed multiple independent tracking codes on your website, which means you can test multiple analytics platforms simultaneously. Doing so helps you compare and validate results based on the same data, making comparisons more objective and reliable.
Step #6. Plan for implementation and ongoing management
After choosing a platform, follow the documentation to install and configure the software. Plan how you’ll migrate existing data if you’re switching from another platform.
Ensure your team is trained on the platform, and establish a plan for updates, security patches and backups. Then, you’ll be ready to migrate to the new platform while minimising downtime.
Top self-hosted open-source analytics tools
Let’s examine three prominent self-hosted open-source analytics tools.
Matomo
Main Features Analytics updated every 10 seconds, custom reports, dashboards, user segmentation, goal tracking, e-commerce tracking, funnels, heatmaps, session recordings, A/B testing, SEO tools and more advanced features. Best for Businesses of all sizes and from all verticals. Advanced users Licencing GPLv3 (core platform).Various commercial licences for plugins. Pricing Self-hosted : Free (excluding paid plugins).Cloud version : Starts at $21.67/mo for 50K website hits when paid annually. Matomo Analytics dashboard
Matomo is a powerful web analytics platform that prioritises data privacy and user control. It offers a comprehensive suite of features, including live analytics updated every 10 seconds, custom reporting, e-commerce tracking and more. You can choose between a full-featured open-source, self-hosted platform free of charge or a cloud-based, fully managed paid analytics service.
Matomo also offers 100% data ownership and has a user base of over 1 million websites, including heavyweights like NASA, the European Commission, ahrefs and the United Nations.
Plausible Analytics
Main Features Basic website analytics (page views, visitors, referrers, etc.), custom events, goal tracking and some campaign tracking features. Best for Website owners, bloggers and small businesses.Non-technical users. Licencing AGPLv3. Pricing Self-hosted : FreeCloud version : Starts at $7.50/mo for 10K website hits when paid annually. Plausible Analytics
(Image source)Plausible Analytics is a lightweight, privacy-focused analytics tool designed to be simple and easy to use. It provides essential website traffic data without complex configurations or intrusive tracking.
Fathom Lite & Fathom Analytics
Main features Basic website analytics (page views, visitors, referrers, etc.), custom events and goal tracking. Best for Website owners and small businesses.Non-technical users. Licencing Fathom Lite : MIT Licence (self-hosted).Fathom Analytics : Proprietary. Pricing Fathom Lite : Free but currently unsupported.Cloud version : Starts at $12.50/month for up to 50 sites when paid annually. Fathom Analytics
(Image source)Fathom started as an open-source platform in 2018. But after the founders released V1.0.1, they switched to a closed-source, paid, proprietary model called Fathom Analytics. Since then, it has always been closed-source.
However, the open-source version, Fathom Lite, is still available. It has very limited functionality, uses cookies and is currently unsupported by the company. No new features are under development and uptime isn’t guaranteed.
Matomo vs. Plausible vs. Fathom
Matomo, Plausible, and Fathom are all open-source, privacy-focused alternatives to Google Analytics. They offer features like no data sampling, data ownership, and EU-based cloud hosting.
Here’s a head-to-head comparison of the three :
Matomo Plausible Fathom Focus Comprehensive, feature-rich, customizable Simple, lightweight, beginner-friendly Simple, lightweight, privacy-focused Target User Businesses, marketers and analysts seeking depth Beginners, bloggers, and small businesses Website owners and users prioritising simplicity Open Source Fully open-source Fully open-source Limited open-source version Advanced analytics Extensive Very limited Very limited Integrations 100+ Limited Fewer than 15 Customisation High Low Low Data management Granular control, raw data access, complex queries Simplified, no raw data access Simplified, no raw data access GDPR features Compliant by design, plus GDPR Manager Guides only Compliant by design Pricing Generally higher Generally lower Intermediate Learning curve Steeper Gentle Gentle The open-core dilemma
Open-source platforms are beneficial and trustworthy, leading some companies to falsely market themselves as such.
Some were once open-source but later became commercial, criticised as “bait-and-switch.” Others offer a limited open-source “core” with proprietary features, called the “open core” model. While this dual licensing can be ethical and sustainable, some abuse it by offering a low-value open-source version and hiding valuable features behind a paywall.
However, other companies have embraced the dual-licensing model in a more ethical way, providing a valuable solution with a wide range of tools under the open-source license and only leaving premium, non-essential add-ons as paid features.
Matomo is a prime example of this practice, championing the principles of open-source analytics while developing a sustainable business model for its users’ benefit.
Choose Matomo as your open-source data analytics tool
Open-source analytics platforms offer compelling advantages over proprietary solutions like Google Analytics. They provide greater transparency, data ownership and customisation. Choosing an open-source analytics platform over a proprietary one gives you more control over your customers’ data and supports compliance with user privacy regulations.
With its comprehensive features, powerful tools, commitment to privacy and active community, Matomo stands out as a leading choice. Make the switch to Matomo for ethical, user-focused analytics.