Stream de Fembed 🎦 PHP grátis (Proxy)

  • Autor Autor zcriptz
  • Data de início Data de início
Este tópico foi traduzido automaticamente do espanhol. Ver original
olhem este sem-vergonha, está usando o script deste bom homem, colocou no jwplayer e vende a 15 dólares
como sei que é o script de zcriptz

pois olhem, este é o link que tirei do seu player de teste​


este é o link sem criptografia


soube que este senhor aqui foi banido por fazer este tipo de coisas
se fosse eu, pois eu daria de graça, já que só colocou em um player de jwplayer criptografado, o que é super fácil de fazer
 
olhem este sem-vergonha, está usando o script deste bom homem, colocou no jwplayer e vende a 15 dólares
como sei que é o script de zcriptz

pois olhem, este é o link que tirei do seu player de teste​


este é o link sem criptografia


soube que este senhor aqui foi banido por fazer este tipo de coisas
se fosse eu, pois eu daria de graça, já que só colocou em um player de jwplayer criptografado, o que é super fácil de fazer

Não pode tirar conclusões sem antes verificar o código-fonte, já que há vários scripts e vários programadores que o têm ou o conseguiram, obviamente cada um o consegue à sua maneira e com seu código.

E se você pode, por que não passa para todos???
 
Não pode tirar conclusões sem antes verificar o código-fonte, já que há vários scripts e vários programadores que o têm ou o conseguiram, obviamente cada um o consegue à sua maneira e com seu código.

E se você pode, por que não passa para todos???
para todos você se refere ao script, está neste post de graça. e sim, verifiquei com este, faz a mesma coisa. Já tinha comprado algo deste senhor e era de um script também que ele conseguiu de graça por aí
 
para todos você se refere ao script, está neste post de graça. e sim, verifiquei com este, faz a mesma coisa. Já tinha comprado algo deste senhor e era de um script também que ele conseguiu de graça por aí
fazerem a mesma coisa não significa que ele tenha copiado, e menos ainda sem provas, amigo. como te disse, há muitas formas de conseguir e outros scripts à venda, neste post não é o único.

Eu fui um dos primeiros a testar no momento em que lançaram o zscript do fembed. mas já vi muitos.
 
fazerem a mesma coisa não significa que ele tenha copiado, e menos ainda sem provas, amigo. como te disse, há muitas formas de conseguir e outros scripts à venda, neste post não é o único.

Eu fui um dos primeiros a testar no momento em que lançaram o zscript do fembed. mas já vi muitos.
pois tomara que seja como você diz, porque se não for assim, tremendo golpe, cara
 
então você tira o link da api?
Inserir CODE, HTML ou PHP:
https://dutrag.com/api/source/5xr5wtdym81-rlp
não, este traz o redirecionador do fembed, está explicado neste post
 
Eu prefiro não me arriscar, como todos sabemos, se o fembed te pega fazendo essas práticas, ele elimina a conta. Sem contar que o fato de estarmos desviando da publicidade faz com que não estejamos contribuindo para a continuidade do próprio fembed, já que não estamos apoiando ao ver anúncios e, portanto, corre-se o risco de a plataforma entrar em falência (e todos nós que temos uma conta lá com arquivos perderíamos os arquivos) por este tipo de práticas.
 
olhem este sem-vergonha, está usando o script deste bom homem, colocou no jwplayer e vende a 15 dólares
como sei que é o script de zcriptz

pois olhem, este é o link que tirei do seu player de teste​


este é o link sem criptografia


soube que este senhor aqui foi banido por fazer este tipo de coisas
se fosse eu, pois eu daria de graça, já que só colocou em um player de jwplayer criptografado, o que é super fácil de fazer

Eu tenho este player com sua versão de jwplayer para netflix para os que quiserem, este é o link https://www.mediafire.com/file/du4jhzlbm2457ze/fembedjwplayer.zip/file Têm 14 dias para baixá-lo de graça, depois disso o link será destruído 🙂 cabe esclarecer que este script eu tive que modificar e consegui totalmente de graça como o homem do vídeo, no entanto não acho que este arquivo deva custar, para o login usem user=admin senha:admin
 
Eu tenho este player com sua versão de jwplayer para netflix para os que quiserem este é o link https://www.mediafire.com/file/du4jhzlbm2457ze/fembedjwplayer.zip/file Vocês têm 14 dias para baixá-lo grátis depois disso o link será destruído 🙂 cabe esclarecer que este script eu tive que modificar e consegui totalmente grátis como o homem do vídeo, no entanto não acho que este arquivo deva custar para o login usem user=admin senha:admin
Muito obrigado por compartilhar, para mim dá erro, mas percebo que também tenho o mesmo problema com o encriptador de mp4, o mais provável é que precise de atualização, os dois são do Licenciado.
 
Alguém tem o script que funcione atualmente??
 
PHP:
<?php
error_reporting(0);

$fembedUrl = $_GET['url'];
$partSize = 3; //MB
$personalKey = 'sBBcAcKK123';  //Una clave para el token, la que quieran...

class xURL{
    public function __construct($cookies=NULL, $agent=NULL, $proxy=NULL){
        $this->resources = [];
        $this->SETOPT = array(
            'RETURNTRANSFER' => 1,
            'FOLLOWLOCATION' => 1,
            'SSL_VERIFYHOST' => 0,
            'SSL_VERIFYPEER' => 0,
            'CUSTOMREQUEST'  => 'GET',
        );
        $this->proxy = $proxy;
        if($cookies){
            $this->SETOPT['COOKIEJAR'] = $cookies;
            $this->SETOPT['COOKIEFILE'] = $cookies;
        }
        $this->SETOPT['USERAGENT'] = $agent;
    }

    public function cURLOPT($c=''){
        if(!$c) $c = $this->lastResource;
        curl_setopt_array($c, array_combine(array_map(function($k){ return constant('CURLOPT_'.$k); }, array_keys($this->SETOPT)), $this->SETOPT));
        return $this;
    }

    public function cURL($o=''){
        $this->lastResource = curl_init();
        if(!$this->firstResource) $this->firstResource = $this->lastResource;
        if($this->proxy){
            $proxyData = array_flip(explode('@', $this->proxy));
            $this->SETOPT['PROXY'] = $proxyData[0];
            if($pD[1]) $this->SETOPT['PROXYUSERPWD'] = $proxyData[1];
            if($this->URL) $this->SETOPT['URL'] = $this->URL;
            if(!$this->SETOPT['PROXYTYPE']) $this->SETOPT['PROXYTYPE'] = 'HTTP';
        }
        if($o) $this->ADDOPT($o);
        if(@$this->httpHeaders) curl_setopt($c, CURLOPT_HTTPHEADER, $this->httpHeaders);
        $this->resources[] = $this->lastResource;
        return $this;
    }

    public function browse($URL=NULL, $ref=NULL, $post=NULL){
        if($URL) $this->SETOPT['URL'] = $URL;
        if($ref) $this->SETOPT['REFERER'] = $ref;
        if($this->SETOPT['POSTFIELDS'] || $this->SETOPT['POSTFIELDS'] = $post){
            $this->SETOPT['POST'] = 1;
            $this->SETOPT['CUSTOMREQUEST'] = 'POST';
        }else{
            $this->SETOPT['POST'] = 0;
            unset($this->SETOPT['CUSTOMREQUEST']);
        }
        return $this->exec($this->cURL()->cURLOPT()->lastResource);
    }

    public function exec($c=''){
        if(!$c) $c = $this->lastResource;
        $this->result = curl_exec($c);
        return $this;
    }

    private function close($c){
        return curl_close($c);
    }

    public function getSize(){
        $s = $this->getHeader('Content-Range') ? explode('/', $this->getHeader('Content-Range')[1])[1] : $this->getHeader('Content-Length')[1];
        return $s;
    }

    public function searchHeader($h){
        foreach($this->headers AS $k => $v) if($e = explode(': ', $v) AND stristr($e[0], $h)) return array_map('trim', $e);
        return false;
    }

    public function getHeader($header=NULL, $follow=1){
        $this->cURL(
            array(
                'HEADER' => 1,
                'FOLLOWLOCATION' => $follow,
                //'NOBODY' => 1
                'RANGE' => '0-200'
            )
        );
        $this->headers = array_filter(array_map('trim', explode(PHP_EOL, $this->exec($this->cURLOPT()->lastResource)->result)));
        if($header) return $this->searchHeader($header);
        return $this;
    }

    private function flushBytes($c, $str){
        echo $str;
        $this->flush();
        return strlen($str);
    }

    public function flush(){
        ob_end_flush();
        ob_flush();
        flush();
        ob_start();
        return $this;
    }

    public function ADDOPT($a){
        $this->SETOPT = array_merge($this->SETOPT, $a);
        return $this;
    }

    function cmd($c){
        preg_match_all('/curl "[^"]+|-H "[^"]+|--[^"]+"[^"]+/', str_replace('^', '', str_replace('\^"', "'", $c)), $cmdInfo);
        $this->SETOPT['POSTFIELDS'] = '';
        foreach($cmdInfo[0] AS $curlInfo)
            !strstr($curlInfo, '--data')
                ?
                    strstr($curlInfo, '-H "')
                        &&
                    ($curlInfo = str_replace('-H "', '', $curlInfo))
                        &&
                    $this->headers[] = $curlInfo
                :
                    $this->SETOPT['POSTFIELDS'] = urldecode(preg_replace('/--[^"]+"/', '', $curlInfo))
        ;

        return $this->browse(str_replace('curl "', '', $cmdInfo[0][0]), '');
    }

    private function setRange($x, $r, $r2){
        $this->ADDOPT(
            array(
                'HEADER' => 0,
                'RANGE' => $r.'-'.$r2,
                'NOPROGRESS' => 0,
                'BUFFERSIZE' =>  $this->bufferSize,
                'TIMEOUT' => 0,
                'CONNECTTIMEOUT' => 0,
                'WRITEFUNCTION' => array($this, 'flushBytes')
            )
        );
        return $this->cURLOPT($x);
    }
 
    public function streamVideo($i=0, $end=NULL, $s = 0, $bf = 10240){
            $this->bufferSize = $bf;
            if(!$s) $s = $this->getSize();
            if(!$end) $end = $s;
            header('Content-Length:'.$end+1);
            $this->setRange($this->lastResource, $i, $end);
            $this->exec($curl);
    }
}


$size = isset($_COOKIE['size_FStream']) ? $_COOKIE['size_FStream'] : '';
$videoLocation = isset($_COOKIE['videoLocation_FStream']) ? $_COOKIE['videoLocation_FStream'] : '';
$token = isset($_COOKIE['token_FStream']) ? $_COOKIE['token_FStream'] : '';

if(isset($_GET['reset']) OR $token != md5($size.$videoLocation.$personalKey)){
    $xURL = new xURL('cookies.txt', $_SERVER['HTTP_USER_AGENT']);

    $host = str_ireplace('www.', '', parse_url($fembedUrl)['host']);

    preg_match('/v\/([a-z0-9-]+)/', $fembedUrl, $fembedId);

    $xURL->cmd('curl "https://'.$host.'/api/source/'.$fembedId[1].'" -H "authority: '.$host.'" -H "accept: */*" -H "origin: '.$host.'" -H "x-requested-with: XMLHttpRequest" -H "user-agent: '.$_SERVER['HTTP_USER_AGENT'].'" -H "content-type: application/x-www-form-urlencoded; charset=UTF-8" -H "sec-fetch-site: same-origin" -H "sec-fetch-mode: cors" -H "referer: https://'.$host.'/v/'.$fembedId.'" -H "accept-language: es-ES,es;q=0.9" --data "r=^&d='.$host.'" --compressed');

    $videoData = json_decode($xURL->result);
    $xURL = new xURL('cookies.txt', $_SERVER['HTTP_USER_AGENT']);
    $videoLocation = $videoData->data[count($videoData->data)-1]->file;
    $xURL->SETOPT['URL'] = $videoLocation;

    $size = $xURL->getSize();
    $token = md5($size.$videoLocation.$personalKey.$fembedUrl);
    setcookie('videoLocation_FStream', urlencode($videoLocation), time()+7200);
    setcookie('size_FStream', $size, time()+7200);
    setcookie('token_FStream', $token, time()+7200);
}else{
    $xURL = new xURL('cookies.txt', $_SERVER['HTTP_USER_AGENT']);
}

if($_SERVER['HTTP_RANGE'])
    $rangeReceived = explode('-', explode('=', $_SERVER['HTTP_RANGE'])[1]);
;

$beginReceived = preg_replace("/[^0-9](.*)$/", '', $rangeReceived[0]);

$endReceived = preg_replace("/[^0-9](.*)$/", '', $rangeReceived[1]);

$begin = $beginReceived OR $begin = 0;

$end = $endReceived OR $end = 1024*1024*$partSize+$begin;

$begin > 0 || $end < $size
    ?
        header('HTTP/1.0 206 Partial Content')
    :
        header('HTTP/1.0 200 OK')
;

$length = $end-$begin+1;
header("Content-Length: $length");
header("Content-Type: video/mp4");
header('Accept-Ranges: bytes');
header("Content-Transfer-Encoding: BINARY");
header("Content-Disposition: inline");
header("Cache-Control: no-store, no-cache, must-revalidate, max-age=0");
header("Cache-Control: post-check=0, pre-check=0", false);
header("Pragma: no-cache");
header('Connection: close');

header("Content-Range: bytes $begin-$end/$size");

$xURL->SETOPT['URL'] = $videoLocation;
$xURL->streamVideo($begin, $end, $size, 10240);

Não precisa de Frameworks.

Pode definir que a URL do Fembed seja definida por GET ou POST, isso fica a critério. (Este código só funciona com Fembed)

É possível adiantar o vídeo. 👍 (Graças ao sistema de ranks)

O que ele faz?
Baixa o vídeo do Fembed (na memória, não o salva) e vai passando para o usuário constantemente. (Proxy)

Só precisa copiar o código e salvá-lo como PHP. 👍

É possível usar hospedagem normal. (Embora talvez trave um pouco)


Vamos ver quem é o primeiro a dizer que funciona! (Ou que não 😂)



Podem adicionar um pouco de segurança com o seguinte:

PS: editando, serve para outros servidores.


___________

Olá família do ForoBeta. Alguém pode me dizer o que preciso modificar para que o script funcione como link de download direto?
 

Tópicos similares

Voltar
Topo