Длительность видео файла в linux

Друзья, подскажите пожалуйста, чем оптимальнее всего получить длительность ролика в ubuntu из консоли.
ffmpeg для этого тянуть не хочется…

FFmpeg    

319   5   07:53, 9th August, 2020


Это плохая идея, чтобы выставить иерархию наследования в структуре пространства имен?

У меня есть группа взаимосвязанных классов, которые все переопределены вместе, чтобы создать конкретную реализацию. Мне интересно, если это хорошая идея, чтобы заключить взаимосвязанные подклассы в пространстве имен.

Для примера рассмотрим следующие пространства имен и классы:

namespace Protocol
{
  public abstract class Message { }
  public abstract class Driver { }
}
namespace Protocol.Tcp
{
  public class TcpMessage : Message { }
  public class TcpDriver : Driver { }
}
namespace Protocol.Ftp
{
  public class FtpMessage : Message { }
  public class FtpDriver : Driver { }
}

Каков наилучший способ структурировать пространства имен? Кажется неизбежным выставлять наследование в пространстве имен, поскольку базовые классы на самом деле не принадлежат ни к пространству имен Protocol.Tcp, ни к пространству имен Protocol.Ftp.

c#   oop   inheritance   naming   convention    

433   3   07:40, 9th August, 2020


Абстрактный Шаблон Дизайна Фабрики

Я работаю над внутренним проектом для своей компании, и часть проекта заключается в том, чтобы иметь возможность анализировать различные "Tasks" из файла XML в коллекцию задач, которые будут выполняться позже.

Поскольку каждый тип задачи имеет множество различных связанных полей, я решил, что лучше всего представлять каждый тип задачи с отдельным классом.

Для этого я построил абстрактный базовый класс:

public abstract class Task
{
    public enum TaskType
    {
        // Types of Tasks
    }   

    public abstract TaskType Type
    {
        get;
    }   

    public abstract LoadFromXml(XmlElement task);
    public abstract XmlElement CreateXml(XmlDocument currentDoc);
}

Каждая задача наследуется от этого базового класса и включает в себя код, необходимый для создания себя из переданного в XmlElement, а также сериализации себя обратно в XmlElement.

Основные примеры:

public class MergeTask : Task
{

    public override TaskType Type
    {
        get { return TaskType.Merge; }
    }   

    // Lots of Properties / Methods for this Task

    public MergeTask (XmlElement elem)
    {
        this.LoadFromXml(elem);
    }

    public override LoadFromXml(XmlElement task)
    {
        // Populates this Task from the Xml.
    }

    public override XmlElement CreateXml(XmlDocument currentDoc)
    {
        // Serializes this class back to xml.
    }
}

Затем синтаксический анализатор будет использовать код, подобный этому, чтобы создать коллекцию задач:

XmlNode taskNode = parent.SelectNode("tasks");

TaskFactory tf = new TaskFactory();

foreach (XmlNode task in taskNode.ChildNodes)
{
    // Since XmlComments etc will show up
    if (task is XmlElement)
    {
        tasks.Add(tf.CreateTask(task as XmlElement));
    }
}

Все это прекрасно работает и позволяет мне передавать задачи по кругу, используя базовый класс, сохраняя при этом структуру наличия отдельных классов для каждой задачи.

Однако я не доволен своим кодом для TaskFactory.CreateTask. Этот метод принимает значение XmlElement, а затем возвращает экземпляр соответствующего класса задач:

public Task CreateTask(XmlElement elem)
{
    if (elem != null)
    {
        switch(elem.Name)
        {
            case "merge":
                return new MergeTask(elem);
            default:
                throw new ArgumentException("Invalid Task");
        }
    }
}

Поскольку мне нужно разобрать XMLElement, я использую огромный (10-15 случаев в реальном коде) переключатель, чтобы выбрать, какой дочерний класс создать. Я надеюсь, что есть какой-то полиморфный трюк, который я могу сделать здесь, чтобы очистить этот метод.

Какой-нибудь совет?

c#   design-patterns   factory    

447   10   07:33, 9th August, 2020


Когда вы используете sIFR?

Я слышал, как Джоэл и Джефф говорили о sIFR в одном из ранних подкастов . Я использую его на www.american-data.com и www.chartright.us с некоторыми довольно смешанными результатами.

Вчера мне сообщили, что первая строка текста на моем сайте появилась вверх ногами в Интернете Explorer 6 без flash игрока. Я почти уверен, что оценка была неправильной, из-за no flash player = no sIFR. Но я получаю какое-то странное поведение на моих страницах, по крайней мере в IE 6, 7 и 8. Я только очень хотел использовать sIFR, потому что мои шрифты выглядели паршиво на моем компьютере в Firefox.

Мой вопрос: если вы используете sIFR, когда вы используете sIFR? В каких случаях вы отключаете sIFR? Когда лучше просто использовать шрифт браузера?

cross-browser   sifr    

482   3   07:29, 9th August, 2020


Инструменты Управления Подрывной Деятельности

у нас есть много пользователей, работающих в разных общих и одиночных репозиториях в Subversion. В рамках нашей работы мы делаем общий код проекта и индивидуальную работу, и нам нужно контролировать доступ, в идеале на групповой основе. В настоящее время мы используем SVNManager , чтобы позволить пользователям управлять доступом и создавать репозитории. Однако для того, чтобы заставить это работать, нам пришлось сделать довольно много взломов.

Кто-нибудь знает о свободной, с открытым исходным кодом, linux-совместимой системе управления SVN?

Спасибо за вашу помощь.

linux   svn    

412   4   07:23, 9th August, 2020


В чем разница между Ruby 1.8 и Ruby 1.9

Я не совсем понимаю разницу между версией "current" Ruby (1.8) и версией "new" (1.9). Существует ли "easy" или "simple" объяснение этих различий и почему они так различны?

ruby   ruby-1.9   ruby-1.8    

448   4   07:11, 9th August, 2020


Бесплатный домен 3 уровня

Где зарегистрировать домен 3 уровня бесплатно? Чтобы можно в настройках написать IP своей машины. На DynDNS.com меня удаляют, так как у меня постоянный IP, а у них в правиле написано:

* You do not log into the account within a 30-day period
* You do not update any Dynamic DNS hostnames within a 30-day period

Фриланс   Рынок   доменных   имен    

407   18   06:55, 9th August, 2020


Стресс тест для почтового сервера?

Здравствуйте.

Подскажите пожалуйста кто как тестирует почтовики?

Сейчас остро возникла потребность проверить почтовик на выносливость,

на определенном железе, и с определенным софтом.

Хотелось бы узнать не склеит ли он ласты при нагрузке.

Заранее благодарен за ответы.

Спасибо

Почтовый   сервер   MTA   Стресс-тестирование    

448   3   06:38, 9th August, 2020


Могу ли я захватить события клавиатуры Windows Mobile PIE?

Кто-нибудь знает способ захвата событий клавиатуры (keyup / keydown) в Portable IE под Window mobile? Я заметил, что ключевые события не поддерживаются в JS, и хотел бы придумать решение, которое работает без каких-либо дополнений на стороне клиента.

internet-explorer   windows-mobile   key-events    

350   1   06:38, 9th August, 2020


Рекомендуем инструмент для управления расширенными свойствами в SQL server 2005

Студия управления сервером имеет тенденцию быть немного неинтуитивной, когда дело доходит до управления расширенными свойствами, поэтому кто-нибудь может порекомендовать достойный инструмент, который улучшает ситуацию.

Одна вещь, которую я хотел бы сделать, - это иметь шаблоны, которые я могу применять к объектам, тем самым стандартизируя номенклатуру и содержание свойств, применяемых к объектам.

sql-server   extended-properties    

358   2   06:38, 9th August, 2020