- Open Chrome Developer tools and click the Network tab.
- Navigate to the page with the video and get it to start playing.
- Filter the list of files to "m3u8".
- Find master.m3u8 or index.m3u8 and click on it.
- Save the file to disk and look inside it.
- If the file contains a single m3u8 master url, copy that one instead.
- Run the program m3u8x.
- Paste the same m3u8 url in both textboxes (URL and Quality URL) and click "Headers" and set the referral url and user-agent from the request as found in Chrome.
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
alias kc='kubectl' | |
alias kclf='kubectl logs --tail=200 -f' | |
alias kcgs='kubectl get service -o wide' | |
alias kcgd='kubectl get deployment -o wide' | |
alias kcgp='kubectl get pod -o wide' | |
alias kcgn='kubectl get node -o wide' | |
alias kcdp='kubectl describe pod' | |
alias kcds='kubectl describe service' | |
alias kcdd='kubectl describe deployment' | |
alias kcdf='kubectl delete -f' |
Picking the right architecture = Picking the right battles + Managing trade-offs
- Clarify and agree on the scope of the system
- User cases (description of sequences of events that, taken together, lead to a system doing something useful)
- Who is going to use it?
- How are they going to use it?
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
package pipe_foundations.example; | |
import pipe_foundations.Pipe; | |
import pipe_foundations.SimpleFilter; | |
public class ExampleFilter extends SimpleFilter<Integer, String> { | |
public ExampleFilter(Pipe<Integer> input, Pipe<String> output) { | |
super(input, output); | |
} |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
//Create and listen for clients on the existing web server | |
//we created above. app is the express server. | |
var io = require('socket.io').listen( app ); | |
//We also introduce a UUID library, for unique identifiers. | |
//Not required, but I find useful. | |
var UUID = require('node-uuid'); | |
/* Socket.io Configuration */ |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
<!DOCTYPE html> | |
<html> | |
<head> | |
<title> Real time multi-player games with HTML5</title> | |
<style type="text/css"> | |
html , body { |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
var Ball = Class.extend({ | |
init : function( attachTo, isServer ) { | |
//Only create meshes on the client side | |
if( !isServer ) { | |
//Create meshes | |
this.setupBall( ); |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
io.sockets.on('connection', function (socket) { | |
//create a new player, which registers its events | |
var connection = new Session( socket ); | |
//add to the list of connections (for finding a game) | |
server.addConnection( connection ); | |
//This will send a message to all clients saying that they connected, | |
//And hand them their serverid for future interactions. | |
socket.emit('onConnect', { serverid : connection.serverid }); |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
var Session = Class.extend({ | |
init : function( socket ) { | |
this.socket = socket; | |
this.serverid = UUID(); | |
this.initListeners(); | |
}, |
NewerOlder