mirror of
https://github.com/tuxbox-fork-migrations/recycled-ni-neutrino.git
synced 2025-09-01 18:01:06 +02:00
audioplayer: -add flv format (THX Houdini)
Origin commit data
------------------
Branch: ni/coolstream
Commit: 29aa47aef0
Author: Jacek Jendrzej <overx300@gmail.com>
Date: 2015-07-27 (Mon, 27 Jul 2015)
------------------
No further description and justification available within origin commit message!
------------------
This commit was generated by Migit
This commit is contained in:
@@ -28,6 +28,7 @@ if ENABLE_FFMPEGDEC
|
||||
ASOURCES = ffmpegdec.cpp
|
||||
else
|
||||
ASOURCES = cdrdec.cpp \
|
||||
ffmpegdec.cpp \
|
||||
crc.c \
|
||||
flacdec.cpp \
|
||||
mp3dec.cpp \
|
||||
|
@@ -43,6 +43,7 @@
|
||||
#ifdef ENABLE_FFMPEGDEC
|
||||
#include "ffmpegdec.h"
|
||||
#else
|
||||
#include "ffmpegdec.h"
|
||||
#include "cdrdec.h"
|
||||
#include "mp3dec.h"
|
||||
#include "oggdec.h"
|
||||
@@ -69,8 +70,15 @@ CBaseDec::RetCode CBaseDec::DecoderBase(CAudiofile* const in,
|
||||
unsigned int* const secondsToSkip)
|
||||
{
|
||||
RetCode Status = OK;
|
||||
FILE* fp;
|
||||
|
||||
if(( in->FileType == CFile::STREAM_AUDIO ) && (in->Filename.find(".flv") != string::npos))
|
||||
{
|
||||
fp = fopen( in->Filename.c_str(), "rc" );
|
||||
}
|
||||
else
|
||||
fp = fopen( in->Filename.c_str(), "r" );
|
||||
|
||||
FILE* fp = fopen( in->Filename.c_str(), "r" );
|
||||
if ( fp == NULL )
|
||||
{
|
||||
fprintf( stderr, "Error opening file %s for decoding.\n",
|
||||
@@ -98,6 +106,12 @@ CBaseDec::RetCode CBaseDec::DecoderBase(CAudiofile* const in,
|
||||
Status = COggDec::getInstance()->Decoder( fp, OutputFd, state,
|
||||
&in->MetaData, t,
|
||||
secondsToSkip );
|
||||
else if (ftype(fp, "flv")) {
|
||||
Status = CFfmpegDec::getInstance()->Decoder(fp, OutputFd, state,
|
||||
&in->MetaData, t,
|
||||
secondsToSkip );
|
||||
in->MetaData.type = CFile::FILE_UNKNOWN;
|
||||
}
|
||||
else
|
||||
Status = CMP3Dec::getInstance()->Decoder( fp, OutputFd, state,
|
||||
&in->MetaData, t,
|
||||
@@ -125,6 +139,12 @@ CBaseDec::RetCode CBaseDec::DecoderBase(CAudiofile* const in,
|
||||
&in->MetaData, t,
|
||||
secondsToSkip );
|
||||
#endif
|
||||
else if (in->FileType == CFile::FILE_FLV) {
|
||||
Status = CFfmpegDec::getInstance()->Decoder(fp, OutputFd, state,
|
||||
&in->MetaData, t,
|
||||
secondsToSkip );
|
||||
in->MetaData.type = CFile::FILE_UNKNOWN;
|
||||
}
|
||||
else
|
||||
{
|
||||
fprintf( stderr, "DecoderBase: Supplied filetype is not " );
|
||||
@@ -209,6 +229,7 @@ bool CBaseDec::GetMetaDataBase(CAudiofile* const in, const bool nice)
|
||||
#ifndef ENABLE_FFMPEGDEC
|
||||
if (in->FileType == CFile::FILE_MP3 || in->FileType == CFile::FILE_OGG
|
||||
|| in->FileType == CFile::FILE_WAV || in->FileType == CFile::FILE_CDR
|
||||
|| in->FileType == CFile::FILE_FLV
|
||||
#ifdef ENABLE_FLAC
|
||||
|| in->FileType == CFile::FILE_FLAC
|
||||
#endif
|
||||
@@ -252,6 +273,16 @@ bool CBaseDec::GetMetaDataBase(CAudiofile* const in, const bool nice)
|
||||
Status = FlacDec.GetMetaData(fp, nice, &in->MetaData);
|
||||
}
|
||||
#endif
|
||||
else if (in->FileType == CFile::FILE_FLV)
|
||||
{
|
||||
struct stat st;
|
||||
if (!fstat(fileno(fp), &st))
|
||||
in->MetaData.filesize = st.st_size;
|
||||
in->MetaData.type = in->FileType;
|
||||
|
||||
CFfmpegDec d;
|
||||
Status = d.GetMetaData(fp, nice, &in->MetaData);
|
||||
}
|
||||
#else
|
||||
struct stat st;
|
||||
if (!fstat(fileno(fp), &st))
|
||||
|
@@ -43,7 +43,7 @@
|
||||
const char * const file_extension_list[] =
|
||||
{
|
||||
"aac", "asf", "avi", "bmp", "cdr", "crw",
|
||||
"dts", "flac", "gif", "imu", "iso", "jpeg", "jpg",
|
||||
"dts", "flac", "flv", "gif", "imu", "iso", "jpeg", "jpg",
|
||||
"m2a", "m3u", "m3u8", "m4a", "mkv", "mp2", "mp3",
|
||||
"mpa", "ogg", "pls", "png", "sh",
|
||||
"txt", "url", "wav", "xml"
|
||||
@@ -53,9 +53,9 @@ const char * const file_extension_list[] =
|
||||
const CFile::FileType file_type_list[] =
|
||||
{
|
||||
CFile::FILE_AAC , CFile::FILE_ASF , CFile::FILE_AVI , CFile::FILE_PICTURE , CFile::FILE_CDR , CFile::FILE_PICTURE ,
|
||||
CFile::FILE_WAV , CFile::FILE_FLAC , CFile::FILE_PICTURE , CFile::STREAM_PICTURE, CFile::FILE_ISO , CFile::FILE_PICTURE , CFile::FILE_PICTURE ,
|
||||
CFile::FILE_WAV , CFile::FILE_FLAC , CFile::FILE_FLV , CFile::FILE_PICTURE , CFile::STREAM_PICTURE, CFile::FILE_ISO , CFile::FILE_PICTURE , CFile::FILE_PICTURE ,
|
||||
CFile::FILE_MP3 , CFile::FILE_PLAYLIST , CFile::FILE_PLAYLIST , CFile::FILE_AAC , CFile::FILE_MKV , CFile::FILE_MP3 , CFile::FILE_MP3 ,
|
||||
CFile::FILE_MP3 , CFile::FILE_OGG , CFile::FILE_PLAYLIST, CFile::FILE_PICTURE , CFile::FILE_TEXT ,
|
||||
CFile::FILE_MP3 , CFile::FILE_OGG , CFile::FILE_PLAYLIST , CFile::FILE_PICTURE , CFile::FILE_TEXT ,
|
||||
CFile::FILE_TEXT , CFile::STREAM_AUDIO , CFile::FILE_WAV , CFile::FILE_XML
|
||||
};
|
||||
|
||||
|
@@ -66,6 +66,7 @@ class CFile
|
||||
FILE_OGG,
|
||||
FILE_WAV,
|
||||
FILE_FLAC,
|
||||
FILE_FLV,
|
||||
FILE_XML,
|
||||
FILE_PLAYLIST,
|
||||
STREAM_AUDIO,
|
||||
|
@@ -153,7 +153,8 @@ magic_t known_magic[] =
|
||||
{
|
||||
{{0xFF, 0xFF, 0xFF, 0x00}, {'I' , 'D' , '3' , 0x00}, "audio/mpeg"},
|
||||
{{0xFF, 0xFF, 0xFF, 0x00}, {'O' , 'g' , 'g' , 0x00}, "audio/ogg" },
|
||||
{{0xFF, 0xFE, 0x00, 0x00}, {0xFF, 0xFA, 0x00, 0x00}, "audio/mpeg"}
|
||||
{{0xFF, 0xFE, 0x00, 0x00}, {0xFF, 0xFA, 0x00, 0x00}, "audio/mpeg"},
|
||||
{{0xFF, 0xFF, 0xFF, 0x00}, {'F' , 'L' , 'V' , 0x00}, "audio/flv"}
|
||||
};
|
||||
|
||||
#if 0
|
||||
|
Reference in New Issue
Block a user