Facebook Live Stream Viewers

Facebook Live Map: Viewer Locations

Facebook’s Live Map is a visual display about current live stream details about video publishers and their viewers. In this post, we’ll explore the data behind the map beginning with viewers. We’ll illustrate where Facebook gets the viewer physical locations data and how we can view and parse that data.

 

Facebook Live Viewer Locations

Facebook’s Live Map is dynamic. Each new public stream appears on the map as a dot representing the video publisher’s location. The dot gets larger as viewers join in and increase the overall viewer count. When you hover over one of these dots, you’ll see a preview of the video with the publisher’s name. You’ll also see lines extending outward that represent the physical location of the viewers.
Facebook broadcasts these locations on a unique URL via latitude and longitude for some live stream viewers. I initially presumed these coordinates were obtained from the viewers’ location-enabled devices. After some tests, however, I found that the locations for the viewers and the video publishers are drawn from the locations they supply in the About section of their Page or Profile.

You can see this in the HTTP traffic passed through your browser. Other video details are also updated separately and include user avatars. To capture this location data, you’ll need a VideoID and an active login with your own Facebook UserID. Let’s see how this works.

Facebook generates a post page for the video during the live stream. This page is where you’ll get the VideoID. If you’re starting from the Live Map, you’ll get to the page by choosing a live streamer and selecting the date/time hyperlink on the video overlay. This link displays the current stream time and it redirects you to the post page, which looks like this:

FB.com/USERNAME/videos/VIDEOID/?permPage=1
or
FB.com/USERNAME/videos/VIDEOID

 

The viewer locations you see radiating outward from the publisher is updated through a URL while you browse the page. This URL looks similar to the example displayed below.

FB.com/ajax/livemap/videos/viewers/?video_id=VIDEOID&live_viewers_count=200&dpr=1&__user=YOURID&__a=1

You’ll note this URL limits the live viewer count  to 200 locations. You can change this number to accommodate streams with higher traffic numbers. The browser has limits and the most I have personally captured is about 2,800 locations (among the 300k viewers of Facebook’s last F8 conference live stream).

Once you’ve launched this URL, you can make a quick assessment of the locations being broadcast by using the find in page command (Ctrl+F) and searching for the term “latitude.” This will display the total locations in the top right corner of the browser if you’re using Chrome.

 

These locations are obtained from the viewers’ profiles and not their devices. For personal profiles, the location shared is the current city of residence found in the About section, if public. You can disable this by removing your location beforehand, though the URL does not share your  Facebook ID with it.

Note: You will often see a discrepancy between the  viewer location count and the total viewer count listed on the video. Here’s why: The total viewer count should also include users who don’t list their residence publicly, as well as users who are “previewing,” but have not yet “joined” the stream.User “join” a stream by going direct to the video’s unique page. We’ll talk more about that in a moment with regards to anonymous viewing.

Viewer location data can be interesting background information on a video publisher’s audience. It’s important to note that it can only be captured while the video is streaming. You can hold the data in your browser to work with it after the broadcast ends provided you do not refresh the page.

 

Capturing Facebook Live Viewer Data

Most live streams are short in duration. You may find yourself scrambling to assemble the URL you need to display the data in a URL. I find it helps to bookmark the URL in advance with everything Facebook needs to accept it, such as your Facebook UserID and a placeholder for the VideoID. Your UserID serves as an authentication token and you must be logged in on that account for the data to display.

You’ll find some basic bookmarks to help you find VideoIDs and assemble these types of URLs on NetBootCamp.

 

Capturing Viewer details via Comments, Likes, Reactions & Shares

Most live streams have some type of viewer interaction and this provides another way to locate viewers via Likes, Comments and Shares. The profile name and UserID for these viewers are, of course, attached to their interactions. But, what happens to this data when the video publisher deletes the stream? This happens a lot with suspect content.

Streams frequently disappear and that’s why it’s also a good idea to preserve the data behind the viewer interactions.  You could simply archive the live stream post, or you open another URL that contains all of the data .

This URL updates the viewer comments for a video live stream.

Live Comments
FB.com/videos/livecomments/?eft_id=VIDEOID&dpr=1&__user=USERID&__a=1

This data updates constantly and includes the comment count, names, genders and UserIDs of commenters along with the text of their comments and their friendship status with the publisher. This data is only available during the broadcast.

You can also monitor and preserve likes, reactions and shares during the broadcast. You can isolate those directly via URLs like these.

Likes & Reactions 
FB.com/ufi/reaction/profile/browser/?ft_ent_identifier=VIDEOID

Shares 
FB.com/shares/view?id=VIDEOID

 

Download Facebook Live Videos and Playlists

Facebook delivers live streams via a CDN nearest to you. Facebook assembles and converts the stream into an mp4 file when the broadcast ends, provided the publisher does not delete it.

The link for the live stream’s m3u8 playlist and the subsequent mp4 file can be found through the link below. Google Chrome is a good choice for downloading these files.

FB.com/video/video_data/?video_id=VIDEOID

Now that you have the viewer details, you may want to analyze it. There are numerous online services that can help you do that by reverse geocoding the lat/long coordinates into physical addresses. If you’re looking at a small amount of data, you can quickly copy and trim it into a lat/long format by using find and replace.With the lat/long, you can lookup street addresses or plot the coordinates to a map for further review like this viewer sample below from the F8 live stream.

 

 

 

SUMMARY

Facebook’s Live Map can be useful for rights holders, employers and investigators who need to keep track of people, places and events. Live streams can also be used proactively to capture information about users.

Individuals can test and protect their privacy by disabling or removing the city of residence or other location information attached to their profile. Publishers see the viewer count increase when you preview their live stream in your news feed or  on the Live Map, but they shouldn’t see your profile name until you “join” the stream. Users join streams by viewing the URL hosting the video. When you “join,” the publisher will see your profile name but, based on recent tests, the name does not include a hyperlink to your profile.

Publishers can also stream privately. They can limit access by streaming to a custom list of friends or by broadcasting to a secret or closed group.

Live streams and reactions are still relatively new. There’s a lot yet to learn as Facebook just announced the APIs for both yesterday. For now, you’ll find live stream URLS and other queries on the NetBootCamp Facebook search tool under the Photo (media) tab.

 

Tools: Facebook Bookmarklets