Flash Actionscript 3 - търсене/възпроизвеждане на звук

Имам аудио файл, който е дълъг 4 часа. Създадох стандартен плейър, за да управлявам нуждите си - работи добре, но не търсите повече от 12180000 милисекунди при спиране на играча за броене на позиции. Ако позиционирате звука да свири 12100000 (няколко секунди по-рано) - свири добре и ако продължи да свири, без да променя позицията по код, е добре до края. Не получавам никакви грешки или каквато и да е информация относно този вид проблем.

soundChannel = sound.play(12180000); // DOES NOT PLAY, NO ERRORS
soundChannel = sound.play(12100000); // PLAYS FINE, AND CONTINUES TO PLAY TILL THE END
  • Звукът е напълно зареден преди възпроизвеждане.

И така, някой има ли идеи?


person Rummer    schedule 08.10.2012    source източник
comment
това обикновено се случва, ако търсите над дължината на mp3. Така че времето, което сте посочили в милисекунди, е 203 минути, нали?   -  person Ronnie    schedule 09.10.2012
comment
да Но моят mp3 е с дължина 4 часа :/   -  person Rummer    schedule 09.10.2012
comment
можеш ли да ми изпратиш mp3, за да опитам?   -  person Ronnie    schedule 09.10.2012
comment
m-1.fm/download/audio/podcast/PODSDuDwKkfr.mp3   -  person Rummer    schedule 09.10.2012
comment
Зареждането може да отнеме известно време :)   -  person Rummer    schedule 09.10.2012
comment
Забравих да спомена, че това не е единствената песен, на която имам същия проблем, всеки звуков обект с повече от 203 минути ~ не мога да търся след това време.   -  person Rummer    schedule 09.10.2012
comment
мкей, може да се наложи да го проверя утре. Тръгвам от работа след няколко минути   -  person Ronnie    schedule 09.10.2012
comment
Добре. Благодаря за отделеното време.   -  person Rummer    schedule 09.10.2012


Отговори (1)


това е интересно... не мога да го накарам да играе след 12173943 milliseconds. За мен работи точно това число, но нищо след това няма да се възпроизведе. Предполагам, че flash разпределя определено количество памет за звуци и това число точно там изчислява максималното количество памет, разпределено за този файл. Надяваме се, че някой друг може да се включи. Използвам MP3, предоставен от Rummer, и това беше моят тестов код

import flash.media.*;
import flash.events.*;
import flash.net.*;

var channel:SoundChannel = new SoundChannel();
var sound:Sound = new Sound();
sound.load(new URLRequest("podcast.mp3"));
sound.addEventListener(Event.COMPLETE, soundLoaded);
sound.addEventListener(IOErrorEvent.IO_ERROR, onError);

function soundLoaded(e:Event):void
{
    channel = sound.play(12173943);
}

function onError(e:IOErrorEvent):void
{
    trace(e);
}

Използвам Flash CS5.5 и експортирам за flash 10.2. Силно бих обмислил разделянето на вашите mp3 файлове на секции. Първият път, когато моят SWF се зареди, флашът увисна за добри 10 секунди, преди да се възпроизведе, поради това колко голям е mp3.

=============== AS2 версия, която работи

var my_sound:Sound = new Sound();
my_sound.onLoad = function(success:Boolean)
{
    if (success)
    {
        my_sound.start(12180);
    } 
};
my_sound.loadSound("podcast.mp3", true);
person Ronnie    schedule 09.10.2012
comment
За да добавя към това, конвертирах MP3 към по-ниска скорост на данни, 32kbps надолу от 88kbps, за да видя дали това число се е променило. Все още не мога да играя след милисекундата, посочена по-горе. Файлът е значително по-малък. 58mb надолу от 220mb. Това донякъде изключва моята теория за ограничаване на паметта. - person Ronnie; 10.10.2012
comment
Ами да :( същият проблем. Мисля да премина към as2, за да изпробвам това. Ако това работи, може просто да интегрирам as2 swf към основния си плейър, за да възпроизвеждам файлове от микс тип. - person Rummer; 11.10.2012
comment
Не виждам преминаването към AS2 да реши проблема...всъщност ще опитам веднага - person Ronnie; 12.10.2012
comment
добре. Проклет да съм..търси в as2 съвсем добре..AS2 използва секунди вместо MS..Ще актуализирам тази публикация - person Ronnie; 12.10.2012
comment
Търси със сигурност...не съм сигурен дали това е точно на 12180 секунди. Все пак можете да проверите известно време, за да го разберете - person Ronnie; 12.10.2012
comment
Ами да, as2 работи добре :) така че мисля, че ще трябва да се придържам към него по това време. Благодаря на Рони за помощта. - person Rummer; 12.10.2012