ActionScript - videoContainer

 
Vista:
sin imagen de perfil

videoContainer

Publicado por Ery (1 intervención) el 28/06/2016 10:46:49
Hola, buenas. Hace mucho que no toco código y estoy intentando hacer un nuevo proyecto. Pero algo ando perdidilla. A ver si alguien me puede ayudar.

El proyecto consta de tres elementos: dos vídeos mp4 y un documento de texto (.txt). La idea es hacer un swf que pueda cargar en una web. Y cuando lo llame, ejecute uno de los dos vídeos. Si el documento de texto está vacío, ejecutará el vídeo1 y si el documento de texto contiene algo, ejecutará el vídeo2 junto al texto que haya en el .txt.
En sí no parece complicado. O eso pensé en un principio. De momento no he conseguido nada. El vídeo lo cargo con el siguiente código:

1
2
3
4
5
var conexion:NetConnection = new NetConnection();
conexion.connect(null);
var stream:NetStream = new NetStream(conexion);
mi_video.attachVideo(stream);
stream.play("video1.flv");

Pero soy incapaz de ver que tengo que hacer para que en función de si el documento .txt contiene texto o no, me cargue un vídeo u otro. Estoy muy muy perdida.

Si alguien me pudiese echar una mano se lo agradecería mucho.
Valora esta pregunta
Me gusta: Está pregunta es útil y esta claraNo me gusta: Está pregunta no esta clara o no es útil
0
Responder
Imágen de perfil de Alejandro

Cargar vídeos y texto según el contenido de un archivo .txt

Publicado por Alejandro (369 intervenciones) el 28/06/2023 22:42:32
Para lograr cargar diferentes vídeos y mostrar texto en función del contenido de un archivo .txt, puedes utilizar la clase `URLLoader` para cargar y leer el archivo de texto, y luego tomar decisiones basadas en su contenido. Aquí tienes un ejemplo de cómo hacerlo:

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
import flash.net.URLLoader;
import flash.net.URLRequest;
import flash.events.Event;
import flash.text.TextField;
 
var videoURL:String;
var textContent:String;
 
var txtLoader:URLLoader = new URLLoader();
txtLoader.addEventListener(Event.COMPLETE, onTextLoaded);
txtLoader.load(new URLRequest("archivo.txt"));
 
function onTextLoaded(event:Event):void {
  textContent = txtLoader.data;
 
  if (textContent.length > 0) {
    // Si el archivo de texto contiene contenido, cargar el segundo video y mostrar el texto
    videoURL = "video2.mp4";
    mostrarTexto(textContent);
  } else {
    // Si el archivo de texto está vacío, cargar el primer video
    videoURL = "video1.mp4";
  }
 
  reproducirVideo(videoURL);
}
 
function reproducirVideo(url:String):void {
  var conexion:NetConnection = new NetConnection();
  conexion.connect(null);
  var stream:NetStream = new NetStream(conexion);
  mi_video.attachNetStream(stream);
  stream.play(url);
}
 
function mostrarTexto(texto:String):void {
  var textoCampo:TextField = new TextField();
  textoCampo.text = texto;
  addChild(textoCampo);
}

En este código, primero se crea una instancia de `URLLoader` llamada `txtLoader` para cargar el archivo de texto. Luego, se utiliza el evento `COMPLETE` para manejar la carga completa del archivo y se guarda el contenido en la variable `textContent`. A continuación, se verifica si el contenido del archivo es mayor a cero para determinar qué video cargar. Si el contenido no es vacío, se establece `videoURL` en "video2.mp4" y se llama a la función `mostrarTexto()` para mostrar el texto en un campo de texto en la pantalla.

Después de determinar qué video cargar y mostrar el texto (si corresponde), se llama a la función `reproducirVideo()` para cargar y reproducir el video utilizando la clase `NetStream`.

Recuerda reemplazar "archivo.txt", "video1.mp4" y "video2.mp4" con las rutas y nombres de archivo correctos en tu proyecto.

Espero que este ejemplo te ayude a lograr lo que deseas. ¡Buena suerte con tu proyecto!
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar